{"version":3,"sources":["../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/ai-sdk-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/api-call-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/empty-response-body-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/get-error-message.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/invalid-argument-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/invalid-prompt-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/invalid-response-data-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/json-parse-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/load-api-key-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/load-setting-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/no-content-generated-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/no-such-model-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/too-many-embedding-values-for-call-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/type-validation-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/errors/unsupported-functionality-error.ts","../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/src/json-value/is-json.ts","../node_modules/.pnpm/eventsource-parser@3.0.3/node_modules/eventsource-parser/src/errors.ts","../node_modules/.pnpm/eventsource-parser@3.0.3/node_modules/eventsource-parser/src/parse.ts","../node_modules/.pnpm/eventsource-parser@3.0.3/node_modules/eventsource-parser/src/stream.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/combine-headers.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/convert-async-iterator-to-readable-stream.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/delay.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/extract-response-headers.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/generate-id.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/get-error-message.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/get-from-api.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/handle-fetch-error.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/is-abort-error.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/remove-undefined-entries.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/is-url-supported.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/load-api-key.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/load-optional-setting.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/load-setting.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/parse-json.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/secure-json-parse.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/validate-types.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/validator.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/parse-json-event-stream.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/parse-provider-options.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/types/tool.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/provider-defined-tool-factory.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/resolve.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/response-handler.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/zod-schema.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/schema.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/uint8-utils.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/without-trailing-slash.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/is-async-iterable.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/types/execute-tool.ts","../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.2_zod@4.0.17/node_modules/@ai-sdk/provider-utils/src/index.ts","../node_modules/.pnpm/zod-to-json-schema@3.24.5_zod@4.0.17/node_modules/zod-to-json-schema/dist/esm/Options.js","../node_modules/.pnpm/zod-to-json-schema@3.24.5_zod@4.0.17/node_modules/zod-to-json-schema/dist/esm/selectParser.js","../node_modules/.pnpm/zod-to-json-schema@3.24.5_zod@4.0.17/node_modules/zod-to-json-schema/dist/esm/parsers/array.js","../node_modules/.pnpm/zod-to-json-schema@3.24.5_zod@4.0.17/node_modules/zod-to-json-schema/dist/esm/parsers/record.js","../node_modules/.pnpm/zod-to-json-schema@3.24.5_zod@4.0.17/node_modules/zod-to-json-schema/dist/esm/parsers/string.js","../node_modules/.pnpm/zod-to-json-schema@3.24.5_zod@4.0.17/node_modules/zod-to-json-schema/dist/esm/parsers/object.js","../src/schemas/reasoning-details.ts","../src/schemas/error-response.ts","../src/utils/map-finish-reason.ts","../src/chat/is-url.ts","../src/chat/file-url-utils.ts","../src/chat/convert-to-openrouter-chat-messages.ts","../src/chat/get-tool-choice.ts","../src/chat/schemas.ts","../src/chat/index.ts","../src/completion/convert-to-openrouter-completion-prompt.ts","../src/completion/schemas.ts","../src/completion/index.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/shared/evm/config.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/shared/evm/erc20PermitABI.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/shared/evm/usdc.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/shared/evm/erc20.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/shared/money.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/shared/network.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/shared/evm/index.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/shared/evm/eip3009.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/shared/evm/wallet.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/verify/x402Specs.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/types/verify/facilitator.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/shared/json.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/paywall/gen/template.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/shared/paywall.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/shared/base64.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/shared/network.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/shared/middleware.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/getAction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/log.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/abi/encodeEventTopics.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/filters/createFilterRequestScope.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/createContractEventFilter.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/errors/getContractError.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/accounts/utils/publicKeyToAddress.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/recoverPublicKey.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/recoverAddress.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/encoding/toRlp.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/authorization/hashAuthorization.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/authorization/recoverAuthorizationAddress.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/estimateGas.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/errors/getEstimateGasError.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/fee.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/block.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/formatters/transaction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/formatters/block.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getBlock.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getGasPrice.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/estimateMaxPriorityFeePerGas.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/estimateFeesPerGas.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getTransactionCount.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/blob/blobsToCommitments.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/blob/blobsToProofs.ts","../node_modules/.pnpm/@noble+hashes@1.8.0/node_modules/@noble/hashes/src/sha256.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/hash/sha256.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/blob/commitmentToVersionedHash.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/blob/commitmentsToVersionedHashes.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/constants/blob.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/constants/kzg.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/blob.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/blob/toBlobs.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/blob/toBlobSidecars.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/transaction/getTransactionType.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getChainId.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/prepareTransactionRequest.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getBalance.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/estimateGas.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/estimateContractGas.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/abi/decodeEventLog.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/abi/parseEventLogs.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/formatters/log.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getLogs.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getContractEvents.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/readContract.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/simulateContract.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/observe.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/wait.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/poll.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/promise/withCache.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getBlockNumber.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getFilterChanges.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/uninstallFilter.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/watchContractEvent.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/account.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/chain/assertCurrentChain.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/errors/getTransactionError.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/sendRawTransaction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/sendTransaction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/writeContract.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/formatters/transactionReceipt.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/sendCalls.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/getCallsStatus.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/waitForCallsStatus.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/uid.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/clients/createClient.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/promise/withDedupe.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/promise/withRetry.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/buildRequest.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/clients/transports/createTransport.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/transport.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/promise/withTimeout.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/rpc/id.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/rpc/http.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/clients/transports/http.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/ens/errors.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/ens/encodedLabelToLabelhash.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/ens/namehash.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/ens/encodeLabelhash.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/ens/labelhash.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/ens/packetToBytes.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/ens/getEnsAddress.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/ens.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/ens/avatar/utils.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/ens/avatar/parseAvatarRecord.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/ens/getEnsText.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/ens/getEnsAvatar.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/ens/getEnsName.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/ens/getEnsResolver.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/createAccessList.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/createBlockFilter.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/createEventFilter.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/createPendingTransactionFilter.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getBlobBaseFee.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getBlockTransactionCount.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getCode.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/eip712.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getEip712Domain.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/formatters/feeHistory.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getFeeHistory.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getFilterLogs.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/chain/defineChain.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/errors/typedData.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/hashTypedData.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/typedData.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/transaction/assertTransaction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/transaction/serializeAccessList.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/transaction/serializeTransaction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/authorization/serializeAuthorizationList.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/constants/strings.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/toPrefixedMessage.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/hashMessage.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/constants/bytes.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/isErc6492Signature.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/parseErc6492Signature.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/serializeErc6492Signature.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/formatters/proof.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getProof.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getStorageAt.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getTransaction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getTransactionConfirmations.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/getTransactionReceipt.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/multicall.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/simulateBlocks.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/Hash.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/internal/lru.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/Caches.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/Address.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/internal/abiItem.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/AbiItem.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/Solidity.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/internal/abiParameters.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/AbiParameters.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/AbiConstructor.ts","../node_modules/.pnpm/ox@0.8.1_typescript@5.8.3_zod@3.25.76/node_modules/ox/core/AbiFunction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/constants/address.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/simulateCalls.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/signature/serializeSignature.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/verifyHash.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/verifyMessage.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/verifyTypedData.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/watchBlockNumber.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/waitForTransactionReceipt.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/watchBlocks.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/watchEvent.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/public/watchPendingTransactions.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/siwe/parseSiweMessage.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/utils/siwe/validateSiweMessage.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/siwe/verifySiweMessage.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/clients/decorators/public.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/clients/createPublicClient.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/addChain.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/deployContract.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/getAddresses.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/getCapabilities.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/getPermissions.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/prepareAuthorization.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/requestAddresses.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/requestPermissions.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/showCallsStatus.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/signAuthorization.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/signMessage.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/signTransaction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/signTypedData.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/switchChain.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/actions/wallet/watchAsset.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/clients/decorators/wallet.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/clients/createWalletClient.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/op-stack/contracts.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/op-stack/formatters.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/op-stack/serializers.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/op-stack/chainConfig.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/chains/definitions/avalancheFuji.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/chains/definitions/base.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/chains/definitions/baseSepolia.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/chains/definitions/sei.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/chains/definitions/seiTestnet.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/accounts/toAccount.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/accounts/utils/sign.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/accounts/utils/signAuthorization.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/accounts/utils/signMessage.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/accounts/utils/signTransaction.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/accounts/utils/signTypedData.ts","../node_modules/.pnpm/viem@2.31.7_bufferutil@4.0.9_typescript@5.8.3_utf-8-validate@5.0.10_zod@3.25.76/node_modules/viem/accounts/privateKeyToAccount.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/schemes/exact/evm/utils/paymentUtils.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/schemes/exact/evm/sign.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/schemes/exact/evm/client.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/schemes/exact/index.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/schemes/exact/evm/index.ts","../node_modules/.pnpm/x402@0.5.1_@tanstack+query-core@5.83.1_@tanstack+react-query@5.85.0_react@18.3.1__buffe_a02d05ad4e1b2378705cf2c7cb214f6d/node_modules/x402/src/schemes/exact/evm/facilitator.ts","../src/x402-payment-utils.ts","../src/provider.ts","../src/dreams-router-api-client.ts","../src/wallet-auth-utils.ts"],"sourcesContent":["/**\n * Symbol used for identifying AI SDK Error instances.\n * Enables checking if an error is an instance of AISDKError across package versions.\n */\nconst marker = 'vercel.ai.error';\nconst symbol = Symbol.for(marker);\n\n/**\n * Custom error class for AI SDK related errors.\n * @extends Error\n */\nexport class AISDKError extends Error {\n  private readonly [symbol] = true; // used in isInstance\n\n  /**\n   * The underlying cause of the error, if any.\n   */\n  readonly cause?: unknown;\n\n  /**\n   * Creates an AI SDK Error.\n   *\n   * @param {Object} params - The parameters for creating the error.\n   * @param {string} params.name - The name of the error.\n   * @param {string} params.message - The error message.\n   * @param {unknown} [params.cause] - The underlying cause of the error.\n   */\n  constructor({\n    name,\n    message,\n    cause,\n  }: {\n    name: string;\n    message: string;\n    cause?: unknown;\n  }) {\n    super(message);\n\n    this.name = name;\n    this.cause = cause;\n  }\n\n  /**\n   * Checks if the given error is an AI SDK Error.\n   * @param {unknown} error - The error to check.\n   * @returns {boolean} True if the error is an AI SDK Error, false otherwise.\n   */\n  static isInstance(error: unknown): error is AISDKError {\n    return AISDKError.hasMarker(error, marker);\n  }\n\n  protected static hasMarker(error: unknown, marker: string): boolean {\n    const markerSymbol = Symbol.for(marker);\n    return (\n      error != null &&\n      typeof error === 'object' &&\n      markerSymbol in error &&\n      typeof error[markerSymbol] === 'boolean' &&\n      error[markerSymbol] === true\n    );\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_APICallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class APICallError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly url: string;\n  readonly requestBodyValues: unknown;\n  readonly statusCode?: number;\n\n  readonly responseHeaders?: Record<string, string>;\n  readonly responseBody?: string;\n\n  readonly isRetryable: boolean;\n  readonly data?: unknown;\n\n  constructor({\n    message,\n    url,\n    requestBodyValues,\n    statusCode,\n    responseHeaders,\n    responseBody,\n    cause,\n    isRetryable = statusCode != null &&\n      (statusCode === 408 || // request timeout\n        statusCode === 409 || // conflict\n        statusCode === 429 || // too many requests\n        statusCode >= 500), // server error\n    data,\n  }: {\n    message: string;\n    url: string;\n    requestBodyValues: unknown;\n    statusCode?: number;\n    responseHeaders?: Record<string, string>;\n    responseBody?: string;\n    cause?: unknown;\n    isRetryable?: boolean;\n    data?: unknown;\n  }) {\n    super({ name, message, cause });\n\n    this.url = url;\n    this.requestBodyValues = requestBodyValues;\n    this.statusCode = statusCode;\n    this.responseHeaders = responseHeaders;\n    this.responseBody = responseBody;\n    this.isRetryable = isRetryable;\n    this.data = data;\n  }\n\n  static isInstance(error: unknown): error is APICallError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_EmptyResponseBodyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class EmptyResponseBodyError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  constructor({ message = 'Empty response body' }: { message?: string } = {}) {\n    super({ name, message });\n  }\n\n  static isInstance(error: unknown): error is EmptyResponseBodyError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","export function getErrorMessage(error: unknown | undefined) {\n  if (error == null) {\n    return 'unknown error';\n  }\n\n  if (typeof error === 'string') {\n    return error;\n  }\n\n  if (error instanceof Error) {\n    return error.message;\n  }\n\n  return JSON.stringify(error);\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidArgumentError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * A function argument is invalid.\n */\nexport class InvalidArgumentError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly argument: string;\n\n  constructor({\n    message,\n    cause,\n    argument,\n  }: {\n    argument: string;\n    message: string;\n    cause?: unknown;\n  }) {\n    super({ name, message, cause });\n\n    this.argument = argument;\n  }\n\n  static isInstance(error: unknown): error is InvalidArgumentError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidPromptError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * A prompt is invalid. This error should be thrown by providers when they cannot\n * process a prompt.\n */\nexport class InvalidPromptError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly prompt: unknown;\n\n  constructor({\n    prompt,\n    message,\n    cause,\n  }: {\n    prompt: unknown;\n    message: string;\n    cause?: unknown;\n  }) {\n    super({ name, message: `Invalid prompt: ${message}`, cause });\n\n    this.prompt = prompt;\n  }\n\n  static isInstance(error: unknown): error is InvalidPromptError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidResponseDataError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * Server returned a response with invalid data content.\n * This should be thrown by providers when they cannot parse the response from the API.\n */\nexport class InvalidResponseDataError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly data: unknown;\n\n  constructor({\n    data,\n    message = `Invalid response data: ${JSON.stringify(data)}.`,\n  }: {\n    data: unknown;\n    message?: string;\n  }) {\n    super({ name, message });\n\n    this.data = data;\n  }\n\n  static isInstance(error: unknown): error is InvalidResponseDataError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_JSONParseError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n// TODO v5: rename to ParseError\nexport class JSONParseError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly text: string;\n\n  constructor({ text, cause }: { text: string; cause: unknown }) {\n    super({\n      name,\n      message:\n        `JSON parsing failed: ` +\n        `Text: ${text}.\\n` +\n        `Error message: ${getErrorMessage(cause)}`,\n      cause,\n    });\n\n    this.text = text;\n  }\n\n  static isInstance(error: unknown): error is JSONParseError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadAPIKeyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadAPIKeyError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  constructor({ message }: { message: string }) {\n    super({ name, message });\n  }\n\n  static isInstance(error: unknown): error is LoadAPIKeyError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadSettingError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadSettingError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  constructor({ message }: { message: string }) {\n    super({ name, message });\n  }\n\n  static isInstance(error: unknown): error is LoadSettingError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_NoContentGeneratedError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\nThrown when the AI provider fails to generate any content.\n */\nexport class NoContentGeneratedError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  constructor({\n    message = 'No content generated.',\n  }: { message?: string } = {}) {\n    super({ name, message });\n  }\n\n  static isInstance(error: unknown): error is NoContentGeneratedError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_NoSuchModelError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class NoSuchModelError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly modelId: string;\n  readonly modelType:\n    | 'languageModel'\n    | 'textEmbeddingModel'\n    | 'imageModel'\n    | 'transcriptionModel'\n    | 'speechModel';\n\n  constructor({\n    errorName = name,\n    modelId,\n    modelType,\n    message = `No such ${modelType}: ${modelId}`,\n  }: {\n    errorName?: string;\n    modelId: string;\n    modelType:\n      | 'languageModel'\n      | 'textEmbeddingModel'\n      | 'imageModel'\n      | 'transcriptionModel'\n      | 'speechModel';\n    message?: string;\n  }) {\n    super({ name: errorName, message });\n\n    this.modelId = modelId;\n    this.modelType = modelType;\n  }\n\n  static isInstance(error: unknown): error is NoSuchModelError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_TooManyEmbeddingValuesForCallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TooManyEmbeddingValuesForCallError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly provider: string;\n  readonly modelId: string;\n  readonly maxEmbeddingsPerCall: number;\n  readonly values: Array<unknown>;\n\n  constructor(options: {\n    provider: string;\n    modelId: string;\n    maxEmbeddingsPerCall: number;\n    values: Array<unknown>;\n  }) {\n    super({\n      name,\n      message:\n        `Too many values for a single embedding call. ` +\n        `The ${options.provider} model \"${options.modelId}\" can only embed up to ` +\n        `${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`,\n    });\n\n    this.provider = options.provider;\n    this.modelId = options.modelId;\n    this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;\n    this.values = options.values;\n  }\n\n  static isInstance(\n    error: unknown,\n  ): error is TooManyEmbeddingValuesForCallError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_TypeValidationError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TypeValidationError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly value: unknown;\n\n  constructor({ value, cause }: { value: unknown; cause: unknown }) {\n    super({\n      name,\n      message:\n        `Type validation failed: ` +\n        `Value: ${JSON.stringify(value)}.\\n` +\n        `Error message: ${getErrorMessage(cause)}`,\n      cause,\n    });\n\n    this.value = value;\n  }\n\n  static isInstance(error: unknown): error is TypeValidationError {\n    return AISDKError.hasMarker(error, marker);\n  }\n\n  /**\n   * Wraps an error into a TypeValidationError.\n   * If the cause is already a TypeValidationError with the same value, it returns the cause.\n   * Otherwise, it creates a new TypeValidationError.\n   *\n   * @param {Object} params - The parameters for wrapping the error.\n   * @param {unknown} params.value - The value that failed validation.\n   * @param {unknown} params.cause - The original error or cause of the validation failure.\n   * @returns {TypeValidationError} A TypeValidationError instance.\n   */\n  static wrap({\n    value,\n    cause,\n  }: {\n    value: unknown;\n    cause: unknown;\n  }): TypeValidationError {\n    return TypeValidationError.isInstance(cause) && cause.value === value\n      ? cause\n      : new TypeValidationError({ value, cause });\n  }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_UnsupportedFunctionalityError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class UnsupportedFunctionalityError extends AISDKError {\n  private readonly [symbol] = true; // used in isInstance\n\n  readonly functionality: string;\n\n  constructor({\n    functionality,\n    message = `'${functionality}' functionality not supported.`,\n  }: {\n    functionality: string;\n    message?: string;\n  }) {\n    super({ name, message });\n    this.functionality = functionality;\n  }\n\n  static isInstance(error: unknown): error is UnsupportedFunctionalityError {\n    return AISDKError.hasMarker(error, marker);\n  }\n}\n","import { JSONArray, JSONObject, JSONValue } from './json-value';\n\nexport function isJSONValue(value: unknown): value is JSONValue {\n  if (\n    value === null ||\n    typeof value === 'string' ||\n    typeof value === 'number' ||\n    typeof value === 'boolean'\n  ) {\n    return true;\n  }\n\n  if (Array.isArray(value)) {\n    return value.every(isJSONValue);\n  }\n\n  if (typeof value === 'object') {\n    return Object.entries(value).every(\n      ([key, val]) => typeof key === 'string' && isJSONValue(val),\n    );\n  }\n\n  return false;\n}\n\nexport function isJSONArray(value: unknown): value is JSONArray {\n  return Array.isArray(value) && value.every(isJSONValue);\n}\n\nexport function isJSONObject(value: unknown): value is JSONObject {\n  return (\n    value != null &&\n    typeof value === 'object' &&\n    Object.entries(value).every(\n      ([key, val]) => typeof key === 'string' && isJSONValue(val),\n    )\n  );\n}\n","/**\n * The type of error that occurred.\n * @public\n */\nexport type ErrorType = 'invalid-retry' | 'unknown-field'\n\n/**\n * Error thrown when encountering an issue during parsing.\n *\n * @public\n */\nexport class ParseError extends Error {\n  /**\n   * The type of error that occurred.\n   */\n  type: ErrorType\n\n  /**\n   * In the case of an unknown field encountered in the stream, this will be the field name.\n   */\n  field?: string\n\n  /**\n   * In the case of an unknown field encountered in the stream, this will be the value of the field.\n   */\n  value?: string\n\n  /**\n   * The line that caused the error, if available.\n   */\n  line?: string\n\n  constructor(\n    message: string,\n    options: {type: ErrorType; field?: string; value?: string; line?: string},\n  ) {\n    super(message)\n    this.name = 'ParseError'\n    this.type = options.type\n    this.field = options.field\n    this.value = options.value\n    this.line = options.line\n  }\n}\n","/**\n * EventSource/Server-Sent Events parser\n * @see https://html.spec.whatwg.org/multipage/server-sent-events.html\n */\nimport {ParseError} from './errors.ts'\nimport type {EventSourceParser, ParserCallbacks} from './types.ts'\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction noop(_arg: unknown) {\n  // intentional noop\n}\n\n/**\n * Creates a new EventSource parser.\n *\n * @param callbacks - Callbacks to invoke on different parsing events:\n *   - `onEvent` when a new event is parsed\n *   - `onError` when an error occurs\n *   - `onRetry` when a new reconnection interval has been sent from the server\n *   - `onComment` when a comment is encountered in the stream\n *\n * @returns A new EventSource parser, with `parse` and `reset` methods.\n * @public\n */\nexport function createParser(callbacks: ParserCallbacks): EventSourceParser {\n  if (typeof callbacks === 'function') {\n    throw new TypeError(\n      '`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?',\n    )\n  }\n\n  const {onEvent = noop, onError = noop, onRetry = noop, onComment} = callbacks\n\n  let incompleteLine = ''\n\n  let isFirstChunk = true\n  let id: string | undefined\n  let data = ''\n  let eventType = ''\n\n  function feed(newChunk: string) {\n    // Strip any UTF8 byte order mark (BOM) at the start of the stream\n    const chunk = isFirstChunk ? newChunk.replace(/^\\xEF\\xBB\\xBF/, '') : newChunk\n\n    // If there was a previous incomplete line, append it to the new chunk,\n    // so we may process it together as a new (hopefully complete) chunk.\n    const [complete, incomplete] = splitLines(`${incompleteLine}${chunk}`)\n\n    for (const line of complete) {\n      parseLine(line)\n    }\n\n    incompleteLine = incomplete\n    isFirstChunk = false\n  }\n\n  function parseLine(line: string) {\n    // If the line is empty (a blank line), dispatch the event\n    if (line === '') {\n      dispatchEvent()\n      return\n    }\n\n    // If the line starts with a U+003A COLON character (:), ignore the line.\n    if (line.startsWith(':')) {\n      if (onComment) {\n        onComment(line.slice(line.startsWith(': ') ? 2 : 1))\n      }\n      return\n    }\n\n    // If the line contains a U+003A COLON character (:)\n    const fieldSeparatorIndex = line.indexOf(':')\n    if (fieldSeparatorIndex !== -1) {\n      // Collect the characters on the line before the first U+003A COLON character (:),\n      // and let `field` be that string.\n      const field = line.slice(0, fieldSeparatorIndex)\n\n      // Collect the characters on the line after the first U+003A COLON character (:),\n      // and let `value` be that string. If value starts with a U+0020 SPACE character,\n      // remove it from value.\n      const offset = line[fieldSeparatorIndex + 1] === ' ' ? 2 : 1\n      const value = line.slice(fieldSeparatorIndex + offset)\n\n      processField(field, value, line)\n      return\n    }\n\n    // Otherwise, the string is not empty but does not contain a U+003A COLON character (:)\n    // Process the field using the whole line as the field name, and an empty string as the field value.\n    // 👆 This is according to spec. That means that a line that has the value `data` will result in\n    // a newline being added to the current `data` buffer, for instance.\n    processField(line, '', line)\n  }\n\n  function processField(field: string, value: string, line: string) {\n    // Field names must be compared literally, with no case folding performed.\n    switch (field) {\n      case 'event':\n        // Set the `event type` buffer to field value\n        eventType = value\n        break\n      case 'data':\n        // Append the field value to the `data` buffer, then append a single U+000A LINE FEED(LF)\n        // character to the `data` buffer.\n        data = `${data}${value}\\n`\n        break\n      case 'id':\n        // If the field value does not contain U+0000 NULL, then set the `ID` buffer to\n        // the field value. Otherwise, ignore the field.\n        id = value.includes('\\0') ? undefined : value\n        break\n      case 'retry':\n        // If the field value consists of only ASCII digits, then interpret the field value as an\n        // integer in base ten, and set the event stream's reconnection time to that integer.\n        // Otherwise, ignore the field.\n        if (/^\\d+$/.test(value)) {\n          onRetry(parseInt(value, 10))\n        } else {\n          onError(\n            new ParseError(`Invalid \\`retry\\` value: \"${value}\"`, {\n              type: 'invalid-retry',\n              value,\n              line,\n            }),\n          )\n        }\n        break\n      default:\n        // Otherwise, the field is ignored.\n        onError(\n          new ParseError(\n            `Unknown field \"${field.length > 20 ? `${field.slice(0, 20)}…` : field}\"`,\n            {type: 'unknown-field', field, value, line},\n          ),\n        )\n        break\n    }\n  }\n\n  function dispatchEvent() {\n    const shouldDispatch = data.length > 0\n    if (shouldDispatch) {\n      onEvent({\n        id,\n        event: eventType || undefined,\n        // If the data buffer's last character is a U+000A LINE FEED (LF) character,\n        // then remove the last character from the data buffer.\n        data: data.endsWith('\\n') ? data.slice(0, -1) : data,\n      })\n    }\n\n    // Reset for the next event\n    id = undefined\n    data = ''\n    eventType = ''\n  }\n\n  function reset(options: {consume?: boolean} = {}) {\n    if (incompleteLine && options.consume) {\n      parseLine(incompleteLine)\n    }\n\n    isFirstChunk = true\n    id = undefined\n    data = ''\n    eventType = ''\n    incompleteLine = ''\n  }\n\n  return {feed, reset}\n}\n\n/**\n * For the given `chunk`, split it into lines according to spec, and return any remaining incomplete line.\n *\n * @param chunk - The chunk to split into lines\n * @returns A tuple containing an array of complete lines, and any remaining incomplete line\n * @internal\n */\nfunction splitLines(chunk: string): [complete: Array<string>, incomplete: string] {\n  /**\n   * According to the spec, a line is terminated by either:\n   * - U+000D CARRIAGE RETURN U+000A LINE FEED (CRLF) character pair\n   * - a single U+000A LINE FEED(LF) character not preceded by a U+000D CARRIAGE RETURN(CR) character\n   * - a single U+000D CARRIAGE RETURN(CR) character not followed by a U+000A LINE FEED(LF) character\n   */\n  const lines: Array<string> = []\n  let incompleteLine = ''\n  let searchIndex = 0\n\n  while (searchIndex < chunk.length) {\n    // Find next line terminator\n    const crIndex = chunk.indexOf('\\r', searchIndex)\n    const lfIndex = chunk.indexOf('\\n', searchIndex)\n\n    // Determine line end\n    let lineEnd = -1\n    if (crIndex !== -1 && lfIndex !== -1) {\n      // CRLF case\n      lineEnd = Math.min(crIndex, lfIndex)\n    } else if (crIndex !== -1) {\n      lineEnd = crIndex\n    } else if (lfIndex !== -1) {\n      lineEnd = lfIndex\n    }\n\n    // Extract line if terminator found\n    if (lineEnd === -1) {\n      // No terminator found, rest is incomplete\n      incompleteLine = chunk.slice(searchIndex)\n      break\n    } else {\n      const line = chunk.slice(searchIndex, lineEnd)\n      lines.push(line)\n\n      // Move past line terminator\n      searchIndex = lineEnd + 1\n      if (chunk[searchIndex - 1] === '\\r' && chunk[searchIndex] === '\\n') {\n        searchIndex++\n      }\n    }\n  }\n\n  return [lines, incompleteLine]\n}\n","import {createParser} from './parse.ts'\nimport type {EventSourceMessage, EventSourceParser} from './types.ts'\n\n/**\n * Options for the EventSourceParserStream.\n *\n * @public\n */\nexport interface StreamOptions {\n  /**\n   * Behavior when a parsing error occurs.\n   *\n   * - A custom function can be provided to handle the error.\n   * - `'terminate'` will error the stream and stop parsing.\n   * - Any other value will ignore the error and continue parsing.\n   *\n   * @defaultValue `undefined`\n   */\n  onError?: 'terminate' | ((error: Error) => void)\n\n  /**\n   * Callback for when a reconnection interval is sent from the server.\n   *\n   * @param retry - The number of milliseconds to wait before reconnecting.\n   */\n  onRetry?: (retry: number) => void\n\n  /**\n   * Callback for when a comment is encountered in the stream.\n   *\n   * @param comment - The comment encountered in the stream.\n   */\n  onComment?: (comment: string) => void\n}\n\n/**\n * A TransformStream that ingests a stream of strings and produces a stream of `EventSourceMessage`.\n *\n * @example Basic usage\n * ```\n * const eventStream =\n *   response.body\n *     .pipeThrough(new TextDecoderStream())\n *     .pipeThrough(new EventSourceParserStream())\n * ```\n *\n * @example Terminate stream on parsing errors\n * ```\n * const eventStream =\n *  response.body\n *   .pipeThrough(new TextDecoderStream())\n *   .pipeThrough(new EventSourceParserStream({terminateOnError: true}))\n * ```\n *\n * @public\n */\nexport class EventSourceParserStream extends TransformStream<string, EventSourceMessage> {\n  constructor({onError, onRetry, onComment}: StreamOptions = {}) {\n    let parser!: EventSourceParser\n\n    super({\n      start(controller) {\n        parser = createParser({\n          onEvent: (event) => {\n            controller.enqueue(event)\n          },\n          onError(error) {\n            if (onError === 'terminate') {\n              controller.error(error)\n            } else if (typeof onError === 'function') {\n              onError(error)\n            }\n\n            // Ignore by default\n          },\n          onRetry,\n          onComment,\n        })\n      },\n      transform(chunk) {\n        parser.feed(chunk)\n      },\n    })\n  }\n}\n\nexport {type ErrorType, ParseError} from './errors.ts'\nexport type {EventSourceMessage} from './types.ts'\n","export function combineHeaders(\n  ...headers: Array<Record<string, string | undefined> | undefined>\n): Record<string, string | undefined> {\n  return headers.reduce(\n    (combinedHeaders, currentHeaders) => ({\n      ...combinedHeaders,\n      ...(currentHeaders ?? {}),\n    }),\n    {},\n  ) as Record<string, string | undefined>;\n}\n","/**\n * Converts an AsyncIterator to a ReadableStream.\n *\n * @template T - The type of elements produced by the AsyncIterator.\n * @param { <T>} iterator - The AsyncIterator to convert.\n * @returns {ReadableStream<T>} - A ReadableStream that provides the same data as the AsyncIterator.\n */\nexport function convertAsyncIteratorToReadableStream<T>(\n  iterator: AsyncIterator<T>,\n): ReadableStream<T> {\n  return new ReadableStream<T>({\n    /**\n     * Called when the consumer wants to pull more data from the stream.\n     *\n     * @param {ReadableStreamDefaultController<T>} controller - The controller to enqueue data into the stream.\n     * @returns {Promise<void>}\n     */\n    async pull(controller) {\n      try {\n        const { value, done } = await iterator.next();\n        if (done) {\n          controller.close();\n        } else {\n          controller.enqueue(value);\n        }\n      } catch (error) {\n        controller.error(error);\n      }\n    },\n    /**\n     * Called when the consumer cancels the stream.\n     */\n    cancel() {},\n  });\n}\n","/**\n * Creates a Promise that resolves after a specified delay\n * @param delayInMs - The delay duration in milliseconds. If null or undefined, resolves immediately.\n * @param signal - Optional AbortSignal to cancel the delay\n * @returns A Promise that resolves after the specified delay\n * @throws {DOMException} When the signal is aborted\n */\nexport async function delay(\n  delayInMs?: number | null,\n  options?: {\n    abortSignal?: AbortSignal;\n  },\n): Promise<void> {\n  if (delayInMs == null) {\n    return Promise.resolve();\n  }\n\n  const signal = options?.abortSignal;\n\n  return new Promise<void>((resolve, reject) => {\n    if (signal?.aborted) {\n      reject(createAbortError());\n      return;\n    }\n\n    const timeoutId = setTimeout(() => {\n      cleanup();\n      resolve();\n    }, delayInMs);\n\n    const cleanup = () => {\n      clearTimeout(timeoutId);\n      signal?.removeEventListener('abort', onAbort);\n    };\n\n    const onAbort = () => {\n      cleanup();\n      reject(createAbortError());\n    };\n\n    signal?.addEventListener('abort', onAbort);\n  });\n}\n\nfunction createAbortError(): DOMException {\n  return new DOMException('Delay was aborted', 'AbortError');\n}\n","/**\nExtracts the headers from a response object and returns them as a key-value object.\n\n@param response - The response object to extract headers from.\n@returns The headers as a key-value object.\n*/\nexport function extractResponseHeaders(response: Response) {\n  return Object.fromEntries<string>([...response.headers]);\n}\n","import { InvalidArgumentError } from '@ai-sdk/provider';\n\n/**\nCreates an ID generator.\nThe total length of the ID is the sum of the prefix, separator, and random part length.\nNot cryptographically secure.\n\n@param alphabet - The alphabet to use for the ID. Default: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.\n@param prefix - The prefix of the ID to generate. Optional.\n@param separator - The separator between the prefix and the random part of the ID. Default: '-'.\n@param size - The size of the random part of the ID to generate. Default: 16.\n */\nexport const createIdGenerator = ({\n  prefix,\n  size = 16,\n  alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',\n  separator = '-',\n}: {\n  prefix?: string;\n  separator?: string;\n  size?: number;\n  alphabet?: string;\n} = {}): IdGenerator => {\n  const generator = () => {\n    const alphabetLength = alphabet.length;\n    const chars = new Array(size);\n    for (let i = 0; i < size; i++) {\n      chars[i] = alphabet[(Math.random() * alphabetLength) | 0];\n    }\n    return chars.join('');\n  };\n\n  if (prefix == null) {\n    return generator;\n  }\n\n  // check that the prefix is not part of the alphabet (otherwise prefix checking can fail randomly)\n  if (alphabet.includes(separator)) {\n    throw new InvalidArgumentError({\n      argument: 'separator',\n      message: `The separator \"${separator}\" must not be part of the alphabet \"${alphabet}\".`,\n    });\n  }\n\n  return () => `${prefix}${separator}${generator()}`;\n};\n\n/**\nA function that generates an ID.\n */\nexport type IdGenerator = () => string;\n\n/**\nGenerates a 16-character random string to use for IDs.\nNot cryptographically secure.\n */\nexport const generateId = createIdGenerator();\n","export function getErrorMessage(error: unknown | undefined) {\n  if (error == null) {\n    return 'unknown error';\n  }\n\n  if (typeof error === 'string') {\n    return error;\n  }\n\n  if (error instanceof Error) {\n    return error.message;\n  }\n\n  return JSON.stringify(error);\n}\n","import { APICallError } from '@ai-sdk/provider';\nimport { extractResponseHeaders } from './extract-response-headers';\nimport { FetchFunction } from './fetch-function';\nimport { handleFetchError } from './handle-fetch-error';\nimport { isAbortError } from './is-abort-error';\nimport { removeUndefinedEntries } from './remove-undefined-entries';\nimport { ResponseHandler } from './response-handler';\n\n// use function to allow for mocking in tests:\nconst getOriginalFetch = () => globalThis.fetch;\n\nexport const getFromApi = async <T>({\n  url,\n  headers = {},\n  successfulResponseHandler,\n  failedResponseHandler,\n  abortSignal,\n  fetch = getOriginalFetch(),\n}: {\n  url: string;\n  headers?: Record<string, string | undefined>;\n  failedResponseHandler: ResponseHandler<Error>;\n  successfulResponseHandler: ResponseHandler<T>;\n  abortSignal?: AbortSignal;\n  fetch?: FetchFunction;\n}) => {\n  try {\n    const response = await fetch(url, {\n      method: 'GET',\n      headers: removeUndefinedEntries(headers),\n      signal: abortSignal,\n    });\n\n    const responseHeaders = extractResponseHeaders(response);\n\n    if (!response.ok) {\n      let errorInformation: {\n        value: Error;\n        responseHeaders?: Record<string, string> | undefined;\n      };\n\n      try {\n        errorInformation = await failedResponseHandler({\n          response,\n          url,\n          requestBodyValues: {},\n        });\n      } catch (error) {\n        if (isAbortError(error) || APICallError.isInstance(error)) {\n          throw error;\n        }\n\n        throw new APICallError({\n          message: 'Failed to process error response',\n          cause: error,\n          statusCode: response.status,\n          url,\n          responseHeaders,\n          requestBodyValues: {},\n        });\n      }\n\n      throw errorInformation.value;\n    }\n\n    try {\n      return await successfulResponseHandler({\n        response,\n        url,\n        requestBodyValues: {},\n      });\n    } catch (error) {\n      if (error instanceof Error) {\n        if (isAbortError(error) || APICallError.isInstance(error)) {\n          throw error;\n        }\n      }\n\n      throw new APICallError({\n        message: 'Failed to process successful response',\n        cause: error,\n        statusCode: response.status,\n        url,\n        responseHeaders,\n        requestBodyValues: {},\n      });\n    }\n  } catch (error) {\n    throw handleFetchError({ error, url, requestBodyValues: {} });\n  }\n};\n","import { APICallError } from '@ai-sdk/provider';\nimport { isAbortError } from './is-abort-error';\n\nconst FETCH_FAILED_ERROR_MESSAGES = ['fetch failed', 'failed to fetch'];\n\nexport function handleFetchError({\n  error,\n  url,\n  requestBodyValues,\n}: {\n  error: unknown;\n  url: string;\n  requestBodyValues: unknown;\n}) {\n  if (isAbortError(error)) {\n    return error;\n  }\n\n  // unwrap original error when fetch failed (for easier debugging):\n  if (\n    error instanceof TypeError &&\n    FETCH_FAILED_ERROR_MESSAGES.includes(error.message.toLowerCase())\n  ) {\n    const cause = (error as any).cause;\n\n    if (cause != null) {\n      // Failed to connect to server:\n      return new APICallError({\n        message: `Cannot connect to API: ${cause.message}`,\n        cause,\n        url,\n        requestBodyValues,\n        isRetryable: true, // retry when network error\n      });\n    }\n  }\n\n  return error;\n}\n","export function isAbortError(error: unknown): error is Error {\n  return (\n    (error instanceof Error || error instanceof DOMException) &&\n    (error.name === 'AbortError' ||\n      error.name === 'ResponseAborted' || // Next.js\n      error.name === 'TimeoutError')\n  );\n}\n","/**\n * Removes entries from a record where the value is null or undefined.\n * @param record - The input object whose entries may be null or undefined.\n * @returns A new object containing only entries with non-null and non-undefined values.\n */\nexport function removeUndefinedEntries<T>(\n  record: Record<string, T | undefined>,\n): Record<string, T> {\n  return Object.fromEntries(\n    Object.entries(record).filter(([_key, value]) => value != null),\n  ) as Record<string, T>;\n}\n","/**\n * Checks if the given URL is supported natively by the model.\n *\n * @param mediaType - The media type of the URL. Case-sensitive.\n * @param url - The URL to check.\n * @param supportedUrls - A record where keys are case-sensitive media types (or '*')\n *                        and values are arrays of RegExp patterns for URLs.\n *\n * @returns `true` if the URL matches a pattern under the specific media type\n *          or the wildcard '*', `false` otherwise.\n */\nexport function isUrlSupported({\n  mediaType,\n  url,\n  supportedUrls,\n}: {\n  mediaType: string;\n  url: string;\n  supportedUrls: Record<string, RegExp[]>;\n}): boolean {\n  // standardize media type and url to lower case\n  url = url.toLowerCase();\n  mediaType = mediaType.toLowerCase();\n\n  return (\n    Object.entries(supportedUrls)\n      // standardize supported url map into lowercase prefixes:\n      .map(([key, value]) => {\n        const mediaType = key.toLowerCase();\n        return mediaType === '*' || mediaType === '*/*'\n          ? { mediaTypePrefix: '', regexes: value }\n          : { mediaTypePrefix: mediaType.replace(/\\*/, ''), regexes: value };\n      })\n      // gather all regexp pattern from matched media type prefixes:\n      .filter(({ mediaTypePrefix }) => mediaType.startsWith(mediaTypePrefix))\n      .flatMap(({ regexes }) => regexes)\n      // check if any pattern matches the url:\n      .some(pattern => pattern.test(url))\n  );\n}\n","import { LoadAPIKeyError } from '@ai-sdk/provider';\n\nexport function loadApiKey({\n  apiKey,\n  environmentVariableName,\n  apiKeyParameterName = 'apiKey',\n  description,\n}: {\n  apiKey: string | undefined;\n  environmentVariableName: string;\n  apiKeyParameterName?: string;\n  description: string;\n}): string {\n  if (typeof apiKey === 'string') {\n    return apiKey;\n  }\n\n  if (apiKey != null) {\n    throw new LoadAPIKeyError({\n      message: `${description} API key must be a string.`,\n    });\n  }\n\n  if (typeof process === 'undefined') {\n    throw new LoadAPIKeyError({\n      message: `${description} API key is missing. Pass it using the '${apiKeyParameterName}' parameter. Environment variables is not supported in this environment.`,\n    });\n  }\n\n  apiKey = process.env[environmentVariableName];\n\n  if (apiKey == null) {\n    throw new LoadAPIKeyError({\n      message: `${description} API key is missing. Pass it using the '${apiKeyParameterName}' parameter or the ${environmentVariableName} environment variable.`,\n    });\n  }\n\n  if (typeof apiKey !== 'string') {\n    throw new LoadAPIKeyError({\n      message: `${description} API key must be a string. The value of the ${environmentVariableName} environment variable is not a string.`,\n    });\n  }\n\n  return apiKey;\n}\n","/**\n * Loads an optional `string` setting from the environment or a parameter.\n *\n * @param settingValue - The setting value.\n * @param environmentVariableName - The environment variable name.\n * @returns The setting value.\n */\nexport function loadOptionalSetting({\n  settingValue,\n  environmentVariableName,\n}: {\n  settingValue: string | undefined;\n  environmentVariableName: string;\n}): string | undefined {\n  if (typeof settingValue === 'string') {\n    return settingValue;\n  }\n\n  if (settingValue != null || typeof process === 'undefined') {\n    return undefined;\n  }\n\n  settingValue = process.env[environmentVariableName];\n\n  if (settingValue == null || typeof settingValue !== 'string') {\n    return undefined;\n  }\n\n  return settingValue;\n}\n","import { LoadSettingError } from '@ai-sdk/provider';\n\n/**\n * Loads a `string` setting from the environment or a parameter.\n *\n * @param settingValue - The setting value.\n * @param environmentVariableName - The environment variable name.\n * @param settingName - The setting name.\n * @param description - The description of the setting.\n * @returns The setting value.\n */\nexport function loadSetting({\n  settingValue,\n  environmentVariableName,\n  settingName,\n  description,\n}: {\n  settingValue: string | undefined;\n  environmentVariableName: string;\n  settingName: string;\n  description: string;\n}): string {\n  if (typeof settingValue === 'string') {\n    return settingValue;\n  }\n\n  if (settingValue != null) {\n    throw new LoadSettingError({\n      message: `${description} setting must be a string.`,\n    });\n  }\n\n  if (typeof process === 'undefined') {\n    throw new LoadSettingError({\n      message:\n        `${description} setting is missing. ` +\n        `Pass it using the '${settingName}' parameter. ` +\n        `Environment variables is not supported in this environment.`,\n    });\n  }\n\n  settingValue = process.env[environmentVariableName];\n\n  if (settingValue == null) {\n    throw new LoadSettingError({\n      message:\n        `${description} setting is missing. ` +\n        `Pass it using the '${settingName}' parameter ` +\n        `or the ${environmentVariableName} environment variable.`,\n    });\n  }\n\n  if (typeof settingValue !== 'string') {\n    throw new LoadSettingError({\n      message:\n        `${description} setting must be a string. ` +\n        `The value of the ${environmentVariableName} environment variable is not a string.`,\n    });\n  }\n\n  return settingValue;\n}\n","import {\n  JSONParseError,\n  JSONValue,\n  TypeValidationError,\n} from '@ai-sdk/provider';\nimport * as z3 from 'zod/v3';\nimport * as z4 from 'zod/v4';\nimport { secureJsonParse } from './secure-json-parse';\nimport { safeValidateTypes, validateTypes } from './validate-types';\nimport { Validator } from './validator';\n\n/**\n * Parses a JSON string into an unknown object.\n *\n * @param text - The JSON string to parse.\n * @returns {JSONValue} - The parsed JSON object.\n */\nexport async function parseJSON(options: {\n  text: string;\n  schema?: undefined;\n}): Promise<JSONValue>;\n/**\n * Parses a JSON string into a strongly-typed object using the provided schema.\n *\n * @template T - The type of the object to parse the JSON into.\n * @param {string} text - The JSON string to parse.\n * @param {Validator<T>} schema - The schema to use for parsing the JSON.\n * @returns {Promise<T>} - The parsed object.\n */\nexport async function parseJSON<T>(options: {\n  text: string;\n  schema: z4.core.$ZodType<T> | z3.Schema<T> | Validator<T>;\n}): Promise<T>;\nexport async function parseJSON<T>({\n  text,\n  schema,\n}: {\n  text: string;\n  schema?: z4.core.$ZodType<T> | z3.Schema<T> | Validator<T>;\n}): Promise<T> {\n  try {\n    const value = secureJsonParse(text);\n\n    if (schema == null) {\n      return value;\n    }\n\n    return validateTypes<T>({ value, schema });\n  } catch (error) {\n    if (\n      JSONParseError.isInstance(error) ||\n      TypeValidationError.isInstance(error)\n    ) {\n      throw error;\n    }\n\n    throw new JSONParseError({ text, cause: error });\n  }\n}\n\nexport type ParseResult<T> =\n  | { success: true; value: T; rawValue: unknown }\n  | {\n      success: false;\n      error: JSONParseError | TypeValidationError;\n      rawValue: unknown;\n    };\n\n/**\n * Safely parses a JSON string and returns the result as an object of type `unknown`.\n *\n * @param text - The JSON string to parse.\n * @returns {Promise<object>} Either an object with `success: true` and the parsed data, or an object with `success: false` and the error that occurred.\n */\nexport async function safeParseJSON(options: {\n  text: string;\n  schema?: undefined;\n}): Promise<ParseResult<JSONValue>>;\n/**\n * Safely parses a JSON string into a strongly-typed object, using a provided schema to validate the object.\n *\n * @template T - The type of the object to parse the JSON into.\n * @param {string} text - The JSON string to parse.\n * @param {Validator<T>} schema - The schema to use for parsing the JSON.\n * @returns An object with either a `success` flag and the parsed and typed data, or a `success` flag and an error object.\n */\nexport async function safeParseJSON<T>(options: {\n  text: string;\n  schema: z4.core.$ZodType<T> | z3.Schema<T> | Validator<T>;\n}): Promise<ParseResult<T>>;\nexport async function safeParseJSON<T>({\n  text,\n  schema,\n}: {\n  text: string;\n  schema?: z4.core.$ZodType<T> | z3.Schema<T> | Validator<T>;\n}): Promise<ParseResult<T>> {\n  try {\n    const value = secureJsonParse(text);\n\n    if (schema == null) {\n      return { success: true, value: value as T, rawValue: value };\n    }\n\n    return await safeValidateTypes<T>({ value, schema });\n  } catch (error) {\n    return {\n      success: false,\n      error: JSONParseError.isInstance(error)\n        ? error\n        : new JSONParseError({ text, cause: error }),\n      rawValue: undefined,\n    };\n  }\n}\n\nexport function isParsableJson(input: string): boolean {\n  try {\n    secureJsonParse(input);\n    return true;\n  } catch {\n    return false;\n  }\n}\n","// Licensed under BSD-3-Clause (this file only)\n// Code adapted from https://github.com/fastify/secure-json-parse/blob/783fcb1b5434709466759847cec974381939673a/index.js\n//\n// Copyright (c) Vercel, Inc. (https://vercel.com)\n// Copyright (c) 2019 The Fastify Team\n// Copyright (c) 2019, Sideway Inc, and project contributors\n// All rights reserved.\n//\n// The complete list of contributors can be found at:\n// - https://github.com/hapijs/bourne/graphs/contributors\n// - https://github.com/fastify/secure-json-parse/graphs/contributors\n// - https://github.com/vercel/ai/commits/main/packages/provider-utils/src/secure-parse-json.ts\n//\n// Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n//\n// 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n//\n// 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n//\n// 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\nconst suspectProtoRx = /\"__proto__\"\\s*:/;\nconst suspectConstructorRx = /\"constructor\"\\s*:/;\n\nfunction _parse(text: string) {\n  // Parse normally\n  const obj = JSON.parse(text);\n\n  // Ignore null and non-objects\n  if (obj === null || typeof obj !== 'object') {\n    return obj;\n  }\n\n  if (\n    suspectProtoRx.test(text) === false &&\n    suspectConstructorRx.test(text) === false\n  ) {\n    return obj;\n  }\n\n  // Scan result for proto keys\n  return filter(obj);\n}\n\nfunction filter(obj: any) {\n  let next = [obj];\n\n  while (next.length) {\n    const nodes = next;\n    next = [];\n\n    for (const node of nodes) {\n      if (Object.prototype.hasOwnProperty.call(node, '__proto__')) {\n        throw new SyntaxError('Object contains forbidden prototype property');\n      }\n\n      if (\n        Object.prototype.hasOwnProperty.call(node, 'constructor') &&\n        Object.prototype.hasOwnProperty.call(node.constructor, 'prototype')\n      ) {\n        throw new SyntaxError('Object contains forbidden prototype property');\n      }\n\n      for (const key in node) {\n        const value = node[key];\n        if (value && typeof value === 'object') {\n          next.push(value);\n        }\n      }\n    }\n  }\n  return obj;\n}\n\nexport function secureJsonParse(text: string) {\n  // Performance optimization, see https://github.com/fastify/secure-json-parse/pull/90\n  const { stackTraceLimit } = Error;\n  Error.stackTraceLimit = 0;\n  try {\n    return _parse(text);\n  } finally {\n    Error.stackTraceLimit = stackTraceLimit;\n  }\n}\n","import { TypeValidationError } from '@ai-sdk/provider';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { Validator, asValidator } from './validator';\n\n/**\n * Validates the types of an unknown object using a schema and\n * return a strongly-typed object.\n *\n * @template T - The type of the object to validate.\n * @param {string} options.value - The object to validate.\n * @param {Validator<T>} options.schema - The schema to use for validating the JSON.\n * @returns {Promise<T>} - The typed object.\n */\nexport async function validateTypes<OBJECT>({\n  value,\n  schema,\n}: {\n  value: unknown;\n  schema: StandardSchemaV1<unknown, OBJECT> | Validator<OBJECT>;\n}): Promise<OBJECT> {\n  const result = await safeValidateTypes({ value, schema });\n\n  if (!result.success) {\n    throw TypeValidationError.wrap({ value, cause: result.error });\n  }\n\n  return result.value;\n}\n\n/**\n * Safely validates the types of an unknown object using a schema and\n * return a strongly-typed object.\n *\n * @template T - The type of the object to validate.\n * @param {string} options.value - The JSON object to validate.\n * @param {Validator<T>} options.schema - The schema to use for validating the JSON.\n * @returns An object with either a `success` flag and the parsed and typed data, or a `success` flag and an error object.\n */\nexport async function safeValidateTypes<OBJECT>({\n  value,\n  schema,\n}: {\n  value: unknown;\n  schema: StandardSchemaV1<unknown, OBJECT> | Validator<OBJECT>;\n}): Promise<\n  | {\n      success: true;\n      value: OBJECT;\n      rawValue: unknown;\n    }\n  | {\n      success: false;\n      error: TypeValidationError;\n      rawValue: unknown;\n    }\n> {\n  const validator = asValidator(schema);\n\n  try {\n    if (validator.validate == null) {\n      return { success: true, value: value as OBJECT, rawValue: value };\n    }\n\n    const result = await validator.validate(value);\n\n    if (result.success) {\n      return { success: true, value: result.value, rawValue: value };\n    }\n\n    return {\n      success: false,\n      error: TypeValidationError.wrap({ value, cause: result.error }),\n      rawValue: value,\n    };\n  } catch (error) {\n    return {\n      success: false,\n      error: TypeValidationError.wrap({ value, cause: error }),\n      rawValue: value,\n    };\n  }\n}\n","import { TypeValidationError } from '@ai-sdk/provider';\nimport { StandardSchemaV1 } from '@standard-schema/spec';\n\n/**\n * Used to mark validator functions so we can support both Zod and custom schemas.\n */\nexport const validatorSymbol = Symbol.for('vercel.ai.validator');\n\nexport type ValidationResult<OBJECT> =\n  | { success: true; value: OBJECT }\n  | { success: false; error: Error };\n\nexport type Validator<OBJECT = unknown> = {\n  /**\n   * Used to mark validator functions so we can support both Zod and custom schemas.\n   */\n  [validatorSymbol]: true;\n\n  /**\n   * Optional. Validates that the structure of a value matches this schema,\n   * and returns a typed version of the value if it does.\n   */\n  readonly validate?: (\n    value: unknown,\n  ) => ValidationResult<OBJECT> | PromiseLike<ValidationResult<OBJECT>>;\n};\n\n/**\n * Create a validator.\n *\n * @param validate A validation function for the schema.\n */\nexport function validator<OBJECT>(\n  validate?:\n    | undefined\n    | ((\n        value: unknown,\n      ) => ValidationResult<OBJECT> | PromiseLike<ValidationResult<OBJECT>>),\n): Validator<OBJECT> {\n  return { [validatorSymbol]: true, validate };\n}\n\nexport function isValidator(value: unknown): value is Validator {\n  return (\n    typeof value === 'object' &&\n    value !== null &&\n    validatorSymbol in value &&\n    value[validatorSymbol] === true &&\n    'validate' in value\n  );\n}\n\nexport function asValidator<OBJECT>(\n  value: Validator<OBJECT> | StandardSchemaV1<unknown, OBJECT>,\n): Validator<OBJECT> {\n  return isValidator(value) ? value : standardSchemaValidator(value);\n}\n\nexport function standardSchemaValidator<OBJECT>(\n  standardSchema: StandardSchemaV1<unknown, OBJECT>,\n): Validator<OBJECT> {\n  return validator(async value => {\n    const result = await standardSchema['~standard'].validate(value);\n\n    return result.issues == null\n      ? { success: true, value: result.value }\n      : {\n          success: false,\n          error: new TypeValidationError({\n            value,\n            cause: result.issues,\n          }),\n        };\n  });\n}\n","import {\n  EventSourceMessage,\n  EventSourceParserStream,\n} from 'eventsource-parser/stream';\nimport { ZodType } from 'zod/v4';\nimport { ParseResult, safeParseJSON } from './parse-json';\n\n/**\n * Parses a JSON event stream into a stream of parsed JSON objects.\n */\nexport function parseJsonEventStream<T>({\n  stream,\n  schema,\n}: {\n  stream: ReadableStream<Uint8Array>;\n  schema: ZodType<T>;\n}): ReadableStream<ParseResult<T>> {\n  return stream\n    .pipeThrough(new TextDecoderStream())\n    .pipeThrough(new EventSourceParserStream())\n    .pipeThrough(\n      new TransformStream<EventSourceMessage, ParseResult<T>>({\n        async transform({ data }, controller) {\n          // ignore the 'DONE' event that e.g. OpenAI sends:\n          if (data === '[DONE]') {\n            return;\n          }\n\n          controller.enqueue(await safeParseJSON({ text: data, schema }));\n        },\n      }),\n    );\n}\n","import { InvalidArgumentError } from '@ai-sdk/provider';\nimport { safeValidateTypes } from './validate-types';\nimport { z } from 'zod/v4';\n\nexport async function parseProviderOptions<T>({\n  provider,\n  providerOptions,\n  schema,\n}: {\n  provider: string;\n  providerOptions: Record<string, unknown> | undefined;\n  schema: z.core.$ZodType<T, any>;\n}): Promise<T | undefined> {\n  if (providerOptions?.[provider] == null) {\n    return undefined;\n  }\n\n  const parsedProviderOptions = await safeValidateTypes<T | undefined>({\n    value: providerOptions[provider],\n    schema,\n  });\n\n  if (!parsedProviderOptions.success) {\n    throw new InvalidArgumentError({\n      argument: 'providerOptions',\n      message: `invalid ${provider} provider options`,\n      cause: parsedProviderOptions.error,\n    });\n  }\n\n  return parsedProviderOptions.value;\n}\n","import { APICallError } from '@ai-sdk/provider';\nimport { extractResponseHeaders } from './extract-response-headers';\nimport { FetchFunction } from './fetch-function';\nimport { handleFetchError } from './handle-fetch-error';\nimport { isAbortError } from './is-abort-error';\nimport { removeUndefinedEntries } from './remove-undefined-entries';\nimport { ResponseHandler } from './response-handler';\n\n// use function to allow for mocking in tests:\nconst getOriginalFetch = () => globalThis.fetch;\n\nexport const postJsonToApi = async <T>({\n  url,\n  headers,\n  body,\n  failedResponseHandler,\n  successfulResponseHandler,\n  abortSignal,\n  fetch,\n}: {\n  url: string;\n  headers?: Record<string, string | undefined>;\n  body: unknown;\n  failedResponseHandler: ResponseHandler<APICallError>;\n  successfulResponseHandler: ResponseHandler<T>;\n  abortSignal?: AbortSignal;\n  fetch?: FetchFunction;\n}) =>\n  postToApi({\n    url,\n    headers: {\n      'Content-Type': 'application/json',\n      ...headers,\n    },\n    body: {\n      content: JSON.stringify(body),\n      values: body,\n    },\n    failedResponseHandler,\n    successfulResponseHandler,\n    abortSignal,\n    fetch,\n  });\n\nexport const postFormDataToApi = async <T>({\n  url,\n  headers,\n  formData,\n  failedResponseHandler,\n  successfulResponseHandler,\n  abortSignal,\n  fetch,\n}: {\n  url: string;\n  headers?: Record<string, string | undefined>;\n  formData: FormData;\n  failedResponseHandler: ResponseHandler<APICallError>;\n  successfulResponseHandler: ResponseHandler<T>;\n  abortSignal?: AbortSignal;\n  fetch?: FetchFunction;\n}) =>\n  postToApi({\n    url,\n    headers,\n    body: {\n      content: formData,\n      values: Object.fromEntries((formData as any).entries()),\n    },\n    failedResponseHandler,\n    successfulResponseHandler,\n    abortSignal,\n    fetch,\n  });\n\nexport const postToApi = async <T>({\n  url,\n  headers = {},\n  body,\n  successfulResponseHandler,\n  failedResponseHandler,\n  abortSignal,\n  fetch = getOriginalFetch(),\n}: {\n  url: string;\n  headers?: Record<string, string | undefined>;\n  body: {\n    content: string | FormData | Uint8Array;\n    values: unknown;\n  };\n  failedResponseHandler: ResponseHandler<Error>;\n  successfulResponseHandler: ResponseHandler<T>;\n  abortSignal?: AbortSignal;\n  fetch?: FetchFunction;\n}) => {\n  try {\n    const response = await fetch(url, {\n      method: 'POST',\n      headers: removeUndefinedEntries(headers),\n      body: body.content,\n      signal: abortSignal,\n    });\n\n    const responseHeaders = extractResponseHeaders(response);\n\n    if (!response.ok) {\n      let errorInformation: {\n        value: Error;\n        responseHeaders?: Record<string, string> | undefined;\n      };\n\n      try {\n        errorInformation = await failedResponseHandler({\n          response,\n          url,\n          requestBodyValues: body.values,\n        });\n      } catch (error) {\n        if (isAbortError(error) || APICallError.isInstance(error)) {\n          throw error;\n        }\n\n        throw new APICallError({\n          message: 'Failed to process error response',\n          cause: error,\n          statusCode: response.status,\n          url,\n          responseHeaders,\n          requestBodyValues: body.values,\n        });\n      }\n\n      throw errorInformation.value;\n    }\n\n    try {\n      return await successfulResponseHandler({\n        response,\n        url,\n        requestBodyValues: body.values,\n      });\n    } catch (error) {\n      if (error instanceof Error) {\n        if (isAbortError(error) || APICallError.isInstance(error)) {\n          throw error;\n        }\n      }\n\n      throw new APICallError({\n        message: 'Failed to process successful response',\n        cause: error,\n        statusCode: response.status,\n        url,\n        responseHeaders,\n        requestBodyValues: body.values,\n      });\n    }\n  } catch (error) {\n    throw handleFetchError({ error, url, requestBodyValues: body.values });\n  }\n};\n","import { JSONValue, LanguageModelV2ToolResultPart } from '@ai-sdk/provider';\nimport { FlexibleSchema } from '../schema';\nimport { ModelMessage } from './model-message';\nimport { ProviderOptions } from './provider-options';\n\n/**\n * Additional options that are sent into each tool call.\n */\n// TODO AI SDK 6: rename to ToolExecutionOptions\nexport interface ToolCallOptions {\n  /**\n   * The ID of the tool call. You can use it e.g. when sending tool-call related information with stream data.\n   */\n  toolCallId: string;\n\n  /**\n   * Messages that were sent to the language model to initiate the response that contained the tool call.\n   * The messages **do not** include the system prompt nor the assistant response that contained the tool call.\n   */\n  messages: ModelMessage[];\n\n  /**\n   * An optional abort signal that indicates that the overall operation should be aborted.\n   */\n  abortSignal?: AbortSignal;\n\n  /**\n   * Additional context.\n   *\n   * Experimental (can break in patch releases).\n   */\n  experimental_context?: unknown;\n}\n\nexport type ToolExecuteFunction<INPUT, OUTPUT> = (\n  input: INPUT,\n  options: ToolCallOptions,\n) => AsyncIterable<OUTPUT> | PromiseLike<OUTPUT> | OUTPUT;\n\n// 0 extends 1 & N checks for any\n// [N] extends [never] checks for never\ntype NeverOptional<N, T> = 0 extends 1 & N\n  ? Partial<T>\n  : [N] extends [never]\n    ? Partial<Record<keyof T, undefined>>\n    : T;\n\n/**\nA tool contains the description and the schema of the input that the tool expects.\nThis enables the language model to generate the input.\n\nThe tool can also contain an optional execute function for the actual execution function of the tool.\n */\nexport type Tool<\n  INPUT extends JSONValue | unknown | never = any,\n  OUTPUT extends JSONValue | unknown | never = any,\n> = {\n  /**\nAn optional description of what the tool does.\nWill be used by the language model to decide whether to use the tool.\nNot used for provider-defined tools.\n   */\n  description?: string;\n\n  /**\nAdditional provider-specific metadata. They are passed through\nto the provider from the AI SDK and enable provider-specific\nfunctionality that can be fully encapsulated in the provider.\n   */\n  providerOptions?: ProviderOptions;\n} & NeverOptional<\n  INPUT,\n  {\n    /**\nThe schema of the input that the tool expects. The language model will use this to generate the input.\nIt is also used to validate the output of the language model.\nUse descriptions to make the input understandable for the language model.\n   */\n    inputSchema: FlexibleSchema<INPUT>;\n\n    /**\n     * Optional function that is called when the argument streaming starts.\n     * Only called when the tool is used in a streaming context.\n     */\n    onInputStart?: (options: ToolCallOptions) => void | PromiseLike<void>;\n\n    /**\n     * Optional function that is called when an argument streaming delta is available.\n     * Only called when the tool is used in a streaming context.\n     */\n    onInputDelta?: (\n      options: { inputTextDelta: string } & ToolCallOptions,\n    ) => void | PromiseLike<void>;\n\n    /**\n     * Optional function that is called when a tool call can be started,\n     * even if the execute function is not provided.\n     */\n    onInputAvailable?: (\n      options: {\n        input: [INPUT] extends [never] ? undefined : INPUT;\n      } & ToolCallOptions,\n    ) => void | PromiseLike<void>;\n  }\n> &\n  NeverOptional<\n    OUTPUT,\n    {\n      /**\nOptional conversion function that maps the tool result to an output that can be used by the language model.\n\nIf not provided, the tool result will be sent as a JSON object.\n      */\n      toModelOutput?: (\n        output: OUTPUT,\n      ) => LanguageModelV2ToolResultPart['output'];\n    } & (\n      | {\n          /**\nAn async function that is called with the arguments from the tool call and produces a result.\nIf not provided, the tool will not be executed automatically.\n\n@args is the input of the tool call.\n@options.abortSignal is a signal that can be used to abort the tool call.\n      */\n          execute: ToolExecuteFunction<INPUT, OUTPUT>;\n\n          outputSchema?: FlexibleSchema<OUTPUT>;\n        }\n      | {\n          outputSchema: FlexibleSchema<OUTPUT>;\n\n          execute?: never;\n        }\n    )\n  > &\n  (\n    | {\n        /**\nTool with user-defined input and output schemas.\n     */\n        type?: undefined | 'function';\n      }\n    | {\n        /**\nTool that is defined at runtime (e.g. an MCP tool).\nThe types of input and output are not known at development time.\n       */\n        type: 'dynamic';\n      }\n    | {\n        /**\nTool with provider-defined input and output schemas.\n     */\n        type: 'provider-defined';\n\n        /**\nThe ID of the tool. Should follow the format `<provider-name>.<unique-tool-name>`.\n   */\n        id: `${string}.${string}`;\n\n        /**\nThe name of the tool that the user must use in the tool set.\n */\n        name: string;\n\n        /**\nThe arguments for configuring the tool. Must match the expected arguments defined by the provider for this tool.\n     */\n        args: Record<string, unknown>;\n      }\n  );\n\n/**\n * Infer the input type of a tool.\n */\nexport type InferToolInput<TOOL extends Tool> =\n  TOOL extends Tool<infer INPUT, any> ? INPUT : never;\n\n/**\n * Infer the output type of a tool.\n */\nexport type InferToolOutput<TOOL extends Tool> =\n  TOOL extends Tool<any, infer OUTPUT> ? OUTPUT : never;\n\n/**\nHelper function for inferring the execute args of a tool.\n */\n// Note: overload order is important for auto-completion\nexport function tool<INPUT, OUTPUT>(\n  tool: Tool<INPUT, OUTPUT>,\n): Tool<INPUT, OUTPUT>;\nexport function tool<INPUT>(tool: Tool<INPUT, never>): Tool<INPUT, never>;\nexport function tool<OUTPUT>(tool: Tool<never, OUTPUT>): Tool<never, OUTPUT>;\nexport function tool(tool: Tool<never, never>): Tool<never, never>;\nexport function tool(tool: any): any {\n  return tool;\n}\n\n/**\nHelper function for defining a dynamic tool.\n */\nexport function dynamicTool(tool: {\n  description?: string;\n  providerOptions?: ProviderOptions;\n  inputSchema: FlexibleSchema<unknown>;\n  execute: ToolExecuteFunction<unknown, unknown>;\n  toModelOutput?: (output: unknown) => LanguageModelV2ToolResultPart['output'];\n}): Tool<unknown, unknown> & {\n  type: 'dynamic';\n} {\n  return { ...tool, type: 'dynamic' };\n}\n","import { tool, Tool, ToolExecuteFunction } from './types/tool';\nimport { FlexibleSchema } from './schema';\n\nexport type ProviderDefinedToolFactory<INPUT, ARGS extends object> = <OUTPUT>(\n  options: ARGS & {\n    execute?: ToolExecuteFunction<INPUT, OUTPUT>;\n    toModelOutput?: Tool<INPUT, OUTPUT>['toModelOutput'];\n    onInputStart?: Tool<INPUT, OUTPUT>['onInputStart'];\n    onInputDelta?: Tool<INPUT, OUTPUT>['onInputDelta'];\n    onInputAvailable?: Tool<INPUT, OUTPUT>['onInputAvailable'];\n  },\n) => Tool<INPUT, OUTPUT>;\n\nexport function createProviderDefinedToolFactory<INPUT, ARGS extends object>({\n  id,\n  name,\n  inputSchema,\n}: {\n  id: `${string}.${string}`;\n  name: string;\n  inputSchema: FlexibleSchema<INPUT>;\n}): ProviderDefinedToolFactory<INPUT, ARGS> {\n  return <OUTPUT>({\n    execute,\n    outputSchema,\n    toModelOutput,\n    onInputStart,\n    onInputDelta,\n    onInputAvailable,\n    ...args\n  }: ARGS & {\n    execute?: ToolExecuteFunction<INPUT, OUTPUT>;\n    outputSchema?: FlexibleSchema<OUTPUT>;\n    toModelOutput?: Tool<INPUT, OUTPUT>['toModelOutput'];\n    onInputStart?: Tool<INPUT, OUTPUT>['onInputStart'];\n    onInputDelta?: Tool<INPUT, OUTPUT>['onInputDelta'];\n    onInputAvailable?: Tool<INPUT, OUTPUT>['onInputAvailable'];\n  }): Tool<INPUT, OUTPUT> =>\n    tool({\n      type: 'provider-defined',\n      id,\n      name,\n      args,\n      inputSchema,\n      outputSchema,\n      execute,\n      toModelOutput,\n      onInputStart,\n      onInputDelta,\n      onInputAvailable,\n    });\n}\n\nexport type ProviderDefinedToolFactoryWithOutputSchema<\n  INPUT,\n  OUTPUT,\n  ARGS extends object,\n> = (\n  options: ARGS & {\n    execute?: ToolExecuteFunction<INPUT, OUTPUT>;\n    toModelOutput?: Tool<INPUT, OUTPUT>['toModelOutput'];\n    onInputStart?: Tool<INPUT, OUTPUT>['onInputStart'];\n    onInputDelta?: Tool<INPUT, OUTPUT>['onInputDelta'];\n    onInputAvailable?: Tool<INPUT, OUTPUT>['onInputAvailable'];\n  },\n) => Tool<INPUT, OUTPUT>;\n\nexport function createProviderDefinedToolFactoryWithOutputSchema<\n  INPUT,\n  OUTPUT,\n  ARGS extends object,\n>({\n  id,\n  name,\n  inputSchema,\n  outputSchema,\n}: {\n  id: `${string}.${string}`;\n  name: string;\n  inputSchema: FlexibleSchema<INPUT>;\n  outputSchema: FlexibleSchema<OUTPUT>;\n}): ProviderDefinedToolFactoryWithOutputSchema<INPUT, OUTPUT, ARGS> {\n  return ({\n    execute,\n    toModelOutput,\n    onInputStart,\n    onInputDelta,\n    onInputAvailable,\n    ...args\n  }: ARGS & {\n    execute?: ToolExecuteFunction<INPUT, OUTPUT>;\n    toModelOutput?: Tool<INPUT, OUTPUT>['toModelOutput'];\n    onInputStart?: Tool<INPUT, OUTPUT>['onInputStart'];\n    onInputDelta?: Tool<INPUT, OUTPUT>['onInputDelta'];\n    onInputAvailable?: Tool<INPUT, OUTPUT>['onInputAvailable'];\n  }): Tool<INPUT, OUTPUT> =>\n    tool({\n      type: 'provider-defined',\n      id,\n      name,\n      args,\n      inputSchema,\n      outputSchema,\n      execute,\n      toModelOutput,\n      onInputStart,\n      onInputDelta,\n      onInputAvailable,\n    });\n}\n","export type Resolvable<T> =\n  | T // Raw value\n  | Promise<T> // Promise of value\n  | (() => T) // Function returning value\n  | (() => Promise<T>); // Function returning promise of value\n\n/**\n * Resolves a value that could be a raw value, a Promise, a function returning a value,\n * or a function returning a Promise.\n */\nexport async function resolve<T>(value: Resolvable<T>): Promise<T> {\n  // If it's a function, call it to get the value/promise\n  if (typeof value === 'function') {\n    value = (value as Function)();\n  }\n\n  // Otherwise just resolve whatever we got (value or promise)\n  return Promise.resolve(value as T);\n}\n","import { APICallError, EmptyResponseBodyError } from '@ai-sdk/provider';\nimport { ZodType } from 'zod/v4';\nimport { extractResponseHeaders } from './extract-response-headers';\nimport { parseJSON, ParseResult, safeParseJSON } from './parse-json';\nimport { parseJsonEventStream } from './parse-json-event-stream';\n\nexport type ResponseHandler<RETURN_TYPE> = (options: {\n  url: string;\n  requestBodyValues: unknown;\n  response: Response;\n}) => PromiseLike<{\n  value: RETURN_TYPE;\n  rawValue?: unknown;\n  responseHeaders?: Record<string, string>;\n}>;\n\nexport const createJsonErrorResponseHandler =\n  <T>({\n    errorSchema,\n    errorToMessage,\n    isRetryable,\n  }: {\n    errorSchema: ZodType<T>;\n    errorToMessage: (error: T) => string;\n    isRetryable?: (response: Response, error?: T) => boolean;\n  }): ResponseHandler<APICallError> =>\n  async ({ response, url, requestBodyValues }) => {\n    const responseBody = await response.text();\n    const responseHeaders = extractResponseHeaders(response);\n\n    // Some providers return an empty response body for some errors:\n    if (responseBody.trim() === '') {\n      return {\n        responseHeaders,\n        value: new APICallError({\n          message: response.statusText,\n          url,\n          requestBodyValues,\n          statusCode: response.status,\n          responseHeaders,\n          responseBody,\n          isRetryable: isRetryable?.(response),\n        }),\n      };\n    }\n\n    // resilient parsing in case the response is not JSON or does not match the schema:\n    try {\n      const parsedError = await parseJSON({\n        text: responseBody,\n        schema: errorSchema,\n      });\n\n      return {\n        responseHeaders,\n        value: new APICallError({\n          message: errorToMessage(parsedError),\n          url,\n          requestBodyValues,\n          statusCode: response.status,\n          responseHeaders,\n          responseBody,\n          data: parsedError,\n          isRetryable: isRetryable?.(response, parsedError),\n        }),\n      };\n    } catch (parseError) {\n      return {\n        responseHeaders,\n        value: new APICallError({\n          message: response.statusText,\n          url,\n          requestBodyValues,\n          statusCode: response.status,\n          responseHeaders,\n          responseBody,\n          isRetryable: isRetryable?.(response),\n        }),\n      };\n    }\n  };\n\nexport const createEventSourceResponseHandler =\n  <T>(\n    chunkSchema: ZodType<T>,\n  ): ResponseHandler<ReadableStream<ParseResult<T>>> =>\n  async ({ response }: { response: Response }) => {\n    const responseHeaders = extractResponseHeaders(response);\n\n    if (response.body == null) {\n      throw new EmptyResponseBodyError({});\n    }\n\n    return {\n      responseHeaders,\n      value: parseJsonEventStream({\n        stream: response.body,\n        schema: chunkSchema,\n      }),\n    };\n  };\n\nexport const createJsonStreamResponseHandler =\n  <T>(\n    chunkSchema: ZodType<T>,\n  ): ResponseHandler<ReadableStream<ParseResult<T>>> =>\n  async ({ response }: { response: Response }) => {\n    const responseHeaders = extractResponseHeaders(response);\n\n    if (response.body == null) {\n      throw new EmptyResponseBodyError({});\n    }\n\n    let buffer = '';\n\n    return {\n      responseHeaders,\n      value: response.body.pipeThrough(new TextDecoderStream()).pipeThrough(\n        new TransformStream<string, ParseResult<T>>({\n          async transform(chunkText, controller) {\n            if (chunkText.endsWith('\\n')) {\n              controller.enqueue(\n                await safeParseJSON({\n                  text: buffer + chunkText,\n                  schema: chunkSchema,\n                }),\n              );\n              buffer = '';\n            } else {\n              buffer += chunkText;\n            }\n          },\n        }),\n      ),\n    };\n  };\n\nexport const createJsonResponseHandler =\n  <T>(responseSchema: ZodType<T>): ResponseHandler<T> =>\n  async ({ response, url, requestBodyValues }) => {\n    const responseBody = await response.text();\n\n    const parsedResult = await safeParseJSON({\n      text: responseBody,\n      schema: responseSchema,\n    });\n\n    const responseHeaders = extractResponseHeaders(response);\n\n    if (!parsedResult.success) {\n      throw new APICallError({\n        message: 'Invalid JSON response',\n        cause: parsedResult.error,\n        statusCode: response.status,\n        responseHeaders,\n        responseBody,\n        url,\n        requestBodyValues,\n      });\n    }\n\n    return {\n      responseHeaders,\n      value: parsedResult.value,\n      rawValue: parsedResult.rawValue,\n    };\n  };\n\nexport const createBinaryResponseHandler =\n  (): ResponseHandler<Uint8Array> =>\n  async ({ response, url, requestBodyValues }) => {\n    const responseHeaders = extractResponseHeaders(response);\n\n    if (!response.body) {\n      throw new APICallError({\n        message: 'Response body is empty',\n        url,\n        requestBodyValues,\n        statusCode: response.status,\n        responseHeaders,\n        responseBody: undefined,\n      });\n    }\n\n    try {\n      const buffer = await response.arrayBuffer();\n      return {\n        responseHeaders,\n        value: new Uint8Array(buffer),\n      };\n    } catch (error) {\n      throw new APICallError({\n        message: 'Failed to read response as array buffer',\n        url,\n        requestBodyValues,\n        statusCode: response.status,\n        responseHeaders,\n        responseBody: undefined,\n        cause: error,\n      });\n    }\n  };\n\nexport const createStatusCodeErrorResponseHandler =\n  (): ResponseHandler<APICallError> =>\n  async ({ response, url, requestBodyValues }) => {\n    const responseHeaders = extractResponseHeaders(response);\n    const responseBody = await response.text();\n\n    return {\n      responseHeaders,\n      value: new APICallError({\n        message: response.statusText,\n        url,\n        requestBodyValues: requestBodyValues as Record<string, unknown>,\n        statusCode: response.status,\n        responseHeaders,\n        responseBody,\n      }),\n    };\n  };\n","import { JSONSchema7 } from '@ai-sdk/provider';\nimport * as z3 from 'zod/v3';\nimport * as z4 from 'zod/v4';\nimport zodToJsonSchema from 'zod-to-json-schema';\nimport { jsonSchema, Schema } from './schema';\n\nexport function zod3Schema<OBJECT>(\n  zodSchema: z3.Schema<OBJECT, z3.ZodTypeDef, any>,\n  options?: {\n    /**\n     * Enables support for references in the schema.\n     * This is required for recursive schemas, e.g. with `z.lazy`.\n     * However, not all language models and providers support such references.\n     * Defaults to `false`.\n     */\n    useReferences?: boolean;\n  },\n): Schema<OBJECT> {\n  // default to no references (to support openapi conversion for google)\n  const useReferences = options?.useReferences ?? false;\n\n  return jsonSchema(\n    zodToJsonSchema(zodSchema, {\n      $refStrategy: useReferences ? 'root' : 'none',\n      target: 'jsonSchema7', // note: openai mode breaks various gemini conversions\n    }) as JSONSchema7,\n    {\n      validate: async value => {\n        const result = await zodSchema.safeParseAsync(value);\n        return result.success\n          ? { success: true, value: result.data }\n          : { success: false, error: result.error };\n      },\n    },\n  );\n}\n\nexport function zod4Schema<OBJECT>(\n  zodSchema: z4.core.$ZodType<OBJECT, any>,\n  options?: {\n    /**\n     * Enables support for references in the schema.\n     * This is required for recursive schemas, e.g. with `z.lazy`.\n     * However, not all language models and providers support such references.\n     * Defaults to `false`.\n     */\n    useReferences?: boolean;\n  },\n): Schema<OBJECT> {\n  // default to no references (to support openapi conversion for google)\n  const useReferences = options?.useReferences ?? false;\n\n  const z4JSONSchema = z4.toJSONSchema(zodSchema, {\n    target: 'draft-7',\n    io: 'output',\n    reused: useReferences ? 'ref' : 'inline',\n  }) as JSONSchema7;\n\n  return jsonSchema(z4JSONSchema, {\n    validate: async value => {\n      const result = await z4.safeParseAsync(zodSchema, value);\n      return result.success\n        ? { success: true, value: result.data }\n        : { success: false, error: result.error };\n    },\n  });\n}\n\nexport function isZod4Schema(\n  zodSchema: z4.core.$ZodType<any, any> | z3.Schema<any, z3.ZodTypeDef, any>,\n): zodSchema is z4.core.$ZodType<any, any> {\n  // https://zod.dev/library-authors?id=how-to-support-zod-3-and-zod-4-simultaneously\n  return '_zod' in zodSchema;\n}\n\nexport function zodSchema<OBJECT>(\n  zodSchema:\n    | z4.core.$ZodType<OBJECT, any>\n    | z3.Schema<OBJECT, z3.ZodTypeDef, any>,\n  options?: {\n    /**\n     * Enables support for references in the schema.\n     * This is required for recursive schemas, e.g. with `z.lazy`.\n     * However, not all language models and providers support such references.\n     * Defaults to `false`.\n     */\n    useReferences?: boolean;\n  },\n): Schema<OBJECT> {\n  if (isZod4Schema(zodSchema)) {\n    return zod4Schema(zodSchema, options);\n  } else {\n    return zod3Schema(zodSchema, options);\n  }\n}\n","import { Validator, validatorSymbol, type ValidationResult } from './validator';\nimport { JSONSchema7 } from '@ai-sdk/provider';\nimport * as z3 from 'zod/v3';\nimport * as z4 from 'zod/v4';\nimport { zodSchema } from './zod-schema';\n\n/**\n * Used to mark schemas so we can support both Zod and custom schemas.\n */\nconst schemaSymbol = Symbol.for('vercel.ai.schema');\n\nexport type Schema<OBJECT = unknown> = Validator<OBJECT> & {\n  /**\n   * Used to mark schemas so we can support both Zod and custom schemas.\n   */\n  [schemaSymbol]: true;\n\n  /**\n   * Schema type for inference.\n   */\n  _type: OBJECT;\n\n  /**\n   * The JSON Schema for the schema. It is passed to the providers.\n   */\n  readonly jsonSchema: JSONSchema7;\n};\n\nexport type FlexibleSchema<T> = z4.core.$ZodType<T> | z3.Schema<T> | Schema<T>;\n\nexport type InferSchema<SCHEMA> = SCHEMA extends z3.Schema\n  ? z3.infer<SCHEMA>\n  : SCHEMA extends z4.core.$ZodType\n    ? z4.infer<SCHEMA>\n    : SCHEMA extends Schema<infer T>\n      ? T\n      : never;\n\n/**\n * Create a schema using a JSON Schema.\n *\n * @param jsonSchema The JSON Schema for the schema.\n * @param options.validate Optional. A validation function for the schema.\n */\nexport function jsonSchema<OBJECT = unknown>(\n  jsonSchema: JSONSchema7,\n  {\n    validate,\n  }: {\n    validate?: (\n      value: unknown,\n    ) => ValidationResult<OBJECT> | PromiseLike<ValidationResult<OBJECT>>;\n  } = {},\n): Schema<OBJECT> {\n  return {\n    [schemaSymbol]: true,\n    _type: undefined as OBJECT, // should never be used directly\n    [validatorSymbol]: true,\n    jsonSchema,\n    validate,\n  };\n}\n\nfunction isSchema(value: unknown): value is Schema {\n  return (\n    typeof value === 'object' &&\n    value !== null &&\n    schemaSymbol in value &&\n    value[schemaSymbol] === true &&\n    'jsonSchema' in value &&\n    'validate' in value\n  );\n}\n\nexport function asSchema<OBJECT>(\n  schema:\n    | z4.core.$ZodType<OBJECT, any>\n    | z3.Schema<OBJECT, z3.ZodTypeDef, any>\n    | Schema<OBJECT>\n    | undefined,\n): Schema<OBJECT> {\n  return schema == null\n    ? jsonSchema({\n        properties: {},\n        additionalProperties: false,\n      })\n    : isSchema(schema)\n      ? schema\n      : zodSchema(schema);\n}\n","// btoa and atob need to be invoked as a function call, not as a method call.\n// Otherwise CloudFlare will throw a\n// \"TypeError: Illegal invocation: function called with incorrect this reference\"\nconst { btoa, atob } = globalThis;\n\nexport function convertBase64ToUint8Array(base64String: string) {\n  const base64Url = base64String.replace(/-/g, '+').replace(/_/g, '/');\n  const latin1string = atob(base64Url);\n  return Uint8Array.from(latin1string, byte => byte.codePointAt(0)!);\n}\n\nexport function convertUint8ArrayToBase64(array: Uint8Array): string {\n  let latin1string = '';\n\n  // Note: regular for loop to support older JavaScript versions that\n  // do not support for..of on Uint8Array\n  for (let i = 0; i < array.length; i++) {\n    latin1string += String.fromCodePoint(array[i]);\n  }\n\n  return btoa(latin1string);\n}\n\nexport function convertToBase64(value: string | Uint8Array): string {\n  return value instanceof Uint8Array ? convertUint8ArrayToBase64(value) : value;\n}\n","export function withoutTrailingSlash(url: string | undefined) {\n  return url?.replace(/\\/$/, '');\n}\n","export function isAsyncIterable<T = any>(obj: any): obj is AsyncIterable<T> {\n  return obj != null && typeof obj[Symbol.asyncIterator] === 'function';\n}\n","import { Tool, ToolCallOptions, ToolExecuteFunction } from './tool';\nimport { isAsyncIterable } from '../is-async-iterable';\n\nexport async function* executeTool<INPUT, OUTPUT>({\n  execute,\n  input,\n  options,\n}: {\n  execute: ToolExecuteFunction<INPUT, OUTPUT>;\n  input: INPUT;\n  options: ToolCallOptions;\n}): AsyncGenerator<\n  { type: 'preliminary'; output: OUTPUT } | { type: 'final'; output: OUTPUT }\n> {\n  const result = execute(input, options);\n\n  if (isAsyncIterable(result)) {\n    let lastOutput: OUTPUT | undefined;\n    for await (const output of result) {\n      lastOutput = output;\n      yield { type: 'preliminary', output };\n    }\n    yield { type: 'final', output: lastOutput! };\n  } else {\n    yield { type: 'final', output: await result };\n  }\n}\n","export * from './combine-headers';\nexport { convertAsyncIteratorToReadableStream } from './convert-async-iterator-to-readable-stream';\nexport * from './delay';\nexport * from './extract-response-headers';\nexport * from './fetch-function';\nexport { createIdGenerator, generateId, type IdGenerator } from './generate-id';\nexport * from './get-error-message';\nexport * from './get-from-api';\nexport * from './is-abort-error';\nexport { isUrlSupported } from './is-url-supported';\nexport * from './load-api-key';\nexport { loadOptionalSetting } from './load-optional-setting';\nexport { loadSetting } from './load-setting';\nexport * from './parse-json';\nexport { parseJsonEventStream } from './parse-json-event-stream';\nexport { parseProviderOptions } from './parse-provider-options';\nexport * from './post-to-api';\nexport {\n  createProviderDefinedToolFactory,\n  type ProviderDefinedToolFactory,\n  createProviderDefinedToolFactoryWithOutputSchema,\n  type ProviderDefinedToolFactoryWithOutputSchema,\n} from './provider-defined-tool-factory';\nexport * from './remove-undefined-entries';\nexport * from './resolve';\nexport * from './response-handler';\nexport {\n  asSchema,\n  jsonSchema,\n  type FlexibleSchema,\n  type InferSchema,\n  type Schema,\n} from './schema';\nexport * from './uint8-utils';\nexport * from './validate-types';\nexport * from './validator';\nexport * from './without-trailing-slash';\nexport { zodSchema } from './zod-schema';\n\n// folder re-exports\nexport * from './types';\n\n// external re-exports\nexport * from '@standard-schema/spec';\nexport {\n  EventSourceParserStream,\n  type EventSourceMessage,\n} from 'eventsource-parser/stream';\n","export const ignoreOverride = Symbol(\"Let zodToJsonSchema decide on which parser to use\");\nexport const jsonDescription = (jsonSchema, def) => {\n    if (def.description) {\n        try {\n            return {\n                ...jsonSchema,\n                ...JSON.parse(def.description),\n            };\n        }\n        catch { }\n    }\n    return jsonSchema;\n};\nexport const defaultOptions = {\n    name: undefined,\n    $refStrategy: \"root\",\n    basePath: [\"#\"],\n    effectStrategy: \"input\",\n    pipeStrategy: \"all\",\n    dateStrategy: \"format:date-time\",\n    mapStrategy: \"entries\",\n    removeAdditionalStrategy: \"passthrough\",\n    allowedAdditionalProperties: true,\n    rejectedAdditionalProperties: false,\n    definitionPath: \"definitions\",\n    target: \"jsonSchema7\",\n    strictUnions: false,\n    definitions: {},\n    errorMessages: false,\n    markdownDescription: false,\n    patternStrategy: \"escape\",\n    applyRegexFlags: false,\n    emailStrategy: \"format:email\",\n    base64Strategy: \"contentEncoding:base64\",\n    nameStrategy: \"ref\",\n};\nexport const getDefaultOptions = (options) => (typeof options === \"string\"\n    ? {\n        ...defaultOptions,\n        name: options,\n    }\n    : {\n        ...defaultOptions,\n        ...options,\n    });\n","import { ZodFirstPartyTypeKind } from \"zod\";\nimport { parseAnyDef } from \"./parsers/any.js\";\nimport { parseArrayDef } from \"./parsers/array.js\";\nimport { parseBigintDef } from \"./parsers/bigint.js\";\nimport { parseBooleanDef } from \"./parsers/boolean.js\";\nimport { parseBrandedDef } from \"./parsers/branded.js\";\nimport { parseCatchDef } from \"./parsers/catch.js\";\nimport { parseDateDef } from \"./parsers/date.js\";\nimport { parseDefaultDef } from \"./parsers/default.js\";\nimport { parseEffectsDef } from \"./parsers/effects.js\";\nimport { parseEnumDef } from \"./parsers/enum.js\";\nimport { parseIntersectionDef } from \"./parsers/intersection.js\";\nimport { parseLiteralDef } from \"./parsers/literal.js\";\nimport { parseMapDef } from \"./parsers/map.js\";\nimport { parseNativeEnumDef } from \"./parsers/nativeEnum.js\";\nimport { parseNeverDef } from \"./parsers/never.js\";\nimport { parseNullDef } from \"./parsers/null.js\";\nimport { parseNullableDef } from \"./parsers/nullable.js\";\nimport { parseNumberDef } from \"./parsers/number.js\";\nimport { parseObjectDef } from \"./parsers/object.js\";\nimport { parseOptionalDef } from \"./parsers/optional.js\";\nimport { parsePipelineDef } from \"./parsers/pipeline.js\";\nimport { parsePromiseDef } from \"./parsers/promise.js\";\nimport { parseRecordDef } from \"./parsers/record.js\";\nimport { parseSetDef } from \"./parsers/set.js\";\nimport { parseStringDef } from \"./parsers/string.js\";\nimport { parseTupleDef } from \"./parsers/tuple.js\";\nimport { parseUndefinedDef } from \"./parsers/undefined.js\";\nimport { parseUnionDef } from \"./parsers/union.js\";\nimport { parseUnknownDef } from \"./parsers/unknown.js\";\nimport { parseReadonlyDef } from \"./parsers/readonly.js\";\nexport const selectParser = (def, typeName, refs) => {\n    switch (typeName) {\n        case ZodFirstPartyTypeKind.ZodString:\n            return parseStringDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodNumber:\n            return parseNumberDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodObject:\n            return parseObjectDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodBigInt:\n            return parseBigintDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodBoolean:\n            return parseBooleanDef();\n        case ZodFirstPartyTypeKind.ZodDate:\n            return parseDateDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodUndefined:\n            return parseUndefinedDef();\n        case ZodFirstPartyTypeKind.ZodNull:\n            return parseNullDef(refs);\n        case ZodFirstPartyTypeKind.ZodArray:\n            return parseArrayDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodUnion:\n        case ZodFirstPartyTypeKind.ZodDiscriminatedUnion:\n            return parseUnionDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodIntersection:\n            return parseIntersectionDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodTuple:\n            return parseTupleDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodRecord:\n            return parseRecordDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodLiteral:\n            return parseLiteralDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodEnum:\n            return parseEnumDef(def);\n        case ZodFirstPartyTypeKind.ZodNativeEnum:\n            return parseNativeEnumDef(def);\n        case ZodFirstPartyTypeKind.ZodNullable:\n            return parseNullableDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodOptional:\n            return parseOptionalDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodMap:\n            return parseMapDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodSet:\n            return parseSetDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodLazy:\n            return () => def.getter()._def;\n        case ZodFirstPartyTypeKind.ZodPromise:\n            return parsePromiseDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodNaN:\n        case ZodFirstPartyTypeKind.ZodNever:\n            return parseNeverDef();\n        case ZodFirstPartyTypeKind.ZodEffects:\n            return parseEffectsDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodAny:\n            return parseAnyDef();\n        case ZodFirstPartyTypeKind.ZodUnknown:\n            return parseUnknownDef();\n        case ZodFirstPartyTypeKind.ZodDefault:\n            return parseDefaultDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodBranded:\n            return parseBrandedDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodReadonly:\n            return parseReadonlyDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodCatch:\n            return parseCatchDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodPipeline:\n            return parsePipelineDef(def, refs);\n        case ZodFirstPartyTypeKind.ZodFunction:\n        case ZodFirstPartyTypeKind.ZodVoid:\n        case ZodFirstPartyTypeKind.ZodSymbol:\n            return undefined;\n        default:\n            /* c8 ignore next */\n            return ((_) => undefined)(typeName);\n    }\n};\n","import { ZodFirstPartyTypeKind } from \"zod\";\nimport { setResponseValueAndErrors } from \"../errorMessages.js\";\nimport { parseDef } from \"../parseDef.js\";\nexport function parseArrayDef(def, refs) {\n    const res = {\n        type: \"array\",\n    };\n    if (def.type?._def &&\n        def.type?._def?.typeName !== ZodFirstPartyTypeKind.ZodAny) {\n        res.items = parseDef(def.type._def, {\n            ...refs,\n            currentPath: [...refs.currentPath, \"items\"],\n        });\n    }\n    if (def.minLength) {\n        setResponseValueAndErrors(res, \"minItems\", def.minLength.value, def.minLength.message, refs);\n    }\n    if (def.maxLength) {\n        setResponseValueAndErrors(res, \"maxItems\", def.maxLength.value, def.maxLength.message, refs);\n    }\n    if (def.exactLength) {\n        setResponseValueAndErrors(res, \"minItems\", def.exactLength.value, def.exactLength.message, refs);\n        setResponseValueAndErrors(res, \"maxItems\", def.exactLength.value, def.exactLength.message, refs);\n    }\n    return res;\n}\n","import { ZodFirstPartyTypeKind, } from \"zod\";\nimport { parseDef } from \"../parseDef.js\";\nimport { parseStringDef } from \"./string.js\";\nimport { parseBrandedDef } from \"./branded.js\";\nexport function parseRecordDef(def, refs) {\n    if (refs.target === \"openAi\") {\n        console.warn(\"Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.\");\n    }\n    if (refs.target === \"openApi3\" &&\n        def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodEnum) {\n        return {\n            type: \"object\",\n            required: def.keyType._def.values,\n            properties: def.keyType._def.values.reduce((acc, key) => ({\n                ...acc,\n                [key]: parseDef(def.valueType._def, {\n                    ...refs,\n                    currentPath: [...refs.currentPath, \"properties\", key],\n                }) ?? {},\n            }), {}),\n            additionalProperties: refs.rejectedAdditionalProperties,\n        };\n    }\n    const schema = {\n        type: \"object\",\n        additionalProperties: parseDef(def.valueType._def, {\n            ...refs,\n            currentPath: [...refs.currentPath, \"additionalProperties\"],\n        }) ?? refs.allowedAdditionalProperties,\n    };\n    if (refs.target === \"openApi3\") {\n        return schema;\n    }\n    if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodString &&\n        def.keyType._def.checks?.length) {\n        const { type, ...keyType } = parseStringDef(def.keyType._def, refs);\n        return {\n            ...schema,\n            propertyNames: keyType,\n        };\n    }\n    else if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodEnum) {\n        return {\n            ...schema,\n            propertyNames: {\n                enum: def.keyType._def.values,\n            },\n        };\n    }\n    else if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodBranded &&\n        def.keyType._def.type._def.typeName === ZodFirstPartyTypeKind.ZodString &&\n        def.keyType._def.type._def.checks?.length) {\n        const { type, ...keyType } = parseBrandedDef(def.keyType._def, refs);\n        return {\n            ...schema,\n            propertyNames: keyType,\n        };\n    }\n    return schema;\n}\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nlet emojiRegex = undefined;\n/**\n * Generated from the regular expressions found here as of 2024-05-22:\n * https://github.com/colinhacks/zod/blob/master/src/types.ts.\n *\n * Expressions with /i flag have been changed accordingly.\n */\nexport const zodPatterns = {\n    /**\n     * `c` was changed to `[cC]` to replicate /i flag\n     */\n    cuid: /^[cC][^\\s-]{8,}$/,\n    cuid2: /^[0-9a-z]+$/,\n    ulid: /^[0-9A-HJKMNP-TV-Z]{26}$/,\n    /**\n     * `a-z` was added to replicate /i flag\n     */\n    email: /^(?!\\.)(?!.*\\.\\.)([a-zA-Z0-9_'+\\-\\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\\-]*\\.)+[a-zA-Z]{2,}$/,\n    /**\n     * Constructed a valid Unicode RegExp\n     *\n     * Lazily instantiate since this type of regex isn't supported\n     * in all envs (e.g. React Native).\n     *\n     * See:\n     * https://github.com/colinhacks/zod/issues/2433\n     * Fix in Zod:\n     * https://github.com/colinhacks/zod/commit/9340fd51e48576a75adc919bff65dbc4a5d4c99b\n     */\n    emoji: () => {\n        if (emojiRegex === undefined) {\n            emojiRegex = RegExp(\"^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$\", \"u\");\n        }\n        return emojiRegex;\n    },\n    /**\n     * Unused\n     */\n    uuid: /^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$/,\n    /**\n     * Unused\n     */\n    ipv4: /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,\n    ipv4Cidr: /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\/(3[0-2]|[12]?[0-9])$/,\n    /**\n     * Unused\n     */\n    ipv6: /^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,\n    ipv6Cidr: /^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,\n    base64: /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,\n    base64url: /^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,\n    nanoid: /^[a-zA-Z0-9_-]{21}$/,\n    jwt: /^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$/,\n};\nexport function parseStringDef(def, refs) {\n    const res = {\n        type: \"string\",\n    };\n    if (def.checks) {\n        for (const check of def.checks) {\n            switch (check.kind) {\n                case \"min\":\n                    setResponseValueAndErrors(res, \"minLength\", typeof res.minLength === \"number\"\n                        ? Math.max(res.minLength, check.value)\n                        : check.value, check.message, refs);\n                    break;\n                case \"max\":\n                    setResponseValueAndErrors(res, \"maxLength\", typeof res.maxLength === \"number\"\n                        ? Math.min(res.maxLength, check.value)\n                        : check.value, check.message, refs);\n                    break;\n                case \"email\":\n                    switch (refs.emailStrategy) {\n                        case \"format:email\":\n                            addFormat(res, \"email\", check.message, refs);\n                            break;\n                        case \"format:idn-email\":\n                            addFormat(res, \"idn-email\", check.message, refs);\n                            break;\n                        case \"pattern:zod\":\n                            addPattern(res, zodPatterns.email, check.message, refs);\n                            break;\n                    }\n                    break;\n                case \"url\":\n                    addFormat(res, \"uri\", check.message, refs);\n                    break;\n                case \"uuid\":\n                    addFormat(res, \"uuid\", check.message, refs);\n                    break;\n                case \"regex\":\n                    addPattern(res, check.regex, check.message, refs);\n                    break;\n                case \"cuid\":\n                    addPattern(res, zodPatterns.cuid, check.message, refs);\n                    break;\n                case \"cuid2\":\n                    addPattern(res, zodPatterns.cuid2, check.message, refs);\n                    break;\n                case \"startsWith\":\n                    addPattern(res, RegExp(`^${escapeLiteralCheckValue(check.value, refs)}`), check.message, refs);\n                    break;\n                case \"endsWith\":\n                    addPattern(res, RegExp(`${escapeLiteralCheckValue(check.value, refs)}$`), check.message, refs);\n                    break;\n                case \"datetime\":\n                    addFormat(res, \"date-time\", check.message, refs);\n                    break;\n                case \"date\":\n                    addFormat(res, \"date\", check.message, refs);\n                    break;\n                case \"time\":\n                    addFormat(res, \"time\", check.message, refs);\n                    break;\n                case \"duration\":\n                    addFormat(res, \"duration\", check.message, refs);\n                    break;\n                case \"length\":\n                    setResponseValueAndErrors(res, \"minLength\", typeof res.minLength === \"number\"\n                        ? Math.max(res.minLength, check.value)\n                        : check.value, check.message, refs);\n                    setResponseValueAndErrors(res, \"maxLength\", typeof res.maxLength === \"number\"\n                        ? Math.min(res.maxLength, check.value)\n                        : check.value, check.message, refs);\n                    break;\n                case \"includes\": {\n                    addPattern(res, RegExp(escapeLiteralCheckValue(check.value, refs)), check.message, refs);\n                    break;\n                }\n                case \"ip\": {\n                    if (check.version !== \"v6\") {\n                        addFormat(res, \"ipv4\", check.message, refs);\n                    }\n                    if (check.version !== \"v4\") {\n                        addFormat(res, \"ipv6\", check.message, refs);\n                    }\n                    break;\n                }\n                case \"base64url\":\n                    addPattern(res, zodPatterns.base64url, check.message, refs);\n                    break;\n                case \"jwt\":\n                    addPattern(res, zodPatterns.jwt, check.message, refs);\n                    break;\n                case \"cidr\": {\n                    if (check.version !== \"v6\") {\n                        addPattern(res, zodPatterns.ipv4Cidr, check.message, refs);\n                    }\n                    if (check.version !== \"v4\") {\n                        addPattern(res, zodPatterns.ipv6Cidr, check.message, refs);\n                    }\n                    break;\n                }\n                case \"emoji\":\n                    addPattern(res, zodPatterns.emoji(), check.message, refs);\n                    break;\n                case \"ulid\": {\n                    addPattern(res, zodPatterns.ulid, check.message, refs);\n                    break;\n                }\n                case \"base64\": {\n                    switch (refs.base64Strategy) {\n                        case \"format:binary\": {\n                            addFormat(res, \"binary\", check.message, refs);\n                            break;\n                        }\n                        case \"contentEncoding:base64\": {\n                            setResponseValueAndErrors(res, \"contentEncoding\", \"base64\", check.message, refs);\n                            break;\n                        }\n                        case \"pattern:zod\": {\n                            addPattern(res, zodPatterns.base64, check.message, refs);\n                            break;\n                        }\n                    }\n                    break;\n                }\n                case \"nanoid\": {\n                    addPattern(res, zodPatterns.nanoid, check.message, refs);\n                }\n                case \"toLowerCase\":\n                case \"toUpperCase\":\n                case \"trim\":\n                    break;\n                default:\n                    /* c8 ignore next */\n                    ((_) => { })(check);\n            }\n        }\n    }\n    return res;\n}\nfunction escapeLiteralCheckValue(literal, refs) {\n    return refs.patternStrategy === \"escape\"\n        ? escapeNonAlphaNumeric(literal)\n        : literal;\n}\nconst ALPHA_NUMERIC = new Set(\"ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789\");\nfunction escapeNonAlphaNumeric(source) {\n    let result = \"\";\n    for (let i = 0; i < source.length; i++) {\n        if (!ALPHA_NUMERIC.has(source[i])) {\n            result += \"\\\\\";\n        }\n        result += source[i];\n    }\n    return result;\n}\n// Adds a \"format\" keyword to the schema. If a format exists, both formats will be joined in an allOf-node, along with subsequent ones.\nfunction addFormat(schema, value, message, refs) {\n    if (schema.format || schema.anyOf?.some((x) => x.format)) {\n        if (!schema.anyOf) {\n            schema.anyOf = [];\n        }\n        if (schema.format) {\n            schema.anyOf.push({\n                format: schema.format,\n                ...(schema.errorMessage &&\n                    refs.errorMessages && {\n                    errorMessage: { format: schema.errorMessage.format },\n                }),\n            });\n            delete schema.format;\n            if (schema.errorMessage) {\n                delete schema.errorMessage.format;\n                if (Object.keys(schema.errorMessage).length === 0) {\n                    delete schema.errorMessage;\n                }\n            }\n        }\n        schema.anyOf.push({\n            format: value,\n            ...(message &&\n                refs.errorMessages && { errorMessage: { format: message } }),\n        });\n    }\n    else {\n        setResponseValueAndErrors(schema, \"format\", value, message, refs);\n    }\n}\n// Adds a \"pattern\" keyword to the schema. If a pattern exists, both patterns will be joined in an allOf-node, along with subsequent ones.\nfunction addPattern(schema, regex, message, refs) {\n    if (schema.pattern || schema.allOf?.some((x) => x.pattern)) {\n        if (!schema.allOf) {\n            schema.allOf = [];\n        }\n        if (schema.pattern) {\n            schema.allOf.push({\n                pattern: schema.pattern,\n                ...(schema.errorMessage &&\n                    refs.errorMessages && {\n                    errorMessage: { pattern: schema.errorMessage.pattern },\n                }),\n            });\n            delete schema.pattern;\n            if (schema.errorMessage) {\n                delete schema.errorMessage.pattern;\n                if (Object.keys(schema.errorMessage).length === 0) {\n                    delete schema.errorMessage;\n                }\n            }\n        }\n        schema.allOf.push({\n            pattern: stringifyRegExpWithFlags(regex, refs),\n            ...(message &&\n                refs.errorMessages && { errorMessage: { pattern: message } }),\n        });\n    }\n    else {\n        setResponseValueAndErrors(schema, \"pattern\", stringifyRegExpWithFlags(regex, refs), message, refs);\n    }\n}\n// Mutate z.string.regex() in a best attempt to accommodate for regex flags when applyRegexFlags is true\nfunction stringifyRegExpWithFlags(regex, refs) {\n    if (!refs.applyRegexFlags || !regex.flags) {\n        return regex.source;\n    }\n    // Currently handled flags\n    const flags = {\n        i: regex.flags.includes(\"i\"),\n        m: regex.flags.includes(\"m\"),\n        s: regex.flags.includes(\"s\"), // `.` matches newlines\n    };\n    // The general principle here is to step through each character, one at a time, applying mutations as flags require. We keep track when the current character is escaped, and when it's inside a group /like [this]/ or (also) a range like /[a-z]/. The following is fairly brittle imperative code; edit at your peril!\n    const source = flags.i ? regex.source.toLowerCase() : regex.source;\n    let pattern = \"\";\n    let isEscaped = false;\n    let inCharGroup = false;\n    let inCharRange = false;\n    for (let i = 0; i < source.length; i++) {\n        if (isEscaped) {\n            pattern += source[i];\n            isEscaped = false;\n            continue;\n        }\n        if (flags.i) {\n            if (inCharGroup) {\n                if (source[i].match(/[a-z]/)) {\n                    if (inCharRange) {\n                        pattern += source[i];\n                        pattern += `${source[i - 2]}-${source[i]}`.toUpperCase();\n                        inCharRange = false;\n                    }\n                    else if (source[i + 1] === \"-\" && source[i + 2]?.match(/[a-z]/)) {\n                        pattern += source[i];\n                        inCharRange = true;\n                    }\n                    else {\n                        pattern += `${source[i]}${source[i].toUpperCase()}`;\n                    }\n                    continue;\n                }\n            }\n            else if (source[i].match(/[a-z]/)) {\n                pattern += `[${source[i]}${source[i].toUpperCase()}]`;\n                continue;\n            }\n        }\n        if (flags.m) {\n            if (source[i] === \"^\") {\n                pattern += `(^|(?<=[\\r\\n]))`;\n                continue;\n            }\n            else if (source[i] === \"$\") {\n                pattern += `($|(?=[\\r\\n]))`;\n                continue;\n            }\n        }\n        if (flags.s && source[i] === \".\") {\n            pattern += inCharGroup ? `${source[i]}\\r\\n` : `[${source[i]}\\r\\n]`;\n            continue;\n        }\n        pattern += source[i];\n        if (source[i] === \"\\\\\") {\n            isEscaped = true;\n        }\n        else if (inCharGroup && source[i] === \"]\") {\n            inCharGroup = false;\n        }\n        else if (!inCharGroup && source[i] === \"[\") {\n            inCharGroup = true;\n        }\n    }\n    try {\n        new RegExp(pattern);\n    }\n    catch {\n        console.warn(`Could not convert regex pattern at ${refs.currentPath.join(\"/\")} to a flag-independent form! Falling back to the flag-ignorant source`);\n        return regex.source;\n    }\n    return pattern;\n}\n","import { ZodOptional } from \"zod\";\nimport { parseDef } from \"../parseDef.js\";\nexport function parseObjectDef(def, refs) {\n    const forceOptionalIntoNullable = refs.target === \"openAi\";\n    const result = {\n        type: \"object\",\n        properties: {},\n    };\n    const required = [];\n    const shape = def.shape();\n    for (const propName in shape) {\n        let propDef = shape[propName];\n        if (propDef === undefined || propDef._def === undefined) {\n            continue;\n        }\n        let propOptional = safeIsOptional(propDef);\n        if (propOptional && forceOptionalIntoNullable) {\n            if (propDef instanceof ZodOptional) {\n                propDef = propDef._def.innerType;\n            }\n            if (!propDef.isNullable()) {\n                propDef = propDef.nullable();\n            }\n            propOptional = false;\n        }\n        const parsedDef = parseDef(propDef._def, {\n            ...refs,\n            currentPath: [...refs.currentPath, \"properties\", propName],\n            propertyPath: [...refs.currentPath, \"properties\", propName],\n        });\n        if (parsedDef === undefined) {\n            continue;\n        }\n        result.properties[propName] = parsedDef;\n        if (!propOptional) {\n            required.push(propName);\n        }\n    }\n    if (required.length) {\n        result.required = required;\n    }\n    const additionalProperties = decideAdditionalProperties(def, refs);\n    if (additionalProperties !== undefined) {\n        result.additionalProperties = additionalProperties;\n    }\n    return result;\n}\nfunction decideAdditionalProperties(def, refs) {\n    if (def.catchall._def.typeName !== \"ZodNever\") {\n        return parseDef(def.catchall._def, {\n            ...refs,\n            currentPath: [...refs.currentPath, \"additionalProperties\"],\n        });\n    }\n    switch (def.unknownKeys) {\n        case \"passthrough\":\n            return refs.allowedAdditionalProperties;\n        case \"strict\":\n            return refs.rejectedAdditionalProperties;\n        case \"strip\":\n            return refs.removeAdditionalStrategy === \"strict\"\n                ? refs.allowedAdditionalProperties\n                : refs.rejectedAdditionalProperties;\n    }\n}\nfunction safeIsOptional(schema) {\n    try {\n        return schema.isOptional();\n    }\n    catch {\n        return true;\n    }\n}\n","import { z } from \"zod\";\n\nexport enum ReasoningDetailType {\n  Summary = \"reasoning.summary\",\n  Encrypted = \"reasoning.encrypted\",\n  Text = \"reasoning.text\",\n}\n\nexport const ReasoningDetailSummarySchema = z.object({\n  type: z.literal(ReasoningDetailType.Summary),\n  summary: z.string(),\n});\nexport type ReasoningDetailSummary = z.infer<\n  typeof ReasoningDetailSummarySchema\n>;\n\nexport const ReasoningDetailEncryptedSchema = z.object({\n  type: z.literal(ReasoningDetailType.Encrypted),\n  data: z.string(),\n});\nexport type ReasoningDetailEncrypted = z.infer<\n  typeof ReasoningDetailEncryptedSchema\n>;\n\nexport const ReasoningDetailTextSchema = z.object({\n  type: z.literal(ReasoningDetailType.Text),\n  text: z.string().nullish(),\n  signature: z.string().nullish(),\n});\n\nexport type ReasoningDetailText = z.infer<typeof ReasoningDetailTextSchema>;\n\nexport const ReasoningDetailUnionSchema = z.union([\n  ReasoningDetailSummarySchema,\n  ReasoningDetailEncryptedSchema,\n  ReasoningDetailTextSchema,\n]);\n\nconst ReasoningDetailsWithUnknownSchema = z.union([\n  ReasoningDetailUnionSchema,\n  z.unknown().transform(() => null),\n]);\n\nexport type ReasoningDetailUnion = z.infer<typeof ReasoningDetailUnionSchema>;\n\nexport const ReasoningDetailArraySchema = z\n  .array(ReasoningDetailsWithUnknownSchema)\n  .transform((d) => d.filter((d): d is ReasoningDetailUnion => !!d));\n","import { createJsonErrorResponseHandler } from \"@ai-sdk/provider-utils\";\nimport { z } from \"zod\";\n\nexport const OpenRouterErrorResponseSchema = z.object({\n  error: z.object({\n    code: z.union([z.string(), z.number()]).nullable().optional().default(null),\n    message: z.string(),\n    type: z.string().nullable().optional().default(null),\n    param: z.any().nullable().optional().default(null),\n  }),\n});\n\nexport type OpenRouterErrorData = z.infer<typeof OpenRouterErrorResponseSchema>;\n\nexport const openrouterFailedResponseHandler = createJsonErrorResponseHandler({\n  errorSchema: OpenRouterErrorResponseSchema,\n  errorToMessage: (data: OpenRouterErrorData) => data.error.message,\n});\n","import type { LanguageModelV2FinishReason } from '@ai-sdk/provider';\n\nexport function mapOpenRouterFinishReason(\n  finishReason: string | null | undefined,\n): LanguageModelV2FinishReason {\n  switch (finishReason) {\n    case 'stop':\n      return 'stop';\n    case 'length':\n      return 'length';\n    case 'content_filter':\n      return 'content-filter';\n    case 'function_call':\n    case 'tool_calls':\n      return 'tool-calls';\n    default:\n      return 'unknown';\n  }\n}\n","export function isUrl({\n  url,\n  protocols,\n}: {\n  url: string | URL;\n  protocols: Set<`${string}:`>;\n}): boolean {\n  try {\n    const urlObj = new URL(url);\n    // Cast to the literal string due to Set inferred input type\n    return protocols.has(urlObj.protocol as `${string}:`);\n  } catch (_) {\n    return false;\n  }\n}\n","import type { LanguageModelV2FilePart } from '@ai-sdk/provider';\n\nimport { convertUint8ArrayToBase64 } from '@ai-sdk/provider-utils';\nimport { isUrl } from './is-url';\n\nexport function getFileUrl({\n  part,\n  defaultMediaType,\n}: {\n  part: LanguageModelV2FilePart;\n  defaultMediaType: string;\n}) {\n  if (part.data instanceof Uint8Array) {\n    const base64 = convertUint8ArrayToBase64(part.data);\n    return `data:${part.mediaType ?? defaultMediaType};base64,${base64}`;\n  }\n\n  const stringUrl = part.data.toString();\n\n  if (\n    isUrl({\n      url: stringUrl,\n      protocols: new Set(['http:', 'https:']),\n    })\n  ) {\n    return stringUrl;\n  }\n\n  return stringUrl.startsWith('data:')\n    ? stringUrl\n    : `data:${part.mediaType ?? defaultMediaType};base64,${stringUrl}`;\n}\n","import type {\n  LanguageModelV2FilePart,\n  LanguageModelV2Prompt,\n  LanguageModelV2TextPart,\n  LanguageModelV2ToolResultPart,\n  SharedV2ProviderMetadata,\n} from '@ai-sdk/provider';\nimport type { ReasoningDetailUnion } from '@/src/schemas/reasoning-details';\nimport type {\n  ChatCompletionContentPart,\n  OpenRouterChatCompletionsInput,\n} from '../types/openrouter-chat-completions-input';\n\nimport { ReasoningDetailType } from '@/src/schemas/reasoning-details';\nimport { getFileUrl } from './file-url-utils';\nimport { isUrl } from './is-url';\n\n// Type for OpenRouter Cache Control following Anthropic's pattern\nexport type OpenRouterCacheControl = { type: 'ephemeral' };\n\nfunction getCacheControl(\n  providerMetadata: SharedV2ProviderMetadata | undefined,\n): OpenRouterCacheControl | undefined {\n  const anthropic = providerMetadata?.anthropic;\n  const openrouter = providerMetadata?.openrouter;\n\n  // Allow both cacheControl and cache_control:\n  return (openrouter?.cacheControl ??\n    openrouter?.cache_control ??\n    anthropic?.cacheControl ??\n    anthropic?.cache_control) as OpenRouterCacheControl | undefined;\n}\n\nexport function convertToOpenRouterChatMessages(\n  prompt: LanguageModelV2Prompt,\n): OpenRouterChatCompletionsInput {\n  const messages: OpenRouterChatCompletionsInput = [];\n  for (const { role, content, providerOptions } of prompt) {\n    switch (role) {\n      case 'system': {\n        messages.push({\n          role: 'system',\n          content,\n          cache_control: getCacheControl(providerOptions),\n        });\n        break;\n      }\n\n      case 'user': {\n        if (content.length === 1 && content[0]?.type === 'text') {\n          const cacheControl =\n            getCacheControl(providerOptions) ??\n            getCacheControl(content[0].providerOptions);\n          const contentWithCacheControl: string | ChatCompletionContentPart[] =\n            cacheControl\n              ? [\n                  {\n                    type: 'text',\n                    text: content[0].text,\n                    cache_control: cacheControl,\n                  },\n                ]\n              : content[0].text;\n          messages.push({\n            role: 'user',\n            content: contentWithCacheControl,\n          });\n          break;\n        }\n\n        // Get message level cache control\n        const messageCacheControl = getCacheControl(providerOptions);\n        const contentParts: ChatCompletionContentPart[] = content.map(\n          (part: LanguageModelV2TextPart | LanguageModelV2FilePart) => {\n            const cacheControl =\n              getCacheControl(part.providerOptions) ?? messageCacheControl;\n\n            switch (part.type) {\n              case 'text':\n                return {\n                  type: 'text' as const,\n                  text: part.text,\n                  // For text parts, only use part-specific cache control\n                  cache_control: cacheControl,\n                };\n              case 'file': {\n                if (part.mediaType?.startsWith('image/')) {\n                  const url = getFileUrl({\n                    part,\n                    defaultMediaType: 'image/jpeg',\n                  });\n                  return {\n                    type: 'image_url' as const,\n                    image_url: {\n                      url,\n                    },\n                    // For image parts, use part-specific or message-level cache control\n                    cache_control: cacheControl,\n                  };\n                }\n\n                const fileName = String(\n                  part.providerOptions?.openrouter?.filename ??\n                    part.filename ??\n                    '',\n                );\n\n                const fileData = getFileUrl({\n                  part,\n                  defaultMediaType: 'application/pdf',\n                });\n\n                if (\n                  isUrl({\n                    url: fileData,\n                    protocols: new Set(['http:', 'https:']),\n                  })\n                ) {\n                  return {\n                    type: 'file' as const,\n                    file: {\n                      filename: fileName,\n                      file_data: fileData,\n                    },\n                  } satisfies ChatCompletionContentPart;\n                }\n\n                return {\n                  type: 'file' as const,\n                  file: {\n                    filename: fileName,\n                    file_data: fileData,\n                  },\n                  cache_control: cacheControl,\n                } satisfies ChatCompletionContentPart;\n              }\n              default: {\n                return {\n                  type: 'text' as const,\n                  text: '',\n                  cache_control: cacheControl,\n                };\n              }\n            }\n          },\n        );\n\n        // For multi-part messages, don't add cache_control at the root level\n        messages.push({\n          role: 'user',\n          content: contentParts,\n        });\n\n        break;\n      }\n\n      case 'assistant': {\n        let text = '';\n        let reasoning = '';\n        const reasoningDetails: ReasoningDetailUnion[] = [];\n        const toolCalls: Array<{\n          id: string;\n          type: 'function';\n          function: { name: string; arguments: string };\n        }> = [];\n\n        for (const part of content) {\n          switch (part.type) {\n            case 'text': {\n              text += part.text;\n              break;\n            }\n            case 'tool-call': {\n              toolCalls.push({\n                id: part.toolCallId,\n                type: 'function',\n                function: {\n                  name: part.toolName,\n                  arguments: JSON.stringify(part.input),\n                },\n              });\n              break;\n            }\n            case 'reasoning': {\n              reasoning += part.text;\n              reasoningDetails.push({\n                type: ReasoningDetailType.Text,\n                text: part.text,\n              });\n\n              break;\n            }\n\n            case 'file':\n              break;\n            default: {\n              break;\n            }\n          }\n        }\n\n        messages.push({\n          role: 'assistant',\n          content: text,\n          tool_calls: toolCalls.length > 0 ? toolCalls : undefined,\n          reasoning: reasoning || undefined,\n          reasoning_details:\n            reasoningDetails.length > 0 ? reasoningDetails : undefined,\n          cache_control: getCacheControl(providerOptions),\n        });\n\n        break;\n      }\n\n      case 'tool': {\n        for (const toolResponse of content) {\n          const content = getToolResultContent(toolResponse);\n\n          messages.push({\n            role: 'tool',\n            tool_call_id: toolResponse.toolCallId,\n            content,\n            cache_control:\n              getCacheControl(providerOptions) ??\n              getCacheControl(toolResponse.providerOptions),\n          });\n        }\n        break;\n      }\n\n      default: {\n        break;\n      }\n    }\n  }\n\n  return messages;\n}\n\nfunction getToolResultContent(input: LanguageModelV2ToolResultPart): string {\n  return input.output.type === 'text'\n    ? input.output.value\n    : JSON.stringify(input.output.value);\n}\n","import type { LanguageModelV2ToolChoice } from \"@ai-sdk/provider\";\n\nimport { z } from \"zod\";\n\nconst ChatCompletionToolChoiceSchema = z.union([\n  z.literal(\"auto\"),\n  z.literal(\"none\"),\n  z.literal(\"required\"),\n  z.object({\n    type: z.literal(\"function\"),\n    function: z.object({\n      name: z.string(),\n    }),\n  }),\n]);\n\ntype ChatCompletionToolChoice = z.infer<typeof ChatCompletionToolChoiceSchema>;\n\nexport function getChatCompletionToolChoice(\n  toolChoice: LanguageModelV2ToolChoice\n): ChatCompletionToolChoice {\n  switch (toolChoice.type) {\n    case \"auto\":\n    case \"none\":\n    case \"required\":\n      return toolChoice.type;\n    case \"tool\": {\n      return {\n        type: \"function\",\n        function: { name: toolChoice.toolName },\n      };\n    }\n    default: {\n      toolChoice satisfies never;\n      throw new Error(`Invalid tool choice type: ${toolChoice}`);\n    }\n  }\n}\n","import { z } from \"zod\";\nimport { OpenRouterErrorResponseSchema } from \"../schemas/error-response\";\nimport { ReasoningDetailArraySchema } from \"../schemas/reasoning-details\";\n\nconst OpenRouterChatCompletionBaseResponseSchema = z.object({\n  id: z.string().optional(),\n  model: z.string().optional(),\n  provider: z.string().optional(),\n  usage: z\n    .object({\n      prompt_tokens: z.number(),\n      prompt_tokens_details: z\n        .object({\n          cached_tokens: z.number(),\n        })\n        .nullish(),\n      completion_tokens: z.number(),\n      completion_tokens_details: z\n        .object({\n          reasoning_tokens: z.number(),\n        })\n        .nullish(),\n      total_tokens: z.number(),\n      cost: z.number().optional(),\n      cost_details: z\n        .object({\n          upstream_inference_cost: z.number().nullish(),\n        })\n        .nullish(),\n    })\n    .nullish(),\n});\n// limited version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nexport const OpenRouterNonStreamChatCompletionResponseSchema =\n  OpenRouterChatCompletionBaseResponseSchema.extend({\n    choices: z.array(\n      z.object({\n        message: z.object({\n          role: z.literal(\"assistant\"),\n          content: z.string().nullable().optional(),\n          reasoning: z.string().nullable().optional(),\n          // TODO: Router doesn't return structured reasoning details yet\n          // reasoning_details: ReasoningDetailArraySchema.nullish(),\n\n          tool_calls: z\n            .array(\n              z.object({\n                id: z.string().optional().nullable(),\n                type: z.literal(\"function\"),\n                function: z.object({\n                  name: z.string(),\n                  arguments: z.string(),\n                }),\n              })\n            )\n            .optional(),\n\n          annotations: z\n            .array(\n              z.object({\n                type: z.enum([\"url_citation\"]),\n                url_citation: z.object({\n                  end_index: z.number(),\n                  start_index: z.number(),\n                  title: z.string(),\n                  url: z.string(),\n                  content: z.string().optional(),\n                }),\n              })\n            )\n            .nullish(),\n        }),\n        index: z.number().nullish(),\n        logprobs: z\n          .object({\n            content: z\n              .array(\n                z.object({\n                  token: z.string(),\n                  logprob: z.number(),\n                  top_logprobs: z.array(\n                    z.object({\n                      token: z.string(),\n                      logprob: z.number(),\n                    })\n                  ),\n                })\n              )\n              .nullable(),\n          })\n          .nullable()\n          .optional(),\n        finish_reason: z.string().optional().nullable(),\n      })\n    ),\n  });\n// limited version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nexport const OpenRouterStreamChatCompletionChunkSchema = z.union([\n  OpenRouterChatCompletionBaseResponseSchema.extend({\n    choices: z.array(\n      z.object({\n        delta: z\n          .object({\n            role: z.enum([\"assistant\"]).optional(),\n            content: z.string().nullish(),\n            reasoning: z.string().nullish().optional(),\n            reasoning_details: ReasoningDetailArraySchema.nullish(),\n            tool_calls: z\n              .array(\n                z.object({\n                  index: z.number().nullish(),\n                  id: z.string().nullish(),\n                  type: z.literal(\"function\").optional(),\n                  function: z.object({\n                    name: z.string().nullish(),\n                    arguments: z.string().nullish(),\n                  }),\n                })\n              )\n              .nullish(),\n\n            annotations: z\n              .array(\n                z.object({\n                  type: z.enum([\"url_citation\"]),\n                  url_citation: z.object({\n                    end_index: z.number(),\n                    start_index: z.number(),\n                    title: z.string(),\n                    url: z.string(),\n                    content: z.string().optional(),\n                  }),\n                })\n              )\n              .nullish(),\n          })\n          .nullish(),\n        logprobs: z\n          .object({\n            content: z\n              .array(\n                z.object({\n                  token: z.string(),\n                  logprob: z.number(),\n                  top_logprobs: z.array(\n                    z.object({\n                      token: z.string(),\n                      logprob: z.number(),\n                    })\n                  ),\n                })\n              )\n              .nullable(),\n          })\n          .nullish(),\n        finish_reason: z.string().nullable().optional(),\n        index: z.number().nullish(),\n      })\n    ),\n  }),\n  OpenRouterErrorResponseSchema,\n]);\n","import type {\n  LanguageModelV2,\n  LanguageModelV2CallOptions,\n  LanguageModelV2CallWarning,\n  LanguageModelV2Content,\n  LanguageModelV2FinishReason,\n  LanguageModelV2ResponseMetadata,\n  LanguageModelV2StreamPart,\n  LanguageModelV2Usage,\n  SharedV2Headers,\n} from '@ai-sdk/provider';\nimport type { ParseResult } from '@ai-sdk/provider-utils';\nimport type { FinishReason } from 'ai';\nimport type { z } from 'zod';\nimport type { OpenRouterUsageAccounting } from '@/src/types/index';\nimport type {\n  OpenRouterChatModelId,\n  OpenRouterChatSettings,\n} from '../types/openrouter-chat-settings';\n\nimport { InvalidResponseDataError } from '@ai-sdk/provider';\nimport {\n  combineHeaders,\n  createEventSourceResponseHandler,\n  createJsonResponseHandler,\n  generateId,\n  isParsableJson,\n  postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { ReasoningDetailType } from '@/src/schemas/reasoning-details';\nimport { openrouterFailedResponseHandler } from '../schemas/error-response';\nimport { mapOpenRouterFinishReason } from '../utils/map-finish-reason';\nimport { convertToOpenRouterChatMessages } from './convert-to-openrouter-chat-messages';\nimport { getChatCompletionToolChoice } from './get-tool-choice';\nimport {\n  OpenRouterNonStreamChatCompletionResponseSchema,\n  OpenRouterStreamChatCompletionChunkSchema,\n} from './schemas';\n\ntype OpenRouterChatConfig = {\n  provider: string;\n  compatibility: 'strict' | 'compatible';\n  headers: () => Record<string, string | undefined>;\n  url: (options: { modelId: string; path: string }) => string;\n  fetch?: typeof fetch;\n  extraBody?: Record<string, unknown>;\n};\n\nexport class OpenRouterChatLanguageModel implements LanguageModelV2 {\n  readonly specificationVersion = 'v2' as const;\n  readonly provider = 'dreamsrouter';\n  readonly defaultObjectGenerationMode = 'tool' as const;\n\n  readonly modelId: OpenRouterChatModelId;\n  readonly supportedUrls: Record<string, RegExp[]> = {\n    'image/*': [\n      /^data:image\\/[a-zA-Z]+;base64,/,\n      /^https?:\\/\\/.+\\.(jpg|jpeg|png|gif|webp)$/i,\n    ],\n    // 'text/*': [/^data:text\\//, /^https?:\\/\\/.+$/],\n    'application/*': [/^data:application\\//, /^https?:\\/\\/.+$/],\n  };\n  readonly settings: OpenRouterChatSettings;\n\n  private readonly config: OpenRouterChatConfig;\n\n  constructor(\n    modelId: OpenRouterChatModelId,\n    settings: OpenRouterChatSettings,\n    config: OpenRouterChatConfig\n  ) {\n    this.modelId = modelId;\n    this.settings = settings;\n    this.config = config;\n  }\n\n  private getArgs({\n    prompt,\n    maxOutputTokens,\n    temperature,\n    topP,\n    frequencyPenalty,\n    presencePenalty,\n    seed,\n    stopSequences,\n    responseFormat,\n    topK,\n    tools,\n    toolChoice,\n  }: LanguageModelV2CallOptions) {\n    const baseArgs = {\n      // model id:\n      model: this.modelId,\n      models: this.settings.models,\n\n      // model specific settings:\n      logit_bias: this.settings.logitBias,\n      logprobs:\n        this.settings.logprobs === true ||\n        typeof this.settings.logprobs === 'number'\n          ? true\n          : undefined,\n      top_logprobs:\n        typeof this.settings.logprobs === 'number'\n          ? this.settings.logprobs\n          : typeof this.settings.logprobs === 'boolean'\n            ? this.settings.logprobs\n              ? 0\n              : undefined\n            : undefined,\n      user: this.settings.user,\n      parallel_tool_calls: this.settings.parallelToolCalls,\n\n      // standardized settings:\n      max_tokens: maxOutputTokens,\n      temperature,\n      top_p: topP,\n      frequency_penalty: frequencyPenalty,\n      presence_penalty: presencePenalty,\n      seed,\n\n      stop: stopSequences,\n      response_format: responseFormat,\n      top_k: topK,\n\n      // messages:\n      messages: convertToOpenRouterChatMessages(prompt),\n\n      // OpenRouter specific settings:\n      include_reasoning: this.settings.includeReasoning,\n      reasoning: this.settings.reasoning,\n      usage: this.settings.usage,\n\n      // TODO: Web search not yet supported - commenting out\n      // // Web search settings:\n      // plugins: this.settings.plugins,\n      // web_search_options: this.settings.web_search_options,\n\n      // TODO: Advanced provider routing not yet supported - commenting out\n      // // Provider routing settings:\n      // provider: this.settings.provider,\n\n      // extra body:\n      ...this.config.extraBody,\n      ...this.settings.extraBody,\n    };\n\n    if (responseFormat?.type === 'json' && responseFormat.schema != null) {\n      return {\n        ...baseArgs,\n        response_format: {\n          type: 'json_schema',\n          json_schema: {\n            schema: responseFormat.schema,\n            strict: true,\n            name: responseFormat.name ?? 'response',\n            ...(responseFormat.description && {\n              description: responseFormat.description,\n            }),\n          },\n        },\n      };\n    }\n\n    if (tools && tools.length > 0) {\n      // TODO: support built-in tools\n      const mappedTools = tools\n        .filter(tool => tool.type === 'function')\n        .map(tool => ({\n          type: 'function' as const,\n          function: {\n            name: tool.name,\n            description: tool.description,\n            parameters: tool.inputSchema,\n          },\n        }));\n\n      return {\n        ...baseArgs,\n        tools: mappedTools,\n        tool_choice: toolChoice\n          ? getChatCompletionToolChoice(toolChoice)\n          : undefined,\n      };\n    }\n\n    return baseArgs;\n  }\n\n  async doGenerate(options: LanguageModelV2CallOptions): Promise<{\n    content: Array<LanguageModelV2Content>;\n    finishReason: LanguageModelV2FinishReason;\n    usage: LanguageModelV2Usage;\n    warnings: Array<LanguageModelV2CallWarning>;\n    providerMetadata?: {\n      openrouter: {\n        provider: string;\n        usage: OpenRouterUsageAccounting;\n      };\n    };\n    request?: { body?: unknown };\n    response?: LanguageModelV2ResponseMetadata & {\n      headers?: SharedV2Headers;\n      body?: unknown;\n    };\n  }> {\n    const providerOptions = options.providerOptions || {};\n    const openrouterOptions = providerOptions.openrouter || {};\n\n    const args = {\n      ...this.getArgs(options),\n      ...openrouterOptions,\n    };\n\n    const { value: response, responseHeaders } = await postJsonToApi({\n      url: this.config.url({\n        path: '/chat/completions',\n        modelId: this.modelId,\n      }),\n      headers: combineHeaders(this.config.headers(), options.headers),\n      body: args,\n      failedResponseHandler: openrouterFailedResponseHandler,\n      successfulResponseHandler: createJsonResponseHandler(\n        OpenRouterNonStreamChatCompletionResponseSchema\n      ),\n      abortSignal: options.abortSignal,\n      fetch: this.config.fetch,\n    });\n\n    const choice = response.choices[0];\n\n    if (!choice) {\n      throw new Error('No choice in response');\n    }\n\n    // Extract detailed usage information\n    const usageInfo: LanguageModelV2Usage = response.usage\n      ? {\n          inputTokens: response.usage.prompt_tokens ?? 0,\n          outputTokens: response.usage.completion_tokens ?? 0,\n          totalTokens:\n            (response.usage.prompt_tokens ?? 0) +\n            (response.usage.completion_tokens ?? 0),\n          reasoningTokens:\n            response.usage.completion_tokens_details?.reasoning_tokens ?? 0,\n          cachedInputTokens:\n            response.usage.prompt_tokens_details?.cached_tokens ?? 0,\n        }\n      : {\n          inputTokens: 0,\n          outputTokens: 0,\n          totalTokens: 0,\n          reasoningTokens: 0,\n          cachedInputTokens: 0,\n        };\n\n    // TODO: Router doesn't return structured reasoning_details yet\n    // const reasoningDetails = choice.message.reasoning_details ?? [];\n\n    const reasoning: Array<LanguageModelV2Content> =\n      // TODO: Enable when router supports reasoning_details\n      // reasoningDetails.length > 0\n      //   ? reasoningDetails\n      //       .map((detail: any) => {\n      //         switch (detail.type) {\n      //           case ReasoningDetailType.Text: {\n      //             if (detail.text) {\n      //               return {\n      //                 type: \"reasoning\" as const,\n      //                 text: detail.text,\n      //               };\n      //             }\n      //             break;\n      //           }\n      //           case ReasoningDetailType.Summary: {\n      //             if (detail.summary) {\n      //               return {\n      //                 type: \"reasoning\" as const,\n      //                 text: detail.summary,\n      //               };\n      //             }\n      //             break;\n      //           }\n      //           case ReasoningDetailType.Encrypted: {\n      //             // For encrypted reasoning, we include a redacted placeholder\n      //             if (detail.data) {\n      //               return {\n      //                 type: \"reasoning\" as const,\n      //                 text: \"[REDACTED]\",\n      //               };\n      //             }\n      //             break;\n      //           }\n      //           default: {\n      //             detail satisfies never;\n      //           }\n      //         }\n      //         return null;\n      //       })\n      //       .filter((p: any) => p !== null)\n      //   :\n      choice.message.reasoning\n        ? [\n            {\n              type: 'reasoning' as const,\n              text: choice.message.reasoning,\n            },\n          ]\n        : [];\n\n    const content: Array<LanguageModelV2Content> = [];\n\n    // Add reasoning content first\n    content.push(...reasoning);\n\n    if (choice.message.content) {\n      content.push({\n        type: 'text' as const,\n        text: choice.message.content,\n      });\n    }\n\n    if (choice.message.tool_calls) {\n      for (const toolCall of choice.message.tool_calls) {\n        content.push({\n          type: 'tool-call' as const,\n          toolCallId: toolCall.id ?? generateId(),\n          toolName: toolCall.function.name,\n          input: toolCall.function.arguments,\n        });\n      }\n    }\n\n    if (choice.message.annotations) {\n      for (const annotation of choice.message.annotations) {\n        if (annotation.type === 'url_citation') {\n          content.push({\n            type: 'source' as const,\n            sourceType: 'url' as const,\n            id: annotation.url_citation.url,\n            url: annotation.url_citation.url,\n            title: annotation.url_citation.title,\n            providerMetadata: {\n              openrouter: {\n                content: annotation.url_citation.content || '',\n              },\n            },\n          });\n        }\n      }\n    }\n\n    return {\n      content,\n      finishReason: mapOpenRouterFinishReason(choice.finish_reason),\n      usage: usageInfo,\n      warnings: [],\n      providerMetadata: {\n        openrouter: {\n          provider: response.provider ?? '',\n          usage: {\n            promptTokens: usageInfo.inputTokens ?? 0,\n            completionTokens: usageInfo.outputTokens ?? 0,\n            totalTokens: usageInfo.totalTokens ?? 0,\n            cost: response.usage?.cost,\n            // TODO: Router doesn't track these details yet\n            // promptTokensDetails: {\n            //   cachedTokens:\n            //     response.usage?.prompt_tokens_details?.cached_tokens ?? 0,\n            // },\n            // completionTokensDetails: {\n            //   reasoningTokens:\n            //     response.usage?.completion_tokens_details?.reasoning_tokens ??\n            //     0,\n            // },\n            // costDetails: {\n            //   upstreamInferenceCost:\n            //     response.usage?.cost_details?.upstream_inference_cost ?? 0,\n            // },\n          },\n        },\n      },\n      request: { body: args },\n      response: {\n        id: response.id,\n        modelId: response.model,\n        headers: responseHeaders,\n      },\n    };\n  }\n\n  async doStream(options: LanguageModelV2CallOptions): Promise<{\n    stream: ReadableStream<LanguageModelV2StreamPart>;\n    warnings: Array<LanguageModelV2CallWarning>;\n    request?: { body?: unknown };\n    response?: LanguageModelV2ResponseMetadata & {\n      headers?: SharedV2Headers;\n      body?: unknown;\n    };\n  }> {\n    const providerOptions = options.providerOptions || {};\n    const openrouterOptions = providerOptions.openrouter || {};\n\n    const args = {\n      ...this.getArgs(options),\n      ...openrouterOptions,\n    };\n\n    const { value: response, responseHeaders } = await postJsonToApi({\n      url: this.config.url({\n        path: '/chat/completions',\n        modelId: this.modelId,\n      }),\n      headers: combineHeaders(this.config.headers(), options.headers),\n      body: {\n        ...args,\n        stream: true,\n\n        // only include stream_options when in strict compatibility mode:\n        stream_options:\n          this.config.compatibility === 'strict'\n            ? {\n                include_usage: true,\n                // If user has requested usage accounting, make sure we get it in the stream\n                ...(this.settings.usage?.include\n                  ? { include_usage: true }\n                  : {}),\n              }\n            : undefined,\n      },\n      failedResponseHandler: openrouterFailedResponseHandler,\n      successfulResponseHandler: createEventSourceResponseHandler(\n        OpenRouterStreamChatCompletionChunkSchema\n      ),\n      abortSignal: options.abortSignal,\n      fetch: this.config.fetch,\n    });\n\n    const toolCalls: Array<{\n      id: string;\n      type: 'function';\n      function: {\n        name: string;\n        arguments: string;\n      };\n      inputStarted: boolean;\n      sent: boolean;\n    }> = [];\n\n    let finishReason: FinishReason = 'other';\n    const usage: LanguageModelV2Usage = {\n      inputTokens: Number.NaN,\n      outputTokens: Number.NaN,\n      totalTokens: Number.NaN,\n      reasoningTokens: Number.NaN,\n      cachedInputTokens: Number.NaN,\n    };\n\n    // Track provider-specific usage information\n    const openrouterUsage: Partial<OpenRouterUsageAccounting> = {};\n\n    let textStarted = false;\n    let reasoningStarted = false;\n    let textId: string | undefined;\n    let reasoningId: string | undefined;\n    let openrouterResponseId: string | undefined;\n    let provider: string | undefined;\n\n    return {\n      stream: response.pipeThrough(\n        new TransformStream<\n          ParseResult<\n            z.infer<typeof OpenRouterStreamChatCompletionChunkSchema>\n          >,\n          LanguageModelV2StreamPart\n        >({\n          transform(chunk, controller) {\n            // handle failed chunk parsing / validation:\n            if (!chunk.success) {\n              finishReason = 'error';\n              controller.enqueue({ type: 'error', error: chunk.error });\n              return;\n            }\n\n            const value = chunk.value;\n\n            // handle error chunks:\n            if ('error' in value) {\n              finishReason = 'error';\n              controller.enqueue({ type: 'error', error: value.error });\n              return;\n            }\n\n            if (value.provider) {\n              provider = value.provider;\n            }\n\n            if (value.id) {\n              openrouterResponseId = value.id;\n              controller.enqueue({\n                type: 'response-metadata',\n                id: value.id,\n              });\n            }\n\n            if (value.model) {\n              controller.enqueue({\n                type: 'response-metadata',\n                modelId: value.model,\n              });\n            }\n\n            if (value.usage != null) {\n              usage.inputTokens = value.usage.prompt_tokens;\n              usage.outputTokens = value.usage.completion_tokens;\n              usage.totalTokens =\n                value.usage.prompt_tokens + value.usage.completion_tokens;\n\n              // Collect OpenRouter specific usage information\n              openrouterUsage.promptTokens = value.usage.prompt_tokens;\n\n              // TODO: Router doesn't track cached tokens yet\n              // if (value.usage.prompt_tokens_details) {\n              //   const cachedInputTokens =\n              //     value.usage.prompt_tokens_details.cached_tokens ?? 0;\n\n              //   usage.cachedInputTokens = cachedInputTokens;\n              //   openrouterUsage.promptTokensDetails = {\n              //     cachedTokens: cachedInputTokens,\n              //   };\n              // }\n\n              openrouterUsage.completionTokens = value.usage.completion_tokens;\n\n              // TODO: Router doesn't separate reasoning tokens yet\n              // if (value.usage.completion_tokens_details) {\n              //   const reasoningTokens =\n              //     value.usage.completion_tokens_details.reasoning_tokens ?? 0;\n\n              //   usage.reasoningTokens = reasoningTokens;\n              //   openrouterUsage.completionTokensDetails = {\n              //     reasoningTokens,\n              //   };\n              // }\n\n              openrouterUsage.cost = value.usage.cost;\n              openrouterUsage.totalTokens = value.usage.total_tokens;\n            }\n\n            const choice = value.choices[0];\n\n            if (choice?.finish_reason != null) {\n              finishReason = mapOpenRouterFinishReason(choice.finish_reason);\n            }\n\n            if (choice?.delta == null) {\n              return;\n            }\n\n            const delta = choice.delta;\n\n            const emitReasoningChunk = (chunkText: string) => {\n              if (!reasoningStarted) {\n                reasoningId = openrouterResponseId || generateId();\n                controller.enqueue({\n                  type: 'reasoning-start',\n                  id: reasoningId,\n                });\n                reasoningStarted = true;\n              }\n              controller.enqueue({\n                type: 'reasoning-delta',\n                delta: chunkText,\n                id: reasoningId || generateId(),\n              });\n            };\n\n            if (delta.reasoning_details && delta.reasoning_details.length > 0) {\n              for (const detail of delta.reasoning_details) {\n                switch (detail.type) {\n                  case ReasoningDetailType.Text: {\n                    if (detail.text) {\n                      emitReasoningChunk(detail.text);\n                    }\n                    break;\n                  }\n                  case ReasoningDetailType.Encrypted: {\n                    if (detail.data) {\n                      emitReasoningChunk('[REDACTED]');\n                    }\n                    break;\n                  }\n                  case ReasoningDetailType.Summary: {\n                    if (detail.summary) {\n                      emitReasoningChunk(detail.summary);\n                    }\n                    break;\n                  }\n                  default: {\n                    detail satisfies never;\n                    break;\n                  }\n                }\n              }\n            } else if (delta.reasoning) {\n              emitReasoningChunk(delta.reasoning);\n            }\n\n            if (delta.content) {\n              // If reasoning was previously active and now we're starting text content,\n              // we should end the reasoning first to maintain proper order\n              if (reasoningStarted && !textStarted) {\n                controller.enqueue({\n                  type: 'reasoning-end',\n                  id: reasoningId || generateId(),\n                });\n                reasoningStarted = false; // Mark as ended so we don't end it again in flush\n              }\n\n              if (!textStarted) {\n                textId = openrouterResponseId || generateId();\n                controller.enqueue({\n                  type: 'text-start',\n                  id: textId,\n                });\n                textStarted = true;\n              }\n              controller.enqueue({\n                type: 'text-delta',\n                delta: delta.content,\n                id: textId || generateId(),\n              });\n            }\n\n            if (delta.annotations) {\n              for (const annotation of delta.annotations) {\n                if (annotation.type === 'url_citation') {\n                  controller.enqueue({\n                    type: 'source',\n                    sourceType: 'url' as const,\n                    id: annotation.url_citation.url,\n                    url: annotation.url_citation.url,\n                    title: annotation.url_citation.title,\n                    providerMetadata: {\n                      openrouter: {\n                        content: annotation.url_citation.content || '',\n                      },\n                    },\n                  });\n                }\n              }\n            }\n\n            if (delta.tool_calls != null) {\n              for (const toolCallDelta of delta.tool_calls) {\n                const index = toolCallDelta.index ?? toolCalls.length - 1;\n\n                // Tool call start. OpenRouter returns all information except the arguments in the first chunk.\n                if (toolCalls[index] == null) {\n                  if (toolCallDelta.type !== 'function') {\n                    throw new InvalidResponseDataError({\n                      data: toolCallDelta,\n                      message: `Expected 'function' type.`,\n                    });\n                  }\n\n                  if (toolCallDelta.id == null) {\n                    throw new InvalidResponseDataError({\n                      data: toolCallDelta,\n                      message: `Expected 'id' to be a string.`,\n                    });\n                  }\n\n                  if (toolCallDelta.function?.name == null) {\n                    throw new InvalidResponseDataError({\n                      data: toolCallDelta,\n                      message: `Expected 'function.name' to be a string.`,\n                    });\n                  }\n\n                  toolCalls[index] = {\n                    id: toolCallDelta.id,\n                    type: 'function',\n                    function: {\n                      name: toolCallDelta.function.name,\n                      arguments: toolCallDelta.function.arguments ?? '',\n                    },\n                    inputStarted: false,\n                    sent: false,\n                  };\n\n                  const toolCall = toolCalls[index];\n\n                  if (toolCall == null) {\n                    throw new Error('Tool call is missing');\n                  }\n\n                  // check if tool call is complete (some providers send the full tool call in one chunk)\n                  if (\n                    toolCall.function?.name != null &&\n                    toolCall.function?.arguments != null &&\n                    isParsableJson(toolCall.function.arguments)\n                  ) {\n                    toolCall.inputStarted = true;\n\n                    controller.enqueue({\n                      type: 'tool-input-start',\n                      id: toolCall.id,\n                      toolName: toolCall.function.name,\n                    });\n\n                    // send delta\n                    controller.enqueue({\n                      type: 'tool-input-delta',\n                      id: toolCall.id,\n                      delta: toolCall.function.arguments,\n                    });\n\n                    controller.enqueue({\n                      type: 'tool-input-end',\n                      id: toolCall.id,\n                    });\n\n                    // send tool call\n                    controller.enqueue({\n                      type: 'tool-call',\n                      toolCallId: toolCall.id,\n                      toolName: toolCall.function.name,\n                      input: toolCall.function.arguments,\n                    });\n\n                    toolCall.sent = true;\n                  }\n\n                  continue;\n                }\n\n                // existing tool call, merge\n                const toolCall = toolCalls[index];\n\n                if (toolCall == null) {\n                  throw new Error('Tool call is missing');\n                }\n\n                if (!toolCall.inputStarted) {\n                  toolCall.inputStarted = true;\n                  controller.enqueue({\n                    type: 'tool-input-start',\n                    id: toolCall.id,\n                    toolName: toolCall.function.name,\n                  });\n                }\n\n                if (toolCallDelta.function?.arguments != null) {\n                  toolCall.function.arguments +=\n                    toolCallDelta.function?.arguments ?? '';\n                }\n\n                // send delta\n                controller.enqueue({\n                  type: 'tool-input-delta',\n                  id: toolCall.id,\n                  delta: toolCallDelta.function.arguments ?? '',\n                });\n\n                // check if tool call is complete\n                if (\n                  toolCall.function?.name != null &&\n                  toolCall.function?.arguments != null &&\n                  isParsableJson(toolCall.function.arguments)\n                ) {\n                  controller.enqueue({\n                    type: 'tool-call',\n                    toolCallId: toolCall.id ?? generateId(),\n                    toolName: toolCall.function.name,\n                    input: toolCall.function.arguments,\n                  });\n\n                  toolCall.sent = true;\n                }\n              }\n            }\n          },\n\n          flush(controller) {\n            // Forward any unsent tool calls if finish reason is 'tool-calls'\n            if (finishReason === 'tool-calls') {\n              for (const toolCall of toolCalls) {\n                if (toolCall && !toolCall.sent) {\n                  controller.enqueue({\n                    type: 'tool-call',\n                    toolCallId: toolCall.id ?? generateId(),\n                    toolName: toolCall.function.name,\n                    // Coerce invalid arguments to an empty JSON object\n                    input: isParsableJson(toolCall.function.arguments)\n                      ? toolCall.function.arguments\n                      : '{}',\n                  });\n                  toolCall.sent = true;\n                }\n              }\n            }\n\n            // End reasoning first if it was started, to maintain proper order\n            if (reasoningStarted) {\n              controller.enqueue({\n                type: 'reasoning-end',\n                id: reasoningId || generateId(),\n              });\n            }\n            if (textStarted) {\n              controller.enqueue({\n                type: 'text-end',\n                id: textId || generateId(),\n              });\n            }\n\n            const openrouterMetadata: {\n              usage: Partial<OpenRouterUsageAccounting>;\n              provider?: string;\n            } = {\n              usage: openrouterUsage,\n            };\n\n            // Only include provider if it's actually set\n            if (provider !== undefined) {\n              openrouterMetadata.provider = provider;\n            }\n\n            controller.enqueue({\n              type: 'finish',\n              finishReason,\n              usage,\n              providerMetadata: {\n                openrouter: openrouterMetadata,\n              },\n            });\n          },\n        })\n      ),\n      warnings: [],\n      request: { body: args },\n      response: { headers: responseHeaders },\n    };\n  }\n}\n","import type {\n  LanguageModelV2FilePart,\n  LanguageModelV2Prompt,\n  LanguageModelV2ReasoningPart,\n  LanguageModelV2TextPart,\n  LanguageModelV2ToolCallPart,\n  LanguageModelV2ToolResultPart,\n} from '@ai-sdk/provider';\n\nimport {\n  InvalidPromptError,\n  UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\n\nexport function convertToOpenRouterCompletionPrompt({\n  prompt,\n  inputFormat,\n  user = 'user',\n  assistant = 'assistant',\n}: {\n  prompt: LanguageModelV2Prompt;\n  inputFormat: 'prompt' | 'messages';\n  user?: string;\n  assistant?: string;\n}): {\n  prompt: string;\n} {\n  // When the user supplied a prompt input, we don't transform it:\n  if (\n    inputFormat === 'prompt' &&\n    prompt.length === 1 &&\n    prompt[0] &&\n    prompt[0].role === 'user' &&\n    prompt[0].content.length === 1 &&\n    prompt[0].content[0] &&\n    prompt[0].content[0].type === 'text'\n  ) {\n    return { prompt: prompt[0].content[0].text };\n  }\n\n  // otherwise transform to a chat message format:\n  let text = '';\n\n  // if first message is a system message, add it to the text:\n  if (prompt[0] && prompt[0].role === 'system') {\n    text += `${prompt[0].content}\\n\\n`;\n    prompt = prompt.slice(1);\n  }\n\n  for (const { role, content } of prompt) {\n    switch (role) {\n      case 'system': {\n        throw new InvalidPromptError({\n          message: `Unexpected system message in prompt: ${content}`,\n          prompt,\n        });\n      }\n\n      case 'user': {\n        const userMessage = content\n          .map((part: LanguageModelV2TextPart | LanguageModelV2FilePart) => {\n            switch (part.type) {\n              case 'text': {\n                return part.text;\n              }\n\n              case 'file': {\n                throw new UnsupportedFunctionalityError({\n                  functionality: 'file attachments',\n                });\n              }\n              default: {\n                return '';\n              }\n            }\n          })\n          .join('');\n\n        text += `${user}:\\n${userMessage}\\n\\n`;\n        break;\n      }\n\n      case 'assistant': {\n        const assistantMessage = content\n          .map(\n            (\n              part:\n                | LanguageModelV2TextPart\n                | LanguageModelV2FilePart\n                | LanguageModelV2ReasoningPart\n                | LanguageModelV2ToolCallPart\n                | LanguageModelV2ToolResultPart,\n            ) => {\n              switch (part.type) {\n                case 'text': {\n                  return part.text;\n                }\n                case 'tool-call': {\n                  throw new UnsupportedFunctionalityError({\n                    functionality: 'tool-call messages',\n                  });\n                }\n                case 'tool-result': {\n                  throw new UnsupportedFunctionalityError({\n                    functionality: 'tool-result messages',\n                  });\n                }\n                case 'reasoning': {\n                  throw new UnsupportedFunctionalityError({\n                    functionality: 'reasoning messages',\n                  });\n                }\n\n                case 'file': {\n                  throw new UnsupportedFunctionalityError({\n                    functionality: 'file attachments',\n                  });\n                }\n\n                default: {\n                  return '';\n                }\n              }\n            },\n          )\n          .join('');\n\n        text += `${assistant}:\\n${assistantMessage}\\n\\n`;\n        break;\n      }\n\n      case 'tool': {\n        throw new UnsupportedFunctionalityError({\n          functionality: 'tool messages',\n        });\n      }\n\n      default: {\n        break;\n      }\n    }\n  }\n\n  // Assistant message prefix:\n  text += `${assistant}:\\n`;\n\n  return {\n    prompt: text,\n  };\n}\n","import { z } from \"zod\";\nimport { OpenRouterErrorResponseSchema } from \"../schemas/error-response\";\nimport { ReasoningDetailArraySchema } from \"../schemas/reasoning-details\";\n\n// limited version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nexport const OpenRouterCompletionChunkSchema = z.union([\n  z.object({\n    id: z.string().optional(),\n    model: z.string().optional(),\n    choices: z.array(\n      z.object({\n        text: z.string(),\n        reasoning: z.string().nullish().optional(),\n        reasoning_details: ReasoningDetailArraySchema.nullish(),\n\n        finish_reason: z.string().nullish(),\n        index: z.number().nullish(),\n        logprobs: z\n          .object({\n            tokens: z.array(z.string()),\n            token_logprobs: z.array(z.number()),\n            top_logprobs: z.array(z.record(z.string(), z.number())).nullable(),\n          })\n          .nullable()\n          .optional(),\n      })\n    ),\n    usage: z\n      .object({\n        prompt_tokens: z.number(),\n        prompt_tokens_details: z\n          .object({\n            cached_tokens: z.number(),\n          })\n          .nullish(),\n        completion_tokens: z.number(),\n        completion_tokens_details: z\n          .object({\n            reasoning_tokens: z.number(),\n          })\n          .nullish(),\n        total_tokens: z.number(),\n        cost: z.number().optional(),\n      })\n      .nullish(),\n  }),\n  OpenRouterErrorResponseSchema,\n]);\n","import type {\n  LanguageModelV2,\n  LanguageModelV2CallOptions,\n  LanguageModelV2StreamPart,\n  LanguageModelV2Usage,\n} from '@ai-sdk/provider';\nimport type { ParseResult } from '@ai-sdk/provider-utils';\nimport type { FinishReason } from 'ai';\nimport type { z } from 'zod';\nimport type { OpenRouterUsageAccounting } from '../types';\nimport type {\n  OpenRouterCompletionModelId,\n  OpenRouterCompletionSettings,\n} from '../types/openrouter-completion-settings';\n\nimport { UnsupportedFunctionalityError } from '@ai-sdk/provider';\nimport {\n  combineHeaders,\n  createEventSourceResponseHandler,\n  createJsonResponseHandler,\n  generateId,\n  postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { openrouterFailedResponseHandler } from '../schemas/error-response';\nimport { mapOpenRouterFinishReason } from '../utils/map-finish-reason';\nimport { convertToOpenRouterCompletionPrompt } from './convert-to-openrouter-completion-prompt';\nimport { OpenRouterCompletionChunkSchema } from './schemas';\n\ntype OpenRouterCompletionConfig = {\n  provider: string;\n  compatibility: 'strict' | 'compatible';\n  headers: () => Record<string, string | undefined>;\n  url: (options: { modelId: string; path: string }) => string;\n  fetch?: typeof fetch;\n  extraBody?: Record<string, unknown>;\n};\n\nexport class OpenRouterCompletionLanguageModel implements LanguageModelV2 {\n  readonly specificationVersion = 'v2' as const;\n  readonly provider = 'openrouter';\n  readonly modelId: OpenRouterCompletionModelId;\n  readonly supportedUrls: Record<string, RegExp[]> = {\n    'image/*': [\n      /^data:image\\/[a-zA-Z]+;base64,/,\n      /^https?:\\/\\/.+\\.(jpg|jpeg|png|gif|webp)$/i,\n    ],\n    'text/*': [/^data:text\\//, /^https?:\\/\\/.+$/],\n    'application/*': [/^data:application\\//, /^https?:\\/\\/.+$/],\n  };\n  readonly defaultObjectGenerationMode = undefined;\n  readonly settings: OpenRouterCompletionSettings;\n\n  private readonly config: OpenRouterCompletionConfig;\n\n  constructor(\n    modelId: OpenRouterCompletionModelId,\n    settings: OpenRouterCompletionSettings,\n    config: OpenRouterCompletionConfig\n  ) {\n    this.modelId = modelId;\n    this.settings = settings;\n    this.config = config;\n  }\n\n  private getArgs({\n    prompt,\n    maxOutputTokens,\n    temperature,\n    topP,\n    frequencyPenalty,\n    presencePenalty,\n    seed,\n    responseFormat,\n    topK,\n    stopSequences,\n    tools,\n    toolChoice,\n  }: LanguageModelV2CallOptions) {\n    const { prompt: completionPrompt } = convertToOpenRouterCompletionPrompt({\n      prompt,\n      inputFormat: 'prompt',\n    });\n\n    if (tools?.length) {\n      throw new UnsupportedFunctionalityError({\n        functionality: 'tools',\n      });\n    }\n\n    if (toolChoice) {\n      throw new UnsupportedFunctionalityError({\n        functionality: 'toolChoice',\n      });\n    }\n\n    return {\n      // model id:\n      model: this.modelId,\n      models: this.settings.models,\n\n      // model specific settings:\n      logit_bias: this.settings.logitBias,\n      logprobs:\n        typeof this.settings.logprobs === 'number'\n          ? this.settings.logprobs\n          : typeof this.settings.logprobs === 'boolean'\n            ? this.settings.logprobs\n              ? 0\n              : undefined\n            : undefined,\n      suffix: this.settings.suffix,\n      user: this.settings.user,\n\n      // standardized settings:\n      max_tokens: maxOutputTokens,\n      temperature,\n      top_p: topP,\n      frequency_penalty: frequencyPenalty,\n      presence_penalty: presencePenalty,\n      seed,\n\n      stop: stopSequences,\n      response_format: responseFormat,\n      top_k: topK,\n\n      // prompt:\n      prompt: completionPrompt,\n\n      // OpenRouter specific settings:\n      include_reasoning: this.settings.includeReasoning,\n      reasoning: this.settings.reasoning,\n\n      // extra body:\n      ...this.config.extraBody,\n      ...this.settings.extraBody,\n    };\n  }\n\n  async doGenerate(\n    options: LanguageModelV2CallOptions\n  ): Promise<Awaited<ReturnType<LanguageModelV2['doGenerate']>>> {\n    const providerOptions = options.providerOptions || {};\n    const openrouterOptions = providerOptions.openrouter || {};\n\n    const args = {\n      ...this.getArgs(options),\n      ...openrouterOptions,\n    };\n\n    const { value: response, responseHeaders } = await postJsonToApi({\n      url: this.config.url({\n        path: '/completions',\n        modelId: this.modelId,\n      }),\n      headers: combineHeaders(this.config.headers(), options.headers),\n      body: args,\n      failedResponseHandler: openrouterFailedResponseHandler,\n      successfulResponseHandler: createJsonResponseHandler(\n        OpenRouterCompletionChunkSchema\n      ),\n      abortSignal: options.abortSignal,\n      fetch: this.config.fetch,\n    });\n\n    if ('error' in response) {\n      throw new Error(`${response.error.message}`);\n    }\n\n    const choice = response.choices[0];\n\n    if (!choice) {\n      throw new Error('No choice in OpenRouter completion response');\n    }\n\n    return {\n      content: [\n        {\n          type: 'text',\n          text: choice.text ?? '',\n        },\n      ],\n      finishReason: mapOpenRouterFinishReason(choice.finish_reason),\n      usage: {\n        inputTokens: response.usage?.prompt_tokens ?? 0,\n        outputTokens: response.usage?.completion_tokens ?? 0,\n        totalTokens:\n          (response.usage?.prompt_tokens ?? 0) +\n          (response.usage?.completion_tokens ?? 0),\n        reasoningTokens:\n          response.usage?.completion_tokens_details?.reasoning_tokens ?? 0,\n        cachedInputTokens:\n          response.usage?.prompt_tokens_details?.cached_tokens ?? 0,\n      },\n      warnings: [],\n      response: {\n        headers: responseHeaders,\n      },\n    };\n  }\n\n  async doStream(\n    options: LanguageModelV2CallOptions\n  ): Promise<Awaited<ReturnType<LanguageModelV2['doStream']>>> {\n    const providerOptions = options.providerOptions || {};\n    const openrouterOptions = providerOptions.openrouter || {};\n\n    const args = {\n      ...this.getArgs(options),\n      ...openrouterOptions,\n    };\n\n    const { value: response, responseHeaders } = await postJsonToApi({\n      url: this.config.url({\n        path: '/completions',\n        modelId: this.modelId,\n      }),\n      headers: combineHeaders(this.config.headers(), options.headers),\n      body: {\n        ...args,\n        stream: true,\n\n        // only include stream_options when in strict compatibility mode:\n        stream_options:\n          this.config.compatibility === 'strict'\n            ? { include_usage: true }\n            : undefined,\n      },\n      failedResponseHandler: openrouterFailedResponseHandler,\n      successfulResponseHandler: createEventSourceResponseHandler(\n        OpenRouterCompletionChunkSchema\n      ),\n      abortSignal: options.abortSignal,\n      fetch: this.config.fetch,\n    });\n\n    let finishReason: FinishReason = 'other';\n    const usage: LanguageModelV2Usage = {\n      inputTokens: Number.NaN,\n      outputTokens: Number.NaN,\n      totalTokens: Number.NaN,\n      reasoningTokens: Number.NaN,\n      cachedInputTokens: Number.NaN,\n    };\n\n    const openrouterUsage: Partial<OpenRouterUsageAccounting> = {};\n    return {\n      stream: response.pipeThrough(\n        new TransformStream<\n          ParseResult<z.infer<typeof OpenRouterCompletionChunkSchema>>,\n          LanguageModelV2StreamPart\n        >({\n          transform(chunk, controller) {\n            // handle failed chunk parsing / validation:\n            if (!chunk.success) {\n              finishReason = 'error';\n              controller.enqueue({ type: 'error', error: chunk.error });\n              return;\n            }\n\n            const value = chunk.value;\n\n            // handle error chunks:\n            if ('error' in value) {\n              finishReason = 'error';\n              controller.enqueue({ type: 'error', error: value.error });\n              return;\n            }\n\n            if (value.usage != null) {\n              usage.inputTokens = value.usage.prompt_tokens;\n              usage.outputTokens = value.usage.completion_tokens;\n              usage.totalTokens =\n                value.usage.prompt_tokens + value.usage.completion_tokens;\n\n              // Collect OpenRouter specific usage information\n              openrouterUsage.promptTokens = value.usage.prompt_tokens;\n\n              if (value.usage.prompt_tokens_details) {\n                const cachedInputTokens =\n                  value.usage.prompt_tokens_details.cached_tokens ?? 0;\n\n                usage.cachedInputTokens = cachedInputTokens;\n                // openrouterUsage.promptTokensDetails = {\n                //   cachedTokens: cachedInputTokens,\n                // };\n              }\n\n              openrouterUsage.completionTokens = value.usage.completion_tokens;\n              if (value.usage.completion_tokens_details) {\n                const reasoningTokens =\n                  value.usage.completion_tokens_details.reasoning_tokens ?? 0;\n\n                usage.reasoningTokens = reasoningTokens;\n                // openrouterUsage.completionTokensDetails = {\n                //   reasoningTokens,\n                // };\n              }\n\n              openrouterUsage.cost = value.usage.cost;\n              openrouterUsage.totalTokens = value.usage.total_tokens;\n            }\n\n            const choice = value.choices[0];\n\n            if (choice?.finish_reason != null) {\n              finishReason = mapOpenRouterFinishReason(choice.finish_reason);\n            }\n\n            if (choice?.text != null) {\n              controller.enqueue({\n                type: 'text-delta',\n                delta: choice.text,\n                id: generateId(),\n              });\n            }\n          },\n\n          flush(controller) {\n            controller.enqueue({\n              type: 'finish',\n              finishReason,\n              usage,\n              providerMetadata: {\n                openrouter: {\n                  usage: openrouterUsage,\n                },\n              },\n            });\n          },\n        })\n      ),\n      response: {\n        headers: responseHeaders,\n      },\n    };\n  }\n}\n","import { Address } from \"viem\";\n\nexport const config: Record<string, ChainConfig> = {\n  \"84532\": {\n    usdcAddress: \"0x036CbD53842c5426634e7929541eC2318f3dCF7e\",\n    usdcName: \"USDC\",\n  },\n  \"8453\": {\n    usdcAddress: \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\",\n    usdcName: \"USD Coin\",\n  },\n  \"43113\": {\n    usdcAddress: \"0x5425890298aed601595a70AB815c96711a31Bc65\",\n    usdcName: \"USD Coin\",\n  },\n  \"43114\": {\n    usdcAddress: \"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E\",\n    usdcName: \"USD Coin\",\n  },\n  \"4689\": {\n    usdcAddress: \"0xcdf79194c6c285077a58da47641d4dbe51f63542\",\n    usdcName: \"Bridged USDC\",\n  },\n  \"1328\": {\n    usdcAddress: \"0x4fcf1784b31630811181f670aea7a7bef803eaed\",\n    usdcName: \"USDC\",\n  },\n  \"1329\": {\n    usdcAddress: \"0xe15fc38f6d8c56af07bbcbe3baf5708a2bf42392\",\n    usdcName: \"USDC\",\n  },\n};\n\nexport type ChainConfig = {\n  usdcAddress: Address;\n  usdcName: string;\n};\n","export const usdcABI = [\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"owner\",\n        type: \"address\",\n      },\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"spender\",\n        type: \"address\",\n      },\n      {\n        indexed: false,\n        internalType: \"uint256\",\n        name: \"value\",\n        type: \"uint256\",\n      },\n    ],\n    name: \"Approval\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"authorizer\",\n        type: \"address\",\n      },\n      {\n        indexed: true,\n        internalType: \"bytes32\",\n        name: \"nonce\",\n        type: \"bytes32\",\n      },\n    ],\n    name: \"AuthorizationCanceled\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"authorizer\",\n        type: \"address\",\n      },\n      {\n        indexed: true,\n        internalType: \"bytes32\",\n        name: \"nonce\",\n        type: \"bytes32\",\n      },\n    ],\n    name: \"AuthorizationUsed\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"_account\",\n        type: \"address\",\n      },\n    ],\n    name: \"Blacklisted\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"newBlacklister\",\n        type: \"address\",\n      },\n    ],\n    name: \"BlacklisterChanged\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"burner\",\n        type: \"address\",\n      },\n      {\n        indexed: false,\n        internalType: \"uint256\",\n        name: \"amount\",\n        type: \"uint256\",\n      },\n    ],\n    name: \"Burn\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"newMasterMinter\",\n        type: \"address\",\n      },\n    ],\n    name: \"MasterMinterChanged\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"minter\",\n        type: \"address\",\n      },\n      { indexed: true, internalType: \"address\", name: \"to\", type: \"address\" },\n      {\n        indexed: false,\n        internalType: \"uint256\",\n        name: \"amount\",\n        type: \"uint256\",\n      },\n    ],\n    name: \"Mint\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"minter\",\n        type: \"address\",\n      },\n      {\n        indexed: false,\n        internalType: \"uint256\",\n        name: \"minterAllowedAmount\",\n        type: \"uint256\",\n      },\n    ],\n    name: \"MinterConfigured\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"oldMinter\",\n        type: \"address\",\n      },\n    ],\n    name: \"MinterRemoved\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: false,\n        internalType: \"address\",\n        name: \"previousOwner\",\n        type: \"address\",\n      },\n      {\n        indexed: false,\n        internalType: \"address\",\n        name: \"newOwner\",\n        type: \"address\",\n      },\n    ],\n    name: \"OwnershipTransferred\",\n    type: \"event\",\n  },\n  { anonymous: false, inputs: [], name: \"Pause\", type: \"event\" },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"newAddress\",\n        type: \"address\",\n      },\n    ],\n    name: \"PauserChanged\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"newRescuer\",\n        type: \"address\",\n      },\n    ],\n    name: \"RescuerChanged\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      { indexed: true, internalType: \"address\", name: \"from\", type: \"address\" },\n      { indexed: true, internalType: \"address\", name: \"to\", type: \"address\" },\n      {\n        indexed: false,\n        internalType: \"uint256\",\n        name: \"value\",\n        type: \"uint256\",\n      },\n    ],\n    name: \"Transfer\",\n    type: \"event\",\n  },\n  {\n    anonymous: false,\n    inputs: [\n      {\n        indexed: true,\n        internalType: \"address\",\n        name: \"_account\",\n        type: \"address\",\n      },\n    ],\n    name: \"UnBlacklisted\",\n    type: \"event\",\n  },\n  { anonymous: false, inputs: [], name: \"Unpause\", type: \"event\" },\n  {\n    inputs: [],\n    name: \"CANCEL_AUTHORIZATION_TYPEHASH\",\n    outputs: [{ internalType: \"bytes32\", name: \"\", type: \"bytes32\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"DOMAIN_SEPARATOR\",\n    outputs: [{ internalType: \"bytes32\", name: \"\", type: \"bytes32\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"PERMIT_TYPEHASH\",\n    outputs: [{ internalType: \"bytes32\", name: \"\", type: \"bytes32\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"RECEIVE_WITH_AUTHORIZATION_TYPEHASH\",\n    outputs: [{ internalType: \"bytes32\", name: \"\", type: \"bytes32\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"TRANSFER_WITH_AUTHORIZATION_TYPEHASH\",\n    outputs: [{ internalType: \"bytes32\", name: \"\", type: \"bytes32\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"owner\", type: \"address\" },\n      { internalType: \"address\", name: \"spender\", type: \"address\" },\n    ],\n    name: \"allowance\",\n    outputs: [{ internalType: \"uint256\", name: \"\", type: \"uint256\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"spender\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n    ],\n    name: \"approve\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"authorizer\", type: \"address\" },\n      { internalType: \"bytes32\", name: \"nonce\", type: \"bytes32\" },\n    ],\n    name: \"authorizationState\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"account\", type: \"address\" }],\n    name: \"balanceOf\",\n    outputs: [{ internalType: \"uint256\", name: \"\", type: \"uint256\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"_account\", type: \"address\" }],\n    name: \"blacklist\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"blacklister\",\n    outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"uint256\", name: \"_amount\", type: \"uint256\" }],\n    name: \"burn\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"authorizer\", type: \"address\" },\n      { internalType: \"bytes32\", name: \"nonce\", type: \"bytes32\" },\n      { internalType: \"uint8\", name: \"v\", type: \"uint8\" },\n      { internalType: \"bytes32\", name: \"r\", type: \"bytes32\" },\n      { internalType: \"bytes32\", name: \"s\", type: \"bytes32\" },\n    ],\n    name: \"cancelAuthorization\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"authorizer\", type: \"address\" },\n      { internalType: \"bytes32\", name: \"nonce\", type: \"bytes32\" },\n      { internalType: \"bytes\", name: \"signature\", type: \"bytes\" },\n    ],\n    name: \"cancelAuthorization\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"minter\", type: \"address\" },\n      { internalType: \"uint256\", name: \"minterAllowedAmount\", type: \"uint256\" },\n    ],\n    name: \"configureMinter\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"currency\",\n    outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"decimals\",\n    outputs: [{ internalType: \"uint8\", name: \"\", type: \"uint8\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"spender\", type: \"address\" },\n      { internalType: \"uint256\", name: \"decrement\", type: \"uint256\" },\n    ],\n    name: \"decreaseAllowance\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"spender\", type: \"address\" },\n      { internalType: \"uint256\", name: \"increment\", type: \"uint256\" },\n    ],\n    name: \"increaseAllowance\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"string\", name: \"tokenName\", type: \"string\" },\n      { internalType: \"string\", name: \"tokenSymbol\", type: \"string\" },\n      { internalType: \"string\", name: \"tokenCurrency\", type: \"string\" },\n      { internalType: \"uint8\", name: \"tokenDecimals\", type: \"uint8\" },\n      { internalType: \"address\", name: \"newMasterMinter\", type: \"address\" },\n      { internalType: \"address\", name: \"newPauser\", type: \"address\" },\n      { internalType: \"address\", name: \"newBlacklister\", type: \"address\" },\n      { internalType: \"address\", name: \"newOwner\", type: \"address\" },\n    ],\n    name: \"initialize\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"string\", name: \"newName\", type: \"string\" }],\n    name: \"initializeV2\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"lostAndFound\", type: \"address\" }],\n    name: \"initializeV2_1\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      {\n        internalType: \"address[]\",\n        name: \"accountsToBlacklist\",\n        type: \"address[]\",\n      },\n      { internalType: \"string\", name: \"newSymbol\", type: \"string\" },\n    ],\n    name: \"initializeV2_2\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"_account\", type: \"address\" }],\n    name: \"isBlacklisted\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"account\", type: \"address\" }],\n    name: \"isMinter\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"masterMinter\",\n    outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"_to\", type: \"address\" },\n      { internalType: \"uint256\", name: \"_amount\", type: \"uint256\" },\n    ],\n    name: \"mint\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"minter\", type: \"address\" }],\n    name: \"minterAllowance\",\n    outputs: [{ internalType: \"uint256\", name: \"\", type: \"uint256\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"name\",\n    outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"owner\", type: \"address\" }],\n    name: \"nonces\",\n    outputs: [{ internalType: \"uint256\", name: \"\", type: \"uint256\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"owner\",\n    outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"pause\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"paused\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"pauser\",\n    outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"owner\", type: \"address\" },\n      { internalType: \"address\", name: \"spender\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"deadline\", type: \"uint256\" },\n      { internalType: \"bytes\", name: \"signature\", type: \"bytes\" },\n    ],\n    name: \"permit\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"owner\", type: \"address\" },\n      { internalType: \"address\", name: \"spender\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"deadline\", type: \"uint256\" },\n      { internalType: \"uint8\", name: \"v\", type: \"uint8\" },\n      { internalType: \"bytes32\", name: \"r\", type: \"bytes32\" },\n      { internalType: \"bytes32\", name: \"s\", type: \"bytes32\" },\n    ],\n    name: \"permit\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"from\", type: \"address\" },\n      { internalType: \"address\", name: \"to\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"validAfter\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"validBefore\", type: \"uint256\" },\n      { internalType: \"bytes32\", name: \"nonce\", type: \"bytes32\" },\n      { internalType: \"bytes\", name: \"signature\", type: \"bytes\" },\n    ],\n    name: \"receiveWithAuthorization\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"from\", type: \"address\" },\n      { internalType: \"address\", name: \"to\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"validAfter\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"validBefore\", type: \"uint256\" },\n      { internalType: \"bytes32\", name: \"nonce\", type: \"bytes32\" },\n      { internalType: \"uint8\", name: \"v\", type: \"uint8\" },\n      { internalType: \"bytes32\", name: \"r\", type: \"bytes32\" },\n      { internalType: \"bytes32\", name: \"s\", type: \"bytes32\" },\n    ],\n    name: \"receiveWithAuthorization\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"minter\", type: \"address\" }],\n    name: \"removeMinter\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      {\n        internalType: \"contract IERC20\",\n        name: \"tokenContract\",\n        type: \"address\",\n      },\n      { internalType: \"address\", name: \"to\", type: \"address\" },\n      { internalType: \"uint256\", name: \"amount\", type: \"uint256\" },\n    ],\n    name: \"rescueERC20\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"rescuer\",\n    outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"symbol\",\n    outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"totalSupply\",\n    outputs: [{ internalType: \"uint256\", name: \"\", type: \"uint256\" }],\n    stateMutability: \"view\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"to\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n    ],\n    name: \"transfer\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"from\", type: \"address\" },\n      { internalType: \"address\", name: \"to\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n    ],\n    name: \"transferFrom\",\n    outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"newOwner\", type: \"address\" }],\n    name: \"transferOwnership\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"from\", type: \"address\" },\n      { internalType: \"address\", name: \"to\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"validAfter\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"validBefore\", type: \"uint256\" },\n      { internalType: \"bytes32\", name: \"nonce\", type: \"bytes32\" },\n      { internalType: \"bytes\", name: \"signature\", type: \"bytes\" },\n    ],\n    name: \"transferWithAuthorization\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [\n      { internalType: \"address\", name: \"from\", type: \"address\" },\n      { internalType: \"address\", name: \"to\", type: \"address\" },\n      { internalType: \"uint256\", name: \"value\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"validAfter\", type: \"uint256\" },\n      { internalType: \"uint256\", name: \"validBefore\", type: \"uint256\" },\n      { internalType: \"bytes32\", name: \"nonce\", type: \"bytes32\" },\n      { internalType: \"uint8\", name: \"v\", type: \"uint8\" },\n      { internalType: \"bytes32\", name: \"r\", type: \"bytes32\" },\n      { internalType: \"bytes32\", name: \"s\", type: \"bytes32\" },\n    ],\n    name: \"transferWithAuthorization\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"_account\", type: \"address\" }],\n    name: \"unBlacklist\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"unpause\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"_newBlacklister\", type: \"address\" }],\n    name: \"updateBlacklister\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"_newMasterMinter\", type: \"address\" }],\n    name: \"updateMasterMinter\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"_newPauser\", type: \"address\" }],\n    name: \"updatePauser\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [{ internalType: \"address\", name: \"newRescuer\", type: \"address\" }],\n    name: \"updateRescuer\",\n    outputs: [],\n    stateMutability: \"nonpayable\",\n    type: \"function\",\n  },\n  {\n    inputs: [],\n    name: \"version\",\n    outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n    stateMutability: \"pure\",\n    type: \"function\",\n  },\n] as const;\n","import { Account, Address, Chain, Client, Transport } from \"viem\";\nimport { ChainConfig, config } from \"../../types/shared/evm/config\";\nimport { usdcABI as abi } from \"../../types/shared/evm/erc20PermitABI\";\nimport { ConnectedClient } from \"../../types/shared/evm/wallet\";\n\n/**\n * Gets the USDC contract address for the current chain from the client\n *\n * @param client - The Viem client instance connected to the blockchain\n * @returns The USDC contract address for the current chain\n */\nexport function getUsdcAddress<\n  transport extends Transport,\n  chain extends Chain | undefined = undefined,\n  account extends Account | undefined = undefined,\n>(client: Client<transport, chain, account>): Address {\n  return config[client.chain!.id.toString()].usdcAddress as Address;\n}\n\n/**\n * Gets the USDC contract address for a specific chain ID\n *\n * @deprecated Use `getUsdcChainConfigForChain` instead\n * @param chainId - The chain ID to get the USDC contract address for\n * @returns The USDC contract address for the specified chain\n */\nexport function getUsdcAddressForChain(chainId: number): Address {\n  return config[chainId.toString()].usdcAddress as Address;\n}\n\n/**\n * Gets the USDC address and eip712 domain name for a specific chain ID\n *\n * @param chainId - The chain ID\n * @returns The USDC contract address and eip712 domain name  for the specified chain\n */\nexport function getUsdcChainConfigForChain(chainId: number): ChainConfig | undefined {\n  return config[chainId.toString()];\n}\n\n// Cache for storing the version value\nlet versionCache: string | null = null;\n\n/**\n * Gets the version of the USDC contract, using a cache to avoid repeated calls\n *\n * @param client - The Viem client instance connected to the blockchain\n * @returns A promise that resolves to the USDC contract version string\n */\nexport async function getVersion<\n  transport extends Transport,\n  chain extends Chain,\n  account extends Account | undefined = undefined,\n>(client: ConnectedClient<transport, chain, account>): Promise<string> {\n  // Return cached version if available\n  if (versionCache !== null) {\n    return versionCache;\n  }\n\n  // Fetch and cache version if not available\n  const version = await client.readContract({\n    address: getUsdcAddress(client),\n    abi,\n    functionName: \"version\",\n  });\n  versionCache = version as string;\n  return versionCache;\n}\n\n/**\n * Gets the USDC balance for a specific address\n *\n * @param client - The Viem client instance connected to the blockchain\n * @param address - The address to check the USDC balance for\n * @returns A promise that resolves to the USDC balance as a bigint\n */\nexport async function getUSDCBalance<\n  transport extends Transport,\n  chain extends Chain,\n  account extends Account | undefined = undefined,\n>(client: ConnectedClient<transport, chain, account>, address: Address): Promise<bigint> {\n  const chainId = client.chain!.id;\n  const usdc = getUsdcChainConfigForChain(chainId);\n  if (!usdc) {\n    return 0n;\n  }\n  const balance = await client.readContract({\n    address: usdc.usdcAddress,\n    abi,\n    functionName: \"balanceOf\",\n    args: [address],\n  });\n  return balance as bigint;\n}\n","import { Account, Address, Chain, Transport } from \"viem\";\nimport { usdcABI as erc20PermitABI } from \"../../types/shared/evm/erc20PermitABI\";\nimport { ConnectedClient } from \"../../types/shared/evm/wallet\";\n\n/**\n * Gets the USDC balance for a specific address\n *\n * @param client - The Viem client instance connected to the blockchain\n * @param erc20Address - The address of the ERC20 contract\n * @param address - The address to check the USDC balance for\n * @returns A promise that resolves to the USDC balance as a bigint\n */\nexport async function getERC20Balance<\n  transport extends Transport,\n  chain extends Chain,\n  account extends Account | undefined = undefined,\n>(\n  client: ConnectedClient<transport, chain, account>,\n  erc20Address: Address,\n  address: Address,\n): Promise<bigint> {\n  const balance = await client.readContract({\n    address: erc20Address,\n    abi: erc20PermitABI,\n    functionName: \"balanceOf\",\n    args: [address],\n  });\n  return balance as bigint;\n}\n","import { z } from \"zod\";\n\nexport const moneySchema = z\n  .union([z.string().transform(x => x.replace(/[^0-9.-]+/g, \"\")), z.number()])\n  .pipe(z.coerce.number().min(0.0001).max(999999999));\n\nexport type Money = z.input<typeof moneySchema>;\n","import { z } from \"zod\";\n\nexport const NetworkSchema = z.enum([\n  \"base-sepolia\",\n  \"base\",\n  \"avalanche-fuji\",\n  \"avalanche\",\n  \"iotex\",\n  \"sei\",\n  \"sei-testnet\",\n]);\nexport type Network = z.infer<typeof NetworkSchema>;\n\nexport const SupportedEVMNetworks: Network[] = [\n  \"base-sepolia\",\n  \"base\",\n  \"avalanche-fuji\",\n  \"avalanche\",\n  \"iotex\",\n  \"sei\",\n  \"sei-testnet\",\n];\nexport const EvmNetworkToChainId = new Map<Network, number>([\n  [\"base-sepolia\", 84532],\n  [\"base\", 8453],\n  [\"avalanche-fuji\", 43113],\n  [\"avalanche\", 43114],\n  [\"iotex\", 4689],\n  [\"sei\", 1329],\n  [\"sei-testnet\", 1328],\n]);\n\nexport const ChainIdToNetwork = Object.fromEntries(\n  SupportedEVMNetworks.map(network => [EvmNetworkToChainId.get(network), network]),\n) as Record<number, Network>;\n","export * from \"./config\";\nexport * from \"./eip3009\";\nexport * from \"./erc20PermitABI\";\nexport * from \"./wallet\";\n","export const authorizationTypes = {\n  TransferWithAuthorization: [\n    { name: \"from\", type: \"address\" },\n    { name: \"to\", type: \"address\" },\n    { name: \"value\", type: \"uint256\" },\n    { name: \"validAfter\", type: \"uint256\" },\n    { name: \"validBefore\", type: \"uint256\" },\n    { name: \"nonce\", type: \"bytes32\" },\n  ],\n};\n\nexport const authorizationPrimaryType = \"TransferWithAuthorization\";\n","import { createPublicClient, createWalletClient, http, publicActions } from \"viem\";\nimport type {\n  Chain,\n  Transport,\n  Client,\n  Account,\n  RpcSchema,\n  PublicActions,\n  WalletActions,\n  PublicClient,\n  LocalAccount,\n} from \"viem\";\nimport { baseSepolia, avalancheFuji, base, sei, seiTestnet } from \"viem/chains\";\nimport { privateKeyToAccount } from \"viem/accounts\";\nimport { Hex } from \"viem\";\n\n// Create a public client for reading data\nexport type SignerWallet<\n  chain extends Chain = Chain,\n  transport extends Transport = Transport,\n  account extends Account = Account,\n> = Client<\n  transport,\n  chain,\n  account,\n  RpcSchema,\n  PublicActions<transport, chain, account> & WalletActions<chain, account>\n>;\n\nexport type ConnectedClient<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain,\n  account extends Account | undefined = undefined,\n> = PublicClient<transport, chain, account>;\n\n/**\n * Creates a public client configured for the specified network\n *\n * @param network - The network to connect to\n * @returns A public client instance connected to the specified chain\n */\nexport function createConnectedClient(\n  network: string,\n): ConnectedClient<Transport, Chain, undefined> {\n  const chain = getChainFromNetwork(network);\n  return createPublicClient({\n    chain,\n    transport: http(),\n  }).extend(publicActions);\n}\n\n/**\n * Creates a public client configured for the Base Sepolia testnet\n *\n * @deprecated Use `createConnectedClient(\"base-sepolia\")` instead\n * @returns A public client instance connected to Base Sepolia\n */\nexport function createClientSepolia(): ConnectedClient<Transport, typeof baseSepolia, undefined> {\n  return createConnectedClient(\"base-sepolia\") as ConnectedClient<\n    Transport,\n    typeof baseSepolia,\n    undefined\n  >;\n}\n\n/**\n * Creates a public client configured for the Avalanche Fuji testnet\n *\n * @deprecated Use `createConnectedClient(\"avalanche-fuji\")` instead\n * @returns A public client instance connected to Avalanche Fuji\n */\nexport function createClientAvalancheFuji(): ConnectedClient<\n  Transport,\n  typeof avalancheFuji,\n  undefined\n> {\n  return createConnectedClient(\"avalanche-fuji\") as ConnectedClient<\n    Transport,\n    typeof avalancheFuji,\n    undefined\n  >;\n}\n\n/**\n * Creates a wallet client configured for the specified chain with a private key\n *\n * @param network - The network to connect to\n * @param privateKey - The private key to use for signing transactions\n * @returns A wallet client instance connected to the specified chain with the provided private key\n */\nexport function createSigner(network: string, privateKey: Hex): SignerWallet<Chain> {\n  const chain = getChainFromNetwork(network);\n  return createWalletClient({\n    chain,\n    transport: http(),\n    account: privateKeyToAccount(privateKey),\n  }).extend(publicActions);\n}\n\n/**\n * Creates a wallet client configured for the Base Sepolia testnet with a private key\n *\n * @deprecated Use `createSigner(\"base-sepolia\", privateKey)` instead\n * @param privateKey - The private key to use for signing transactions\n * @returns A wallet client instance connected to Base Sepolia with the provided private key\n */\nexport function createSignerSepolia(privateKey: Hex): SignerWallet<typeof baseSepolia> {\n  return createSigner(\"base-sepolia\", privateKey) as SignerWallet<typeof baseSepolia>;\n}\n\n/**\n * Creates a wallet client configured for the Avalanche Fuji testnet with a private key\n *\n * @deprecated Use `createSigner(\"avalanche-fuji\", privateKey)` instead\n * @param privateKey - The private key to use for signing transactions\n * @returns A wallet client instance connected to Avalanche Fuji with the provided private key\n */\nexport function createSignerAvalancheFuji(privateKey: Hex): SignerWallet<typeof avalancheFuji> {\n  return createSigner(\"avalanche-fuji\", privateKey) as SignerWallet<typeof avalancheFuji>;\n}\n\n/**\n * Checks if a wallet is a signer wallet\n *\n * @param wallet - The wallet to check\n * @returns True if the wallet is a signer wallet, false otherwise\n */\nexport function isSignerWallet<\n  TChain extends Chain = Chain,\n  TTransport extends Transport = Transport,\n  TAccount extends Account = Account,\n>(\n  wallet: SignerWallet<TChain, TTransport, TAccount> | LocalAccount,\n): wallet is SignerWallet<TChain, TTransport, TAccount> {\n  return (\n    typeof wallet === \"object\" && wallet !== null && \"chain\" in wallet && \"transport\" in wallet\n  );\n}\n\n/**\n * Checks if a wallet is an account\n *\n * @param wallet - The wallet to check\n * @returns True if the wallet is an account, false otherwise\n */\nexport function isAccount<\n  TChain extends Chain = Chain,\n  TTransport extends Transport = Transport,\n  TAccount extends Account = Account,\n>(wallet: SignerWallet<TChain, TTransport, TAccount> | LocalAccount): wallet is LocalAccount {\n  const w = wallet as LocalAccount;\n  return (\n    typeof wallet === \"object\" &&\n    wallet !== null &&\n    typeof w.address === \"string\" &&\n    typeof w.type === \"string\" &&\n    // Check for essential signing capabilities\n    typeof w.sign === \"function\" &&\n    typeof w.signMessage === \"function\" &&\n    typeof w.signTypedData === \"function\" &&\n    // Check for transaction signing (required by LocalAccount)\n    typeof w.signTransaction === \"function\"\n  );\n}\n\n/**\n * Maps network strings to Chain objects\n *\n * @param network - The network string to convert to a Chain object\n * @returns The corresponding Chain object\n */\nfunction getChainFromNetwork(network: string | undefined): Chain {\n  if (!network) {\n    throw new Error(\"NETWORK environment variable is not set\");\n  }\n\n  switch (network) {\n    case \"base\":\n      return base;\n    case \"base-sepolia\":\n      return baseSepolia;\n    case \"avalanche-fuji\":\n      return avalancheFuji;\n    case \"sei\":\n      return sei;\n    case \"sei-testnet\":\n      return seiTestnet;\n    default:\n      throw new Error(`Unsupported network: ${network}`);\n  }\n}\n","import { z } from \"zod\";\nimport { NetworkSchema } from \"../shared\";\n// Constants\nconst EvmMaxAtomicUnits = 18;\nconst EvmAddressRegex = /^0x[0-9a-fA-F]{40}$/;\nconst MixedAddressRegex = /^0x[a-fA-F0-9]{40}|[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$/;\nconst HexEncoded64ByteRegex = /^0x[0-9a-fA-F]{64}$/;\nconst EvmSignatureRegex = /^0x[0-9a-fA-F]+$/; // Flexible hex signature validation\n// Enums\nexport const schemes = [\"exact\"] as const;\nexport const x402Versions = [1] as const;\nexport const ErrorReasons = [\n  \"insufficient_funds\",\n  \"invalid_exact_evm_payload_authorization_valid_after\",\n  \"invalid_exact_evm_payload_authorization_valid_before\",\n  \"invalid_exact_evm_payload_authorization_value\",\n  \"invalid_exact_evm_payload_signature\",\n  \"invalid_exact_evm_payload_recipient_mismatch\",\n  \"invalid_network\",\n  \"invalid_payload\",\n  \"invalid_payment_requirements\",\n  \"invalid_scheme\",\n  \"invalid_payment\",\n  \"payment_expired\",\n  \"unsupported_scheme\",\n  \"invalid_x402_version\",\n  \"invalid_transaction_state\",\n  \"unexpected_verify_error\",\n  \"unexpected_settle_error\",\n] as const;\n\n// Refiners\nconst isInteger = (value: string) => Number.isInteger(Number(value)) && Number(value) >= 0;\nconst hasMaxLength = (maxLength: number) => (value: string) => value.length <= maxLength;\n\n// x402PaymentRequirements\nexport const PaymentRequirementsSchema = z.object({\n  scheme: z.enum(schemes),\n  network: NetworkSchema,\n  maxAmountRequired: z.string().refine(isInteger),\n  resource: z.string().url(),\n  description: z.string(),\n  mimeType: z.string(),\n  outputSchema: z.record(z.any()).optional(),\n  payTo: z.string().regex(MixedAddressRegex),\n  maxTimeoutSeconds: z.number().int(),\n  asset: z.string().regex(MixedAddressRegex),\n  extra: z.record(z.any()).optional(),\n});\nexport type PaymentRequirements = z.infer<typeof PaymentRequirementsSchema>;\n\n// x402ExactEvmPayload\nexport const ExactEvmPayloadAuthorizationSchema = z.object({\n  from: z.string().regex(EvmAddressRegex),\n  to: z.string().regex(EvmAddressRegex),\n  value: z.string().refine(isInteger).refine(hasMaxLength(EvmMaxAtomicUnits)),\n  validAfter: z.string().refine(isInteger),\n  validBefore: z.string().refine(isInteger),\n  nonce: z.string().regex(HexEncoded64ByteRegex),\n});\nexport type ExactEvmPayloadAuthorization = z.infer<typeof ExactEvmPayloadAuthorizationSchema>;\n\nexport const ExactEvmPayloadSchema = z.object({\n  signature: z.string().regex(EvmSignatureRegex),\n  authorization: ExactEvmPayloadAuthorizationSchema,\n});\nexport type ExactEvmPayload = z.infer<typeof ExactEvmPayloadSchema>;\n\n// x402PaymentPayload\nexport const PaymentPayloadSchema = z.object({\n  x402Version: z.number().refine(val => x402Versions.includes(val as 1)),\n  scheme: z.enum(schemes),\n  network: NetworkSchema,\n  payload: ExactEvmPayloadSchema,\n});\nexport type PaymentPayload = z.infer<typeof PaymentPayloadSchema>;\nexport type UnsignedPaymentPayload = Omit<PaymentPayload, \"payload\"> & {\n  payload: Omit<ExactEvmPayload, \"signature\"> & { signature: undefined };\n};\n\n// x402 Resource Server Response\nexport const x402ResponseSchema = z.object({\n  x402Version: z.number().refine(val => x402Versions.includes(val as 1)),\n  error: z.enum(ErrorReasons).optional(),\n  accepts: z.array(PaymentRequirementsSchema).optional(),\n  payer: z.string().regex(MixedAddressRegex).optional(),\n});\nexport type x402Response = z.infer<typeof x402ResponseSchema>;\n\n// x402RequestStructure\nconst HTTPVerbsSchema = z.enum([\"GET\", \"POST\", \"PUT\", \"DELETE\", \"PATCH\", \"OPTIONS\", \"HEAD\"]);\nexport type HTTPVerbs = z.infer<typeof HTTPVerbsSchema>;\n\nexport const HTTPRequestStructureSchema = z.object({\n  type: z.literal(\"http\"),\n  method: HTTPVerbsSchema,\n  queryParams: z.record(z.string(), z.string()).optional(),\n  bodyType: z.enum([\"json\", \"form-data\", \"multipart-form-data\", \"text\", \"binary\"]).optional(),\n  bodyFields: z.record(z.string(), z.any()).optional(),\n  headerFields: z.record(z.string(), z.any()).optional(),\n});\n\n// export const MCPRequestStructureSchema = z.object({\n//   type: z.literal(\"mcp\"),\n//   sessionIsPayed: z.boolean(),\n//   payedAction: z.object({\n//     kind: z.enum([\"prompts\", \"resources\", \"tools\"]),\n//     name: z.string(),\n//   }).optional(),\n// });\n\n// export const OpenAPIRequestStructureSchema = z.object({\n//   type: z.literal(\"openapi\"),\n//   openApiUrl: z.string().url(),\n//   path: z.string(),\n// });\n\nexport const RequestStructureSchema = z.discriminatedUnion(\"type\", [\n  HTTPRequestStructureSchema,\n  // MCPRequestStructureSchema,\n  // OpenAPIRequestStructureSchema,\n]);\n\nexport type HTTPRequestStructure = z.infer<typeof HTTPRequestStructureSchema>;\n// export type MCPRequestStructure = z.infer<typeof MCPRequestStructureSchema>;\n// export type OpenAPIRequestStructure = z.infer<typeof OpenAPIRequestStructureSchema>;\nexport type RequestStructure = z.infer<typeof RequestStructureSchema>;\n\n// x402DiscoveryResource\nexport const DiscoveredResourceSchema = z.object({\n  resource: z.string(),\n  type: z.enum([\"http\"]),\n  x402Version: z.number().refine(val => x402Versions.includes(val as 1)),\n  accepts: z.array(PaymentRequirementsSchema),\n  lastUpdated: z.date(),\n  metadata: z.record(z.any()).optional(),\n});\nexport type DiscoveredResource = z.infer<typeof DiscoveredResourceSchema>;\n\n// x402SettleRequest\nexport const SettleRequestSchema = z.object({\n  paymentPayload: PaymentPayloadSchema,\n  paymentRequirements: PaymentRequirementsSchema,\n});\nexport type SettleRequest = z.infer<typeof SettleRequestSchema>;\n\n// x402VerifyRequest\nexport const VerifyRequestSchema = z.object({\n  paymentPayload: PaymentPayloadSchema,\n  paymentRequirements: PaymentRequirementsSchema,\n});\nexport type VerifyRequest = z.infer<typeof VerifyRequestSchema>;\n\n// x402VerifyResponse\nexport const VerifyResponseSchema = z.object({\n  isValid: z.boolean(),\n  invalidReason: z.enum(ErrorReasons).optional(),\n  payer: z.string().regex(MixedAddressRegex).optional(),\n});\nexport type VerifyResponse = z.infer<typeof VerifyResponseSchema>;\n\n// x402SettleResponse\nexport const SettleResponseSchema = z.object({\n  success: z.boolean(),\n  errorReason: z.enum(ErrorReasons).optional(),\n  payer: z.string().regex(MixedAddressRegex).optional(),\n  transaction: z.string().regex(MixedAddressRegex),\n  network: NetworkSchema,\n});\nexport type SettleResponse = z.infer<typeof SettleResponseSchema>;\n\n// x402DiscoverListRequest\nexport const ListDiscoveryResourcesRequestSchema = z.object({\n  type: z.string().optional(),\n  limit: z.number().optional(),\n  offset: z.number().optional(),\n});\nexport type ListDiscoveryResourcesRequest = z.infer<typeof ListDiscoveryResourcesRequestSchema>;\n\n// x402ListDiscoveryResourcesResponse\nexport const ListDiscoveryResourcesResponseSchema = z.object({\n  x402Version: z.number().refine(val => x402Versions.includes(val as 1)),\n  items: z.array(DiscoveredResourceSchema),\n  pagination: z.object({\n    limit: z.number(),\n    offset: z.number(),\n    total: z.number(),\n  }),\n});\nexport type ListDiscoveryResourcesResponse = z.infer<typeof ListDiscoveryResourcesResponseSchema>;\n\n// x402SupportedPaymentKind\nexport const SupportedPaymentKindSchema = z.object({\n  x402Version: z.number().refine(val => x402Versions.includes(val as 1)),\n  scheme: z.enum(schemes),\n  network: NetworkSchema,\n});\nexport type SupportedPaymentKind = z.infer<typeof SupportedPaymentKindSchema>;\n\n// x402SupportedPaymentKindsResponse\nexport const SupportedPaymentKindsResponseSchema = z.object({\n  kinds: z.array(SupportedPaymentKindSchema),\n});\nexport type SupportedPaymentKindsResponse = z.infer<typeof SupportedPaymentKindsResponseSchema>;\n","import { z } from \"zod\";\nimport { safeBase64Decode, safeBase64Encode } from \"../../shared\";\nimport { PaymentRequirementsSchema, SettleResponse } from \"./x402Specs\";\n\nexport const facilitatorRequestSchema = z.object({\n  paymentHeader: z.string(),\n  paymentRequirements: PaymentRequirementsSchema,\n});\n\nexport type FacilitatorRequest = z.infer<typeof facilitatorRequestSchema>;\n\n/**\n * Encodes a settlement response into a base64 header string\n *\n * @param response - The settlement response to encode\n * @returns A base64 encoded string containing the settlement response\n */\nexport function settleResponseHeader(response: SettleResponse): string {\n  return safeBase64Encode(JSON.stringify(response));\n}\n\n/**\n * Decodes a base64 header string back into a settlement response\n *\n * @param header - The base64 encoded settlement response header\n * @returns The decoded settlement response object\n */\nexport function settleResponseFromHeader(header: string): SettleResponse {\n  const decoded = safeBase64Decode(header);\n  return JSON.parse(decoded) as SettleResponse;\n}\n","/**\n * Converts an object to a JSON-safe format by converting bigint values to strings\n * and recursively processing nested objects and arrays\n *\n * @param data - The object to convert to JSON-safe format\n * @returns A new object with all bigint values converted to strings\n */\nexport function toJsonSafe<T extends object>(data: T): object {\n  if (typeof data !== \"object\") {\n    throw new Error(\"Data is not an object\");\n  }\n\n  /**\n   * Recursively converts values to JSON-safe format\n   *\n   * @param value - The value to convert\n   * @returns The converted value with bigints as strings\n   */\n  function convert(value: unknown): unknown {\n    if (value !== null && typeof value === \"object\" && !Array.isArray(value)) {\n      return Object.fromEntries(Object.entries(value).map(([key, val]) => [key, convert(val)]));\n    }\n\n    if (Array.isArray(value)) {\n      return value.map(convert);\n    }\n\n    if (typeof value === \"bigint\") {\n      return value.toString();\n    }\n    return value;\n  }\n\n  return convert(data) as object;\n}\n","// THIS FILE IS AUTO-GENERATED - DO NOT EDIT\n/**\n * The pre-built, self-contained paywall template with inlined CSS and JS\n */\nexport const PAYWALL_TEMPLATE =\n  '<!DOCTYPE html><html lang=\"en\"><head>\\n        <meta charset=\"UTF-8\">\\n        <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\\n    <title>Payment Required</title><style>@import\"https://fonts.googleapis.com/css2?family=Inter&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@700&display=swap\";@import\"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz@0,9..40;1,9..40&display=swap\";@import\"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,700;1,9..40,700&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Oxanium:wght@200..800&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Noto+Sans+Mono:wght@100..900&display=swap\";.ock-font-family{font-family:var(--ock-font-family)}.ock-border-default{border-color:var(--ock-bg-default)}.ock-border-default-active{border-color:var(--ock-bg-default-active)}.ock-border-line-primary{border-color:var(--ock-line-primary)}.ock-border-line-default{border-color:var(--ock-line-default)}.ock-border-line-heavy{border-color:var(--ock-line-heavy)}.ock-border-line-inverse{border-color:var(--ock-line-inverse)}.ock-border-radius{border-radius:var(--ock-border-radius)}.ock-border-radius-inner{border-radius:var(--ock-border-radius-inner)}.ock-fill-default{fill:var(--ock-bg-default)}.ock-fill-default-reverse{fill:var(--ock-bg-default-reverse)}.ock-fill-alternate{fill:var(--ock-bg-alternate)}.ock-icon-color-primary{fill:var(--ock-icon-color-primary)}.ock-icon-color-foreground{fill:var(--ock-icon-color-foreground)}.ock-icon-color-foreground-muted{fill:var(--ock-icon-color-foreground-muted)}.ock-icon-color-inverse{fill:var(--ock-icon-color-inverse)}.ock-icon-color-error{fill:var(--ock-icon-color-error)}.ock-icon-color-success{fill:var(--ock-icon-color-success)}.ock-icon-color-warning{fill:var(--ock-icon-color-warning)}.placeholder-ock-default::-moz-placeholder{color:var(--ock-text-foreground-muted)}.placeholder-ock-default::placeholder{color:var(--ock-text-foreground-muted)}.ock-scrollbar{scrollbar-width:thin;scrollbar-color:#d1d5db #ffffff}.ock-shadow-default,.dark .ock-shadow-default{box-shadow:0 8px 12px #5b616e1f}.ock-text-inverse{color:var(--ock-text-inverse)}.ock-text-foreground{color:var(--ock-text-foreground)}.ock-text-foreground-muted{color:var(--ock-text-foreground-muted)}.ock-text-error{color:var(--ock-text-error)}.ock-text-primary{color:var(--ock-text-primary)}.ock-text-success{color:var(--ock-text-success)}.ock-text-warning{color:var(--ock-text-warning)}.ock-text-disabled{color:var(--ock-text-disabled)}.ock-bg-default{background-color:var(--ock-bg-default)}.ock-bg-default-hover{background-color:var(--ock-bg-default-hover)}.ock-bg-default-active{background-color:var(--ock-bg-default-active)}.ock-bg-alternate{background-color:var(--ock-bg-alternate)}.ock-bg-alternate-hover{background-color:var(--ock-bg-alternate-hover)}.ock-bg-alternate-active{background-color:var(--ock-bg-alternate-active)}.ock-bg-inverse{background-color:var(--ock-bg-inverse)}.ock-bg-inverse-hover{background-color:var(--ock-bg-inverse-hover)}.ock-bg-inverse-active{background-color:var(--ock-bg-inverse-active)}.ock-bg-primary{background-color:var(--ock-bg-primary)}.ock-bg-primary-hover{background-color:var(--ock-bg-primary-hover)}.ock-bg-primary-active{background-color:var(--ock-bg-primary-active)}.ock-bg-secondary{background-color:var(--ock-bg-secondary)}.ock-bg-secondary-hover{background-color:var(--ock-bg-secondary-hover)}.ock-bg-secondary-active{background-color:var(--ock-bg-secondary-active)}.ock-bg-error{background-color:var(--ock-bg-error)}.ock-bg-warning{background-color:var(--ock-bg-warning)}.ock-bg-success{background-color:var(--ock-bg-success)}.ock-bg-default-reverse{background-color:var(--ock-bg-default-reverse)}.ock-bg-primary-washed{background-color:var(--ock-bg-primary-washed)}.ock-bg-primary-disabled{background-color:var(--ock-bg-primary-disabled)}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: \"\"}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root,.light,.default-light{--ock-font-family: \"DM Sans\", sans-serif;--ock-border-radius: .5rem;--ock-border-radius-inner: .25rem;--ock-text-inverse: #f9fafb;--ock-text-foreground: #030712;--ock-text-foreground-muted: #4b5563;--ock-text-error: #e11d48;--ock-text-primary: #4f46e5;--ock-text-success: #65a30d;--ock-text-warning: #ea580c;--ock-text-disabled: #9ca3af;--ock-bg-default: #f9fafb;--ock-bg-default-hover: #e5e7eb;--ock-bg-default-active: #d1d5db;--ock-bg-alternate: #e5e7eb;--ock-bg-alternate-hover: #d1d5db;--ock-bg-alternate-active: #9ca3af;--ock-bg-inverse: #f3f4f6;--ock-bg-inverse-hover: #e5e7eb;--ock-bg-inverse-active: #d1d5db;--ock-bg-primary: #4f46e5;--ock-bg-primary-hover: #4338ca;--ock-bg-primary-active: #3730a3;--ock-bg-primary-washed: #e0e7ff;--ock-bg-primary-disabled: #a5b4fc;--ock-bg-secondary: #e2e8f0;--ock-bg-secondary-hover: #cbd5e1;--ock-bg-secondary-active: #94a3b8;--ock-bg-error: #e11d48;--ock-bg-warning: #ea580c;--ock-bg-success: #bef264;--ock-bg-default-reverse: #030712;--ock-icon-color-primary: #4f46e5;--ock-icon-color-foreground: #030712;--ock-icon-color-foreground-muted: #4b5563;--ock-icon-color-inverse: #f9fafb;--ock-icon-color-error: #e11d48;--ock-icon-color-success: #65a30d;--ock-icon-color-warning: #ea580c;--ock-line-primary: #4f46e5;--ock-line-default: #d1d5db;--ock-line-heavy: #6b7280;--ock-line-inverse: #374151}.dark,.default-dark{--ock-font-family: \"DM Sans\", sans-serif;--ock-border-radius: .5rem;--ock-border-radius-inner: .25rem;--ock-text-inverse: #030712;--ock-text-foreground: #f9fafb;--ock-text-foreground-muted: #9ca3af;--ock-text-error: #fb7185;--ock-text-primary: #818cf8;--ock-text-success: #a3e635;--ock-text-warning: #fb923c;--ock-text-disabled: #4b5563;--ock-bg-default: #030712;--ock-bg-default-hover: #1f2937;--ock-bg-default-active: #374151;--ock-bg-alternate: #1f2937;--ock-bg-alternate-hover: #374151;--ock-bg-alternate-active: #4b5563;--ock-bg-inverse: #111827;--ock-bg-inverse-hover: #1f2937;--ock-bg-inverse-active: #374151;--ock-bg-primary: #818cf8;--ock-bg-primary-hover: #a5b4fc;--ock-bg-primary-active: #c7d2fe;--ock-bg-primary-washed: #312e81;--ock-bg-primary-disabled: #1e1b4b;--ock-bg-secondary: #1e293b;--ock-bg-secondary-hover: #334155;--ock-bg-secondary-active: #475569;--ock-bg-error: #fb7185;--ock-bg-warning: #fb923c;--ock-bg-success: #4d7c0f;--ock-bg-default-reverse: #f9fafb;--ock-icon-color-primary: #818cf8;--ock-icon-color-foreground: #f9fafb;--ock-icon-color-foreground-muted: #9ca3af;--ock-icon-color-inverse: #030712;--ock-icon-color-error: #fb7185;--ock-icon-color-success: #a3e635;--ock-icon-color-warning: #fb923c;--ock-line-primary: #818cf8;--ock-line-default: #374151;--ock-line-heavy: #6b7280;--ock-line-inverse: #d1d5db}.base-light{--ock-font-family: \"DM Sans\", sans-serif;--ock-border-radius: .5rem;--ock-border-radius-inner: .25rem;--ock-text-inverse: #f9fafb;--ock-text-foreground: #030712;--ock-text-foreground-muted: #4b5563;--ock-text-error: #e11d48;--ock-text-primary: #0052ff;--ock-text-success: #65a30d;--ock-text-warning: #ea580c;--ock-text-disabled: #9ca3af;--ock-bg-default: #f9fafb;--ock-bg-default-hover: #e5e7eb;--ock-bg-default-active: #d1d5db;--ock-bg-alternate: #e5e7eb;--ock-bg-alternate-hover: #d1d5db;--ock-bg-alternate-active: #9ca3af;--ock-bg-inverse: #f3f4f6;--ock-bg-inverse-hover: #e5e7eb;--ock-bg-inverse-active: #d1d5db;--ock-bg-primary: #0052ff;--ock-bg-primary-hover: #014ceb;--ock-bg-primary-active: #0148dc;--ock-bg-primary-washed: #b2cbff;--ock-bg-primary-disabled: #9dbcfe;--ock-bg-secondary: #e2e8f0;--ock-bg-secondary-hover: #cbd5e1;--ock-bg-secondary-active: #94a3b8;--ock-bg-error: #e11d48;--ock-bg-warning: #ea580c;--ock-bg-success: #bef264;--ock-bg-default-reverse: #030712;--ock-icon-color-primary: #0052ff;--ock-icon-color-foreground: #030712;--ock-icon-color-foreground-muted: #4b5563;--ock-icon-color-inverse: #f9fafb;--ock-icon-color-error: #e11d48;--ock-icon-color-success: #65a30d;--ock-icon-color-warning: #ea580c;--ock-line-primary: #0052ff;--ock-line-default: #d1d5db;--ock-line-heavy: #6b7280;--ock-line-inverse: #374151}.base-dark{--ock-font-family: \"DM Sans\", sans-serif;--ock-border-radius: .5rem;--ock-border-radius-inner: .25rem;--ock-text-inverse: #f9fafb;--ock-text-foreground: #f9fafb;--ock-text-foreground-muted: #9ca3af;--ock-text-error: #fb7185;--ock-text-primary: #578bfa;--ock-text-success: #a3e635;--ock-text-warning: #fb923c;--ock-text-disabled: #4b5563;--ock-bg-default: #030712;--ock-bg-default-hover: #1f2937;--ock-bg-default-active: #374151;--ock-bg-alternate: #1f2937;--ock-bg-alternate-hover: #374151;--ock-bg-alternate-active: #4b5563;--ock-bg-inverse: #111827;--ock-bg-inverse-hover: #1f2937;--ock-bg-inverse-active: #374151;--ock-bg-primary: #578bfa;--ock-bg-primary-hover: #477ef5;--ock-bg-primary-active: #5386f5;--ock-bg-primary-washed: #051537;--ock-bg-primary-disabled: #1b3365;--ock-bg-secondary: #1e293b;--ock-bg-secondary-hover: #334155;--ock-bg-secondary-active: #475569;--ock-bg-error: #fb7185;--ock-bg-warning: #fb923c;--ock-bg-success: #4d7c0f;--ock-bg-default-reverse: #f9fafb;--ock-icon-color-primary: #578bfa;--ock-icon-color-foreground: #f9fafb;--ock-icon-color-foreground-muted: #9ca3af;--ock-icon-color-inverse: #030712;--ock-icon-color-error: #fb7185;--ock-icon-color-success: #a3e635;--ock-icon-color-warning: #fb923c;--ock-line-primary: #578bfa;--ock-line-default: #374151;--ock-line-heavy: #6b7280;--ock-line-inverse: #d1d5db}.cyberpunk{--ock-font-family: \"Oxanium\", sans-serif;--ock-border-radius: .125rem;--ock-border-radius-inner: 0rem;--ock-text-inverse: #030712;--ock-text-foreground: #f9fafb;--ock-text-foreground-muted: #9ca3af;--ock-text-error: #fb7185;--ock-text-primary: #e879f9;--ock-text-success: #a3e635;--ock-text-warning: #fb923c;--ock-text-disabled: #4b5563;--ock-bg-default: #030712;--ock-bg-default-hover: #1f2937;--ock-bg-default-active: #374151;--ock-bg-alternate: #1f2937;--ock-bg-alternate-hover: #374151;--ock-bg-alternate-active: #4b5563;--ock-bg-inverse: #111827;--ock-bg-inverse-hover: #1f2937;--ock-bg-inverse-active: #374151;--ock-bg-primary: #e879f9;--ock-bg-primary-hover: #f0abfc;--ock-bg-primary-active: #f5d0fe;--ock-bg-primary-washed: #701a75;--ock-bg-primary-disabled: #4a044e;--ock-bg-secondary: #1e293b;--ock-bg-secondary-hover: #334155;--ock-bg-secondary-active: #475569;--ock-bg-error: #fb7185;--ock-bg-warning: #fb923c;--ock-bg-success: #a3e635;--ock-bg-default-reverse: #f9fafb;--ock-icon-color-primary: #e879f9;--ock-icon-color-foreground: #f9fafb;--ock-icon-color-foreground-muted: #4b5563;--ock-icon-color-inverse: #030712;--ock-icon-color-error: #e11d48;--ock-icon-color-success: #65a30d;--ock-icon-color-warning: #ea580c;--ock-line-primary: #e879f9;--ock-line-default: #374151;--ock-line-heavy: #6b7280;--ock-line-inverse: #d1d5db}.hacker{--ock-font-family: \"Noto Sans Mono\", sans-serif;--ock-border-radius: .375rem;--ock-border-radius-inner: .125rem;--ock-text-inverse: #fafafa;--ock-text-foreground: #09090b;--ock-text-foreground-muted: #52525b;--ock-text-error: #e11d48;--ock-text-primary: #09090b;--ock-text-success: #65a30d;--ock-text-warning: #ea580c;--ock-text-disabled: #a1a1aa;--ock-bg-default: #fafafa;--ock-bg-default-hover: #e4e4e7;--ock-bg-default-active: #d4d4d8;--ock-bg-alternate: #e4e4e7;--ock-bg-alternate-hover: #d4d4d8;--ock-bg-alternate-active: #a1a1aa;--ock-bg-inverse: #f4f4f5;--ock-bg-inverse-hover: #e4e4e7;--ock-bg-inverse-active: #d4d4d8;--ock-bg-primary: #09090b;--ock-bg-primary-hover: #27272a;--ock-bg-primary-active: #3f3f46;--ock-bg-primary-washed: #f4f4f5;--ock-bg-primary-disabled: #d4d4d8;--ock-bg-secondary: #e5e5e5;--ock-bg-secondary-hover: #d4d4d4;--ock-bg-secondary-active: #a3a3a3;--ock-bg-error: #e11d48;--ock-bg-warning: #ea580c;--ock-bg-success: #65a30d;--ock-bg-default-reverse: #fafafa;--ock-icon-color-primary: #09090b;--ock-icon-color-foreground: #09090b;--ock-icon-color-foreground-muted: #52525b;--ock-icon-color-inverse: #fafafa;--ock-icon-color-error: #e11d48;--ock-icon-color-success: #65a30d;--ock-icon-color-warning: #ea580c;--ock-line-primary: #09090b;--ock-line-default: #d4d4d8;--ock-line-heavy: #71717a;--ock-line-inverse: #3f3f46}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.-bottom-0\\\\.5{bottom:-.125rem}.-bottom-\\\\[12\\\\.875rem\\\\]{bottom:-12.875rem}.-right-0\\\\.5{right:-.125rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-5{bottom:1.25rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\\\\/2,.left-2\\\\/4{left:50%}.left-3\\\\/4{left:75%}.left-4{left:1rem}.left-\\\\[-99999px\\\\]{left:-99999px}.left-\\\\[0\\\\%\\\\]{left:0%}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-1\\\\/2{top:50%}.top-4{top:1rem}.top-6{top:1.5rem}.top-\\\\[100px\\\\]{top:100px}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.m-0{margin:0}.-my-1{margin-top:-.25rem;margin-bottom:-.25rem}.-my-6{margin-top:-1.5rem;margin-bottom:-1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\\\\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1\\\\.5{margin-top:.375rem;margin-bottom:.375rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.-mr-0\\\\.5{margin-right:-.125rem}.-mr-px{margin-right:-1px}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-6{margin-left:1.5rem}.ml-px{margin-left:1px}.mr-1{margin-right:.25rem}.mr-10{margin-right:2.5rem}.mr-2{margin-right:.5rem}.mt-0\\\\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-\\\\[60\\\\%\\\\]{margin-top:60%}.box-border{box-sizing:border-box}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.contents{display:contents}.aspect-square{aspect-ratio:1 / 1}.size-3{width:.75rem;height:.75rem}.h-1{height:.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-120{height:30rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2\\\\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-4{height:1rem}.h-44{height:11rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\\\\[1\\\\.125rem\\\\]{height:1.125rem}.h-\\\\[1\\\\.625rem\\\\]{height:1.625rem}.h-\\\\[12\\\\.875rem\\\\]{height:12.875rem}.h-\\\\[148px\\\\]{height:148px}.h-\\\\[15px\\\\]{height:15px}.h-\\\\[18px\\\\]{height:18px}.h-\\\\[34px\\\\]{height:34px}.h-\\\\[42px\\\\]{height:42px}.h-\\\\[80px\\\\]{height:80px}.h-auto{height:auto}.h-full{height:100%}.max-h-120{max-height:30rem}.max-h-44{max-height:11rem}.max-h-80{max-height:20rem}.min-h-60{min-height:15rem}.min-h-full{min-height:100%}.w-1\\\\/2{width:50%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2\\\\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-88{width:22rem}.w-9{width:2.25rem}.w-\\\\[1\\\\.125rem\\\\]{width:1.125rem}.w-\\\\[15px\\\\]{width:15px}.w-\\\\[200px\\\\]{width:200px}.w-\\\\[21\\\\.75rem\\\\]{width:21.75rem}.w-\\\\[22rem\\\\]{width:22rem}.w-\\\\[375px\\\\]{width:375px}.w-\\\\[42px\\\\]{width:42px}.w-\\\\[475px\\\\]{width:475px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-14{min-width:3.5rem}.min-w-24{min-width:6rem}.min-w-28{min-width:7rem}.min-w-40{min-width:10rem}.min-w-52{min-width:13rem}.min-w-80{min-width:20rem}.min-w-\\\\[153px\\\\]{min-width:153px}.min-w-\\\\[300px\\\\]{min-width:300px}.min-w-\\\\[70px\\\\]{min-width:70px}.min-w-full{min-width:100%}.max-w-24{max-width:6rem}.max-w-52{max-width:13rem}.max-w-\\\\[180px\\\\]{max-width:180px}.max-w-\\\\[500px\\\\]{max-width:500px}.max-w-fit{max-width:-moz-fit-content;max-width:fit-content}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.-translate-x-1\\\\/2,.-translate-x-2\\\\/4{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\\\\[100\\\\%\\\\]{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\\\[-100\\\\%\\\\]{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\\\[102\\\\%\\\\]{--tw-translate-y: 102%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\\\\[2\\\\.5rem_1fr_auto\\\\]{grid-template-columns:2.5rem 1fr auto}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.content-center{align-content:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\\\\.5{gap:.375rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.space-x-0>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(0px * var(--tw-space-x-reverse));margin-left:calc(0px * calc(1 - var(--tw-space-x-reverse)))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-\\\\[-\\\\.8rem\\\\]>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.8rem * var(--tw-space-x-reverse));margin-left:calc(-.8rem * calc(1 - var(--tw-space-x-reverse)))}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-nowrap{text-wrap:nowrap}.\\\\!rounded-full{border-radius:9999px!important}.rounded{border-radius:.25rem}.rounded-3xl{border-radius:1.5rem}.rounded-\\\\[0\\\\.43931rem\\\\]{border-radius:.43931rem}.rounded-\\\\[20px_20px_0_0\\\\]{border-radius:20px 20px 0 0}.rounded-\\\\[50\\\\%\\\\]{border-radius:50%}.rounded-\\\\[6\\\\.25rem\\\\]{border-radius:6.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-t-3xl{border-top-left-radius:1.5rem;border-top-right-radius:1.5rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-tl-\\\\[calc\\\\(var\\\\(--ock-border-radius\\\\)_-_1px\\\\)\\\\]{border-top-left-radius:calc(var(--ock-border-radius) - 1px)}.rounded-tr-\\\\[calc\\\\(var\\\\(--ock-border-radius\\\\)_-_1px\\\\)\\\\]{border-top-right-radius:calc(var(--ock-border-radius) - 1px)}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\\\\[0\\\\.5px\\\\]{border-width:.5px}.border-\\\\[length\\\\:0_0_0_16px\\\\]{border-width:0 0 0 16px}.border-\\\\[length\\\\:9px_0_9px_16px\\\\]{border-width:9px 0 9px 16px}.\\\\!border-b-0{border-bottom-width:0px!important}.\\\\!border-l-0{border-left-width:0px!important}.\\\\!border-r-0{border-right-width:0px!important}.border-t{border-top-width:1px}.border-solid{border-style:solid}.border-double{border-style:double}.border-none{border-style:none}.border-\\\\[none\\\\]{border-color:none}.border-\\\\[var\\\\(--ock-bg-default-reverse\\\\)\\\\]{border-color:var(--ock-bg-default-reverse)}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.\\\\!border-t-\\\\[var\\\\(--ock-bg-primary\\\\)\\\\]{border-top-color:var(--ock-bg-primary)!important}.border-l-\\\\[var\\\\(--ock-bg-default\\\\)\\\\]{border-left-color:var(--ock-bg-default)}.border-t-gray-400{--tw-border-opacity: 1;border-top-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.\\\\!bg-\\\\[var\\\\(--ock-bg-alternate-active\\\\)\\\\]{background-color:var(--ock-bg-alternate-active)!important}.\\\\!bg-inherit{background-color:inherit!important}.bg-\\\\[\\\\#0052FF\\\\]{--tw-bg-opacity: 1;background-color:rgb(0 82 255 / var(--tw-bg-opacity, 1))}.bg-\\\\[\\\\#E0E7FF\\\\]{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\\\\/50{background-color:#00000080}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-50{--tw-bg-opacity: .5}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\\\\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\\\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\\\\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-0\\\\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\\\\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\\\\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-1{padding-left:.25rem}.pl-12{padding-left:3rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pr-3{padding-right:.75rem}.pr-5{padding-right:1.25rem}.pt-2{padding-top:.5rem}.pt-2\\\\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-display{font-family:DM Sans,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\\\\[0\\\\.6875rem\\\\]{font-size:.6875rem}.text-\\\\[10px\\\\]{font-size:10px}.text-\\\\[2\\\\.5rem\\\\]{font-size:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.leading-\\\\[13px\\\\]{line-height:13px}.leading-none{line-height:1}.\\\\!text-\\\\[var\\\\(--ock-text-foreground\\\\)\\\\]{color:var(--ock-text-foreground)!important}.\\\\!text-white{--tw-text-opacity: 1 !important;color:rgb(255 255 255 / var(--tw-text-opacity, 1))!important}.text-\\\\[\\\\#4F46E5\\\\]{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-\\\\[\\\\#8A919E\\\\]{--tw-text-opacity: 1;color:rgb(138 145 158 / var(--tw-text-opacity, 1))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-gray-50{--tw-text-opacity: 1;color:rgb(249 250 251 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-\\\\[0\\\\.38\\\\]{opacity:.38}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\\\[0px_8px_24px_0px_rgba\\\\(0\\\\,0\\\\,0\\\\,0\\\\.12\\\\)\\\\]{--tw-shadow: 0px 8px 24px 0px rgba(0,0,0,.12);--tw-shadow-colored: 0px 8px 24px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-\\\\[bottom\\\\]{transition-property:bottom;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.will-change-\\\\[border-width\\\\]{will-change:border-width}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.animate-out{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.fade-in{--tw-enter-opacity: 0}.fade-out{--tw-exit-opacity: 0}.zoom-in-95{--tw-enter-scale: .95}.slide-in-from-bottom-1\\\\.5{--tw-enter-translate-y: .375rem}.slide-in-from-bottom-1\\\\/2{--tw-enter-translate-y: 50%}.slide-in-from-bottom-2\\\\.5{--tw-enter-translate-y: .625rem}.slide-in-from-left-5{--tw-enter-translate-x: -1.25rem}.slide-in-from-right-5{--tw-enter-translate-x: 1.25rem}.slide-in-from-top-1\\\\.5{--tw-enter-translate-y: -.375rem}.slide-in-from-top-2\\\\.5{--tw-enter-translate-y: -.625rem}.slide-out-to-bottom-1\\\\.5{--tw-exit-translate-y: .375rem}.slide-out-to-left-5{--tw-exit-translate-x: -1.25rem}.slide-out-to-right-5{--tw-exit-translate-x: 1.25rem}.slide-out-to-top-1\\\\.5{--tw-exit-translate-y: -.375rem}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.running{animation-play-state:running}.paused{animation-play-state:paused}.fill-mode-forwards{animation-fill-mode:forwards}.scrollbar-hidden::-webkit-scrollbar{display:none}.scrollbar-hidden{scrollbar-width:none;-ms-overflow-style:none}.\\\\[appearance\\\\:textfield\\\\]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.\\\\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\\\\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\\\\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\\\\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\\\\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\\\\!container{max-width:1536px!important}.container{max-width:1536px}}.animate-enterRight{transition-duration:.5s;animation-name:enter;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial;--tw-enter-opacity: 0;--tw-enter-translate-x: 2rem;animation-duration:.5s}.animate-enterUp{transition-duration:.5s;animation-name:enter;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial;--tw-enter-opacity: 0;--tw-enter-translate-y: 2rem;animation-duration:.5s}.animate-enterDown{transition-duration:.5s;animation-name:enter;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial;--tw-enter-opacity: 0;--tw-enter-translate-y: -2rem;animation-duration:.5s}.hover\\\\:border-\\\\[--ock-line-primary\\\\]:hover{border-color:var(--ock-line-primary)}.hover\\\\:bg-\\\\[\\\\#0045D8\\\\]:hover{--tw-bg-opacity: 1;background-color:rgb(0 69 216 / var(--tw-bg-opacity, 1))}.hover\\\\:bg-\\\\[var\\\\(--ock-bg-alternate-hover\\\\)\\\\]:hover{background-color:var(--ock-bg-alternate-hover)}.hover\\\\:bg-\\\\[var\\\\(--ock-bg-default-hover\\\\)\\\\]:hover{background-color:var(--ock-bg-default-hover)}.hover\\\\:bg-\\\\[var\\\\(--ock-bg-inverse\\\\)\\\\]:hover{background-color:var(--ock-bg-inverse)}.hover\\\\:bg-\\\\[var\\\\(--ock-bg-inverse-hover\\\\)\\\\]:hover{background-color:var(--ock-bg-inverse-hover)}.hover\\\\:bg-\\\\[var\\\\(--ock-bg-primary-hover\\\\)\\\\]:hover{background-color:var(--ock-bg-primary-hover)}.hover\\\\:bg-\\\\[var\\\\(--ock-bg-secondary-hover\\\\)\\\\]:hover{background-color:var(--ock-bg-secondary-hover)}.hover\\\\:text-\\\\[var\\\\(--ock-text-foreground-muted\\\\)\\\\]:hover{color:var(--ock-text-foreground-muted)}.hover\\\\:underline:hover{text-decoration-line:underline}.hover\\\\:opacity-100:hover{opacity:1}.hover\\\\:opacity-80:hover{opacity:.8}.focus\\\\:border-none:focus{border-style:none}.focus\\\\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\\\\:bg-transparent:focus{background-color:transparent}.focus\\\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\\\\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\\\\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\\\:ring-inset:focus-visible{--tw-ring-inset: inset}.focus-visible\\\\:ring-\\\\[var\\\\(--ock-text-foreground\\\\)\\\\]:focus-visible{--tw-ring-color: var(--ock-text-foreground)}.active\\\\:cursor-grabbing:active{cursor:grabbing}.active\\\\:bg-\\\\[var\\\\(--ock-bg-alternate-active\\\\)\\\\]:active{background-color:var(--ock-bg-alternate-active)}.active\\\\:bg-\\\\[var\\\\(--ock-bg-default-active\\\\)\\\\]:active{background-color:var(--ock-bg-default-active)}.active\\\\:bg-\\\\[var\\\\(--ock-bg-inverse-active\\\\)\\\\]:active{background-color:var(--ock-bg-inverse-active)}.active\\\\:bg-\\\\[var\\\\(--ock-bg-primary-active\\\\)\\\\]:active{background-color:var(--ock-bg-primary-active)}.active\\\\:bg-\\\\[var\\\\(--ock-bg-secondary-active\\\\)\\\\]:active{background-color:var(--ock-bg-secondary-active)}.active\\\\:text-\\\\[var\\\\(--ock-text-primary\\\\)\\\\]:active{color:var(--ock-text-primary)}.disabled\\\\:cursor-not-allowed:disabled{cursor:not-allowed}.group:hover .group-hover\\\\:opacity-100{opacity:1}.dark\\\\:bg-gray-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}@media not all and (min-width: 640px){.max-sm\\\\:pt-4{padding-top:1rem}}.\\\\[\\\\&\\\\:\\\\:-webkit-inner-spin-button\\\\]\\\\:m-0::-webkit-inner-spin-button{margin:0}.\\\\[\\\\&\\\\:\\\\:-webkit-inner-spin-button\\\\]\\\\:appearance-none::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none}.\\\\[\\\\&\\\\:\\\\:-webkit-outer-spin-button\\\\]\\\\:m-0::-webkit-outer-spin-button{margin:0}.\\\\[\\\\&\\\\:\\\\:-webkit-outer-spin-button\\\\]\\\\:appearance-none::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none}.\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:col-start-1>*{grid-column-start:1}.\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:col-end-1>*{grid-column-end:1}.\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:row-start-1>*{grid-row-start:1}.\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:row-end-1>*{grid-row-end:1}.\\\\[\\\\&\\\\>div\\\\]\\\\:space-x-0>div>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(0px * var(--tw-space-x-reverse));margin-left:calc(0px * calc(1 - var(--tw-space-x-reverse)))}.\\\\[\\\\&\\\\>div\\\\]\\\\:space-x-2>div>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.\\\\[\\\\&_path\\\\]\\\\:fill-\\\\[var\\\\(--ock-icon-color-foreground\\\\)\\\\] path{fill:var(--ock-icon-color-foreground)}.\\\\[\\\\&_path\\\\]\\\\:fill-\\\\[var\\\\(--ock-icon-color-foreground-muted\\\\)\\\\] path{fill:var(--ock-icon-color-foreground-muted)}.\\\\[\\\\&_path\\\\]\\\\:transition-colors path{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\\\\[\\\\&_path\\\\]\\\\:ease-in-out path{transition-timing-function:cubic-bezier(.4,0,.2,1);animation-timing-function:cubic-bezier(.4,0,.2,1)}.\\\\[\\\\&_path\\\\]\\\\:hover\\\\:fill-\\\\[var\\\\(--ock-icon-color-foreground\\\\)\\\\]:hover path{fill:var(--ock-icon-color-foreground)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}:root{--background-color: #f9fafb;--container-background-color: white;--text-color: #111827;--secondary-text-color: #4b5563;--details-background-color: #f9fafb;--details-background-color-hover: #f3f4f6;--button-primary-color: #2563eb;--button-primary-hover-color: #1d4ed8;--button-secondary-color: #eef0f3;--button-secondary-hover-color: #e9ebee;--button-positive-color: #059669;--button-positive-hover-color: #047857;--button-error-color: #ef4444;--button-error-hover-color: #dc2626}.ock-font-family{font-family:Inter,system-ui,-apple-system,sans-serif}.ock-bg-secondary,.ock-bg-default{background-color:var(--details-background-color);transition:background-color .15s}.ock-bg-secondary:hover{background-color:var(--details-background-color-hover)}.opacity-80{opacity:.8}[data-testid=ockWalletDropdown]{z-index:10}body{min-height:100vh;background-color:var(--background-color);font-family:Inter,system-ui,-apple-system,sans-serif}.container{max-width:32rem;margin:4rem auto;padding:1.5rem;background-color:var(--container-background-color);border-radius:.75rem;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.header{display:flex;flex-direction:column;gap:1rem}.title{font-size:1.5rem;font-weight:700;color:var(--text-color);margin-bottom:.5rem}.subtitle{color:var(--secondary-text-color)}.instructions{font-size:.9rem;color:var(--secondary-text-color);font-style:italic}.content{display:flex;flex-direction:column;gap:1rem}.button{width:100%;padding:.75rem 1rem;border-radius:.5rem;font-weight:600;border:none;cursor:pointer;transition:background-color .15s}.button-primary{background-color:var(--button-primary-color);color:#fff}.button-primary:hover{background-color:var(--button-primary-hover-color)}.button-secondary{background-color:var(--button-secondary-color);color:var(--text-color)}.button-secondary:hover{background-color:var(--button-secondary-hover-color)}.button-positive{background-color:var(--button-positive-color);color:#fff}.button-positive:hover{background-color:var(--button-positive-hover-color)}.button-error{background-color:var(--button-error-color);color:#fff}.button-error:hover{background-color:var(--button-error-hover-color)}.payment-details{padding:1rem;margin-bottom:1rem;background-color:var(--details-background-color);border-radius:.5rem}.payment-row{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:.5rem}.payment-row:last-child{margin-bottom:0}.payment-label{color:var(--text-color)}.payment-value{font-weight:500}.hidden{display:none}.status{text-align:center;font-size:.875rem}.cta-container{display:flex;flex-basis:50%;flex-direction:row;gap:.5rem}.balance-button{background-color:transparent;border:none;cursor:pointer;min-height:1rem;min-width:150px;display:flex;justify-content:flex-end;align-items:center}\\n</style></head>\\n    <body>\\n        <div id=\"root\"></div>\\n    \\n    \\n  <script type=\"module\">\"use strict\";(()=>{var YFe=Object.create;var $7=Object.defineProperty;var QFe=Object.getOwnPropertyDescriptor;var JFe=Object.getOwnPropertyNames;var XFe=Object.getPrototypeOf,eUe=Object.prototype.hasOwnProperty;var Cue=t=>{throw TypeError(t)};var tUe=(t,e,n)=>e in t?$7(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var nUe=(t=>typeof require<\"u\"?require:typeof Proxy<\"u\"?new Proxy(t,{get:(e,n)=>(typeof require<\"u\"?require:e)[n]}):t)(function(t){if(typeof require<\"u\")return require.apply(this,arguments);throw Error(\\'Dynamic require of \"\\'+t+\\'\" is not supported\\')}),Aue=t=>e=>{var n=t[e];if(n)return n();throw new Error(\"Module not found in bundle: \"+e)};var ce=(t,e)=>()=>(t&&(e=t(t=0)),e);var be=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ld=(t,e)=>{for(var n in e)$7(t,n,{get:e[n],enumerable:!0})},Tue=(t,e,n,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let o of JFe(e))!eUe.call(t,o)&&o!==n&&$7(t,o,{get:()=>e[o],enumerable:!(r=QFe(e,o))||r.enumerable});return t};var he=(t,e,n)=>(n=t!=null?YFe(XFe(t)):{},Tue(e||!t||!t.__esModule?$7(n,\"default\",{value:t,enumerable:!0}):n,t)),go=t=>Tue($7({},\"__esModule\",{value:!0}),t);var Op=(t,e,n)=>tUe(t,typeof e!=\"symbol\"?e+\"\":e,n),uG=(t,e,n)=>e.has(t)||Cue(\"Cannot \"+n);var Ce=(t,e,n)=>(uG(t,e,\"read from private field\"),n?n.call(t):e.get(t)),an=(t,e,n)=>e.has(t)?Cue(\"Cannot add the same private member more than once\"):e instanceof WeakSet?e.add(t):e.set(t,n),Nt=(t,e,n,r)=>(uG(t,e,\"write to private field\"),r?r.call(t,n):e.set(t,n),n),Zn=(t,e,n)=>(uG(t,e,\"access private method\"),n);var K7=(t,e,n,r)=>({set _(o){Nt(t,e,o,n)},get _(){return Ce(t,e,r)}});var Oue=be($N=>{\"use strict\";p();$N.byteLength=oUe;$N.toByteArray=sUe;$N.fromByteArray=lUe;var Sy=[],Pp=[],rUe=typeof Uint8Array<\"u\"?Uint8Array:Array,dG=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";for(p5=0,Rue=dG.length;p5<Rue;++p5)Sy[p5]=dG[p5],Pp[dG.charCodeAt(p5)]=p5;var p5,Rue;Pp[45]=62;Pp[95]=63;function Iue(t){var e=t.length;if(e%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");var n=t.indexOf(\"=\");n===-1&&(n=e);var r=n===e?0:4-n%4;return[n,r]}function oUe(t){var e=Iue(t),n=e[0],r=e[1];return(n+r)*3/4-r}function iUe(t,e,n){return(e+n)*3/4-n}function sUe(t){var e,n=Iue(t),r=n[0],o=n[1],i=new rUe(iUe(t,r,o)),a=0,c=o>0?r-4:r,u;for(u=0;u<c;u+=4)e=Pp[t.charCodeAt(u)]<<18|Pp[t.charCodeAt(u+1)]<<12|Pp[t.charCodeAt(u+2)]<<6|Pp[t.charCodeAt(u+3)],i[a++]=e>>16&255,i[a++]=e>>8&255,i[a++]=e&255;return o===2&&(e=Pp[t.charCodeAt(u)]<<2|Pp[t.charCodeAt(u+1)]>>4,i[a++]=e&255),o===1&&(e=Pp[t.charCodeAt(u)]<<10|Pp[t.charCodeAt(u+1)]<<4|Pp[t.charCodeAt(u+2)]>>2,i[a++]=e>>8&255,i[a++]=e&255),i}function aUe(t){return Sy[t>>18&63]+Sy[t>>12&63]+Sy[t>>6&63]+Sy[t&63]}function cUe(t,e,n){for(var r,o=[],i=e;i<n;i+=3)r=(t[i]<<16&16711680)+(t[i+1]<<8&65280)+(t[i+2]&255),o.push(aUe(r));return o.join(\"\")}function lUe(t){for(var e,n=t.length,r=n%3,o=[],i=16383,a=0,c=n-r;a<c;a+=i)o.push(cUe(t,a,a+i>c?c:a+i));return r===1?(e=t[n-1],o.push(Sy[e>>2]+Sy[e<<4&63]+\"==\")):r===2&&(e=(t[n-2]<<8)+t[n-1],o.push(Sy[e>>10]+Sy[e>>4&63]+Sy[e<<2&63]+\"=\")),o.join(\"\")}});var Pue=be(fG=>{p();fG.read=function(t,e,n,r,o){var i,a,c=o*8-r-1,u=(1<<c)-1,d=u>>1,h=-7,m=n?o-1:0,g=n?-1:1,b=t[e+m];for(m+=g,i=b&(1<<-h)-1,b>>=-h,h+=c;h>0;i=i*256+t[e+m],m+=g,h-=8);for(a=i&(1<<-h)-1,i>>=-h,h+=r;h>0;a=a*256+t[e+m],m+=g,h-=8);if(i===0)i=1-d;else{if(i===u)return a?NaN:(b?-1:1)*(1/0);a=a+Math.pow(2,r),i=i-d}return(b?-1:1)*a*Math.pow(2,i-r)};fG.write=function(t,e,n,r,o,i){var a,c,u,d=i*8-o-1,h=(1<<d)-1,m=h>>1,g=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,b=r?0:i-1,E=r?1:-1,C=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,a=h):(a=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-a))<1&&(a--,u*=2),a+m>=1?e+=g/u:e+=g*Math.pow(2,1-m),e*u>=2&&(a++,u/=2),a+m>=h?(c=0,a=h):a+m>=1?(c=(e*u-1)*Math.pow(2,o),a=a+m):(c=e*Math.pow(2,m-1)*Math.pow(2,o),a=0));o>=8;t[n+b]=c&255,b+=E,c/=256,o-=8);for(a=a<<o|c,d+=o;d>0;t[n+b]=a&255,b+=E,a/=256,d-=8);t[n+b-E]|=C*128}});var Kb=be(Z_=>{\"use strict\";p();var hG=Oue(),K_=Pue(),Mue=typeof Symbol==\"function\"&&typeof Symbol.for==\"function\"?Symbol.for(\"nodejs.util.inspect.custom\"):null;Z_.Buffer=ot;Z_.SlowBuffer=mUe;Z_.INSPECT_MAX_BYTES=50;var KN=2147483647;Z_.kMaxLength=KN;ot.TYPED_ARRAY_SUPPORT=uUe();!ot.TYPED_ARRAY_SUPPORT&&typeof console<\"u\"&&typeof console.error==\"function\"&&console.error(\"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.\");function uUe(){try{let t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),t.foo()===42}catch{return!1}}Object.defineProperty(ot.prototype,\"parent\",{enumerable:!0,get:function(){if(ot.isBuffer(this))return this.buffer}});Object.defineProperty(ot.prototype,\"offset\",{enumerable:!0,get:function(){if(ot.isBuffer(this))return this.byteOffset}});function $b(t){if(t>KN)throw new RangeError(\\'The value \"\\'+t+\\'\" is invalid for option \"size\"\\');let e=new Uint8Array(t);return Object.setPrototypeOf(e,ot.prototype),e}function ot(t,e,n){if(typeof t==\"number\"){if(typeof e==\"string\")throw new TypeError(\\'The \"string\" argument must be of type string. Received type number\\');return yG(t)}return Due(t,e,n)}ot.poolSize=8192;function Due(t,e,n){if(typeof t==\"string\")return fUe(t,e);if(ArrayBuffer.isView(t))return hUe(t);if(t==null)throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+typeof t);if(ky(t,ArrayBuffer)||t&&ky(t.buffer,ArrayBuffer)||typeof SharedArrayBuffer<\"u\"&&(ky(t,SharedArrayBuffer)||t&&ky(t.buffer,SharedArrayBuffer)))return mG(t,e,n);if(typeof t==\"number\")throw new TypeError(\\'The \"value\" argument must not be of type number. Received type number\\');let r=t.valueOf&&t.valueOf();if(r!=null&&r!==t)return ot.from(r,e,n);let o=pUe(t);if(o)return o;if(typeof Symbol<\"u\"&&Symbol.toPrimitive!=null&&typeof t[Symbol.toPrimitive]==\"function\")return ot.from(t[Symbol.toPrimitive](\"string\"),e,n);throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+typeof t)}ot.from=function(t,e,n){return Due(t,e,n)};Object.setPrototypeOf(ot.prototype,Uint8Array.prototype);Object.setPrototypeOf(ot,Uint8Array);function Fue(t){if(typeof t!=\"number\")throw new TypeError(\\'\"size\" argument must be of type number\\');if(t<0)throw new RangeError(\\'The value \"\\'+t+\\'\" is invalid for option \"size\"\\')}function dUe(t,e,n){return Fue(t),t<=0?$b(t):e!==void 0?typeof n==\"string\"?$b(t).fill(e,n):$b(t).fill(e):$b(t)}ot.alloc=function(t,e,n){return dUe(t,e,n)};function yG(t){return Fue(t),$b(t<0?0:bG(t)|0)}ot.allocUnsafe=function(t){return yG(t)};ot.allocUnsafeSlow=function(t){return yG(t)};function fUe(t,e){if((typeof e!=\"string\"||e===\"\")&&(e=\"utf8\"),!ot.isEncoding(e))throw new TypeError(\"Unknown encoding: \"+e);let n=Uue(t,e)|0,r=$b(n),o=r.write(t,e);return o!==n&&(r=r.slice(0,o)),r}function pG(t){let e=t.length<0?0:bG(t.length)|0,n=$b(e);for(let r=0;r<e;r+=1)n[r]=t[r]&255;return n}function hUe(t){if(ky(t,Uint8Array)){let e=new Uint8Array(t);return mG(e.buffer,e.byteOffset,e.byteLength)}return pG(t)}function mG(t,e,n){if(e<0||t.byteLength<e)throw new RangeError(\\'\"offset\" is outside of buffer bounds\\');if(t.byteLength<e+(n||0))throw new RangeError(\\'\"length\" is outside of buffer bounds\\');let r;return e===void 0&&n===void 0?r=new Uint8Array(t):n===void 0?r=new Uint8Array(t,e):r=new Uint8Array(t,e,n),Object.setPrototypeOf(r,ot.prototype),r}function pUe(t){if(ot.isBuffer(t)){let e=bG(t.length)|0,n=$b(e);return n.length===0||t.copy(n,0,0,e),n}if(t.length!==void 0)return typeof t.length!=\"number\"||wG(t.length)?$b(0):pG(t);if(t.type===\"Buffer\"&&Array.isArray(t.data))return pG(t.data)}function bG(t){if(t>=KN)throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+KN.toString(16)+\" bytes\");return t|0}function mUe(t){return+t!=t&&(t=0),ot.alloc(+t)}ot.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==ot.prototype};ot.compare=function(e,n){if(ky(e,Uint8Array)&&(e=ot.from(e,e.offset,e.byteLength)),ky(n,Uint8Array)&&(n=ot.from(n,n.offset,n.byteLength)),!ot.isBuffer(e)||!ot.isBuffer(n))throw new TypeError(\\'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array\\');if(e===n)return 0;let r=e.length,o=n.length;for(let i=0,a=Math.min(r,o);i<a;++i)if(e[i]!==n[i]){r=e[i],o=n[i];break}return r<o?-1:o<r?1:0};ot.isEncoding=function(e){switch(String(e).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"latin1\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}};ot.concat=function(e,n){if(!Array.isArray(e))throw new TypeError(\\'\"list\" argument must be an Array of Buffers\\');if(e.length===0)return ot.alloc(0);let r;if(n===void 0)for(n=0,r=0;r<e.length;++r)n+=e[r].length;let o=ot.allocUnsafe(n),i=0;for(r=0;r<e.length;++r){let a=e[r];if(ky(a,Uint8Array))i+a.length>o.length?(ot.isBuffer(a)||(a=ot.from(a)),a.copy(o,i)):Uint8Array.prototype.set.call(o,a,i);else if(ot.isBuffer(a))a.copy(o,i);else throw new TypeError(\\'\"list\" argument must be an Array of Buffers\\');i+=a.length}return o};function Uue(t,e){if(ot.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||ky(t,ArrayBuffer))return t.byteLength;if(typeof t!=\"string\")throw new TypeError(\\'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. Received type \\'+typeof t);let n=t.length,r=arguments.length>2&&arguments[2]===!0;if(!r&&n===0)return 0;let o=!1;for(;;)switch(e){case\"ascii\":case\"latin1\":case\"binary\":return n;case\"utf8\":case\"utf-8\":return gG(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return n*2;case\"hex\":return n>>>1;case\"base64\":return Gue(t).length;default:if(o)return r?-1:gG(t).length;e=(\"\"+e).toLowerCase(),o=!0}}ot.byteLength=Uue;function gUe(t,e,n){let r=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0,e>>>=0,n<=e))return\"\";for(t||(t=\"utf8\");;)switch(t){case\"hex\":return CUe(this,e,n);case\"utf8\":case\"utf-8\":return zue(this,e,n);case\"ascii\":return kUe(this,e,n);case\"latin1\":case\"binary\":return _Ue(this,e,n);case\"base64\":return EUe(this,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return AUe(this,e,n);default:if(r)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),r=!0}}ot.prototype._isBuffer=!0;function m5(t,e,n){let r=t[e];t[e]=t[n],t[n]=r}ot.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError(\"Buffer size must be a multiple of 16-bits\");for(let n=0;n<e;n+=2)m5(this,n,n+1);return this};ot.prototype.swap32=function(){let e=this.length;if(e%4!==0)throw new RangeError(\"Buffer size must be a multiple of 32-bits\");for(let n=0;n<e;n+=4)m5(this,n,n+3),m5(this,n+1,n+2);return this};ot.prototype.swap64=function(){let e=this.length;if(e%8!==0)throw new RangeError(\"Buffer size must be a multiple of 64-bits\");for(let n=0;n<e;n+=8)m5(this,n,n+7),m5(this,n+1,n+6),m5(this,n+2,n+5),m5(this,n+3,n+4);return this};ot.prototype.toString=function(){let e=this.length;return e===0?\"\":arguments.length===0?zue(this,0,e):gUe.apply(this,arguments)};ot.prototype.toLocaleString=ot.prototype.toString;ot.prototype.equals=function(e){if(!ot.isBuffer(e))throw new TypeError(\"Argument must be a Buffer\");return this===e?!0:ot.compare(this,e)===0};ot.prototype.inspect=function(){let e=\"\",n=Z_.INSPECT_MAX_BYTES;return e=this.toString(\"hex\",0,n).replace(/(.{2})/g,\"$1 \").trim(),this.length>n&&(e+=\" ... \"),\"<Buffer \"+e+\">\"};Mue&&(ot.prototype[Mue]=ot.prototype.inspect);ot.prototype.compare=function(e,n,r,o,i){if(ky(e,Uint8Array)&&(e=ot.from(e,e.offset,e.byteLength)),!ot.isBuffer(e))throw new TypeError(\\'The \"target\" argument must be one of type Buffer or Uint8Array. Received type \\'+typeof e);if(n===void 0&&(n=0),r===void 0&&(r=e?e.length:0),o===void 0&&(o=0),i===void 0&&(i=this.length),n<0||r>e.length||o<0||i>this.length)throw new RangeError(\"out of range index\");if(o>=i&&n>=r)return 0;if(o>=i)return-1;if(n>=r)return 1;if(n>>>=0,r>>>=0,o>>>=0,i>>>=0,this===e)return 0;let a=i-o,c=r-n,u=Math.min(a,c),d=this.slice(o,i),h=e.slice(n,r);for(let m=0;m<u;++m)if(d[m]!==h[m]){a=d[m],c=h[m];break}return a<c?-1:c<a?1:0};function jue(t,e,n,r,o){if(t.length===0)return-1;if(typeof n==\"string\"?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,wG(n)&&(n=o?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(o)return-1;n=t.length-1}else if(n<0)if(o)n=0;else return-1;if(typeof e==\"string\"&&(e=ot.from(e,r)),ot.isBuffer(e))return e.length===0?-1:Nue(t,e,n,r,o);if(typeof e==\"number\")return e=e&255,typeof Uint8Array.prototype.indexOf==\"function\"?o?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):Nue(t,[e],n,r,o);throw new TypeError(\"val must be string, number or Buffer\")}function Nue(t,e,n,r,o){let i=1,a=t.length,c=e.length;if(r!==void 0&&(r=String(r).toLowerCase(),r===\"ucs2\"||r===\"ucs-2\"||r===\"utf16le\"||r===\"utf-16le\")){if(t.length<2||e.length<2)return-1;i=2,a/=2,c/=2,n/=2}function u(h,m){return i===1?h[m]:h.readUInt16BE(m*i)}let d;if(o){let h=-1;for(d=n;d<a;d++)if(u(t,d)===u(e,h===-1?0:d-h)){if(h===-1&&(h=d),d-h+1===c)return h*i}else h!==-1&&(d-=d-h),h=-1}else for(n+c>a&&(n=a-c),d=n;d>=0;d--){let h=!0;for(let m=0;m<c;m++)if(u(t,d+m)!==u(e,m)){h=!1;break}if(h)return d}return-1}ot.prototype.includes=function(e,n,r){return this.indexOf(e,n,r)!==-1};ot.prototype.indexOf=function(e,n,r){return jue(this,e,n,r,!0)};ot.prototype.lastIndexOf=function(e,n,r){return jue(this,e,n,r,!1)};function yUe(t,e,n,r){n=Number(n)||0;let o=t.length-n;r?(r=Number(r),r>o&&(r=o)):r=o;let i=e.length;r>i/2&&(r=i/2);let a;for(a=0;a<r;++a){let c=parseInt(e.substr(a*2,2),16);if(wG(c))return a;t[n+a]=c}return a}function bUe(t,e,n,r){return GN(gG(e,t.length-n),t,n,r)}function vUe(t,e,n,r){return GN(OUe(e),t,n,r)}function wUe(t,e,n,r){return GN(Gue(e),t,n,r)}function xUe(t,e,n,r){return GN(PUe(e,t.length-n),t,n,r)}ot.prototype.write=function(e,n,r,o){if(n===void 0)o=\"utf8\",r=this.length,n=0;else if(r===void 0&&typeof n==\"string\")o=n,r=this.length,n=0;else if(isFinite(n))n=n>>>0,isFinite(r)?(r=r>>>0,o===void 0&&(o=\"utf8\")):(o=r,r=void 0);else throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");let i=this.length-n;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||n<0)||n>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");o||(o=\"utf8\");let a=!1;for(;;)switch(o){case\"hex\":return yUe(this,e,n,r);case\"utf8\":case\"utf-8\":return bUe(this,e,n,r);case\"ascii\":case\"latin1\":case\"binary\":return vUe(this,e,n,r);case\"base64\":return wUe(this,e,n,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return xUe(this,e,n,r);default:if(a)throw new TypeError(\"Unknown encoding: \"+o);o=(\"\"+o).toLowerCase(),a=!0}};ot.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};function EUe(t,e,n){return e===0&&n===t.length?hG.fromByteArray(t):hG.fromByteArray(t.slice(e,n))}function zue(t,e,n){n=Math.min(t.length,n);let r=[],o=e;for(;o<n;){let i=t[o],a=null,c=i>239?4:i>223?3:i>191?2:1;if(o+c<=n){let u,d,h,m;switch(c){case 1:i<128&&(a=i);break;case 2:u=t[o+1],(u&192)===128&&(m=(i&31)<<6|u&63,m>127&&(a=m));break;case 3:u=t[o+1],d=t[o+2],(u&192)===128&&(d&192)===128&&(m=(i&15)<<12|(u&63)<<6|d&63,m>2047&&(m<55296||m>57343)&&(a=m));break;case 4:u=t[o+1],d=t[o+2],h=t[o+3],(u&192)===128&&(d&192)===128&&(h&192)===128&&(m=(i&15)<<18|(u&63)<<12|(d&63)<<6|h&63,m>65535&&m<1114112&&(a=m))}}a===null?(a=65533,c=1):a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a),o+=c}return SUe(r)}var Lue=4096;function SUe(t){let e=t.length;if(e<=Lue)return String.fromCharCode.apply(String,t);let n=\"\",r=0;for(;r<e;)n+=String.fromCharCode.apply(String,t.slice(r,r+=Lue));return n}function kUe(t,e,n){let r=\"\";n=Math.min(t.length,n);for(let o=e;o<n;++o)r+=String.fromCharCode(t[o]&127);return r}function _Ue(t,e,n){let r=\"\";n=Math.min(t.length,n);for(let o=e;o<n;++o)r+=String.fromCharCode(t[o]);return r}function CUe(t,e,n){let r=t.length;(!e||e<0)&&(e=0),(!n||n<0||n>r)&&(n=r);let o=\"\";for(let i=e;i<n;++i)o+=MUe[t[i]];return o}function AUe(t,e,n){let r=t.slice(e,n),o=\"\";for(let i=0;i<r.length-1;i+=2)o+=String.fromCharCode(r[i]+r[i+1]*256);return o}ot.prototype.slice=function(e,n){let r=this.length;e=~~e,n=n===void 0?r:~~n,e<0?(e+=r,e<0&&(e=0)):e>r&&(e=r),n<0?(n+=r,n<0&&(n=0)):n>r&&(n=r),n<e&&(n=e);let o=this.subarray(e,n);return Object.setPrototypeOf(o,ot.prototype),o};function Pc(t,e,n){if(t%1!==0||t<0)throw new RangeError(\"offset is not uint\");if(t+e>n)throw new RangeError(\"Trying to access beyond buffer length\")}ot.prototype.readUintLE=ot.prototype.readUIntLE=function(e,n,r){e=e>>>0,n=n>>>0,r||Pc(e,n,this.length);let o=this[e],i=1,a=0;for(;++a<n&&(i*=256);)o+=this[e+a]*i;return o};ot.prototype.readUintBE=ot.prototype.readUIntBE=function(e,n,r){e=e>>>0,n=n>>>0,r||Pc(e,n,this.length);let o=this[e+--n],i=1;for(;n>0&&(i*=256);)o+=this[e+--n]*i;return o};ot.prototype.readUint8=ot.prototype.readUInt8=function(e,n){return e=e>>>0,n||Pc(e,1,this.length),this[e]};ot.prototype.readUint16LE=ot.prototype.readUInt16LE=function(e,n){return e=e>>>0,n||Pc(e,2,this.length),this[e]|this[e+1]<<8};ot.prototype.readUint16BE=ot.prototype.readUInt16BE=function(e,n){return e=e>>>0,n||Pc(e,2,this.length),this[e]<<8|this[e+1]};ot.prototype.readUint32LE=ot.prototype.readUInt32LE=function(e,n){return e=e>>>0,n||Pc(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};ot.prototype.readUint32BE=ot.prototype.readUInt32BE=function(e,n){return e=e>>>0,n||Pc(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};ot.prototype.readBigUInt64LE=Ow(function(e){e=e>>>0,G_(e,\"offset\");let n=this[e],r=this[e+7];(n===void 0||r===void 0)&&G7(e,this.length-8);let o=n+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*2**8+this[++e]*2**16+r*2**24;return BigInt(o)+(BigInt(i)<<BigInt(32))});ot.prototype.readBigUInt64BE=Ow(function(e){e=e>>>0,G_(e,\"offset\");let n=this[e],r=this[e+7];(n===void 0||r===void 0)&&G7(e,this.length-8);let o=n*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+r;return(BigInt(o)<<BigInt(32))+BigInt(i)});ot.prototype.readIntLE=function(e,n,r){e=e>>>0,n=n>>>0,r||Pc(e,n,this.length);let o=this[e],i=1,a=0;for(;++a<n&&(i*=256);)o+=this[e+a]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*n)),o};ot.prototype.readIntBE=function(e,n,r){e=e>>>0,n=n>>>0,r||Pc(e,n,this.length);let o=n,i=1,a=this[e+--o];for(;o>0&&(i*=256);)a+=this[e+--o]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*n)),a};ot.prototype.readInt8=function(e,n){return e=e>>>0,n||Pc(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};ot.prototype.readInt16LE=function(e,n){e=e>>>0,n||Pc(e,2,this.length);let r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};ot.prototype.readInt16BE=function(e,n){e=e>>>0,n||Pc(e,2,this.length);let r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};ot.prototype.readInt32LE=function(e,n){return e=e>>>0,n||Pc(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};ot.prototype.readInt32BE=function(e,n){return e=e>>>0,n||Pc(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};ot.prototype.readBigInt64LE=Ow(function(e){e=e>>>0,G_(e,\"offset\");let n=this[e],r=this[e+7];(n===void 0||r===void 0)&&G7(e,this.length-8);let o=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(r<<24);return(BigInt(o)<<BigInt(32))+BigInt(n+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24)});ot.prototype.readBigInt64BE=Ow(function(e){e=e>>>0,G_(e,\"offset\");let n=this[e],r=this[e+7];(n===void 0||r===void 0)&&G7(e,this.length-8);let o=(n<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(o)<<BigInt(32))+BigInt(this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+r)});ot.prototype.readFloatLE=function(e,n){return e=e>>>0,n||Pc(e,4,this.length),K_.read(this,e,!0,23,4)};ot.prototype.readFloatBE=function(e,n){return e=e>>>0,n||Pc(e,4,this.length),K_.read(this,e,!1,23,4)};ot.prototype.readDoubleLE=function(e,n){return e=e>>>0,n||Pc(e,8,this.length),K_.read(this,e,!0,52,8)};ot.prototype.readDoubleBE=function(e,n){return e=e>>>0,n||Pc(e,8,this.length),K_.read(this,e,!1,52,8)};function ff(t,e,n,r,o,i){if(!ot.isBuffer(t))throw new TypeError(\\'\"buffer\" argument must be a Buffer instance\\');if(e>o||e<i)throw new RangeError(\\'\"value\" argument is out of bounds\\');if(n+r>t.length)throw new RangeError(\"Index out of range\")}ot.prototype.writeUintLE=ot.prototype.writeUIntLE=function(e,n,r,o){if(e=+e,n=n>>>0,r=r>>>0,!o){let c=Math.pow(2,8*r)-1;ff(this,e,n,r,c,0)}let i=1,a=0;for(this[n]=e&255;++a<r&&(i*=256);)this[n+a]=e/i&255;return n+r};ot.prototype.writeUintBE=ot.prototype.writeUIntBE=function(e,n,r,o){if(e=+e,n=n>>>0,r=r>>>0,!o){let c=Math.pow(2,8*r)-1;ff(this,e,n,r,c,0)}let i=r-1,a=1;for(this[n+i]=e&255;--i>=0&&(a*=256);)this[n+i]=e/a&255;return n+r};ot.prototype.writeUint8=ot.prototype.writeUInt8=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,1,255,0),this[n]=e&255,n+1};ot.prototype.writeUint16LE=ot.prototype.writeUInt16LE=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,2,65535,0),this[n]=e&255,this[n+1]=e>>>8,n+2};ot.prototype.writeUint16BE=ot.prototype.writeUInt16BE=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,2,65535,0),this[n]=e>>>8,this[n+1]=e&255,n+2};ot.prototype.writeUint32LE=ot.prototype.writeUInt32LE=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,4,4294967295,0),this[n+3]=e>>>24,this[n+2]=e>>>16,this[n+1]=e>>>8,this[n]=e&255,n+4};ot.prototype.writeUint32BE=ot.prototype.writeUInt32BE=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,4,4294967295,0),this[n]=e>>>24,this[n+1]=e>>>16,this[n+2]=e>>>8,this[n+3]=e&255,n+4};function Hue(t,e,n,r,o){Kue(e,r,o,t,n,7);let i=Number(e&BigInt(4294967295));t[n++]=i,i=i>>8,t[n++]=i,i=i>>8,t[n++]=i,i=i>>8,t[n++]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[n++]=a,a=a>>8,t[n++]=a,a=a>>8,t[n++]=a,a=a>>8,t[n++]=a,n}function que(t,e,n,r,o){Kue(e,r,o,t,n,7);let i=Number(e&BigInt(4294967295));t[n+7]=i,i=i>>8,t[n+6]=i,i=i>>8,t[n+5]=i,i=i>>8,t[n+4]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[n+3]=a,a=a>>8,t[n+2]=a,a=a>>8,t[n+1]=a,a=a>>8,t[n]=a,n+8}ot.prototype.writeBigUInt64LE=Ow(function(e,n=0){return Hue(this,e,n,BigInt(0),BigInt(\"0xffffffffffffffff\"))});ot.prototype.writeBigUInt64BE=Ow(function(e,n=0){return que(this,e,n,BigInt(0),BigInt(\"0xffffffffffffffff\"))});ot.prototype.writeIntLE=function(e,n,r,o){if(e=+e,n=n>>>0,!o){let u=Math.pow(2,8*r-1);ff(this,e,n,r,u-1,-u)}let i=0,a=1,c=0;for(this[n]=e&255;++i<r&&(a*=256);)e<0&&c===0&&this[n+i-1]!==0&&(c=1),this[n+i]=(e/a>>0)-c&255;return n+r};ot.prototype.writeIntBE=function(e,n,r,o){if(e=+e,n=n>>>0,!o){let u=Math.pow(2,8*r-1);ff(this,e,n,r,u-1,-u)}let i=r-1,a=1,c=0;for(this[n+i]=e&255;--i>=0&&(a*=256);)e<0&&c===0&&this[n+i+1]!==0&&(c=1),this[n+i]=(e/a>>0)-c&255;return n+r};ot.prototype.writeInt8=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,1,127,-128),e<0&&(e=255+e+1),this[n]=e&255,n+1};ot.prototype.writeInt16LE=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,2,32767,-32768),this[n]=e&255,this[n+1]=e>>>8,n+2};ot.prototype.writeInt16BE=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,2,32767,-32768),this[n]=e>>>8,this[n+1]=e&255,n+2};ot.prototype.writeInt32LE=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,4,2147483647,-2147483648),this[n]=e&255,this[n+1]=e>>>8,this[n+2]=e>>>16,this[n+3]=e>>>24,n+4};ot.prototype.writeInt32BE=function(e,n,r){return e=+e,n=n>>>0,r||ff(this,e,n,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[n]=e>>>24,this[n+1]=e>>>16,this[n+2]=e>>>8,this[n+3]=e&255,n+4};ot.prototype.writeBigInt64LE=Ow(function(e,n=0){return Hue(this,e,n,-BigInt(\"0x8000000000000000\"),BigInt(\"0x7fffffffffffffff\"))});ot.prototype.writeBigInt64BE=Ow(function(e,n=0){return que(this,e,n,-BigInt(\"0x8000000000000000\"),BigInt(\"0x7fffffffffffffff\"))});function Wue(t,e,n,r,o,i){if(n+r>t.length)throw new RangeError(\"Index out of range\");if(n<0)throw new RangeError(\"Index out of range\")}function Vue(t,e,n,r,o){return e=+e,n=n>>>0,o||Wue(t,e,n,4,34028234663852886e22,-34028234663852886e22),K_.write(t,e,n,r,23,4),n+4}ot.prototype.writeFloatLE=function(e,n,r){return Vue(this,e,n,!0,r)};ot.prototype.writeFloatBE=function(e,n,r){return Vue(this,e,n,!1,r)};function $ue(t,e,n,r,o){return e=+e,n=n>>>0,o||Wue(t,e,n,8,17976931348623157e292,-17976931348623157e292),K_.write(t,e,n,r,52,8),n+8}ot.prototype.writeDoubleLE=function(e,n,r){return $ue(this,e,n,!0,r)};ot.prototype.writeDoubleBE=function(e,n,r){return $ue(this,e,n,!1,r)};ot.prototype.copy=function(e,n,r,o){if(!ot.isBuffer(e))throw new TypeError(\"argument should be a Buffer\");if(r||(r=0),!o&&o!==0&&(o=this.length),n>=e.length&&(n=e.length),n||(n=0),o>0&&o<r&&(o=r),o===r||e.length===0||this.length===0)return 0;if(n<0)throw new RangeError(\"targetStart out of bounds\");if(r<0||r>=this.length)throw new RangeError(\"Index out of range\");if(o<0)throw new RangeError(\"sourceEnd out of bounds\");o>this.length&&(o=this.length),e.length-n<o-r&&(o=e.length-n+r);let i=o-r;return this===e&&typeof Uint8Array.prototype.copyWithin==\"function\"?this.copyWithin(n,r,o):Uint8Array.prototype.set.call(e,this.subarray(r,o),n),i};ot.prototype.fill=function(e,n,r,o){if(typeof e==\"string\"){if(typeof n==\"string\"?(o=n,n=0,r=this.length):typeof r==\"string\"&&(o=r,r=this.length),o!==void 0&&typeof o!=\"string\")throw new TypeError(\"encoding must be a string\");if(typeof o==\"string\"&&!ot.isEncoding(o))throw new TypeError(\"Unknown encoding: \"+o);if(e.length===1){let a=e.charCodeAt(0);(o===\"utf8\"&&a<128||o===\"latin1\")&&(e=a)}}else typeof e==\"number\"?e=e&255:typeof e==\"boolean\"&&(e=Number(e));if(n<0||this.length<n||this.length<r)throw new RangeError(\"Out of range index\");if(r<=n)return this;n=n>>>0,r=r===void 0?this.length:r>>>0,e||(e=0);let i;if(typeof e==\"number\")for(i=n;i<r;++i)this[i]=e;else{let a=ot.isBuffer(e)?e:ot.from(e,o),c=a.length;if(c===0)throw new TypeError(\\'The value \"\\'+e+\\'\" is invalid for argument \"value\"\\');for(i=0;i<r-n;++i)this[i+n]=a[i%c]}return this};var $_={};function vG(t,e,n){$_[t]=class extends n{constructor(){super(),Object.defineProperty(this,\"message\",{value:e.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${t}]`,this.stack,delete this.name}get code(){return t}set code(o){Object.defineProperty(this,\"code\",{configurable:!0,enumerable:!0,value:o,writable:!0})}toString(){return`${this.name} [${t}]: ${this.message}`}}}vG(\"ERR_BUFFER_OUT_OF_BOUNDS\",function(t){return t?`${t} is outside of buffer bounds`:\"Attempt to access memory outside buffer bounds\"},RangeError);vG(\"ERR_INVALID_ARG_TYPE\",function(t,e){return`The \"${t}\" argument must be of type number. Received type ${typeof e}`},TypeError);vG(\"ERR_OUT_OF_RANGE\",function(t,e,n){let r=`The value of \"${t}\" is out of range.`,o=n;return Number.isInteger(n)&&Math.abs(n)>2**32?o=Bue(String(n)):typeof n==\"bigint\"&&(o=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(o=Bue(o)),o+=\"n\"),r+=` It must be ${e}. Received ${o}`,r},RangeError);function Bue(t){let e=\"\",n=t.length,r=t[0]===\"-\"?1:0;for(;n>=r+4;n-=3)e=`_${t.slice(n-3,n)}${e}`;return`${t.slice(0,n)}${e}`}function TUe(t,e,n){G_(e,\"offset\"),(t[e]===void 0||t[e+n]===void 0)&&G7(e,t.length-(n+1))}function Kue(t,e,n,r,o,i){if(t>n||t<e){let a=typeof e==\"bigint\"?\"n\":\"\",c;throw i>3?e===0||e===BigInt(0)?c=`>= 0${a} and < 2${a} ** ${(i+1)*8}${a}`:c=`>= -(2${a} ** ${(i+1)*8-1}${a}) and < 2 ** ${(i+1)*8-1}${a}`:c=`>= ${e}${a} and <= ${n}${a}`,new $_.ERR_OUT_OF_RANGE(\"value\",c,t)}TUe(r,o,i)}function G_(t,e){if(typeof t!=\"number\")throw new $_.ERR_INVALID_ARG_TYPE(e,\"number\",t)}function G7(t,e,n){throw Math.floor(t)!==t?(G_(t,n),new $_.ERR_OUT_OF_RANGE(n||\"offset\",\"an integer\",t)):e<0?new $_.ERR_BUFFER_OUT_OF_BOUNDS:new $_.ERR_OUT_OF_RANGE(n||\"offset\",`>= ${n?1:0} and <= ${e}`,t)}var RUe=/[^+/0-9A-Za-z-_]/g;function IUe(t){if(t=t.split(\"=\")[0],t=t.trim().replace(RUe,\"\"),t.length<2)return\"\";for(;t.length%4!==0;)t=t+\"=\";return t}function gG(t,e){e=e||1/0;let n,r=t.length,o=null,i=[];for(let a=0;a<r;++a){if(n=t.charCodeAt(a),n>55295&&n<57344){if(!o){if(n>56319){(e-=3)>-1&&i.push(239,191,189);continue}else if(a+1===r){(e-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(e-=3)>-1&&i.push(239,191,189),o=n;continue}n=(o-55296<<10|n-56320)+65536}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((e-=1)<0)break;i.push(n)}else if(n<2048){if((e-=2)<0)break;i.push(n>>6|192,n&63|128)}else if(n<65536){if((e-=3)<0)break;i.push(n>>12|224,n>>6&63|128,n&63|128)}else if(n<1114112){if((e-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,n&63|128)}else throw new Error(\"Invalid code point\")}return i}function OUe(t){let e=[];for(let n=0;n<t.length;++n)e.push(t.charCodeAt(n)&255);return e}function PUe(t,e){let n,r,o,i=[];for(let a=0;a<t.length&&!((e-=2)<0);++a)n=t.charCodeAt(a),r=n>>8,o=n%256,i.push(o),i.push(r);return i}function Gue(t){return hG.toByteArray(IUe(t))}function GN(t,e,n,r){let o;for(o=0;o<r&&!(o+n>=e.length||o>=t.length);++o)e[o+n]=t[o];return o}function ky(t,e){return t instanceof e||t!=null&&t.constructor!=null&&t.constructor.name!=null&&t.constructor.name===e.name}function wG(t){return t!==t}var MUe=function(){let t=\"0123456789abcdef\",e=new Array(256);for(let n=0;n<16;++n){let r=n*16;for(let o=0;o<16;++o)e[r+o]=t[n]+t[o]}return e}();function Ow(t){return typeof BigInt>\"u\"?NUe:t}function NUe(){throw new Error(\"BigInt not supported\")}});var Zue,p=ce(()=>{\"use strict\";Zue=he(Kb());globalThis.Buffer=Zue.Buffer});var Yue=be(ls=>{\"use strict\";p();(function(){function t(){if(G=!1,ie){var O=ls.unstable_now();V=O;var z=!0;try{e:{L=!1,D&&(D=!1,J(Z),Z=-1),R=!0;var N=T;try{t:{for(i(O),C=n(g);C!==null&&!(C.expirationTime>O&&c());){var B=C.callback;if(typeof B==\"function\"){C.callback=null,T=C.priorityLevel;var j=B(C.expirationTime<=O);if(O=ls.unstable_now(),typeof j==\"function\"){C.callback=j,i(O),z=!0;break t}C===n(g)&&r(g),i(O)}else r(g);C=n(g)}if(C!==null)z=!0;else{var q=n(b);q!==null&&u(a,q.startTime-O),z=!1}}break e}finally{C=null,T=N,R=!1}z=void 0}}finally{z?$():ie=!1}}}function e(O,z){var N=O.length;O.push(z);e:for(;0<N;){var B=N-1>>>1,j=O[B];if(0<o(j,z))O[B]=z,O[N]=j,N=B;else break e}}function n(O){return O.length===0?null:O[0]}function r(O){if(O.length===0)return null;var z=O[0],N=O.pop();if(N!==z){O[0]=N;e:for(var B=0,j=O.length,q=j>>>1;B<q;){var H=2*(B+1)-1,I=O[H],U=H+1,X=O[U];if(0>o(I,N))U<j&&0>o(X,I)?(O[B]=X,O[U]=N,B=U):(O[B]=I,O[H]=N,B=H);else if(U<j&&0>o(X,N))O[B]=X,O[U]=N,B=U;else break e}}return z}function o(O,z){var N=O.sortIndex-z.sortIndex;return N!==0?N:O.id-z.id}function i(O){for(var z=n(b);z!==null;){if(z.callback===null)r(b);else if(z.startTime<=O)r(b),z.sortIndex=z.expirationTime,e(g,z);else break;z=n(b)}}function a(O){if(D=!1,i(O),!L)if(n(g)!==null)L=!0,ie||(ie=!0,$());else{var z=n(b);z!==null&&u(a,z.startTime-O)}}function c(){return G?!0:!(ls.unstable_now()-V<ae)}function u(O,z){Z=W(function(){O(ls.unstable_now())},z)}if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error()),ls.unstable_now=void 0,typeof performance==\"object\"&&typeof performance.now==\"function\"){var d=performance;ls.unstable_now=function(){return d.now()}}else{var h=Date,m=h.now();ls.unstable_now=function(){return h.now()-m}}var g=[],b=[],E=1,C=null,T=3,R=!1,L=!1,D=!1,G=!1,W=typeof setTimeout==\"function\"?setTimeout:null,J=typeof clearTimeout==\"function\"?clearTimeout:null,ne=typeof setImmediate<\"u\"?setImmediate:null,ie=!1,Z=-1,ae=5,V=-1;if(typeof ne==\"function\")var $=function(){ne(t)};else if(typeof MessageChannel<\"u\"){var F=new MessageChannel,_=F.port2;F.port1.onmessage=t,$=function(){_.postMessage(null)}}else $=function(){W(t,0)};ls.unstable_IdlePriority=5,ls.unstable_ImmediatePriority=1,ls.unstable_LowPriority=4,ls.unstable_NormalPriority=3,ls.unstable_Profiling=null,ls.unstable_UserBlockingPriority=2,ls.unstable_cancelCallback=function(O){O.callback=null},ls.unstable_forceFrameRate=function(O){0>O||125<O?console.error(\"forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported\"):ae=0<O?Math.floor(1e3/O):5},ls.unstable_getCurrentPriorityLevel=function(){return T},ls.unstable_next=function(O){switch(T){case 1:case 2:case 3:var z=3;break;default:z=T}var N=T;T=z;try{return O()}finally{T=N}},ls.unstable_requestPaint=function(){G=!0},ls.unstable_runWithPriority=function(O,z){switch(O){case 1:case 2:case 3:case 4:case 5:break;default:O=3}var N=T;T=O;try{return z()}finally{T=N}},ls.unstable_scheduleCallback=function(O,z,N){var B=ls.unstable_now();switch(typeof N==\"object\"&&N!==null?(N=N.delay,N=typeof N==\"number\"&&0<N?B+N:B):N=B,O){case 1:var j=-1;break;case 2:j=250;break;case 5:j=1073741823;break;case 4:j=1e4;break;default:j=5e3}return j=N+j,O={id:E++,callback:z,priorityLevel:O,startTime:N,expirationTime:j,sortIndex:-1},N>B?(O.sortIndex=N,e(b,O),n(g)===null&&O===n(b)&&(D?(J(Z),Z=-1):D=!0,u(a,N-B))):(O.sortIndex=j,e(g,O),L||R||(L=!0,ie||(ie=!0,$()))),O},ls.unstable_shouldYield=c,ls.unstable_wrapCallback=function(O){var z=T;return function(){var N=T;T=z;try{return O.apply(this,arguments)}finally{T=N}}},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var Jue=be((dbt,Que)=>{\"use strict\";p();Que.exports=Yue()});var Xue=be((nr,ZN)=>{\"use strict\";p();(function(){function t(le,Te){Object.defineProperty(r.prototype,le,{get:function(){console.warn(\"%s(...) is deprecated in plain JavaScript React classes. %s\",Te[0],Te[1])}})}function e(le){return le===null||typeof le!=\"object\"?null:(le=xe&&le[xe]||le[\"@@iterator\"],typeof le==\"function\"?le:null)}function n(le,Te){le=(le=le.constructor)&&(le.displayName||le.name)||\"ReactClass\";var xt=le+\".\"+Te;_e[xt]||(console.error(\"Can\\'t call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.\",Te,le),_e[xt]=!0)}function r(le,Te,xt){this.props=le,this.context=Te,this.refs=wt,this.updater=xt||Me}function o(){}function i(le,Te,xt){this.props=le,this.context=Te,this.refs=wt,this.updater=xt||Me}function a(le){return\"\"+le}function c(le){try{a(le);var Te=!1}catch{Te=!0}if(Te){Te=console;var xt=Te.error,tt=typeof Symbol==\"function\"&&Symbol.toStringTag&&le[Symbol.toStringTag]||le.constructor.name||\"Object\";return xt.call(Te,\"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",tt),a(le)}}function u(le){if(le==null)return null;if(typeof le==\"function\")return le.$$typeof===dt?null:le.displayName||le.name||null;if(typeof le==\"string\")return le;switch(le){case B:return\"Fragment\";case q:return\"Profiler\";case j:return\"StrictMode\";case X:return\"Suspense\";case ee:return\"SuspenseList\";case ye:return\"Activity\"}if(typeof le==\"object\")switch(typeof le.tag==\"number\"&&console.error(\"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"),le.$$typeof){case N:return\"Portal\";case I:return(le.displayName||\"Context\")+\".Provider\";case H:return(le._context.displayName||\"Context\")+\".Consumer\";case U:var Te=le.render;return le=le.displayName,le||(le=Te.displayName||Te.name||\"\",le=le!==\"\"?\"ForwardRef(\"+le+\")\":\"ForwardRef\"),le;case se:return Te=le.displayName||null,Te!==null?Te:u(le.type)||\"Memo\";case pe:Te=le._payload,le=le._init;try{return u(le(Te))}catch{}}return null}function d(le){if(le===B)return\"<>\";if(typeof le==\"object\"&&le!==null&&le.$$typeof===pe)return\"<...>\";try{var Te=u(le);return Te?\"<\"+Te+\">\":\"<...>\"}catch{return\"<...>\"}}function h(){var le=Ze.A;return le===null?null:le.getOwner()}function m(){return Error(\"react-stack-top-frame\")}function g(le){if(rn.call(le,\"key\")){var Te=Object.getOwnPropertyDescriptor(le,\"key\").get;if(Te&&Te.isReactWarning)return!1}return le.key!==void 0}function b(le,Te){function xt(){Bt||(Bt=!0,console.error(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",Te))}xt.isReactWarning=!0,Object.defineProperty(le,\"key\",{get:xt,configurable:!0})}function E(){var le=u(this.type);return qt[le]||(qt[le]=!0,console.error(\"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\")),le=this.props.ref,le!==void 0?le:null}function C(le,Te,xt,tt,It,hn,Dt,sn){return xt=hn.ref,le={$$typeof:z,type:le,key:Te,props:hn,_owner:It},(xt!==void 0?xt:null)!==null?Object.defineProperty(le,\"ref\",{enumerable:!1,get:E}):Object.defineProperty(le,\"ref\",{enumerable:!1,value:null}),le._store={},Object.defineProperty(le._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(le,\"_debugInfo\",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(le,\"_debugStack\",{configurable:!1,enumerable:!1,writable:!0,value:Dt}),Object.defineProperty(le,\"_debugTask\",{configurable:!1,enumerable:!1,writable:!0,value:sn}),Object.freeze&&(Object.freeze(le.props),Object.freeze(le)),le}function T(le,Te){return Te=C(le.type,Te,void 0,void 0,le._owner,le.props,le._debugStack,le._debugTask),le._store&&(Te._store.validated=le._store.validated),Te}function R(le){return typeof le==\"object\"&&le!==null&&le.$$typeof===z}function L(le){var Te={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+le.replace(/[=:]/g,function(xt){return Te[xt]})}function D(le,Te){return typeof le==\"object\"&&le!==null&&le.key!=null?(c(le.key),L(\"\"+le.key)):Te.toString(36)}function G(){}function W(le){switch(le.status){case\"fulfilled\":return le.value;case\"rejected\":throw le.reason;default:switch(typeof le.status==\"string\"?le.then(G,G):(le.status=\"pending\",le.then(function(Te){le.status===\"pending\"&&(le.status=\"fulfilled\",le.value=Te)},function(Te){le.status===\"pending\"&&(le.status=\"rejected\",le.reason=Te)})),le.status){case\"fulfilled\":return le.value;case\"rejected\":throw le.reason}}throw le}function J(le,Te,xt,tt,It){var hn=typeof le;(hn===\"undefined\"||hn===\"boolean\")&&(le=null);var Dt=!1;if(le===null)Dt=!0;else switch(hn){case\"bigint\":case\"string\":case\"number\":Dt=!0;break;case\"object\":switch(le.$$typeof){case z:case N:Dt=!0;break;case pe:return Dt=le._init,J(Dt(le._payload),Te,xt,tt,It)}}if(Dt){Dt=le,It=It(Dt);var sn=tt===\"\"?\".\"+D(Dt,0):tt;return Ct(It)?(xt=\"\",sn!=null&&(xt=sn.replace(br,\"$&/\")+\"/\"),J(It,Te,xt,\"\",function(Fn){return Fn})):It!=null&&(R(It)&&(It.key!=null&&(Dt&&Dt.key===It.key||c(It.key)),xt=T(It,xt+(It.key==null||Dt&&Dt.key===It.key?\"\":(\"\"+It.key).replace(br,\"$&/\")+\"/\")+sn),tt!==\"\"&&Dt!=null&&R(Dt)&&Dt.key==null&&Dt._store&&!Dt._store.validated&&(xt._store.validated=2),It=xt),Te.push(It)),1}if(Dt=0,sn=tt===\"\"?\".\":tt+\":\",Ct(le))for(var bn=0;bn<le.length;bn++)tt=le[bn],hn=sn+D(tt,bn),Dt+=J(tt,Te,xt,hn,It);else if(bn=e(le),typeof bn==\"function\")for(bn===le.entries&&(Mn||console.warn(\"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"),Mn=!0),le=bn.call(le),bn=0;!(tt=le.next()).done;)tt=tt.value,hn=sn+D(tt,bn++),Dt+=J(tt,Te,xt,hn,It);else if(hn===\"object\"){if(typeof le.then==\"function\")return J(W(le),Te,xt,tt,It);throw Te=String(le),Error(\"Objects are not valid as a React child (found: \"+(Te===\"[object Object]\"?\"object with keys {\"+Object.keys(le).join(\", \")+\"}\":Te)+\"). If you meant to render a collection of children, use an array instead.\")}return Dt}function ne(le,Te,xt){if(le==null)return le;var tt=[],It=0;return J(le,tt,\"\",\"\",function(hn){return Te.call(xt,hn,It++)}),tt}function ie(le){if(le._status===-1){var Te=le._result;Te=Te(),Te.then(function(xt){(le._status===0||le._status===-1)&&(le._status=1,le._result=xt)},function(xt){(le._status===0||le._status===-1)&&(le._status=2,le._result=xt)}),le._status===-1&&(le._status=0,le._result=Te)}if(le._status===1)return Te=le._result,Te===void 0&&console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n  const MyComponent = lazy(() => import(\\'./MyComponent\\'))\\n\\nDid you accidentally put curly braces around the import?`,Te),\"default\"in Te||console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n  const MyComponent = lazy(() => import(\\'./MyComponent\\'))`,Te),Te.default;throw le._result}function Z(){var le=Ze.H;return le===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),le}function ae(){}function V(le){if(vr===null)try{var Te=(\"require\"+Math.random()).slice(0,7);vr=(ZN&&ZN[Te]).call(ZN,\"timers\").setImmediate}catch{vr=function(tt){Pr===!1&&(Pr=!0,typeof MessageChannel>\"u\"&&console.error(\"This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning.\"));var It=new MessageChannel;It.port1.onmessage=tt,It.port2.postMessage(void 0)}}return vr(le)}function $(le){return 1<le.length&&typeof AggregateError==\"function\"?new AggregateError(le):le[0]}function F(le,Te){Te!==hi-1&&console.error(\"You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. \"),hi=Te}function _(le,Te,xt){var tt=Ze.actQueue;if(tt!==null)if(tt.length!==0)try{O(tt),V(function(){return _(le,Te,xt)});return}catch(It){Ze.thrownErrors.push(It)}else Ze.actQueue=null;0<Ze.thrownErrors.length?(tt=$(Ze.thrownErrors),Ze.thrownErrors.length=0,xt(tt)):Te(le)}function O(le){if(!wr){wr=!0;var Te=0;try{for(;Te<le.length;Te++){var xt=le[Te];do{Ze.didUsePromise=!1;var tt=xt(!1);if(tt!==null){if(Ze.didUsePromise){le[Te]=xt,le.splice(0,Te);return}xt=tt}else break}while(!0)}le.length=0}catch(It){le.splice(0,Te+1),Ze.thrownErrors.push(It)}finally{wr=!1}}}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var z=Symbol.for(\"react.transitional.element\"),N=Symbol.for(\"react.portal\"),B=Symbol.for(\"react.fragment\"),j=Symbol.for(\"react.strict_mode\"),q=Symbol.for(\"react.profiler\");Symbol.for(\"react.provider\");var H=Symbol.for(\"react.consumer\"),I=Symbol.for(\"react.context\"),U=Symbol.for(\"react.forward_ref\"),X=Symbol.for(\"react.suspense\"),ee=Symbol.for(\"react.suspense_list\"),se=Symbol.for(\"react.memo\"),pe=Symbol.for(\"react.lazy\"),ye=Symbol.for(\"react.activity\"),xe=Symbol.iterator,_e={},Me={isMounted:function(){return!1},enqueueForceUpdate:function(le){n(le,\"forceUpdate\")},enqueueReplaceState:function(le){n(le,\"replaceState\")},enqueueSetState:function(le){n(le,\"setState\")}},qe=Object.assign,wt={};Object.freeze(wt),r.prototype.isReactComponent={},r.prototype.setState=function(le,Te){if(typeof le!=\"object\"&&typeof le!=\"function\"&&le!=null)throw Error(\"takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,le,Te,\"setState\")},r.prototype.forceUpdate=function(le){this.updater.enqueueForceUpdate(this,le,\"forceUpdate\")};var Ge={isMounted:[\"isMounted\",\"Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.\"],replaceState:[\"replaceState\",\"Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236).\"]},ht;for(ht in Ge)Ge.hasOwnProperty(ht)&&t(ht,Ge[ht]);o.prototype=r.prototype,Ge=i.prototype=new o,Ge.constructor=i,qe(Ge,r.prototype),Ge.isPureReactComponent=!0;var Ct=Array.isArray,dt=Symbol.for(\"react.client.reference\"),Ze={H:null,A:null,T:null,S:null,V:null,actQueue:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1,didUsePromise:!1,thrownErrors:[],getCurrentStack:null,recentlyCreatedOwnerStacks:0},rn=Object.prototype.hasOwnProperty,zt=console.createTask?console.createTask:function(){return null};Ge={\"react-stack-bottom-frame\":function(le){return le()}};var Bt,Mt,qt={},Wt=Ge[\"react-stack-bottom-frame\"].bind(Ge,m)(),zn=zt(d(m)),Mn=!1,br=/\\\\/+/g,Zs=typeof reportError==\"function\"?reportError:function(le){if(typeof window==\"object\"&&typeof window.ErrorEvent==\"function\"){var Te=new window.ErrorEvent(\"error\",{bubbles:!0,cancelable:!0,message:typeof le==\"object\"&&le!==null&&typeof le.message==\"string\"?String(le.message):String(le),error:le});if(!window.dispatchEvent(Te))return}else if(typeof process==\"object\"&&typeof process.emit==\"function\"){process.emit(\"uncaughtException\",le);return}console.error(le)},Pr=!1,vr=null,hi=0,er=!1,wr=!1,Ri=typeof queueMicrotask==\"function\"?function(le){queueMicrotask(function(){return queueMicrotask(le)})}:V;Ge=Object.freeze({__proto__:null,c:function(le){return Z().useMemoCache(le)}}),nr.Children={map:ne,forEach:function(le,Te,xt){ne(le,function(){Te.apply(this,arguments)},xt)},count:function(le){var Te=0;return ne(le,function(){Te++}),Te},toArray:function(le){return ne(le,function(Te){return Te})||[]},only:function(le){if(!R(le))throw Error(\"React.Children.only expected to receive a single React element child.\");return le}},nr.Component=r,nr.Fragment=B,nr.Profiler=q,nr.PureComponent=i,nr.StrictMode=j,nr.Suspense=X,nr.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=Ze,nr.__COMPILER_RUNTIME=Ge,nr.act=function(le){var Te=Ze.actQueue,xt=hi;hi++;var tt=Ze.actQueue=Te!==null?Te:[],It=!1;try{var hn=le()}catch(bn){Ze.thrownErrors.push(bn)}if(0<Ze.thrownErrors.length)throw F(Te,xt),le=$(Ze.thrownErrors),Ze.thrownErrors.length=0,le;if(hn!==null&&typeof hn==\"object\"&&typeof hn.then==\"function\"){var Dt=hn;return Ri(function(){It||er||(er=!0,console.error(\"You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);\"))}),{then:function(bn,Fn){It=!0,Dt.then(function(en){if(F(Te,xt),xt===0){try{O(tt),V(function(){return _(en,bn,Fn)})}catch(jr){Ze.thrownErrors.push(jr)}if(0<Ze.thrownErrors.length){var ni=$(Ze.thrownErrors);Ze.thrownErrors.length=0,Fn(ni)}}else bn(en)},function(en){F(Te,xt),0<Ze.thrownErrors.length&&(en=$(Ze.thrownErrors),Ze.thrownErrors.length=0),Fn(en)})}}}var sn=hn;if(F(Te,xt),xt===0&&(O(tt),tt.length!==0&&Ri(function(){It||er||(er=!0,console.error(\"A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\\\\n\\\\nawait act(() => ...)\"))}),Ze.actQueue=null),0<Ze.thrownErrors.length)throw le=$(Ze.thrownErrors),Ze.thrownErrors.length=0,le;return{then:function(bn,Fn){It=!0,xt===0?(Ze.actQueue=tt,V(function(){return _(sn,bn,Fn)})):bn(sn)}}},nr.cache=function(le){return function(){return le.apply(null,arguments)}},nr.captureOwnerStack=function(){var le=Ze.getCurrentStack;return le===null?null:le()},nr.cloneElement=function(le,Te,xt){if(le==null)throw Error(\"The argument must be a React element, but you passed \"+le+\".\");var tt=qe({},le.props),It=le.key,hn=le._owner;if(Te!=null){var Dt;e:{if(rn.call(Te,\"ref\")&&(Dt=Object.getOwnPropertyDescriptor(Te,\"ref\").get)&&Dt.isReactWarning){Dt=!1;break e}Dt=Te.ref!==void 0}Dt&&(hn=h()),g(Te)&&(c(Te.key),It=\"\"+Te.key);for(sn in Te)!rn.call(Te,sn)||sn===\"key\"||sn===\"__self\"||sn===\"__source\"||sn===\"ref\"&&Te.ref===void 0||(tt[sn]=Te[sn])}var sn=arguments.length-2;if(sn===1)tt.children=xt;else if(1<sn){Dt=Array(sn);for(var bn=0;bn<sn;bn++)Dt[bn]=arguments[bn+2];tt.children=Dt}for(tt=C(le.type,It,void 0,void 0,hn,tt,le._debugStack,le._debugTask),It=2;It<arguments.length;It++)hn=arguments[It],R(hn)&&hn._store&&(hn._store.validated=1);return tt},nr.createContext=function(le){return le={$$typeof:I,_currentValue:le,_currentValue2:le,_threadCount:0,Provider:null,Consumer:null},le.Provider=le,le.Consumer={$$typeof:H,_context:le},le._currentRenderer=null,le._currentRenderer2=null,le},nr.createElement=function(le,Te,xt){for(var tt=2;tt<arguments.length;tt++){var It=arguments[tt];R(It)&&It._store&&(It._store.validated=1)}if(tt={},It=null,Te!=null)for(bn in Mt||!(\"__self\"in Te)||\"key\"in Te||(Mt=!0,console.warn(\"Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform\")),g(Te)&&(c(Te.key),It=\"\"+Te.key),Te)rn.call(Te,bn)&&bn!==\"key\"&&bn!==\"__self\"&&bn!==\"__source\"&&(tt[bn]=Te[bn]);var hn=arguments.length-2;if(hn===1)tt.children=xt;else if(1<hn){for(var Dt=Array(hn),sn=0;sn<hn;sn++)Dt[sn]=arguments[sn+2];Object.freeze&&Object.freeze(Dt),tt.children=Dt}if(le&&le.defaultProps)for(bn in hn=le.defaultProps,hn)tt[bn]===void 0&&(tt[bn]=hn[bn]);It&&b(tt,typeof le==\"function\"?le.displayName||le.name||\"Unknown\":le);var bn=1e4>Ze.recentlyCreatedOwnerStacks++;return C(le,It,void 0,void 0,h(),tt,bn?Error(\"react-stack-top-frame\"):Wt,bn?zt(d(le)):zn)},nr.createRef=function(){var le={current:null};return Object.seal(le),le},nr.forwardRef=function(le){le!=null&&le.$$typeof===se?console.error(\"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).\"):typeof le!=\"function\"?console.error(\"forwardRef requires a render function but was given %s.\",le===null?\"null\":typeof le):le.length!==0&&le.length!==2&&console.error(\"forwardRef render functions accept exactly two parameters: props and ref. %s\",le.length===1?\"Did you forget to use the ref parameter?\":\"Any additional parameter will be undefined.\"),le!=null&&le.defaultProps!=null&&console.error(\"forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?\");var Te={$$typeof:U,render:le},xt;return Object.defineProperty(Te,\"displayName\",{enumerable:!1,configurable:!0,get:function(){return xt},set:function(tt){xt=tt,le.name||le.displayName||(Object.defineProperty(le,\"name\",{value:tt}),le.displayName=tt)}}),Te},nr.isValidElement=R,nr.lazy=function(le){return{$$typeof:pe,_payload:{_status:-1,_result:le},_init:ie}},nr.memo=function(le,Te){le==null&&console.error(\"memo: The first argument must be a component. Instead received: %s\",le===null?\"null\":typeof le),Te={$$typeof:se,type:le,compare:Te===void 0?null:Te};var xt;return Object.defineProperty(Te,\"displayName\",{enumerable:!1,configurable:!0,get:function(){return xt},set:function(tt){xt=tt,le.name||le.displayName||(Object.defineProperty(le,\"name\",{value:tt}),le.displayName=tt)}}),Te},nr.startTransition=function(le){var Te=Ze.T,xt={};Ze.T=xt,xt._updatedFibers=new Set;try{var tt=le(),It=Ze.S;It!==null&&It(xt,tt),typeof tt==\"object\"&&tt!==null&&typeof tt.then==\"function\"&&tt.then(ae,Zs)}catch(hn){Zs(hn)}finally{Te===null&&xt._updatedFibers&&(le=xt._updatedFibers.size,xt._updatedFibers.clear(),10<le&&console.warn(\"Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.\")),Ze.T=Te}},nr.unstable_useCacheRefresh=function(){return Z().useCacheRefresh()},nr.use=function(le){return Z().use(le)},nr.useActionState=function(le,Te,xt){return Z().useActionState(le,Te,xt)},nr.useCallback=function(le,Te){return Z().useCallback(le,Te)},nr.useContext=function(le){var Te=Z();return le.$$typeof===H&&console.error(\"Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?\"),Te.useContext(le)},nr.useDebugValue=function(le,Te){return Z().useDebugValue(le,Te)},nr.useDeferredValue=function(le,Te){return Z().useDeferredValue(le,Te)},nr.useEffect=function(le,Te,xt){le==null&&console.warn(\"React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?\");var tt=Z();if(typeof xt==\"function\")throw Error(\"useEffect CRUD overload is not enabled in this build of React.\");return tt.useEffect(le,Te)},nr.useId=function(){return Z().useId()},nr.useImperativeHandle=function(le,Te,xt){return Z().useImperativeHandle(le,Te,xt)},nr.useInsertionEffect=function(le,Te){return le==null&&console.warn(\"React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?\"),Z().useInsertionEffect(le,Te)},nr.useLayoutEffect=function(le,Te){return le==null&&console.warn(\"React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?\"),Z().useLayoutEffect(le,Te)},nr.useMemo=function(le,Te){return Z().useMemo(le,Te)},nr.useOptimistic=function(le,Te){return Z().useOptimistic(le,Te)},nr.useReducer=function(le,Te,xt){return Z().useReducer(le,Te,xt)},nr.useRef=function(le){return Z().useRef(le)},nr.useState=function(le){return Z().useState(le)},nr.useSyncExternalStore=function(le,Te,xt){return Z().useSyncExternalStore(le,Te,xt)},nr.useTransition=function(){return Z().useTransition()},nr.version=\"19.1.0\",typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var et=be((pbt,ede)=>{\"use strict\";p();ede.exports=Xue()});var tde=be(ud=>{\"use strict\";p();(function(){function t(){}function e(m){return\"\"+m}function n(m,g,b){var E=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{e(E);var C=!1}catch{C=!0}return C&&(console.error(\"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",typeof Symbol==\"function\"&&Symbol.toStringTag&&E[Symbol.toStringTag]||E.constructor.name||\"Object\"),e(E)),{$$typeof:d,key:E==null?null:\"\"+E,children:m,containerInfo:g,implementation:b}}function r(m,g){if(m===\"font\")return\"\";if(typeof g==\"string\")return g===\"use-credentials\"?g:\"\"}function o(m){return m===null?\"`null`\":m===void 0?\"`undefined`\":m===\"\"?\"an empty string\":\\'something with type \"\\'+typeof m+\\'\"\\'}function i(m){return m===null?\"`null`\":m===void 0?\"`undefined`\":m===\"\"?\"an empty string\":typeof m==\"string\"?JSON.stringify(m):typeof m==\"number\"?\"`\"+m+\"`\":\\'something with type \"\\'+typeof m+\\'\"\\'}function a(){var m=h.H;return m===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),m}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var c=et(),u={d:{f:t,r:function(){throw Error(\"Invalid form element. requestFormReset must be passed a form that was rendered by React.\")},D:t,C:t,L:t,m:t,X:t,S:t,M:t},p:0,findDOMNode:null},d=Symbol.for(\"react.portal\"),h=c.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;typeof Map==\"function\"&&Map.prototype!=null&&typeof Map.prototype.forEach==\"function\"&&typeof Set==\"function\"&&Set.prototype!=null&&typeof Set.prototype.clear==\"function\"&&typeof Set.prototype.forEach==\"function\"||console.error(\"React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\"),ud.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=u,ud.createPortal=function(m,g){var b=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!g||g.nodeType!==1&&g.nodeType!==9&&g.nodeType!==11)throw Error(\"Target container is not a DOM element.\");return n(m,g,null,b)},ud.flushSync=function(m){var g=h.T,b=u.p;try{if(h.T=null,u.p=2,m)return m()}finally{h.T=g,u.p=b,u.d.f()&&console.error(\"flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task.\")}},ud.preconnect=function(m,g){typeof m==\"string\"&&m?g!=null&&typeof g!=\"object\"?console.error(\"ReactDOM.preconnect(): Expected the `options` argument (second) to be an object but encountered %s instead. The only supported option at this time is `crossOrigin` which accepts a string.\",i(g)):g!=null&&typeof g.crossOrigin!=\"string\"&&console.error(\"ReactDOM.preconnect(): Expected the `crossOrigin` option (second argument) to be a string but encountered %s instead. Try removing this option or passing a string value instead.\",o(g.crossOrigin)):console.error(\"ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.\",o(m)),typeof m==\"string\"&&(g?(g=g.crossOrigin,g=typeof g==\"string\"?g===\"use-credentials\"?g:\"\":void 0):g=null,u.d.C(m,g))},ud.prefetchDNS=function(m){if(typeof m!=\"string\"||!m)console.error(\"ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.\",o(m));else if(1<arguments.length){var g=arguments[1];typeof g==\"object\"&&g.hasOwnProperty(\"crossOrigin\")?console.error(\"ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. It looks like the you are attempting to set a crossOrigin property for this DNS lookup hint. Browsers do not perform DNS queries using CORS and setting this attribute on the resource hint has no effect. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.\",i(g)):console.error(\"ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.\",i(g))}typeof m==\"string\"&&u.d.D(m)},ud.preinit=function(m,g){if(typeof m==\"string\"&&m?g==null||typeof g!=\"object\"?console.error(\"ReactDOM.preinit(): Expected the `options` argument (second) to be an object with an `as` property describing the type of resource to be preinitialized but encountered %s instead.\",i(g)):g.as!==\"style\"&&g.as!==\"script\"&&console.error(\\'ReactDOM.preinit(): Expected the `as` property in the `options` argument (second) to contain a valid value describing the type of resource to be preinitialized but encountered %s instead. Valid values for `as` are \"style\" and \"script\".\\',i(g.as)):console.error(\"ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.\",o(m)),typeof m==\"string\"&&g&&typeof g.as==\"string\"){var b=g.as,E=r(b,g.crossOrigin),C=typeof g.integrity==\"string\"?g.integrity:void 0,T=typeof g.fetchPriority==\"string\"?g.fetchPriority:void 0;b===\"style\"?u.d.S(m,typeof g.precedence==\"string\"?g.precedence:void 0,{crossOrigin:E,integrity:C,fetchPriority:T}):b===\"script\"&&u.d.X(m,{crossOrigin:E,integrity:C,fetchPriority:T,nonce:typeof g.nonce==\"string\"?g.nonce:void 0})}},ud.preinitModule=function(m,g){var b=\"\";if(typeof m==\"string\"&&m||(b+=\" The `href` argument encountered was \"+o(m)+\".\"),g!==void 0&&typeof g!=\"object\"?b+=\" The `options` argument encountered was \"+o(g)+\".\":g&&\"as\"in g&&g.as!==\"script\"&&(b+=\" The `as` option encountered was \"+i(g.as)+\".\"),b)console.error(\"ReactDOM.preinitModule(): Expected up to two arguments, a non-empty `href` string and, optionally, an `options` object with a valid `as` property.%s\",b);else switch(b=g&&typeof g.as==\"string\"?g.as:\"script\",b){case\"script\":break;default:b=i(b),console.error(\\'ReactDOM.preinitModule(): Currently the only supported \"as\" type for this function is \"script\" but received \"%s\" instead. This warning was generated for `href` \"%s\". In the future other module types will be supported, aligning with the import-attributes proposal. Learn more here: (https://github.com/tc39/proposal-import-attributes)\\',b,m)}typeof m==\"string\"&&(typeof g==\"object\"&&g!==null?(g.as==null||g.as===\"script\")&&(b=r(g.as,g.crossOrigin),u.d.M(m,{crossOrigin:b,integrity:typeof g.integrity==\"string\"?g.integrity:void 0,nonce:typeof g.nonce==\"string\"?g.nonce:void 0})):g==null&&u.d.M(m))},ud.preload=function(m,g){var b=\"\";if(typeof m==\"string\"&&m||(b+=\" The `href` argument encountered was \"+o(m)+\".\"),g==null||typeof g!=\"object\"?b+=\" The `options` argument encountered was \"+o(g)+\".\":typeof g.as==\"string\"&&g.as||(b+=\" The `as` option encountered was \"+o(g.as)+\".\"),b&&console.error(\\'ReactDOM.preload(): Expected two arguments, a non-empty `href` string and an `options` object with an `as` property valid for a `<link rel=\"preload\" as=\"...\" />` tag.%s\\',b),typeof m==\"string\"&&typeof g==\"object\"&&g!==null&&typeof g.as==\"string\"){b=g.as;var E=r(b,g.crossOrigin);u.d.L(m,b,{crossOrigin:E,integrity:typeof g.integrity==\"string\"?g.integrity:void 0,nonce:typeof g.nonce==\"string\"?g.nonce:void 0,type:typeof g.type==\"string\"?g.type:void 0,fetchPriority:typeof g.fetchPriority==\"string\"?g.fetchPriority:void 0,referrerPolicy:typeof g.referrerPolicy==\"string\"?g.referrerPolicy:void 0,imageSrcSet:typeof g.imageSrcSet==\"string\"?g.imageSrcSet:void 0,imageSizes:typeof g.imageSizes==\"string\"?g.imageSizes:void 0,media:typeof g.media==\"string\"?g.media:void 0})}},ud.preloadModule=function(m,g){var b=\"\";typeof m==\"string\"&&m||(b+=\" The `href` argument encountered was \"+o(m)+\".\"),g!==void 0&&typeof g!=\"object\"?b+=\" The `options` argument encountered was \"+o(g)+\".\":g&&\"as\"in g&&typeof g.as!=\"string\"&&(b+=\" The `as` option encountered was \"+o(g.as)+\".\"),b&&console.error(\\'ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `<link rel=\"modulepreload\" as=\"...\" />` tag.%s\\',b),typeof m==\"string\"&&(g?(b=r(g.as,g.crossOrigin),u.d.m(m,{as:typeof g.as==\"string\"&&g.as!==\"script\"?g.as:void 0,crossOrigin:b,integrity:typeof g.integrity==\"string\"?g.integrity:void 0})):u.d.m(m))},ud.requestFormReset=function(m){u.d.r(m)},ud.unstable_batchedUpdates=function(m,g){return m(g)},ud.useFormState=function(m,g,b){return a().useFormState(m,g,b)},ud.useFormStatus=function(){return a().useHostTransitionStatus()},ud.version=\"19.1.0\",typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var I0=be((bbt,nde)=>{\"use strict\";p();nde.exports=tde()});var rde=be(YN=>{\"use strict\";p();(function(){function t(s,l){for(s=s.memoizedState;s!==null&&0<l;)s=s.next,l--;return s}function e(s,l,f,y){if(f>=l.length)return y;var v=l[f],A=pl(s)?s.slice():pr({},s);return A[v]=e(s[v],l,f+1,y),A}function n(s,l,f){if(l.length!==f.length)console.warn(\"copyWithRename() expects paths of the same length\");else{for(var y=0;y<f.length-1;y++)if(l[y]!==f[y]){console.warn(\"copyWithRename() expects paths to be the same except for the deepest key\");return}return r(s,l,f,0)}}function r(s,l,f,y){var v=l[y],A=pl(s)?s.slice():pr({},s);return y+1===l.length?(A[f[y]]=A[v],pl(A)?A.splice(v,1):delete A[v]):A[v]=r(s[v],l,f,y+1),A}function o(s,l,f){var y=l[f],v=pl(s)?s.slice():pr({},s);return f+1===l.length?(pl(v)?v.splice(y,1):delete v[y],v):(v[y]=o(s[y],l,f+1),v)}function i(){return!1}function a(){return null}function c(){}function u(){console.error(\"Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks\")}function d(){console.error(\"Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().\")}function h(){}function m(s){var l=[];return s.forEach(function(f){l.push(f)}),l.sort().join(\", \")}function g(s,l,f,y){return new XT(s,l,f,y)}function b(s,l){s.context===yw&&(B$(s.current,2,l,s,null,null),bt())}function E(s,l){if(xp!==null){var f=l.staleFamilies;l=l.updatedFamilies,Ki(),Yr(s.current,l,f),bt()}}function C(s){xp=s}function T(s){return!(!s||s.nodeType!==1&&s.nodeType!==9&&s.nodeType!==11)}function R(s){var l=s,f=s;if(s.alternate)for(;l.return;)l=l.return;else{s=l;do l=s,(l.flags&4098)!==0&&(f=l.return),s=l.return;while(s)}return l.tag===3?f:null}function L(s){if(s.tag===13){var l=s.memoizedState;if(l===null&&(s=s.alternate,s!==null&&(l=s.memoizedState)),l!==null)return l.dehydrated}return null}function D(s){if(R(s)!==s)throw Error(\"Unable to find node on an unmounted component.\")}function G(s){var l=s.alternate;if(!l){if(l=R(s),l===null)throw Error(\"Unable to find node on an unmounted component.\");return l!==s?null:s}for(var f=s,y=l;;){var v=f.return;if(v===null)break;var A=v.alternate;if(A===null){if(y=v.return,y!==null){f=y;continue}break}if(v.child===A.child){for(A=v.child;A;){if(A===f)return D(v),s;if(A===y)return D(v),l;A=A.sibling}throw Error(\"Unable to find node on an unmounted component.\")}if(f.return!==y.return)f=v,y=A;else{for(var K=!1,te=v.child;te;){if(te===f){K=!0,f=v,y=A;break}if(te===y){K=!0,y=v,f=A;break}te=te.sibling}if(!K){for(te=A.child;te;){if(te===f){K=!0,f=A,y=v;break}if(te===y){K=!0,y=A,f=v;break}te=te.sibling}if(!K)throw Error(\"Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.\")}}if(f.alternate!==y)throw Error(\"Return fibers should always be each others\\' alternates. This error is likely caused by a bug in React. Please file an issue.\")}if(f.tag!==3)throw Error(\"Unable to find node on an unmounted component.\");return f.stateNode.current===f?s:l}function W(s){var l=s.tag;if(l===5||l===26||l===27||l===6)return s;for(s=s.child;s!==null;){if(l=W(s),l!==null)return l;s=s.sibling}return null}function J(s){return s===null||typeof s!=\"object\"?null:(s=Gae&&s[Gae]||s[\"@@iterator\"],typeof s==\"function\"?s:null)}function ne(s){if(s==null)return null;if(typeof s==\"function\")return s.$$typeof===uDe?null:s.displayName||s.name||null;if(typeof s==\"string\")return s;switch(s){case l_:return\"Fragment\";case q$:return\"Profiler\";case JM:return\"StrictMode\";case V$:return\"Suspense\";case $$:return\"SuspenseList\";case K$:return\"Activity\"}if(typeof s==\"object\")switch(typeof s.tag==\"number\"&&console.error(\"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"),s.$$typeof){case c_:return\"Portal\";case hy:return(s.displayName||\"Context\")+\".Provider\";case W$:return(s._context.displayName||\"Context\")+\".Consumer\";case o7:var l=s.render;return s=s.displayName,s||(s=l.displayName||l.name||\"\",s=s!==\"\"?\"ForwardRef(\"+s+\")\":\"ForwardRef\"),s;case XM:return l=s.displayName||null,l!==null?l:ne(s.type)||\"Memo\";case uh:l=s._payload,s=s._init;try{return ne(s(l))}catch{}}return null}function ie(s){return typeof s.tag==\"number\"?Z(s):typeof s.name==\"string\"?s.name:null}function Z(s){var l=s.type;switch(s.tag){case 31:return\"Activity\";case 24:return\"Cache\";case 9:return(l._context.displayName||\"Context\")+\".Consumer\";case 10:return(l.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return s=l.render,s=s.displayName||s.name||\"\",l.displayName||(s!==\"\"?\"ForwardRef(\"+s+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 26:case 27:case 5:return l;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return ne(l);case 8:return l===JM?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";case 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 14:case 15:if(typeof l==\"function\")return l.displayName||l.name||null;if(typeof l==\"string\")return l;break;case 29:if(l=s._debugInfo,l!=null){for(var f=l.length-1;0<=f;f--)if(typeof l[f].name==\"string\")return l[f].name}if(s.return!==null)return Z(s.return)}return null}function ae(s){return{current:s}}function V(s,l){0>Pb?console.error(\"Unexpected pop.\"):(l!==Z$[Pb]&&console.error(\"Unexpected Fiber popped.\"),s.current=G$[Pb],G$[Pb]=null,Z$[Pb]=null,Pb--)}function $(s,l,f){Pb++,G$[Pb]=s.current,Z$[Pb]=f,s.current=l}function F(s){return s===null&&console.error(\"Expected host context to exist. This error is likely caused by a bug in React. Please file an issue.\"),s}function _(s,l){$(hw,l,s),$(i7,s,s),$(fw,null,s);var f=l.nodeType;switch(f){case 9:case 11:f=f===9?\"#document\":\"#fragment\",l=(l=l.documentElement)&&(l=l.namespaceURI)?cy(l):qb;break;default:if(f=l.tagName,l=l.namespaceURI)l=cy(l),l=ef(l,f);else switch(f){case\"svg\":l=W_;break;case\"math\":l=UN;break;default:l=qb}}f=f.toLowerCase(),f=Gh(null,f),f={context:l,ancestorInfo:f},V(fw,s),$(fw,f,s)}function O(s){V(fw,s),V(i7,s),V(hw,s)}function z(){return F(fw.current)}function N(s){s.memoizedState!==null&&$(eN,s,s);var l=F(fw.current),f=s.type,y=ef(l.context,f);f=Gh(l.ancestorInfo,f),y={context:y,ancestorInfo:f},l!==y&&($(i7,s,s),$(fw,y,s))}function B(s){i7.current===s&&(V(fw,s),V(i7,s)),eN.current===s&&(V(eN,s),q7._currentValue=h5)}function j(s){return typeof Symbol==\"function\"&&Symbol.toStringTag&&s[Symbol.toStringTag]||s.constructor.name||\"Object\"}function q(s){try{return H(s),!1}catch{return!0}}function H(s){return\"\"+s}function I(s,l){if(q(s))return console.error(\"The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.\",l,j(s)),H(s)}function U(s,l){if(q(s))return console.error(\"The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.\",l,j(s)),H(s)}function X(s){if(q(s))return console.error(\"Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before using it here.\",j(s)),H(s)}function ee(s){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>\"u\")return!1;var l=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(l.isDisabled)return!0;if(!l.supportsFiber)return console.error(\"The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://react.dev/link/react-devtools\"),!0;try{d_=l.inject(s),tu=l}catch(f){console.error(\"React instrumentation encountered an error: %s.\",f)}return!!l.checkDCE}function se(s){if(typeof yDe==\"function\"&&bDe(s),tu&&typeof tu.setStrictMode==\"function\")try{tu.setStrictMode(d_,s)}catch(l){my||(my=!0,console.error(\"React instrumentation encountered an error: %s\",l))}}function pe(s){Vt=s}function ye(){Vt!==null&&typeof Vt.markCommitStopped==\"function\"&&Vt.markCommitStopped()}function xe(s){Vt!==null&&typeof Vt.markComponentRenderStarted==\"function\"&&Vt.markComponentRenderStarted(s)}function _e(){Vt!==null&&typeof Vt.markComponentRenderStopped==\"function\"&&Vt.markComponentRenderStopped()}function Me(s){Vt!==null&&typeof Vt.markRenderStarted==\"function\"&&Vt.markRenderStarted(s)}function qe(){Vt!==null&&typeof Vt.markRenderStopped==\"function\"&&Vt.markRenderStopped()}function wt(s,l){Vt!==null&&typeof Vt.markStateUpdateScheduled==\"function\"&&Vt.markStateUpdateScheduled(s,l)}function Ge(s){return s>>>=0,s===0?32:31-(vDe(s)/wDe|0)|0}function ht(s){if(s&1)return\"SyncHydrationLane\";if(s&2)return\"Sync\";if(s&4)return\"InputContinuousHydration\";if(s&8)return\"InputContinuous\";if(s&16)return\"DefaultHydration\";if(s&32)return\"Default\";if(s&128)return\"TransitionHydration\";if(s&4194048)return\"Transition\";if(s&62914560)return\"Retry\";if(s&67108864)return\"SelectiveHydration\";if(s&134217728)return\"IdleHydration\";if(s&268435456)return\"Idle\";if(s&536870912)return\"Offscreen\";if(s&1073741824)return\"Deferred\"}function Ct(s){var l=s&42;if(l!==0)return l;switch(s&-s){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return s&4194048;case 4194304:case 8388608:case 16777216:case 33554432:return s&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return console.error(\"Should have found matching lanes. This is a bug in React.\"),s}}function dt(s,l,f){var y=s.pendingLanes;if(y===0)return 0;var v=0,A=s.suspendedLanes,K=s.pingedLanes;s=s.warmLanes;var te=y&134217727;return te!==0?(y=te&~A,y!==0?v=Ct(y):(K&=te,K!==0?v=Ct(K):f||(f=te&~s,f!==0&&(v=Ct(f))))):(te=y&~A,te!==0?v=Ct(te):K!==0?v=Ct(K):f||(f=y&~s,f!==0&&(v=Ct(f)))),v===0?0:l!==0&&l!==v&&(l&A)===0&&(A=v&-v,f=l&-l,A>=f||A===32&&(f&4194048)!==0)?l:v}function Ze(s,l){return(s.pendingLanes&~(s.suspendedLanes&~s.pingedLanes)&l)===0}function rn(s,l){switch(s){case 1:case 2:case 4:case 8:case 64:return l+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return l+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return console.error(\"Should have found matching lanes. This is a bug in React.\"),-1}}function zt(){var s=tN;return tN<<=1,(tN&4194048)===0&&(tN=256),s}function Bt(){var s=nN;return nN<<=1,(nN&62914560)===0&&(nN=4194304),s}function Mt(s){for(var l=[],f=0;31>f;f++)l.push(s);return l}function qt(s,l){s.pendingLanes|=l,l!==268435456&&(s.suspendedLanes=0,s.pingedLanes=0,s.warmLanes=0)}function Wt(s,l,f,y,v,A){var K=s.pendingLanes;s.pendingLanes=f,s.suspendedLanes=0,s.pingedLanes=0,s.warmLanes=0,s.expiredLanes&=f,s.entangledLanes&=f,s.errorRecoveryDisabledLanes&=f,s.shellSuspendCounter=0;var te=s.entanglements,fe=s.expirationTimes,me=s.hiddenUpdates;for(f=K&~f;0<f;){var Ue=31-nd(f),Ke=1<<Ue;te[Ue]=0,fe[Ue]=-1;var Fe=me[Ue];if(Fe!==null)for(me[Ue]=null,Ue=0;Ue<Fe.length;Ue++){var Qe=Fe[Ue];Qe!==null&&(Qe.lane&=-536870913)}f&=~Ke}y!==0&&zn(s,y,0),A!==0&&v===0&&s.tag!==0&&(s.suspendedLanes|=A&~(K&~l))}function zn(s,l,f){s.pendingLanes|=l,s.suspendedLanes&=~l;var y=31-nd(l);s.entangledLanes|=l,s.entanglements[y]=s.entanglements[y]|1073741824|f&4194090}function Mn(s,l){var f=s.entangledLanes|=l;for(s=s.entanglements;f;){var y=31-nd(f),v=1<<y;v&l|s[y]&l&&(s[y]|=l),f&=~v}}function br(s){switch(s){case 2:s=1;break;case 8:s=4;break;case 32:s=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:s=128;break;case 268435456:s=134217728;break;default:s=0}return s}function Zs(s,l,f){if(S0)for(s=s.pendingUpdatersLaneMap;0<f;){var y=31-nd(f),v=1<<y;s[y].add(l),f&=~v}}function Pr(s,l){if(S0)for(var f=s.pendingUpdatersLaneMap,y=s.memoizedUpdaters;0<l;){var v=31-nd(l);s=1<<v,v=f[v],0<v.size&&(v.forEach(function(A){var K=A.alternate;K!==null&&y.has(K)||y.add(A)}),v.clear()),l&=~s}}function vr(s){return s&=-s,dh!==0&&dh<s?k0!==0&&k0<s?(s&134217727)!==0?gy:rN:k0:dh}function hi(){var s=Io.p;return s!==0?s:(s=window.event,s===void 0?gy:Hae(s.type))}function er(s,l){var f=Io.p;try{return Io.p=s,l()}finally{Io.p=f}}function wr(s){delete s[nu],delete s[cf],delete s[eK],delete s[xDe],delete s[EDe]}function Ri(s){var l=s[nu];if(l)return l;for(var f=s.parentNode;f;){if(l=f[mw]||f[nu]){if(f=l.alternate,l.child!==null||f!==null&&f.child!==null)for(s=WE(s);s!==null;){if(f=s[nu])return f;s=WE(s)}return l}s=f,f=s.parentNode}return null}function le(s){if(s=s[nu]||s[mw]){var l=s.tag;if(l===5||l===6||l===13||l===26||l===27||l===3)return s}return null}function Te(s){var l=s.tag;if(l===5||l===26||l===27||l===6)return s.stateNode;throw Error(\"getNodeFromInstance: Invalid argument.\")}function xt(s){var l=s[Zae];return l||(l=s[Zae]={hoistableStyles:new Map,hoistableScripts:new Map}),l}function tt(s){s[s7]=!0}function It(s,l){hn(s,l),hn(s+\"Capture\",l)}function hn(s,l){GE[s]&&console.error(\"EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.\",s),GE[s]=l;var f=s.toLowerCase();for(tK[f]=s,s===\"onDoubleClick\"&&(tK.ondblclick=s),s=0;s<l.length;s++)Yae.add(l[s])}function Dt(s,l){SDe[l.type]||l.onChange||l.onInput||l.readOnly||l.disabled||l.value==null||console.error(s===\"select\"?\"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set `onChange`.\":\"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`.\"),l.onChange||l.readOnly||l.disabled||l.checked==null||console.error(\"You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.\")}function sn(s){return Mb.call(Jae,s)?!0:Mb.call(Qae,s)?!1:kDe.test(s)?Jae[s]=!0:(Qae[s]=!0,console.error(\"Invalid attribute name: `%s`\",s),!1)}function bn(s,l,f){if(sn(l)){if(!s.hasAttribute(l)){switch(typeof f){case\"symbol\":case\"object\":return f;case\"function\":return f;case\"boolean\":if(f===!1)return f}return f===void 0?void 0:null}return s=s.getAttribute(l),s===\"\"&&f===!0?!0:(I(f,l),s===\"\"+f?f:s)}}function Fn(s,l,f){if(sn(l))if(f===null)s.removeAttribute(l);else{switch(typeof f){case\"undefined\":case\"function\":case\"symbol\":s.removeAttribute(l);return;case\"boolean\":var y=l.toLowerCase().slice(0,5);if(y!==\"data-\"&&y!==\"aria-\"){s.removeAttribute(l);return}}I(f,l),s.setAttribute(l,\"\"+f)}}function en(s,l,f){if(f===null)s.removeAttribute(l);else{switch(typeof f){case\"undefined\":case\"function\":case\"symbol\":case\"boolean\":s.removeAttribute(l);return}I(f,l),s.setAttribute(l,\"\"+f)}}function ni(s,l,f,y){if(y===null)s.removeAttribute(f);else{switch(typeof y){case\"undefined\":case\"function\":case\"symbol\":case\"boolean\":s.removeAttribute(f);return}I(y,f),s.setAttributeNS(l,f,\"\"+y)}}function jr(){}function Eo(){if(a7===0){Xae=console.log,ece=console.info,tce=console.warn,nce=console.error,rce=console.group,oce=console.groupCollapsed,ice=console.groupEnd;var s={configurable:!0,enumerable:!0,value:jr,writable:!0};Object.defineProperties(console,{info:s,log:s,warn:s,error:s,group:s,groupCollapsed:s,groupEnd:s})}a7++}function zu(){if(a7--,a7===0){var s={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:pr({},s,{value:Xae}),info:pr({},s,{value:ece}),warn:pr({},s,{value:tce}),error:pr({},s,{value:nce}),group:pr({},s,{value:rce}),groupCollapsed:pr({},s,{value:oce}),groupEnd:pr({},s,{value:ice})})}0>a7&&console.error(\"disabledDepth fell below zero. This is a bug in React. Please file an issue.\")}function tr(s){if(nK===void 0)try{throw Error()}catch(f){var l=f.stack.trim().match(/\\\\n( *(at )?)/);nK=l&&l[1]||\"\",sce=-1<f.stack.indexOf(`\\n    at`)?\" (<anonymous>)\":-1<f.stack.indexOf(\"@\")?\"@unknown:0:0\":\"\"}return`\\n`+nK+s+sce}function dr(s,l){if(!s||rK)return\"\";var f=oK.get(s);if(f!==void 0)return f;rK=!0,f=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var y=null;y=$e.H,$e.H=null,Eo();try{var v={DetermineComponentFrameRoot:function(){try{if(l){var Fe=function(){throw Error()};if(Object.defineProperty(Fe.prototype,\"props\",{set:function(){throw Error()}}),typeof Reflect==\"object\"&&Reflect.construct){try{Reflect.construct(Fe,[])}catch(tn){var Qe=tn}Reflect.construct(s,[],Fe)}else{try{Fe.call()}catch(tn){Qe=tn}s.call(Fe.prototype)}}else{try{throw Error()}catch(tn){Qe=tn}(Fe=s())&&typeof Fe.catch==\"function\"&&Fe.catch(function(){})}}catch(tn){if(tn&&Qe&&typeof tn.stack==\"string\")return[tn.stack,Qe.stack]}return[null,null]}};v.DetermineComponentFrameRoot.displayName=\"DetermineComponentFrameRoot\";var A=Object.getOwnPropertyDescriptor(v.DetermineComponentFrameRoot,\"name\");A&&A.configurable&&Object.defineProperty(v.DetermineComponentFrameRoot,\"name\",{value:\"DetermineComponentFrameRoot\"});var K=v.DetermineComponentFrameRoot(),te=K[0],fe=K[1];if(te&&fe){var me=te.split(`\\n`),Ue=fe.split(`\\n`);for(K=A=0;A<me.length&&!me[A].includes(\"DetermineComponentFrameRoot\");)A++;for(;K<Ue.length&&!Ue[K].includes(\"DetermineComponentFrameRoot\");)K++;if(A===me.length||K===Ue.length)for(A=me.length-1,K=Ue.length-1;1<=A&&0<=K&&me[A]!==Ue[K];)K--;for(;1<=A&&0<=K;A--,K--)if(me[A]!==Ue[K]){if(A!==1||K!==1)do if(A--,K--,0>K||me[A]!==Ue[K]){var Ke=`\\n`+me[A].replace(\" at new \",\" at \");return s.displayName&&Ke.includes(\"<anonymous>\")&&(Ke=Ke.replace(\"<anonymous>\",s.displayName)),typeof s==\"function\"&&oK.set(s,Ke),Ke}while(1<=A&&0<=K);break}}}finally{rK=!1,$e.H=y,zu(),Error.prepareStackTrace=f}return me=(me=s?s.displayName||s.name:\"\")?tr(me):\"\",typeof s==\"function\"&&oK.set(s,me),me}function Bl(s){var l=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,s=s.stack,Error.prepareStackTrace=l,s.startsWith(`Error: react-stack-top-frame\\n`)&&(s=s.slice(29)),l=s.indexOf(`\\n`),l!==-1&&(s=s.slice(l+1)),l=s.indexOf(\"react-stack-bottom-frame\"),l!==-1&&(l=s.lastIndexOf(`\\n`,l)),l!==-1)s=s.slice(0,l);else return\"\";return s}function vn(s){switch(s.tag){case 26:case 27:case 5:return tr(s.type);case 16:return tr(\"Lazy\");case 13:return tr(\"Suspense\");case 19:return tr(\"SuspenseList\");case 0:case 15:return dr(s.type,!1);case 11:return dr(s.type.render,!1);case 1:return dr(s.type,!0);case 31:return tr(\"Activity\");default:return\"\"}}function zr(s){try{var l=\"\";do{l+=vn(s);var f=s._debugInfo;if(f)for(var y=f.length-1;0<=y;y--){var v=f[y];if(typeof v.name==\"string\"){var A=l,K=v.env,te=tr(v.name+(K?\" [\"+K+\"]\":\"\"));l=A+te}}s=s.return}while(s);return l}catch(fe){return`\\nError generating stack: `+fe.message+`\\n`+fe.stack}}function Dd(s){return(s=s?s.displayName||s.name:\"\")?tr(s):\"\"}function Mr(){if(fh===null)return null;var s=fh._debugOwner;return s!=null?ie(s):null}function So(){if(fh===null)return\"\";var s=fh;try{var l=\"\";switch(s.tag===6&&(s=s.return),s.tag){case 26:case 27:case 5:l+=tr(s.type);break;case 13:l+=tr(\"Suspense\");break;case 19:l+=tr(\"SuspenseList\");break;case 31:l+=tr(\"Activity\");break;case 30:case 0:case 15:case 1:s._debugOwner||l!==\"\"||(l+=Dd(s.type));break;case 11:s._debugOwner||l!==\"\"||(l+=Dd(s.type.render))}for(;s;)if(typeof s.tag==\"number\"){var f=s;s=f._debugOwner;var y=f._debugStack;s&&y&&(typeof y!=\"string\"&&(f._debugStack=y=Bl(y)),y!==\"\"&&(l+=`\\n`+y))}else if(s.debugStack!=null){var v=s.debugStack;(s=s.owner)&&v&&(l+=`\\n`+Bl(v))}else break;var A=l}catch(K){A=`\\nError generating stack: `+K.message+`\\n`+K.stack}return A}function jt(s,l,f,y,v,A,K){var te=fh;xr(s);try{return s!==null&&s._debugTask?s._debugTask.run(l.bind(null,f,y,v,A,K)):l(f,y,v,A,K)}finally{xr(te)}throw Error(\"runWithFiberInDEV should never be called in production. This is a bug in React.\")}function xr(s){$e.getCurrentStack=s===null?null:So,yy=!1,fh=s}function En(s){switch(typeof s){case\"bigint\":case\"boolean\":case\"number\":case\"string\":case\"undefined\":return s;case\"object\":return X(s),s;default:return\"\"}}function Hu(s){var l=s.type;return(s=s.nodeName)&&s.toLowerCase()===\"input\"&&(l===\"checkbox\"||l===\"radio\")}function Zr(s){var l=Hu(s)?\"checked\":\"value\",f=Object.getOwnPropertyDescriptor(s.constructor.prototype,l);X(s[l]);var y=\"\"+s[l];if(!s.hasOwnProperty(l)&&typeof f<\"u\"&&typeof f.get==\"function\"&&typeof f.set==\"function\"){var v=f.get,A=f.set;return Object.defineProperty(s,l,{configurable:!0,get:function(){return v.call(this)},set:function(K){X(K),y=\"\"+K,A.call(this,K)}}),Object.defineProperty(s,l,{enumerable:f.enumerable}),{getValue:function(){return y},setValue:function(K){X(K),y=\"\"+K},stopTracking:function(){s._valueTracker=null,delete s[l]}}}}function Cr(s){s._valueTracker||(s._valueTracker=Zr(s))}function Ys(s){if(!s)return!1;var l=s._valueTracker;if(!l)return!0;var f=l.getValue(),y=\"\";return s&&(y=Hu(s)?s.checked?\"true\":\"false\":s.value),s=y,s!==f?(l.setValue(s),!0):!1}function Zc(s){if(s=s||(typeof document<\"u\"?document:void 0),typeof s>\"u\")return null;try{return s.activeElement||s.body}catch{return s.body}}function Zo(s){return s.replace(_De,function(l){return\"\\\\\\\\\"+l.charCodeAt(0).toString(16)+\" \"})}function qu(s,l){l.checked===void 0||l.defaultChecked===void 0||cce||(console.error(\"%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components\",Mr()||\"A component\",l.type),cce=!0),l.value===void 0||l.defaultValue===void 0||ace||(console.error(\"%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components\",Mr()||\"A component\",l.type),ace=!0)}function ts(s,l,f,y,v,A,K,te){s.name=\"\",K!=null&&typeof K!=\"function\"&&typeof K!=\"symbol\"&&typeof K!=\"boolean\"?(I(K,\"type\"),s.type=K):s.removeAttribute(\"type\"),l!=null?K===\"number\"?(l===0&&s.value===\"\"||s.value!=l)&&(s.value=\"\"+En(l)):s.value!==\"\"+En(l)&&(s.value=\"\"+En(l)):K!==\"submit\"&&K!==\"reset\"||s.removeAttribute(\"value\"),l!=null?Yc(s,K,En(l)):f!=null?Yc(s,K,En(f)):y!=null&&s.removeAttribute(\"value\"),v==null&&A!=null&&(s.defaultChecked=!!A),v!=null&&(s.checked=v&&typeof v!=\"function\"&&typeof v!=\"symbol\"),te!=null&&typeof te!=\"function\"&&typeof te!=\"symbol\"&&typeof te!=\"boolean\"?(I(te,\"name\"),s.name=\"\"+En(te)):s.removeAttribute(\"name\")}function Wu(s,l,f,y,v,A,K,te){if(A!=null&&typeof A!=\"function\"&&typeof A!=\"symbol\"&&typeof A!=\"boolean\"&&(I(A,\"type\"),s.type=A),l!=null||f!=null){if(!(A!==\"submit\"&&A!==\"reset\"||l!=null))return;f=f!=null?\"\"+En(f):\"\",l=l!=null?\"\"+En(l):f,te||l===s.value||(s.value=l),s.defaultValue=l}y=y??v,y=typeof y!=\"function\"&&typeof y!=\"symbol\"&&!!y,s.checked=te?s.checked:!!y,s.defaultChecked=!!y,K!=null&&typeof K!=\"function\"&&typeof K!=\"symbol\"&&typeof K!=\"boolean\"&&(I(K,\"name\"),s.name=K)}function Yc(s,l,f){l===\"number\"&&Zc(s.ownerDocument)===s||s.defaultValue===\"\"+f||(s.defaultValue=\"\"+f)}function Ya(s,l){l.value==null&&(typeof l.children==\"object\"&&l.children!==null?H$.Children.forEach(l.children,function(f){f==null||typeof f==\"string\"||typeof f==\"number\"||typeof f==\"bigint\"||uce||(uce=!0,console.error(\"Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>.\"))}):l.dangerouslySetInnerHTML==null||dce||(dce=!0,console.error(\"Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected.\"))),l.selected==null||lce||(console.error(\"Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>.\"),lce=!0)}function Qa(){var s=Mr();return s?`\\n\\nCheck the render method of \\\\``+s+\"`.\":\"\"}function ya(s,l,f,y){if(s=s.options,l){l={};for(var v=0;v<f.length;v++)l[\"$\"+f[v]]=!0;for(f=0;f<s.length;f++)v=l.hasOwnProperty(\"$\"+s[f].value),s[f].selected!==v&&(s[f].selected=v),v&&y&&(s[f].defaultSelected=!0)}else{for(f=\"\"+En(f),l=null,v=0;v<s.length;v++){if(s[v].value===f){s[v].selected=!0,y&&(s[v].defaultSelected=!0);return}l!==null||s[v].disabled||(l=s[v])}l!==null&&(l.selected=!0)}}function Dl(s,l){for(s=0;s<hce.length;s++){var f=hce[s];if(l[f]!=null){var y=pl(l[f]);l.multiple&&!y?console.error(\"The `%s` prop supplied to <select> must be an array if `multiple` is true.%s\",f,Qa()):!l.multiple&&y&&console.error(\"The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.%s\",f,Qa())}}l.value===void 0||l.defaultValue===void 0||fce||(console.error(\"Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://react.dev/link/controlled-components\"),fce=!0)}function Ja(s,l){l.value===void 0||l.defaultValue===void 0||pce||(console.error(\"%s contains a textarea with both value and defaultValue props. Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://react.dev/link/controlled-components\",Mr()||\"A component\"),pce=!0),l.children!=null&&l.value==null&&console.error(\"Use the `defaultValue` or `value` props instead of setting children on <textarea>.\")}function Fl(s,l,f){if(l!=null&&(l=\"\"+En(l),l!==s.value&&(s.value=l),f==null)){s.defaultValue!==l&&(s.defaultValue=l);return}s.defaultValue=f!=null?\"\"+En(f):\"\"}function Fd(s,l,f,y){if(l==null){if(y!=null){if(f!=null)throw Error(\"If you supply `defaultValue` on a <textarea>, do not pass children.\");if(pl(y)){if(1<y.length)throw Error(\"<textarea> can only have at most one child.\");y=y[0]}f=y}f==null&&(f=\"\"),l=f}f=En(l),s.defaultValue=f,y=s.textContent,y===f&&y!==\"\"&&y!==null&&(s.value=y)}function Cg(s,l){return s.serverProps===void 0&&s.serverTail.length===0&&s.children.length===1&&3<s.distanceFromLeaf&&s.distanceFromLeaf>15-l?Cg(s.children[0],l):s}function ri(s){return\"  \"+\"  \".repeat(s)}function bc(s){return\"+ \"+\"  \".repeat(s)}function Qc(s){return\"- \"+\"  \".repeat(s)}function Vh(s){switch(s.tag){case 26:case 27:case 5:return s.type;case 16:return\"Lazy\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 0:case 15:return s=s.type,s.displayName||s.name||null;case 11:return s=s.type.render,s.displayName||s.name||null;case 1:return s=s.type,s.displayName||s.name||null;default:return null}}function Wf(s,l){return mce.test(s)?(s=JSON.stringify(s),s.length>l-2?8>l?\\'{\"...\"}\\':\"{\"+s.slice(0,l-7)+\\'...\"}\\':\"{\"+s+\"}\"):s.length>l?5>l?\\'{\"...\"}\\':s.slice(0,l-3)+\"...\":s}function Ud(s,l,f){var y=120-2*f;if(l===null)return bc(f)+Wf(s,y)+`\\n`;if(typeof l==\"string\"){for(var v=0;v<l.length&&v<s.length&&l.charCodeAt(v)===s.charCodeAt(v);v++);return v>y-8&&10<v&&(s=\"...\"+s.slice(v-8),l=\"...\"+l.slice(v-8)),bc(f)+Wf(s,y)+`\\n`+Qc(f)+Wf(l,y)+`\\n`}return ri(f)+Wf(s,y)+`\\n`}function nE(s){return Object.prototype.toString.call(s).replace(/^\\\\[object (.*)\\\\]$/,function(l,f){return f})}function X1(s,l){switch(typeof s){case\"string\":return s=JSON.stringify(s),s.length>l?5>l?\\'\"...\"\\':s.slice(0,l-4)+\\'...\"\\':s;case\"object\":if(s===null)return\"null\";if(pl(s))return\"[...]\";if(s.$$typeof===dw)return(l=ne(s.type))?\"<\"+l+\">\":\"<...>\";var f=nE(s);if(f===\"Object\"){f=\"\",l-=2;for(var y in s)if(s.hasOwnProperty(y)){var v=JSON.stringify(y);if(v!==\\'\"\\'+y+\\'\"\\'&&(y=v),l-=y.length-2,v=X1(s[y],15>l?l:15),l-=v.length,0>l){f+=f===\"\"?\"...\":\", ...\";break}f+=(f===\"\"?\"\":\",\")+y+\":\"+v}return\"{\"+f+\"}\"}return f;case\"function\":return(l=s.displayName||s.name)?\"function \"+l:\"function\";default:return String(s)}}function vc(s,l){return typeof s!=\"string\"||mce.test(s)?\"{\"+X1(s,l-2)+\"}\":s.length>l-2?5>l?\\'\"...\"\\':\\'\"\\'+s.slice(0,l-5)+\\'...\"\\':\\'\"\\'+s+\\'\"\\'}function jd(s,l,f){var y=120-f.length-s.length,v=[],A;for(A in l)if(l.hasOwnProperty(A)&&A!==\"children\"){var K=vc(l[A],120-f.length-A.length-1);y-=A.length+K.length+2,v.push(A+\"=\"+K)}return v.length===0?f+\"<\"+s+`>\\n`:0<y?f+\"<\"+s+\" \"+v.join(\" \")+`>\\n`:f+\"<\"+s+`\\n`+f+\"  \"+v.join(`\\n`+f+\"  \")+`\\n`+f+`>\\n`}function Ag(s,l,f){var y=\"\",v=pr({},l),A;for(A in s)if(s.hasOwnProperty(A)){delete v[A];var K=120-2*f-A.length-2,te=X1(s[A],K);l.hasOwnProperty(A)?(K=X1(l[A],K),y+=bc(f)+A+\": \"+te+`\\n`,y+=Qc(f)+A+\": \"+K+`\\n`):y+=bc(f)+A+\": \"+te+`\\n`}for(var fe in v)v.hasOwnProperty(fe)&&(s=X1(v[fe],120-2*f-fe.length-2),y+=Qc(f)+fe+\": \"+s+`\\n`);return y}function C2(s,l,f,y){var v=\"\",A=new Map;for(me in f)f.hasOwnProperty(me)&&A.set(me.toLowerCase(),me);if(A.size===1&&A.has(\"children\"))v+=jd(s,l,ri(y));else{for(var K in l)if(l.hasOwnProperty(K)&&K!==\"children\"){var te=120-2*(y+1)-K.length-1,fe=A.get(K.toLowerCase());if(fe!==void 0){A.delete(K.toLowerCase());var me=l[K];fe=f[fe];var Ue=vc(me,te);te=vc(fe,te),typeof me==\"object\"&&me!==null&&typeof fe==\"object\"&&fe!==null&&nE(me)===\"Object\"&&nE(fe)===\"Object\"&&(2<Object.keys(me).length||2<Object.keys(fe).length||-1<Ue.indexOf(\"...\")||-1<te.indexOf(\"...\"))?v+=ri(y+1)+K+`={{\\n`+Ag(me,fe,y+2)+ri(y+1)+`}}\\n`:(v+=bc(y+1)+K+\"=\"+Ue+`\\n`,v+=Qc(y+1)+K+\"=\"+te+`\\n`)}else v+=ri(y+1)+K+\"=\"+vc(l[K],te)+`\\n`}A.forEach(function(Ke){if(Ke!==\"children\"){var Fe=120-2*(y+1)-Ke.length-1;v+=Qc(y+1)+Ke+\"=\"+vc(f[Ke],Fe)+`\\n`}}),v=v===\"\"?ri(y)+\"<\"+s+`>\\n`:ri(y)+\"<\"+s+`\\n`+v+ri(y)+`>\\n`}return s=f.children,l=l.children,typeof s==\"string\"||typeof s==\"number\"||typeof s==\"bigint\"?(A=\"\",(typeof l==\"string\"||typeof l==\"number\"||typeof l==\"bigint\")&&(A=\"\"+l),v+=Ud(A,\"\"+s,y+1)):(typeof l==\"string\"||typeof l==\"number\"||typeof l==\"bigint\")&&(v=s==null?v+Ud(\"\"+l,null,y+1):v+Ud(\"\"+l,void 0,y+1)),v}function Um(s,l){var f=Vh(s);if(f===null){for(f=\"\",s=s.child;s;)f+=Um(s,l),s=s.sibling;return f}return ri(l)+\"<\"+f+`>\\n`}function $h(s,l){var f=Cg(s,l);if(f!==s&&(s.children.length!==1||s.children[0]!==f))return ri(l)+`...\\n`+$h(f,l+1);f=\"\";var y=s.fiber._debugInfo;if(y)for(var v=0;v<y.length;v++){var A=y[v].name;typeof A==\"string\"&&(f+=ri(l)+\"<\"+A+`>\\n`,l++)}if(y=\"\",v=s.fiber.pendingProps,s.fiber.tag===6)y=Ud(v,s.serverProps,l),l++;else if(A=Vh(s.fiber),A!==null)if(s.serverProps===void 0){y=l;var K=120-2*y-A.length-2,te=\"\";for(me in v)if(v.hasOwnProperty(me)&&me!==\"children\"){var fe=vc(v[me],15);if(K-=me.length+fe.length+2,0>K){te+=\" ...\";break}te+=\" \"+me+\"=\"+fe}y=ri(y)+\"<\"+A+te+`>\\n`,l++}else s.serverProps===null?(y=jd(A,v,bc(l)),l++):typeof s.serverProps==\"string\"?console.error(\"Should not have matched a non HostText fiber to a Text node. This is a bug in React.\"):(y=C2(A,v,s.serverProps,l),l++);var me=\"\";for(v=s.fiber.child,A=0;v&&A<s.children.length;)K=s.children[A],K.fiber===v?(me+=$h(K,l),A++):me+=Um(v,l),v=v.sibling;for(v&&0<s.children.length&&(me+=ri(l)+`...\\n`),v=s.serverTail,s.serverProps===null&&l--,s=0;s<v.length;s++)A=v[s],me=typeof A==\"string\"?me+(Qc(l)+Wf(A,120-2*l)+`\\n`):me+jd(A.type,A.props,Qc(l));return f+y+me}function Tg(s){try{return`\\n\\n`+$h(s,0)}catch{return\"\"}}function Kh(s,l,f){for(var y=l,v=null,A=0;y;)y===s&&(A=0),v={fiber:y,children:v!==null?[v]:[],serverProps:y===l?f:y===s?null:void 0,serverTail:[],distanceFromLeaf:A},A++,y=y.return;return v!==null?Tg(v).replaceAll(/^[+-]/gm,\">\"):\"\"}function Gh(s,l){var f=pr({},s||yce),y={tag:l};return gce.indexOf(l)!==-1&&(f.aTagInScope=null,f.buttonTagInScope=null,f.nobrTagInScope=null),ADe.indexOf(l)!==-1&&(f.pTagInButtonScope=null),CDe.indexOf(l)!==-1&&l!==\"address\"&&l!==\"div\"&&l!==\"p\"&&(f.listItemTagAutoclosing=null,f.dlItemTagAutoclosing=null),f.current=y,l===\"form\"&&(f.formTag=y),l===\"a\"&&(f.aTagInScope=y),l===\"button\"&&(f.buttonTagInScope=y),l===\"nobr\"&&(f.nobrTagInScope=y),l===\"p\"&&(f.pTagInButtonScope=y),l===\"li\"&&(f.listItemTagAutoclosing=y),(l===\"dd\"||l===\"dt\")&&(f.dlItemTagAutoclosing=y),l===\"#document\"||l===\"html\"?f.containerTagInScope=null:f.containerTagInScope||(f.containerTagInScope=y),s!==null||l!==\"#document\"&&l!==\"html\"&&l!==\"body\"?f.implicitRootScope===!0&&(f.implicitRootScope=!1):f.implicitRootScope=!0,f}function Zh(s,l,f){switch(l){case\"select\":return s===\"hr\"||s===\"option\"||s===\"optgroup\"||s===\"script\"||s===\"template\"||s===\"#text\";case\"optgroup\":return s===\"option\"||s===\"#text\";case\"option\":return s===\"#text\";case\"tr\":return s===\"th\"||s===\"td\"||s===\"style\"||s===\"script\"||s===\"template\";case\"tbody\":case\"thead\":case\"tfoot\":return s===\"tr\"||s===\"style\"||s===\"script\"||s===\"template\";case\"colgroup\":return s===\"col\"||s===\"template\";case\"table\":return s===\"caption\"||s===\"colgroup\"||s===\"tbody\"||s===\"tfoot\"||s===\"thead\"||s===\"style\"||s===\"script\"||s===\"template\";case\"head\":return s===\"base\"||s===\"basefont\"||s===\"bgsound\"||s===\"link\"||s===\"meta\"||s===\"title\"||s===\"noscript\"||s===\"noframes\"||s===\"style\"||s===\"script\"||s===\"template\";case\"html\":if(f)break;return s===\"head\"||s===\"body\"||s===\"frameset\";case\"frameset\":return s===\"frame\";case\"#document\":if(!f)return s===\"html\"}switch(s){case\"h1\":case\"h2\":case\"h3\":case\"h4\":case\"h5\":case\"h6\":return l!==\"h1\"&&l!==\"h2\"&&l!==\"h3\"&&l!==\"h4\"&&l!==\"h5\"&&l!==\"h6\";case\"rp\":case\"rt\":return TDe.indexOf(l)===-1;case\"caption\":case\"col\":case\"colgroup\":case\"frameset\":case\"frame\":case\"tbody\":case\"td\":case\"tfoot\":case\"th\":case\"thead\":case\"tr\":return l==null;case\"head\":return f||l===null;case\"html\":return f&&l===\"#document\"||l===null;case\"body\":return f&&(l===\"#document\"||l===\"html\")||l===null}return!0}function Qs(s,l){switch(s){case\"address\":case\"article\":case\"aside\":case\"blockquote\":case\"center\":case\"details\":case\"dialog\":case\"dir\":case\"div\":case\"dl\":case\"fieldset\":case\"figcaption\":case\"figure\":case\"footer\":case\"header\":case\"hgroup\":case\"main\":case\"menu\":case\"nav\":case\"ol\":case\"p\":case\"section\":case\"summary\":case\"ul\":case\"pre\":case\"listing\":case\"table\":case\"hr\":case\"xmp\":case\"h1\":case\"h2\":case\"h3\":case\"h4\":case\"h5\":case\"h6\":return l.pTagInButtonScope;case\"form\":return l.formTag||l.pTagInButtonScope;case\"li\":return l.listItemTagAutoclosing;case\"dd\":case\"dt\":return l.dlItemTagAutoclosing;case\"button\":return l.buttonTagInScope;case\"a\":return l.aTagInScope;case\"nobr\":return l.nobrTagInScope}return null}function zd(s,l){for(;s;){switch(s.tag){case 5:case 26:case 27:if(s.type===l)return s}s=s.return}return null}function eb(s,l){l=l||yce;var f=l.current;if(l=(f=Zh(s,f&&f.tag,l.implicitRootScope)?null:f)?null:Qs(s,l),l=f||l,!l)return!0;var y=l.tag;if(l=String(!!f)+\"|\"+s+\"|\"+y,oN[l])return!1;oN[l]=!0;var v=(l=fh)?zd(l.return,y):null,A=l!==null&&v!==null?Kh(v,l,null):\"\",K=\"<\"+s+\">\";return f?(f=\"\",y===\"table\"&&s===\"tr\"&&(f+=\" Add a <tbody>, <thead> or <tfoot> to your code to match the DOM tree generated by the browser.\"),console.error(`In HTML, %s cannot be a child of <%s>.%s\\nThis will cause a hydration error.%s`,K,y,f,A)):console.error(`In HTML, %s cannot be a descendant of <%s>.\\nThis will cause a hydration error.%s`,K,y,A),l&&(s=l.return,v===null||s===null||v===s&&s._debugOwner===l._debugOwner||jt(v,function(){console.error(`<%s> cannot contain a nested %s.\\nSee this log for the ancestor stack trace.`,y,K)})),!1}function Hd(s,l,f){if(f||Zh(\"#text\",l,!1))return!0;if(f=\"#text|\"+l,oN[f])return!1;oN[f]=!0;var y=(f=fh)?zd(f,l):null;return f=f!==null&&y!==null?Kh(y,f,f.tag!==6?{children:null}:null):\"\",/\\\\S/.test(s)?console.error(`In HTML, text nodes cannot be a child of <%s>.\\nThis will cause a hydration error.%s`,l,f):console.error(`In HTML, whitespace text nodes cannot be a child of <%s>. Make sure you don\\'t have any extra whitespace between tags on each line of your source code.\\nThis will cause a hydration error.%s`,l,f),!1}function Vf(s,l){if(l){var f=s.firstChild;if(f&&f===s.lastChild&&f.nodeType===3){f.nodeValue=l;return}}s.textContent=l}function Rg(s){return s.replace(ODe,function(l,f){return f.toUpperCase()})}function Yh(s,l,f){var y=l.indexOf(\"--\")===0;y||(-1<l.indexOf(\"-\")?f_.hasOwnProperty(l)&&f_[l]||(f_[l]=!0,console.error(\"Unsupported style property %s. Did you mean %s?\",l,Rg(l.replace(IDe,\"ms-\")))):RDe.test(l)?f_.hasOwnProperty(l)&&f_[l]||(f_[l]=!0,console.error(\"Unsupported vendor-prefixed style property %s. Did you mean %s?\",l,l.charAt(0).toUpperCase()+l.slice(1))):!wce.test(f)||sK.hasOwnProperty(f)&&sK[f]||(sK[f]=!0,console.error(`Style property values shouldn\\'t contain a semicolon. Try \"%s: %s\" instead.`,l,f.replace(wce,\"\"))),typeof f==\"number\"&&(isNaN(f)?xce||(xce=!0,console.error(\"`NaN` is an invalid value for the `%s` css style property.\",l)):isFinite(f)||Ece||(Ece=!0,console.error(\"`Infinity` is an invalid value for the `%s` css style property.\",l)))),f==null||typeof f==\"boolean\"||f===\"\"?y?s.setProperty(l,\"\"):l===\"float\"?s.cssFloat=\"\":s[l]=\"\":y?s.setProperty(l,f):typeof f!=\"number\"||f===0||Sce.has(l)?l===\"float\"?s.cssFloat=f:(U(f,l),s[l]=(\"\"+f).trim()):s[l]=f+\"px\"}function ms(s,l,f){if(l!=null&&typeof l!=\"object\")throw Error(\"The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + \\'em\\'}} when using JSX.\");if(l&&Object.freeze(l),s=s.style,f!=null){if(l){var y={};if(f){for(var v in f)if(f.hasOwnProperty(v)&&!l.hasOwnProperty(v))for(var A=iK[v]||[v],K=0;K<A.length;K++)y[A[K]]=v}for(var te in l)if(l.hasOwnProperty(te)&&(!f||f[te]!==l[te]))for(v=iK[te]||[te],A=0;A<v.length;A++)y[v[A]]=te;te={};for(var fe in l)for(v=iK[fe]||[fe],A=0;A<v.length;A++)te[v[A]]=fe;fe={};for(var me in y)if(v=y[me],(A=te[me])&&v!==A&&(K=v+\",\"+A,!fe[K])){fe[K]=!0,K=console;var Ue=l[v];K.error.call(K,\"%s a style property during rerender (%s) when a conflicting property is set (%s) can lead to styling bugs. To avoid this, don\\'t mix shorthand and non-shorthand properties for the same value; instead, replace the shorthand with separate values.\",Ue==null||typeof Ue==\"boolean\"||Ue===\"\"?\"Removing\":\"Updating\",v,A)}}for(var Ke in f)!f.hasOwnProperty(Ke)||l!=null&&l.hasOwnProperty(Ke)||(Ke.indexOf(\"--\")===0?s.setProperty(Ke,\"\"):Ke===\"float\"?s.cssFloat=\"\":s[Ke]=\"\");for(var Fe in l)me=l[Fe],l.hasOwnProperty(Fe)&&f[Fe]!==me&&Yh(s,Fe,me)}else for(y in l)l.hasOwnProperty(y)&&Yh(s,y,l[y])}function Ul(s){if(s.indexOf(\"-\")===-1)return!1;switch(s){case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":return!1;default:return!0}}function ba(s){return PDe.get(s)||s}function jm(s,l){if(Mb.call(p_,l)&&p_[l])return!0;if(NDe.test(l)){if(s=\"aria-\"+l.slice(4).toLowerCase(),s=kce.hasOwnProperty(s)?s:null,s==null)return console.error(\"Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.\",l),p_[l]=!0;if(l!==s)return console.error(\"Invalid ARIA attribute `%s`. Did you mean `%s`?\",l,s),p_[l]=!0}if(MDe.test(l)){if(s=l.toLowerCase(),s=kce.hasOwnProperty(s)?s:null,s==null)return p_[l]=!0,!1;l!==s&&(console.error(\"Unknown ARIA attribute `%s`. Did you mean `%s`?\",l,s),p_[l]=!0)}return!0}function rE(s,l){var f=[],y;for(y in l)jm(s,y)||f.push(y);l=f.map(function(v){return\"`\"+v+\"`\"}).join(\", \"),f.length===1?console.error(\"Invalid aria prop %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props\",l,s):1<f.length&&console.error(\"Invalid aria props %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props\",l,s)}function oE(s,l,f,y){if(Mb.call(rd,l)&&rd[l])return!0;var v=l.toLowerCase();if(v===\"onfocusin\"||v===\"onfocusout\")return console.error(\"React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React.\"),rd[l]=!0;if(typeof f==\"function\"&&(s===\"form\"&&l===\"action\"||s===\"input\"&&l===\"formAction\"||s===\"button\"&&l===\"formAction\"))return!0;if(y!=null){if(s=y.possibleRegistrationNames,y.registrationNameDependencies.hasOwnProperty(l))return!0;if(y=s.hasOwnProperty(v)?s[v]:null,y!=null)return console.error(\"Invalid event handler property `%s`. Did you mean `%s`?\",l,y),rd[l]=!0;if(Cce.test(l))return console.error(\"Unknown event handler property `%s`. It will be ignored.\",l),rd[l]=!0}else if(Cce.test(l))return LDe.test(l)&&console.error(\"Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.\",l),rd[l]=!0;if(BDe.test(l)||DDe.test(l))return!0;if(v===\"innerhtml\")return console.error(\"Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`.\"),rd[l]=!0;if(v===\"aria\")return console.error(\"The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead.\"),rd[l]=!0;if(v===\"is\"&&f!==null&&f!==void 0&&typeof f!=\"string\")return console.error(\"Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.\",typeof f),rd[l]=!0;if(typeof f==\"number\"&&isNaN(f))return console.error(\"Received NaN for the `%s` attribute. If this is expected, cast the value to a string.\",l),rd[l]=!0;if(sN.hasOwnProperty(v)){if(v=sN[v],v!==l)return console.error(\"Invalid DOM property `%s`. Did you mean `%s`?\",l,v),rd[l]=!0}else if(l!==v)return console.error(\"React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.\",l,v),rd[l]=!0;switch(l){case\"dangerouslySetInnerHTML\":case\"children\":case\"style\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"ref\":return!0;case\"innerText\":case\"textContent\":return!0}switch(typeof f){case\"boolean\":switch(l){case\"autoFocus\":case\"checked\":case\"multiple\":case\"muted\":case\"selected\":case\"contentEditable\":case\"spellCheck\":case\"draggable\":case\"value\":case\"autoReverse\":case\"externalResourcesRequired\":case\"focusable\":case\"preserveAlpha\":case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":case\"capture\":case\"download\":case\"inert\":return!0;default:return v=l.toLowerCase().slice(0,5),v===\"data-\"||v===\"aria-\"?!0:(f?console.error(\\'Received `%s` for a non-boolean attribute `%s`.\\\\n\\\\nIf you want to write it to the DOM, pass a string instead: %s=\"%s\" or %s={value.toString()}.\\',f,l,l,f,l):console.error(\\'Received `%s` for a non-boolean attribute `%s`.\\\\n\\\\nIf you want to write it to the DOM, pass a string instead: %s=\"%s\" or %s={value.toString()}.\\\\n\\\\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.\\',f,l,l,f,l,l,l),rd[l]=!0)}case\"function\":case\"symbol\":return rd[l]=!0,!1;case\"string\":if(f===\"false\"||f===\"true\"){switch(l){case\"checked\":case\"selected\":case\"multiple\":case\"muted\":case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":case\"inert\":break;default:return!0}console.error(\"Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?\",f,l,f===\"false\"?\"The browser will interpret it as a truthy value.\":\\'Although this works, it will not work as expected if you pass the string \"false\".\\',l,f),rd[l]=!0}}return!0}function Xa(s,l,f){var y=[],v;for(v in l)oE(s,v,l[v],f)||y.push(v);l=y.map(function(A){return\"`\"+A+\"`\"}).join(\", \"),y.length===1?console.error(\"Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://react.dev/link/attribute-behavior \",l,s):1<y.length&&console.error(\"Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://react.dev/link/attribute-behavior \",l,s)}function zm(s){return FDe.test(\"\"+s)?\"javascript:throw new Error(\\'React has blocked a javascript: URL as a security precaution.\\')\":s}function Qh(s){return s=s.target||s.srcElement||window,s.correspondingUseElement&&(s=s.correspondingUseElement),s.nodeType===3?s.parentNode:s}function wc(s){var l=le(s);if(l&&(s=l.stateNode)){var f=s[cf]||null;e:switch(s=l.stateNode,l.type){case\"input\":if(ts(s,f.value,f.defaultValue,f.defaultValue,f.checked,f.defaultChecked,f.type,f.name),l=f.name,f.type===\"radio\"&&l!=null){for(f=s;f.parentNode;)f=f.parentNode;for(I(l,\"name\"),f=f.querySelectorAll(\\'input[name=\"\\'+Zo(\"\"+l)+\\'\"][type=\"radio\"]\\'),l=0;l<f.length;l++){var y=f[l];if(y!==s&&y.form===s.form){var v=y[cf]||null;if(!v)throw Error(\"ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported.\");ts(y,v.value,v.defaultValue,v.defaultValue,v.checked,v.defaultChecked,v.type,v.name)}}for(l=0;l<f.length;l++)y=f[l],y.form===s.form&&Ys(y)}break e;case\"textarea\":Fl(s,f.value,f.defaultValue);break e;case\"select\":l=f.value,l!=null&&ya(s,!!f.multiple,l,!1)}}}function Ig(s,l,f){if(aK)return s(l,f);aK=!0;try{var y=s(l);return y}finally{if(aK=!1,(m_!==null||g_!==null)&&(bt(),m_&&(l=m_,s=g_,g_=m_=null,wc(l),s)))for(l=0;l<s.length;l++)wc(s[l])}}function $f(s,l){var f=s.stateNode;if(f===null)return null;var y=f[cf]||null;if(y===null)return null;f=y[l];e:switch(l){case\"onClick\":case\"onClickCapture\":case\"onDoubleClick\":case\"onDoubleClickCapture\":case\"onMouseDown\":case\"onMouseDownCapture\":case\"onMouseMove\":case\"onMouseMoveCapture\":case\"onMouseUp\":case\"onMouseUpCapture\":case\"onMouseEnter\":(y=!y.disabled)||(s=s.type,y=!(s===\"button\"||s===\"input\"||s===\"select\"||s===\"textarea\")),s=!y;break e;default:s=!1}if(s)return null;if(f&&typeof f!=\"function\")throw Error(\"Expected `\"+l+\"` listener to be a function, instead got a value of `\"+typeof f+\"` type.\");return f}function Hm(){if(aN)return aN;var s,l=lK,f=l.length,y,v=\"value\"in gw?gw.value:gw.textContent,A=v.length;for(s=0;s<f&&l[s]===v[s];s++);var K=f-s;for(y=1;y<=K&&l[f-y]===v[A-y];y++);return aN=v.slice(s,1<y?1-y:void 0)}function Kf(s){var l=s.keyCode;return\"charCode\"in s?(s=s.charCode,s===0&&l===13&&(s=13)):s=l,s===10&&(s=13),32<=s||s===13?s:0}function qm(){return!0}function Jc(){return!1}function va(s){function l(f,y,v,A,K){this._reactName=f,this._targetInst=v,this.type=y,this.nativeEvent=A,this.target=K,this.currentTarget=null;for(var te in s)s.hasOwnProperty(te)&&(f=s[te],this[te]=f?f(A):A[te]);return this.isDefaultPrevented=(A.defaultPrevented!=null?A.defaultPrevented:A.returnValue===!1)?qm:Jc,this.isPropagationStopped=Jc,this}return pr(l.prototype,{preventDefault:function(){this.defaultPrevented=!0;var f=this.nativeEvent;f&&(f.preventDefault?f.preventDefault():typeof f.returnValue!=\"unknown\"&&(f.returnValue=!1),this.isDefaultPrevented=qm)},stopPropagation:function(){var f=this.nativeEvent;f&&(f.stopPropagation?f.stopPropagation():typeof f.cancelBubble!=\"unknown\"&&(f.cancelBubble=!0),this.isPropagationStopped=qm)},persist:function(){},isPersistent:qm}),l}function Og(s){var l=this.nativeEvent;return l.getModifierState?l.getModifierState(s):(s=QDe[s])?!!l[s]:!1}function Jh(){return Og}function Wm(s,l){switch(s){case\"keyup\":return lFe.indexOf(l.keyCode)!==-1;case\"keydown\":return l.keyCode!==Ice;case\"keypress\":case\"mousedown\":case\"focusout\":return!0;default:return!1}}function Xh(s){return s=s.detail,typeof s==\"object\"&&\"data\"in s?s.data:null}function Pg(s,l){switch(s){case\"compositionend\":return Xh(l);case\"keypress\":return l.which!==Pce?null:(Nce=!0,Mce);case\"textInput\":return s=l.data,s===Mce&&Nce?null:s;default:return null}}function Mg(s,l){if(y_)return s===\"compositionend\"||!hK&&Wm(s,l)?(s=Hm(),aN=lK=gw=null,y_=!1,s):null;switch(s){case\"paste\":return null;case\"keypress\":if(!(l.ctrlKey||l.altKey||l.metaKey)||l.ctrlKey&&l.altKey){if(l.char&&1<l.char.length)return l.char;if(l.which)return String.fromCharCode(l.which)}return null;case\"compositionend\":return Oce&&l.locale!==\"ko\"?null:l.data;default:return null}}function tb(s){var l=s&&s.nodeName&&s.nodeName.toLowerCase();return l===\"input\"?!!dFe[s.type]:l===\"textarea\"}function Ng(s){if(!by)return!1;s=\"on\"+s;var l=s in document;return l||(l=document.createElement(\"div\"),l.setAttribute(s,\"return;\"),l=typeof l[s]==\"function\"),l}function A2(s,l,f,y){m_?g_?g_.push(y):g_=[y]:m_=y,l=cs(l,\"onChange\"),0<l.length&&(f=new cN(\"onChange\",\"change\",null,f,y),s.push({event:f,listeners:l}))}function ep(s){ah(s,0)}function tp(s){var l=Te(s);if(Ys(l))return s}function nb(s,l){if(s===\"change\")return l}function Lg(){h7&&(h7.detachEvent(\"onpropertychange\",rb),p7=h7=null)}function rb(s){if(s.propertyName===\"value\"&&tp(p7)){var l=[];A2(l,p7,s,Qh(s)),Ig(ep,l)}}function iE(s,l,f){s===\"focusin\"?(Lg(),h7=l,p7=f,h7.attachEvent(\"onpropertychange\",rb)):s===\"focusout\"&&Lg()}function Fk(s){if(s===\"selectionchange\"||s===\"keyup\"||s===\"keydown\")return tp(p7)}function Vm(s,l){if(s===\"click\")return tp(l)}function T2(s,l){if(s===\"input\"||s===\"change\")return tp(l)}function np(s,l){return s===l&&(s!==0||1/s===1/l)||s!==s&&l!==l}function $m(s,l){if(od(s,l))return!0;if(typeof s!=\"object\"||s===null||typeof l!=\"object\"||l===null)return!1;var f=Object.keys(s),y=Object.keys(l);if(f.length!==y.length)return!1;for(y=0;y<f.length;y++){var v=f[y];if(!Mb.call(l,v)||!od(s[v],l[v]))return!1}return!0}function rp(s){for(;s&&s.firstChild;)s=s.firstChild;return s}function sE(s,l){var f=rp(s);s=0;for(var y;f;){if(f.nodeType===3){if(y=s+f.textContent.length,s<=l&&y>=l)return{node:f,offset:l-s};s=y}e:{for(;f;){if(f.nextSibling){f=f.nextSibling;break e}f=f.parentNode}f=void 0}f=rp(f)}}function Bg(s,l){return s&&l?s===l?!0:s&&s.nodeType===3?!1:l&&l.nodeType===3?Bg(s,l.parentNode):\"contains\"in s?s.contains(l):s.compareDocumentPosition?!!(s.compareDocumentPosition(l)&16):!1:!1}function Dg(s){s=s!=null&&s.ownerDocument!=null&&s.ownerDocument.defaultView!=null?s.ownerDocument.defaultView:window;for(var l=Zc(s.document);l instanceof s.HTMLIFrameElement;){try{var f=typeof l.contentWindow.location.href==\"string\"}catch{f=!1}if(f)s=l.contentWindow;else break;l=Zc(s.document)}return l}function Gf(s){var l=s&&s.nodeName&&s.nodeName.toLowerCase();return l&&(l===\"input\"&&(s.type===\"text\"||s.type===\"search\"||s.type===\"tel\"||s.type===\"url\"||s.type===\"password\")||l===\"textarea\"||s.contentEditable===\"true\")}function op(s,l,f){var y=f.window===f?f.document:f.nodeType===9?f:f.ownerDocument;mK||b_==null||b_!==Zc(y)||(y=b_,\"selectionStart\"in y&&Gf(y)?y={start:y.selectionStart,end:y.selectionEnd}:(y=(y.ownerDocument&&y.ownerDocument.defaultView||window).getSelection(),y={anchorNode:y.anchorNode,anchorOffset:y.anchorOffset,focusNode:y.focusNode,focusOffset:y.focusOffset}),m7&&$m(m7,y)||(m7=y,y=cs(pK,\"onSelect\"),0<y.length&&(l=new cN(\"onSelect\",\"select\",null,l,f),s.push({event:l,listeners:y}),l.target=b_)))}function Vu(s,l){var f={};return f[s.toLowerCase()]=l.toLowerCase(),f[\"Webkit\"+s]=\"webkit\"+l,f[\"Moz\"+s]=\"moz\"+l,f}function $u(s){if(gK[s])return gK[s];if(!v_[s])return s;var l=v_[s],f;for(f in l)if(l.hasOwnProperty(f)&&f in Bce)return gK[s]=l[f];return s}function Js(s,l){zce.set(s,l),It(l,[s])}function Xc(s,l){if(typeof s==\"object\"&&s!==null){var f=bK.get(s);return f!==void 0?f:(l={value:s,source:l,stack:zr(l)},bK.set(s,l),l)}return{value:s,source:l,stack:zr(l)}}function Km(){for(var s=w_,l=vK=w_=0;l<s;){var f=wp[l];wp[l++]=null;var y=wp[l];wp[l++]=null;var v=wp[l];wp[l++]=null;var A=wp[l];if(wp[l++]=null,y!==null&&v!==null){var K=y.pending;K===null?v.next=v:(v.next=K.next,K.next=v),y.pending=v}A!==0&&Ug(f,v,A)}}function ip(s,l,f,y){wp[w_++]=s,wp[w_++]=l,wp[w_++]=f,wp[w_++]=y,vK|=y,s.lanes|=y,s=s.alternate,s!==null&&(s.lanes|=y)}function Fg(s,l,f,y){return ip(s,l,f,y),el(s)}function Rs(s,l){return ip(s,null,null,l),el(s)}function Ug(s,l,f){s.lanes|=f;var y=s.alternate;y!==null&&(y.lanes|=f);for(var v=!1,A=s.return;A!==null;)A.childLanes|=f,y=A.alternate,y!==null&&(y.childLanes|=f),A.tag===22&&(s=A.stateNode,s===null||s._visibility&uN||(v=!0)),s=A,A=A.return;return s.tag===3?(A=s.stateNode,v&&l!==null&&(v=31-nd(f),s=A.hiddenUpdates,y=s[v],y===null?s[v]=[l]:y.push(l),l.lane=f|536870912),A):null}function el(s){if(D7>NFe)throw c5=D7=0,F7=ZK=null,Error(\"Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.\");c5>LFe&&(c5=0,F7=null,console.error(\"Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn\\'t have a dependency array, or one of the dependencies changes on every render.\")),s.alternate===null&&(s.flags&4098)!==0&&$l(s);for(var l=s,f=l.return;f!==null;)l.alternate===null&&(l.flags&4098)!==0&&$l(s),l=f,f=l.return;return l.tag===3?l.stateNode:null}function tl(s){if(xp===null)return s;var l=xp(s);return l===void 0?s:l.current}function R2(s){if(xp===null)return s;var l=xp(s);return l===void 0?s!=null&&typeof s.render==\"function\"&&(l=tl(s.render),s.render!==l)?(l={$$typeof:o7,render:l},s.displayName!==void 0&&(l.displayName=s.displayName),l):s:l.current}function ob(s,l){if(xp===null)return!1;var f=s.elementType;l=l.type;var y=!1,v=typeof l==\"object\"&&l!==null?l.$$typeof:null;switch(s.tag){case 1:typeof l==\"function\"&&(y=!0);break;case 0:(typeof l==\"function\"||v===uh)&&(y=!0);break;case 11:(v===o7||v===uh)&&(y=!0);break;case 14:case 15:(v===XM||v===uh)&&(y=!0);break;default:return!1}return!!(y&&(s=xp(f),s!==void 0&&s===xp(l)))}function Ii(s){xp!==null&&typeof WeakSet==\"function\"&&(x_===null&&(x_=new WeakSet),x_.add(s))}function Yr(s,l,f){var y=s.alternate,v=s.child,A=s.sibling,K=s.tag,te=s.type,fe=null;switch(K){case 0:case 15:case 1:fe=te;break;case 11:fe=te.render}if(xp===null)throw Error(\"Expected resolveFamily to be set during hot reload.\");var me=!1;te=!1,fe!==null&&(fe=xp(fe),fe!==void 0&&(f.has(fe)?te=!0:l.has(fe)&&(K===1?te=!0:me=!0))),x_!==null&&(x_.has(s)||y!==null&&x_.has(y))&&(te=!0),te&&(s._debugNeedsRemount=!0),(te||me)&&(y=Rs(s,2),y!==null&&Le(y,s,2)),v===null||te||Yr(v,l,f),A!==null&&Yr(A,l,f)}function XT(s,l,f,y){this.tag=s,this.key=f,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=l,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=y,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null,this.actualDuration=-0,this.actualStartTime=-1.1,this.treeBaseDuration=this.selfBaseDuration=-0,this._debugTask=this._debugStack=this._debugOwner=this._debugInfo=null,this._debugNeedsRemount=!1,this._debugHookTypes=null,qce||typeof Object.preventExtensions!=\"function\"||Object.preventExtensions(this)}function ib(s){return s=s.prototype,!(!s||!s.isReactComponent)}function wa(s,l){var f=s.alternate;switch(f===null?(f=g(s.tag,l,s.key,s.mode),f.elementType=s.elementType,f.type=s.type,f.stateNode=s.stateNode,f._debugOwner=s._debugOwner,f._debugStack=s._debugStack,f._debugTask=s._debugTask,f._debugHookTypes=s._debugHookTypes,f.alternate=s,s.alternate=f):(f.pendingProps=l,f.type=s.type,f.flags=0,f.subtreeFlags=0,f.deletions=null,f.actualDuration=-0,f.actualStartTime=-1.1),f.flags=s.flags&65011712,f.childLanes=s.childLanes,f.lanes=s.lanes,f.child=s.child,f.memoizedProps=s.memoizedProps,f.memoizedState=s.memoizedState,f.updateQueue=s.updateQueue,l=s.dependencies,f.dependencies=l===null?null:{lanes:l.lanes,firstContext:l.firstContext,_debugThenableState:l._debugThenableState},f.sibling=s.sibling,f.index=s.index,f.ref=s.ref,f.refCleanup=s.refCleanup,f.selfBaseDuration=s.selfBaseDuration,f.treeBaseDuration=s.treeBaseDuration,f._debugInfo=s._debugInfo,f._debugNeedsRemount=s._debugNeedsRemount,f.tag){case 0:case 15:f.type=tl(s.type);break;case 1:f.type=tl(s.type);break;case 11:f.type=R2(s.type)}return f}function aE(s,l){s.flags&=65011714;var f=s.alternate;return f===null?(s.childLanes=0,s.lanes=l,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null,s.selfBaseDuration=0,s.treeBaseDuration=0):(s.childLanes=f.childLanes,s.lanes=f.lanes,s.child=f.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=f.memoizedProps,s.memoizedState=f.memoizedState,s.updateQueue=f.updateQueue,s.type=f.type,l=f.dependencies,s.dependencies=l===null?null:{lanes:l.lanes,firstContext:l.firstContext,_debugThenableState:l._debugThenableState},s.selfBaseDuration=f.selfBaseDuration,s.treeBaseDuration=f.treeBaseDuration),s}function I2(s,l,f,y,v,A){var K=0,te=s;if(typeof s==\"function\")ib(s)&&(K=1),te=tl(te);else if(typeof s==\"string\")K=z(),K=KM(s,f,K)?26:s===\"html\"||s===\"head\"||s===\"body\"?27:5;else e:switch(s){case K$:return l=g(31,f,l,v),l.elementType=K$,l.lanes=A,l;case l_:return Zf(f.children,v,A,l);case JM:K=8,v|=ru,v|=_0;break;case q$:return s=f,y=v,typeof s.id!=\"string\"&&console.error(\\'Profiler must specify an \"id\" of type `string` as a prop. Received the type `%s` instead.\\',typeof s.id),l=g(12,s,l,y|ml),l.elementType=q$,l.lanes=A,l.stateNode={effectDuration:0,passiveEffectDuration:0},l;case V$:return l=g(13,f,l,v),l.elementType=V$,l.lanes=A,l;case $$:return l=g(19,f,l,v),l.elementType=$$,l.lanes=A,l;default:if(typeof s==\"object\"&&s!==null)switch(s.$$typeof){case cDe:case hy:K=10;break e;case W$:K=9;break e;case o7:K=11,te=R2(te);break e;case XM:K=14;break e;case uh:K=16,te=null;break e}te=\"\",(s===void 0||typeof s==\"object\"&&s!==null&&Object.keys(s).length===0)&&(te+=\" You likely forgot to export your component from the file it\\'s defined in, or you might have mixed up default and named imports.\"),s===null?f=\"null\":pl(s)?f=\"array\":s!==void 0&&s.$$typeof===dw?(f=\"<\"+(ne(s.type)||\"Unknown\")+\" />\",te=\" Did you accidentally export a JSX literal instead of a component?\"):f=typeof s,(K=y?ie(y):null)&&(te+=`\\n\\nCheck the render method of \\\\``+K+\"`.\"),K=29,f=Error(\"Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: \"+(f+\".\"+te)),te=null}return l=g(K,f,l,v),l.elementType=s,l.type=te,l.lanes=A,l._debugOwner=y,l}function jg(s,l,f){return l=I2(s.type,s.key,s.props,s._owner,l,f),l._debugOwner=s._owner,l._debugStack=s._debugStack,l._debugTask=s._debugTask,l}function Zf(s,l,f,y){return s=g(7,s,y,l),s.lanes=f,s}function Yf(s,l,f){return s=g(6,s,null,l),s.lanes=f,s}function cE(s,l,f){return l=g(4,s.children!==null?s.children:[],s.key,l),l.lanes=f,l.stateNode={containerInfo:s.containerInfo,pendingChildren:null,implementation:s.implementation},l}function sp(s,l){uo(),E_[S_++]=fN,E_[S_++]=dN,dN=s,fN=l}function ec(s,l,f){uo(),Ep[Sp++]=Lb,Ep[Sp++]=Bb,Ep[Sp++]=YE,YE=s;var y=Lb;s=Bb;var v=32-nd(y)-1;y&=~(1<<v),f+=1;var A=32-nd(l)+v;if(30<A){var K=v-v%5;A=(y&(1<<K)-1).toString(32),y>>=K,v-=K,Lb=1<<32-nd(l)+v|f<<v|y,Bb=A+s}else Lb=1<<A|f<<v|y,Bb=s}function xa(s){uo(),s.return!==null&&(sp(s,1),ec(s,1,0))}function Is(s){for(;s===dN;)dN=E_[--S_],E_[S_]=null,fN=E_[--S_],E_[S_]=null;for(;s===YE;)YE=Ep[--Sp],Ep[Sp]=null,Bb=Ep[--Sp],Ep[Sp]=null,Lb=Ep[--Sp],Ep[Sp]=null}function uo(){Qr||console.error(\"Expected to be hydrating. This is a bug in React. Please file an issue.\")}function Ar(s,l){if(s.return===null){if(kp===null)kp={fiber:s,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:l};else{if(kp.fiber!==s)throw Error(\"Saw multiple hydration diff roots in a pass. This is a bug in React.\");kp.distanceFromLeaf>l&&(kp.distanceFromLeaf=l)}return kp}var f=Ar(s.return,l+1).children;return 0<f.length&&f[f.length-1].fiber===s?(f=f[f.length-1],f.distanceFromLeaf>l&&(f.distanceFromLeaf=l),f):(l={fiber:s,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:l},f.push(l),l)}function lE(s,l){Db||(s=Ar(s,0),s.serverProps=null,l!==null&&(l=sw(l),s.serverTail.push(l)))}function ap(s){var l=\"\",f=kp;throw f!==null&&(kp=null,l=Tg(f)),jl(Xc(Error(`Hydration failed because the server rendered HTML didn\\'t match the client. As a result this tree will be regenerated on the client. This can happen if a SSR-ed Client Component used:\\n\\n- A server/client branch \\\\`if (typeof window !== \\'undefined\\')\\\\`.\\n- Variable input such as \\\\`Date.now()\\\\` or \\\\`Math.random()\\\\` which changes each time it\\'s called.\\n- Date formatting in a user\\'s locale which doesn\\'t match the server.\\n- External changing data without sending a snapshot of it along with the HTML.\\n- Invalid HTML tag nesting.\\n\\nIt can also happen if the client has a browser extension installed which messes with the HTML before React loaded.\\n\\nhttps://react.dev/link/hydration-mismatch`+l),s)),wK}function uE(s){var l=s.stateNode,f=s.type,y=s.memoizedProps;switch(l[nu]=s,l[cf]=y,bi(f,y),f){case\"dialog\":pn(\"cancel\",l),pn(\"close\",l);break;case\"iframe\":case\"object\":case\"embed\":pn(\"load\",l);break;case\"video\":case\"audio\":for(f=0;f<U7.length;f++)pn(U7[f],l);break;case\"source\":pn(\"error\",l);break;case\"img\":case\"image\":case\"link\":pn(\"error\",l),pn(\"load\",l);break;case\"details\":pn(\"toggle\",l);break;case\"input\":Dt(\"input\",y),pn(\"invalid\",l),qu(l,y),Wu(l,y.value,y.defaultValue,y.checked,y.defaultChecked,y.type,y.name,!0),Cr(l);break;case\"option\":Ya(l,y);break;case\"select\":Dt(\"select\",y),pn(\"invalid\",l),Dl(l,y);break;case\"textarea\":Dt(\"textarea\",y),pn(\"invalid\",l),Ja(l,y),Fd(l,y.value,y.defaultValue,y.children),Cr(l)}f=y.children,typeof f!=\"string\"&&typeof f!=\"number\"&&typeof f!=\"bigint\"||l.textContent===\"\"+f||y.suppressHydrationWarning===!0||v0(l.textContent,f)?(y.popover!=null&&(pn(\"beforetoggle\",l),pn(\"toggle\",l)),y.onScroll!=null&&pn(\"scroll\",l),y.onScrollEnd!=null&&pn(\"scrollend\",l),y.onClick!=null&&(l.onclick=Xo),l=!0):l=!1,l||ap(s)}function Uk(s){for(id=s.return;id;)switch(id.tag){case 5:case 13:vy=!1;return;case 27:case 3:vy=!0;return;default:id=id.return}}function sb(s){if(s!==id)return!1;if(!Qr)return Uk(s),Qr=!0,!1;var l=s.tag,f;if((f=l!==3&&l!==27)&&((f=l===5)&&(f=s.type,f=!(f!==\"form\"&&f!==\"button\")||w0(s.type,s.memoizedProps)),f=!f),f&&Bs){for(f=Bs;f;){var y=Ar(s,0),v=sw(f);y.serverTail.push(v),f=v.type===\"Suspense\"?cw(f):td(f.nextSibling)}ap(s)}if(Uk(s),l===13){if(s=s.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(\"Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.\");Bs=cw(s)}else l===27?(l=Bs,of(s.type)?(s=aG,aG=null,Bs=s):Bs=l):Bs=id?td(s.stateNode.nextSibling):null;return!0}function zg(){Bs=id=null,Db=Qr=!1}function cp(){var s=QE;return s!==null&&(cd===null?cd=s:cd.push.apply(cd,s),QE=null),s}function jl(s){QE===null?QE=[s]:QE.push(s)}function dE(){var s=kp;if(s!==null){kp=null;for(var l=Tg(s);0<s.children.length;)s=s.children[0];jt(s.fiber,function(){console.error(`A tree hydrated but some attributes of the server rendered HTML didn\\'t match the client properties. This won\\'t be patched up. This can happen if a SSR-ed Client Component used:\\n\\n- A server/client branch \\\\`if (typeof window !== \\'undefined\\')\\\\`.\\n- Variable input such as \\\\`Date.now()\\\\` or \\\\`Math.random()\\\\` which changes each time it\\'s called.\\n- Date formatting in a user\\'s locale which doesn\\'t match the server.\\n- External changing data without sending a snapshot of it along with the HTML.\\n- Invalid HTML tag nesting.\\n\\nIt can also happen if the client has a browser extension installed which messes with the HTML before React loaded.\\n\\n%s%s`,\"https://react.dev/link/hydration-mismatch\",l)})}}function ab(){k_=hN=null,__=!1}function Qf(s,l,f){$(xK,l._currentValue,s),l._currentValue=f,$(EK,l._currentRenderer,s),l._currentRenderer!==void 0&&l._currentRenderer!==null&&l._currentRenderer!==Kce&&console.error(\"Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.\"),l._currentRenderer=Kce}function qd(s,l){s._currentValue=xK.current;var f=EK.current;V(EK,l),s._currentRenderer=f,V(xK,l)}function Xs(s,l,f){for(;s!==null;){var y=s.alternate;if((s.childLanes&l)!==l?(s.childLanes|=l,y!==null&&(y.childLanes|=l)):y!==null&&(y.childLanes&l)!==l&&(y.childLanes|=l),s===f)break;s=s.return}s!==f&&console.error(\"Expected to find the propagation root when scheduling context work. This error is likely caused by a bug in React. Please file an issue.\")}function O2(s,l,f,y){var v=s.child;for(v!==null&&(v.return=s);v!==null;){var A=v.dependencies;if(A!==null){var K=v.child;A=A.firstContext;e:for(;A!==null;){var te=A;A=v;for(var fe=0;fe<l.length;fe++)if(te.context===l[fe]){A.lanes|=f,te=A.alternate,te!==null&&(te.lanes|=f),Xs(A.return,f,s),y||(K=null);break e}A=te.next}}else if(v.tag===18){if(K=v.return,K===null)throw Error(\"We just came from a parent so we must have had a parent. This is a bug in React.\");K.lanes|=f,A=K.alternate,A!==null&&(A.lanes|=f),Xs(K,f,s),K=null}else K=v.child;if(K!==null)K.return=v;else for(K=v;K!==null;){if(K===s){K=null;break}if(v=K.sibling,v!==null){v.return=K.return,K=v;break}K=K.return}v=K}}function ea(s,l,f,y){s=null;for(var v=l,A=!1;v!==null;){if(!A){if((v.flags&524288)!==0)A=!0;else if((v.flags&262144)!==0)break}if(v.tag===10){var K=v.alternate;if(K===null)throw Error(\"Should have a current fiber. This is a bug in React.\");if(K=K.memoizedProps,K!==null){var te=v.type;od(v.pendingProps.value,K.value)||(s!==null?s.push(te):s=[te])}}else if(v===eN.current){if(K=v.alternate,K===null)throw Error(\"Should have a current fiber. This is a bug in React.\");K.memoizedState.memoizedState!==v.memoizedState.memoizedState&&(s!==null?s.push(q7):s=[q7])}v=v.return}s!==null&&O2(l,s,f,y),l.flags|=262144}function cb(s){for(s=s.firstContext;s!==null;){if(!od(s.context._currentValue,s.memoizedValue))return!0;s=s.next}return!1}function Gm(s){hN=s,k_=null,s=s.dependencies,s!==null&&(s.firstContext=null)}function Hr(s){return __&&console.error(\"Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().\"),fE(hN,s)}function Wd(s,l){return hN===null&&Gm(s),fE(s,l)}function fE(s,l){var f=l._currentValue;if(l={context:l,memoizedValue:f,next:null},k_===null){if(s===null)throw Error(\"Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().\");k_=l,s.dependencies={lanes:0,firstContext:l,_debugThenableState:null},s.flags|=524288}else k_=k_.next=l;return f}function Zm(){return{controller:new vFe,data:new Map,refCount:0}}function nl(s){s.controller.signal.aborted&&console.warn(\"A cache instance was retained after it was already freed. This likely indicates a bug in React.\"),s.refCount++}function Jf(s){s.refCount--,0>s.refCount&&console.warn(\"A cache instance was released after it was already freed. This likely indicates a bug in React.\"),s.refCount===0&&wFe(xFe,function(){s.controller.abort()})}function ko(){var s=JE;return JE=0,s}function ta(s){var l=JE;return JE=s,l}function lb(s){var l=JE;return JE+=s,l}function P2(s){lf=C_(),0>s.actualStartTime&&(s.actualStartTime=lf)}function M2(s){if(0<=lf){var l=C_()-lf;s.actualDuration+=l,s.selfBaseDuration=l,lf=-1}}function Ym(s){if(0<=lf){var l=C_()-lf;s.actualDuration+=l,lf=-1}}function Lo(){if(0<=lf){var s=C_()-lf;lf=-1,JE+=s}}function pi(){lf=C_()}function Qm(s){for(var l=s.child;l;)s.actualDuration+=l.actualDuration,l=l.sibling}function na(s,l){if(g7===null){var f=g7=[];SK=0,XE=Tc(),A_={status:\"pending\",value:void 0,then:function(y){f.push(y)}}}return SK++,l.then(Ku,Ku),l}function Ku(){if(--SK===0&&g7!==null){A_!==null&&(A_.status=\"fulfilled\");var s=g7;g7=null,XE=0,A_=null;for(var l=0;l<s.length;l++)(0,s[l])()}}function ub(s,l){var f=[],y={status:\"pending\",value:null,reason:null,then:function(v){f.push(v)}};return s.then(function(){y.status=\"fulfilled\",y.value=l;for(var v=0;v<f.length;v++)(0,f[v])(l)},function(v){for(y.status=\"rejected\",y.reason=v,v=0;v<f.length;v++)(0,f[v])(void 0)}),y}function lp(){var s=e5.current;return s!==null?s:wi.pooledCache}function Jm(s,l){l===null?$(e5,e5.current,s):$(e5,l.pool,s)}function Hg(){var s=lp();return s===null?null:{parent:lc._currentValue,pool:s}}function ns(){return{didWarnAboutUncachedPromise:!1,thenables:[]}}function xc(s){return s=s.status,s===\"fulfilled\"||s===\"rejected\"}function db(){}function hE(s,l,f){$e.actQueue!==null&&($e.didUsePromise=!0);var y=s.thenables;switch(f=y[f],f===void 0?y.push(l):f!==l&&(s.didWarnAboutUncachedPromise||(s.didWarnAboutUncachedPromise=!0,console.error(\"A component was suspended by an uncached promise. Creating promises inside a Client Component or hook is not yet supported, except via a Suspense-compatible library or framework.\")),l.then(db,db),l=f),l.status){case\"fulfilled\":return l.value;case\"rejected\":throw s=l.reason,rl(s),s;default:if(typeof l.status==\"string\")l.then(db,db);else{if(s=wi,s!==null&&100<s.shellSuspendCounter)throw Error(\"An unknown Component is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `\\'use client\\'` to a module that was originally written for the server.\");s=l,s.status=\"pending\",s.then(function(v){if(l.status===\"pending\"){var A=l;A.status=\"fulfilled\",A.value=v}},function(v){if(l.status===\"pending\"){var A=l;A.status=\"rejected\",A.reason=v}})}switch(l.status){case\"fulfilled\":return l.value;case\"rejected\":throw s=l.reason,rl(s),s}throw k7=l,vN=!0,S7}}function Ea(){if(k7===null)throw Error(\"Expected a suspended thenable. This is a bug in React. Please file an issue.\");var s=k7;return k7=null,vN=!1,s}function rl(s){if(s===S7||s===bN)throw Error(\"Hooks are not supported inside an async component. This error is often caused by accidentally adding `\\'use client\\'` to a module that was originally written for the server.\")}function Sa(s){s.updateQueue={baseState:s.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function qg(s,l){s=s.updateQueue,l.updateQueue===s&&(l.updateQueue={baseState:s.baseState,firstBaseUpdate:s.firstBaseUpdate,lastBaseUpdate:s.lastBaseUpdate,shared:s.shared,callbacks:null})}function Vd(s){return{lane:s,tag:Jce,payload:null,callback:null,next:null}}function oi(s,l,f){var y=s.updateQueue;if(y===null)return null;if(y=y.shared,CK===y&&!tle){var v=Z(s);console.error(`An update (setState, replaceState, or forceUpdate) was scheduled from inside an update function. Update functions should be pure, with zero side-effects. Consider using componentDidUpdate or a callback.\\n\\nPlease update the following component: %s`,v),tle=!0}return(Oo&ad)!==hh?(v=y.pending,v===null?l.next=l:(l.next=v.next,v.next=l),y.pending=l,l=el(s),Ug(s,null,f),l):(ip(s,y,l,f),el(s))}function Xf(s,l,f){if(l=l.updateQueue,l!==null&&(l=l.shared,(f&4194048)!==0)){var y=l.lanes;y&=s.pendingLanes,f|=y,l.lanes=f,Mn(s,f)}}function fb(s,l){var f=s.updateQueue,y=s.alternate;if(y!==null&&(y=y.updateQueue,f===y)){var v=null,A=null;if(f=f.firstBaseUpdate,f!==null){do{var K={lane:f.lane,tag:f.tag,payload:f.payload,callback:null,next:null};A===null?v=A=K:A=A.next=K,f=f.next}while(f!==null);A===null?v=A=l:A=A.next=l}else v=A=l;f={baseState:y.baseState,firstBaseUpdate:v,lastBaseUpdate:A,shared:y.shared,callbacks:y.callbacks},s.updateQueue=f;return}s=f.lastBaseUpdate,s===null?f.firstBaseUpdate=l:s.next=l,f.lastBaseUpdate=l}function Wg(){if(AK){var s=A_;if(s!==null)throw s}}function Xm(s,l,f,y){AK=!1;var v=s.updateQueue;bw=!1,CK=v.shared;var A=v.firstBaseUpdate,K=v.lastBaseUpdate,te=v.shared.pending;if(te!==null){v.shared.pending=null;var fe=te,me=fe.next;fe.next=null,K===null?A=me:K.next=me,K=fe;var Ue=s.alternate;Ue!==null&&(Ue=Ue.updateQueue,te=Ue.lastBaseUpdate,te!==K&&(te===null?Ue.firstBaseUpdate=me:te.next=me,Ue.lastBaseUpdate=fe))}if(A!==null){var Ke=v.baseState;K=0,Ue=me=fe=null,te=A;do{var Fe=te.lane&-536870913,Qe=Fe!==te.lane;if(Qe?(Rr&Fe)===Fe:(y&Fe)===Fe){Fe!==0&&Fe===XE&&(AK=!0),Ue!==null&&(Ue=Ue.next={lane:0,tag:te.tag,payload:te.payload,callback:null,next:null});e:{Fe=s;var tn=te,On=l,xi=f;switch(tn.tag){case Xce:if(tn=tn.payload,typeof tn==\"function\"){__=!0;var Dr=tn.call(xi,Ke,On);if(Fe.mode&ru){se(!0);try{tn.call(xi,Ke,On)}finally{se(!1)}}__=!1,Ke=Dr;break e}Ke=tn;break e;case _K:Fe.flags=Fe.flags&-65537|128;case Jce:if(Dr=tn.payload,typeof Dr==\"function\"){if(__=!0,tn=Dr.call(xi,Ke,On),Fe.mode&ru){se(!0);try{Dr.call(xi,Ke,On)}finally{se(!1)}}__=!1}else tn=Dr;if(tn==null)break e;Ke=pr({},Ke,tn);break e;case ele:bw=!0}}Fe=te.callback,Fe!==null&&(s.flags|=64,Qe&&(s.flags|=8192),Qe=v.callbacks,Qe===null?v.callbacks=[Fe]:Qe.push(Fe))}else Qe={lane:Fe,tag:te.tag,payload:te.payload,callback:te.callback,next:null},Ue===null?(me=Ue=Qe,fe=Ke):Ue=Ue.next=Qe,K|=Fe;if(te=te.next,te===null){if(te=v.shared.pending,te===null)break;Qe=te,te=Qe.next,Qe.next=null,v.lastBaseUpdate=Qe,v.shared.pending=null}}while(!0);Ue===null&&(fe=Ke),v.baseState=fe,v.firstBaseUpdate=me,v.lastBaseUpdate=Ue,A===null&&(v.shared.lanes=0),Ew|=K,s.lanes=K,s.memoizedState=Ke}CK=null}function N2(s,l){if(typeof s!=\"function\")throw Error(\"Invalid argument passed as callback. Expected a function. Instead received: \"+s);s.call(l)}function e0(s,l){var f=s.shared.hiddenCallbacks;if(f!==null)for(s.shared.hiddenCallbacks=null,s=0;s<f.length;s++)N2(f[s],l)}function t0(s,l){var f=s.callbacks;if(f!==null)for(s.callbacks=null,s=0;s<f.length;s++)N2(f[s],l)}function tc(s,l){var f=Ey;$(wN,f,s),$(T_,l,s),Ey=f|l.baseLanes}function eh(s){$(wN,Ey,s),$(T_,T_.current,s)}function ol(s){Ey=wN.current,V(T_,s),V(wN,s)}function In(){var s=We;Ap===null?Ap=[s]:Ap.push(s)}function gt(){var s=We;if(Ap!==null&&(Ub++,Ap[Ub]!==s)){var l=Z(Dn);if(!nle.has(l)&&(nle.add(l),Ap!==null)){for(var f=\"\",y=0;y<=Ub;y++){var v=Ap[y],A=y===Ub?s:v;for(v=y+1+\". \"+v;30>v.length;)v+=\" \";v+=A+`\\n`,f+=v}console.error(`React has detected a change in the order of Hooks called by %s. This will lead to bugs and errors if not fixed. For more information, read the Rules of Hooks: https://react.dev/link/rules-of-hooks\\n\\n   Previous render            Next render\\n   ------------------------------------------------------\\n%s   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n`,l,f)}}}function up(s){s==null||pl(s)||console.error(\"%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.\",We,typeof s)}function Vg(){var s=Z(Dn);ole.has(s)||(ole.add(s),console.error(\"ReactDOM.useFormState has been renamed to React.useActionState. Please update %s to use React.useActionState.\",s))}function Yo(){throw Error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`)}function Gu(s,l){if(C7)return!1;if(l===null)return console.error(\"%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.\",We),!1;s.length!==l.length&&console.error(`The final argument passed to %s changed size between renders. The order and size of this array must remain constant.\\n\\nPrevious: %s\\nIncoming: %s`,We,\"[\"+l.join(\", \")+\"]\",\"[\"+s.join(\", \")+\"]\");for(var f=0;f<l.length&&f<s.length;f++)if(!od(s[f],l[f]))return!1;return!0}function hb(s,l,f,y,v,A){vw=A,Dn=l,Ap=s!==null?s._debugHookTypes:null,Ub=-1,C7=s!==null&&s.type!==l.type,(Object.prototype.toString.call(f)===\"[object AsyncFunction]\"||Object.prototype.toString.call(f)===\"[object AsyncGeneratorFunction]\")&&(A=Z(Dn),TK.has(A)||(TK.add(A),console.error(\"%s is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `\\'use client\\'` to a module that was originally written for the server.\",A===null?\"An unknown Component\":\"<\"+A+\">\"))),l.memoizedState=null,l.updateQueue=null,l.lanes=0,$e.H=s!==null&&s.memoizedState!==null?IK:Ap!==null?ile:RK,n5=A=(l.mode&ru)!==Ni;var K=OK(f,y,v);if(n5=!1,I_&&(K=L2(l,f,y,v)),A){se(!0);try{K=L2(l,f,y,v)}finally{se(!1)}}return pE(s,l),K}function pE(s,l){l._debugHookTypes=Ap,l.dependencies===null?Fb!==null&&(l.dependencies={lanes:0,firstContext:null,_debugThenableState:Fb}):l.dependencies._debugThenableState=Fb,$e.H=SN;var f=ai!==null&&ai.next!==null;if(vw=0,Ap=We=Na=ai=Dn=null,Ub=-1,s!==null&&(s.flags&65011712)!==(l.flags&65011712)&&console.error(\"Internal React error: Expected static flag was missing. Please notify the React team.\"),xN=!1,_7=0,Fb=null,f)throw Error(\"Rendered fewer hooks than expected. This may be caused by an accidental early return statement.\");s===null||Ic||(s=s.dependencies,s!==null&&cb(s)&&(Ic=!0)),vN?(vN=!1,s=!0):s=!1,s&&(l=Z(l)||\"Unknown\",rle.has(l)||TK.has(l)||(rle.add(l),console.error(\"`use` was called from inside a try/catch block. This is not allowed and can lead to unexpected behavior. To handle errors triggered by `use`, wrap your component in a error boundary.\")))}function L2(s,l,f,y){Dn=s;var v=0;do{if(I_&&(Fb=null),_7=0,I_=!1,v>=SFe)throw Error(\"Too many re-renders. React limits the number of renders to prevent an infinite loop.\");if(v+=1,C7=!1,Na=ai=null,s.updateQueue!=null){var A=s.updateQueue;A.lastEffect=null,A.events=null,A.stores=null,A.memoCache!=null&&(A.memoCache.index=0)}Ub=-1,$e.H=sle,A=OK(l,f,y)}while(I_);return A}function e7(){var s=$e.H,l=s.useState()[0];return l=typeof l.then==\"function\"?mi(l):l,s=s.useState()[0],(ai!==null?ai.memoizedState:null)!==s&&(Dn.flags|=1024),l}function ra(){var s=EN!==0;return EN=0,s}function Ec(s,l,f){l.updateQueue=s.updateQueue,l.flags=(l.mode&_0)!==Ni?l.flags&-402655237:l.flags&-2053,s.lanes&=~f}function nc(s){if(xN){for(s=s.memoizedState;s!==null;){var l=s.queue;l!==null&&(l.pending=null),s=s.next}xN=!1}vw=0,Ap=Na=ai=Dn=null,Ub=-1,We=null,I_=!1,_7=EN=0,Fb=null}function ka(){var s={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Na===null?Dn.memoizedState=Na=s:Na=Na.next=s,Na}function Nr(){if(ai===null){var s=Dn.alternate;s=s!==null?s.memoizedState:null}else s=ai.next;var l=Na===null?Dn.memoizedState:Na.next;if(l!==null)Na=l,ai=s;else{if(s===null)throw Dn.alternate===null?Error(\"Update hook called on initial render. This is likely a bug in React. Please file an issue.\"):Error(\"Rendered more hooks than during the previous render.\");ai=s,s={memoizedState:ai.memoizedState,baseState:ai.baseState,baseQueue:ai.baseQueue,queue:ai.queue,next:null},Na===null?Dn.memoizedState=Na=s:Na=Na.next=s}return Na}function B2(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function mi(s){var l=_7;return _7+=1,Fb===null&&(Fb=ns()),s=hE(Fb,s,l),l=Dn,(Na===null?l.memoizedState:Na.next)===null&&(l=l.alternate,$e.H=l!==null&&l.memoizedState!==null?IK:RK),s}function zl(s){if(s!==null&&typeof s==\"object\"){if(typeof s.then==\"function\")return mi(s);if(s.$$typeof===hy)return Hr(s)}throw Error(\"An unsupported type was passed to use(): \"+String(s))}function dp(s){var l=null,f=Dn.updateQueue;if(f!==null&&(l=f.memoCache),l==null){var y=Dn.alternate;y!==null&&(y=y.updateQueue,y!==null&&(y=y.memoCache,y!=null&&(l={data:y.data.map(function(v){return v.slice()}),index:0})))}if(l==null&&(l={data:[],index:0}),f===null&&(f=B2(),Dn.updateQueue=f),f.memoCache=l,f=l.data[l.index],f===void 0||C7)for(f=l.data[l.index]=Array(s),y=0;y<s;y++)f[y]=lDe;else f.length!==s&&console.error(\"Expected a constant size argument for each invocation of useMemoCache. The previous cache was allocated with size %s but size %s was requested.\",f.length,s);return l.index++,f}function Hl(s,l){return typeof l==\"function\"?l(s):l}function D2(s,l,f){var y=ka();if(f!==void 0){var v=f(l);if(n5){se(!0);try{f(l)}finally{se(!1)}}}else v=l;return y.memoizedState=y.baseState=v,s={pending:null,lanes:0,dispatch:null,lastRenderedReducer:s,lastRenderedState:v},y.queue=s,s=s.dispatch=OE.bind(null,Dn,s),[y.memoizedState,s]}function n0(s){var l=Nr();return F2(l,ai,s)}function F2(s,l,f){var y=s.queue;if(y===null)throw Error(\"Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)\");y.lastRenderedReducer=f;var v=s.baseQueue,A=y.pending;if(A!==null){if(v!==null){var K=v.next;v.next=A.next,A.next=K}l.baseQueue!==v&&console.error(\"Internal error: Expected work-in-progress queue to be a clone. This is a bug in React.\"),l.baseQueue=v=A,y.pending=null}if(A=s.baseState,v===null)s.memoizedState=A;else{l=v.next;var te=K=null,fe=null,me=l,Ue=!1;do{var Ke=me.lane&-536870913;if(Ke!==me.lane?(Rr&Ke)===Ke:(vw&Ke)===Ke){var Fe=me.revertLane;if(Fe===0)fe!==null&&(fe=fe.next={lane:0,revertLane:0,action:me.action,hasEagerState:me.hasEagerState,eagerState:me.eagerState,next:null}),Ke===XE&&(Ue=!0);else if((vw&Fe)===Fe){me=me.next,Fe===XE&&(Ue=!0);continue}else Ke={lane:0,revertLane:me.revertLane,action:me.action,hasEagerState:me.hasEagerState,eagerState:me.eagerState,next:null},fe===null?(te=fe=Ke,K=A):fe=fe.next=Ke,Dn.lanes|=Fe,Ew|=Fe;Ke=me.action,n5&&f(A,Ke),A=me.hasEagerState?me.eagerState:f(A,Ke)}else Fe={lane:Ke,revertLane:me.revertLane,action:me.action,hasEagerState:me.hasEagerState,eagerState:me.eagerState,next:null},fe===null?(te=fe=Fe,K=A):fe=fe.next=Fe,Dn.lanes|=Ke,Ew|=Ke;me=me.next}while(me!==null&&me!==l);if(fe===null?K=A:fe.next=te,!od(A,s.memoizedState)&&(Ic=!0,Ue&&(f=A_,f!==null)))throw f;s.memoizedState=A,s.baseState=K,s.baseQueue=fe,y.lastRenderedState=A}return v===null&&(y.lanes=0),[s.memoizedState,y.dispatch]}function $g(s){var l=Nr(),f=l.queue;if(f===null)throw Error(\"Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)\");f.lastRenderedReducer=s;var y=f.dispatch,v=f.pending,A=l.memoizedState;if(v!==null){f.pending=null;var K=v=v.next;do A=s(A,K.action),K=K.next;while(K!==v);od(A,l.memoizedState)||(Ic=!0),l.memoizedState=A,l.baseQueue===null&&(l.baseState=A),f.lastRenderedState=A}return[A,y]}function U2(s,l,f){var y=Dn,v=ka();if(Qr){if(f===void 0)throw Error(\"Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.\");var A=f();R_||A===f()||(console.error(\"The result of getServerSnapshot should be cached to avoid an infinite loop\"),R_=!0)}else{if(A=l(),R_||(f=l(),od(A,f)||(console.error(\"The result of getSnapshot should be cached to avoid an infinite loop\"),R_=!0)),wi===null)throw Error(\"Expected a work-in-progress root. This is a bug in React. Please file an issue.\");(Rr&124)!==0||mE(y,l,A)}return v.memoizedState=A,f={value:A,getSnapshot:l},v.queue=f,V2(mb.bind(null,y,f,s),[s]),y.flags|=2048,Gg(Cp|uc,W2(),pb.bind(null,y,f,A,l),null),A}function r0(s,l,f){var y=Dn,v=Nr(),A=Qr;if(A){if(f===void 0)throw Error(\"Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.\");f=f()}else if(f=l(),!R_){var K=l();od(f,K)||(console.error(\"The result of getSnapshot should be cached to avoid an infinite loop\"),R_=!0)}(K=!od((ai||v).memoizedState,f))&&(v.memoizedState=f,Ic=!0),v=v.queue;var te=mb.bind(null,y,v,s);if(Sc(2048,uc,te,[s]),v.getSnapshot!==l||K||Na!==null&&Na.memoizedState.tag&Cp){if(y.flags|=2048,Gg(Cp|uc,W2(),pb.bind(null,y,v,f,l),null),wi===null)throw Error(\"Expected a work-in-progress root. This is a bug in React. Please file an issue.\");A||(vw&124)!==0||mE(y,l,f)}return f}function mE(s,l,f){s.flags|=16384,s={getSnapshot:l,value:f},l=Dn.updateQueue,l===null?(l=B2(),Dn.updateQueue=l,l.stores=[s]):(f=l.stores,f===null?l.stores=[s]:f.push(s))}function pb(s,l,f,y){l.value=f,l.getSnapshot=y,j2(l)&&jk(s)}function mb(s,l,f){return f(function(){j2(l)&&jk(s)})}function j2(s){var l=s.getSnapshot;s=s.value;try{var f=l();return!od(s,f)}catch{return!0}}function jk(s){var l=Rs(s,2);l!==null&&Le(l,s,2)}function gE(s){var l=ka();if(typeof s==\"function\"){var f=s;if(s=f(),n5){se(!0);try{f()}finally{se(!1)}}}return l.memoizedState=l.baseState=s,l.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Hl,lastRenderedState:s},l}function yE(s){s=gE(s);var l=s.queue,f=Q2.bind(null,Dn,l);return l.dispatch=f,[s.memoizedState,f]}function bE(s){var l=ka();l.memoizedState=l.baseState=s;var f={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return l.queue=f,l=gb.bind(null,Dn,!0,f),f.dispatch=l,[s,l]}function z2(s,l){var f=Nr();return zk(f,ai,s,l)}function zk(s,l,f,y){return s.baseState=f,F2(s,ai,typeof y==\"function\"?y:Hl)}function vE(s,l){var f=Nr();return ai!==null?zk(f,ai,s,l):(f.baseState=s,[s,f.queue.dispatch])}function t7(s,l,f,y,v){if(Qg(s))throw Error(\"Cannot update form state while rendering.\");if(s=l.action,s!==null){var A={payload:v,action:s,next:null,isTransition:!0,status:\"pending\",value:null,reason:null,listeners:[],then:function(K){A.listeners.push(K)}};$e.T!==null?f(!0):A.isTransition=!1,y(A),f=l.pending,f===null?(A.next=l.pending=A,wE(l,A)):(A.next=f.next,l.pending=f.next=A)}}function wE(s,l){var f=l.action,y=l.payload,v=s.state;if(l.isTransition){var A=$e.T,K={};$e.T=K,$e.T._updatedFibers=new Set;try{var te=f(v,y),fe=$e.S;fe!==null&&fe(K,te),Hk(s,l,te)}catch(me){xE(s,l,me)}finally{$e.T=A,A===null&&K._updatedFibers&&(s=K._updatedFibers.size,K._updatedFibers.clear(),10<s&&console.warn(\"Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.\"))}}else try{K=f(v,y),Hk(s,l,K)}catch(me){xE(s,l,me)}}function Hk(s,l,f){f!==null&&typeof f==\"object\"&&typeof f.then==\"function\"?(f.then(function(y){qk(s,l,y)},function(y){return xE(s,l,y)}),l.isTransition||console.error(\"An async function with useActionState was called outside of a transition. This is likely not what you intended (for example, isPending will not update correctly). Either call the returned function inside startTransition, or pass it to an `action` or `formAction` prop.\")):qk(s,l,f)}function qk(s,l,f){l.status=\"fulfilled\",l.value=f,Wk(l),s.state=f,l=s.pending,l!==null&&(f=l.next,f===l?s.pending=null:(f=f.next,l.next=f,wE(s,f)))}function xE(s,l,f){var y=s.pending;if(s.pending=null,y!==null){y=y.next;do l.status=\"rejected\",l.reason=f,Wk(l),l=l.next;while(l!==y)}s.action=null}function Wk(s){s=s.listeners;for(var l=0;l<s.length;l++)(0,s[l])()}function Vk(s,l){return l}function Kg(s,l){if(Qr){var f=wi.formState;if(f!==null){e:{var y=Dn;if(Qr){if(Bs){t:{for(var v=Bs,A=vy;v.nodeType!==8;){if(!A){v=null;break t}if(v=td(v.nextSibling),v===null){v=null;break t}}A=v.data,v=A===rG||A===oue?v:null}if(v){Bs=td(v.nextSibling),y=v.data===rG;break e}}ap(y)}y=!1}y&&(l=f[0])}}return f=ka(),f.memoizedState=f.baseState=l,y={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Vk,lastRenderedState:l},f.queue=y,f=Q2.bind(null,Dn,y),y.dispatch=f,y=gE(!1),A=gb.bind(null,Dn,!1,y.queue),y=ka(),v={state:l,dispatch:null,action:s,pending:null},y.queue=v,f=t7.bind(null,Dn,v,A,f),v.dispatch=f,y.memoizedState=s,[l,f,!1]}function o0(s){var l=Nr();return $k(l,ai,s)}function $k(s,l,f){if(l=F2(s,l,Vk)[0],s=n0(Hl)[0],typeof l==\"object\"&&l!==null&&typeof l.then==\"function\")try{var y=mi(l)}catch(K){throw K===S7?bN:K}else y=l;l=Nr();var v=l.queue,A=v.dispatch;return f!==l.memoizedState&&(Dn.flags|=2048,Gg(Cp|uc,W2(),H2.bind(null,v,f),null)),[y,A,s]}function H2(s,l){s.action=l}function q2(s){var l=Nr(),f=ai;if(f!==null)return $k(l,f,s);Nr(),l=l.memoizedState,f=Nr();var y=f.queue.dispatch;return f.memoizedState=s,[l,y,!1]}function Gg(s,l,f,y){return s={tag:s,create:f,deps:y,inst:l,next:null},l=Dn.updateQueue,l===null&&(l=B2(),Dn.updateQueue=l),f=l.lastEffect,f===null?l.lastEffect=s.next=s:(y=f.next,f.next=s,s.next=y,l.lastEffect=s),s}function W2(){return{destroy:void 0,resource:void 0}}function EE(s){var l=ka();return s={current:s},l.memoizedState=s}function i0(s,l,f,y){var v=ka();y=y===void 0?null:y,Dn.flags|=s,v.memoizedState=Gg(Cp|l,W2(),f,y)}function Sc(s,l,f,y){var v=Nr();y=y===void 0?null:y;var A=v.memoizedState.inst;ai!==null&&y!==null&&Gu(y,ai.memoizedState.deps)?v.memoizedState=Gg(l,A,f,y):(Dn.flags|=s,v.memoizedState=Gg(Cp|l,A,f,y))}function V2(s,l){(Dn.mode&_0)!==Ni&&(Dn.mode&Hce)===Ni?i0(276826112,uc,s,l):i0(8390656,uc,s,l)}function SE(s,l){var f=4194308;return(Dn.mode&_0)!==Ni&&(f|=134217728),i0(f,gl,s,l)}function Kk(s,l){if(typeof l==\"function\"){s=s();var f=l(s);return function(){typeof f==\"function\"?f():l(null)}}if(l!=null)return l.hasOwnProperty(\"current\")||console.error(\"Expected useImperativeHandle() first argument to either be a ref callback or React.createRef() object. Instead received: %s.\",\"an object with keys {\"+Object.keys(l).join(\", \")+\"}\"),s=s(),l.current=s,function(){l.current=null}}function kE(s,l,f){typeof l!=\"function\"&&console.error(\"Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.\",l!==null?typeof l:\"null\"),f=f!=null?f.concat([s]):null;var y=4194308;(Dn.mode&_0)!==Ni&&(y|=134217728),i0(y,gl,Kk.bind(null,l,s),f)}function $2(s,l,f){typeof l!=\"function\"&&console.error(\"Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.\",l!==null?typeof l:\"null\"),f=f!=null?f.concat([s]):null,Sc(4,gl,Kk.bind(null,l,s),f)}function _E(s,l){return ka().memoizedState=[s,l===void 0?null:l],s}function K2(s,l){var f=Nr();l=l===void 0?null:l;var y=f.memoizedState;return l!==null&&Gu(l,y[1])?y[0]:(f.memoizedState=[s,l],s)}function Zg(s,l){var f=ka();l=l===void 0?null:l;var y=s();if(n5){se(!0);try{s()}finally{se(!1)}}return f.memoizedState=[y,l],y}function G2(s,l){var f=Nr();l=l===void 0?null:l;var y=f.memoizedState;if(l!==null&&Gu(l,y[1]))return y[0];if(y=s(),n5){se(!0);try{s()}finally{se(!1)}}return f.memoizedState=[y,l],y}function CE(s,l){var f=ka();return AE(f,s,l)}function Gk(s,l){var f=Nr();return Yk(f,ai.memoizedState,s,l)}function Zk(s,l){var f=Nr();return ai===null?AE(f,s,l):Yk(f,ai.memoizedState,s,l)}function AE(s,l,f){return f===void 0||(vw&1073741824)!==0?s.memoizedState=l:(s.memoizedState=f,s=Ae(),Dn.lanes|=s,Ew|=s,f)}function Yk(s,l,f,y){return od(f,l)?f:T_.current!==null?(s=AE(s,f,y),od(s,l)||(Ic=!0),s):(vw&42)===0?(Ic=!0,s.memoizedState=f):(s=Ae(),Dn.lanes|=s,Ew|=s,l)}function Qk(s,l,f,y,v){var A=Io.p;Io.p=A!==0&&A<k0?A:k0;var K=$e.T,te={};$e.T=te,gb(s,!1,l,f),te._updatedFibers=new Set;try{var fe=v(),me=$e.S;if(me!==null&&me(te,fe),fe!==null&&typeof fe==\"object\"&&typeof fe.then==\"function\"){var Ue=ub(fe,y);a0(s,l,Ue,Ee(s))}else a0(s,l,y,Ee(s))}catch(Ke){a0(s,l,{then:function(){},status:\"rejected\",reason:Ke},Ee(s))}finally{Io.p=A,$e.T=K,K===null&&te._updatedFibers&&(s=te._updatedFibers.size,te._updatedFibers.clear(),10<s&&console.warn(\"Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.\"))}}function Yg(s,l,f,y){if(s.tag!==5)throw Error(\"Expected the form instance to be a HostComponent. This is a bug in React.\");var v=Z2(s).queue;Qk(s,v,l,h5,f===null?h:function(){return th(s),f(y)})}function Z2(s){var l=s.memoizedState;if(l!==null)return l;l={memoizedState:h5,baseState:h5,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Hl,lastRenderedState:h5},next:null};var f={};return l.next={memoizedState:f,baseState:f,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Hl,lastRenderedState:f},next:null},s.memoizedState=l,s=s.alternate,s!==null&&(s.memoizedState=l),l}function th(s){$e.T===null&&console.error(\"requestFormReset was called outside a transition or action. To fix, move to an action, or wrap with startTransition.\");var l=Z2(s).next.queue;a0(s,l,{},Ee(s))}function TE(){var s=gE(!1);return s=Qk.bind(null,Dn,s.queue,!0,!1),ka().memoizedState=s,[!1,s]}function Jk(){var s=n0(Hl)[0],l=Nr().memoizedState;return[typeof s==\"boolean\"?s:mi(s),l]}function RE(){var s=$g(Hl)[0],l=Nr().memoizedState;return[typeof s==\"boolean\"?s:mi(s),l]}function s0(){return Hr(q7)}function IE(){var s=ka(),l=wi.identifierPrefix;if(Qr){var f=Bb,y=Lb;f=(y&~(1<<32-nd(y)-1)).toString(32)+f,l=\"\\\\xAB\"+l+\"R\"+f,f=EN++,0<f&&(l+=\"H\"+f.toString(32)),l+=\"\\\\xBB\"}else f=EFe++,l=\"\\\\xAB\"+l+\"r\"+f.toString(32)+\"\\\\xBB\";return s.memoizedState=l}function Y2(){return ka().memoizedState=Xk.bind(null,Dn)}function Xk(s,l){for(var f=s.return;f!==null;){switch(f.tag){case 24:case 3:var y=Ee(f);s=Vd(y);var v=oi(f,s,y);v!==null&&(Le(v,f,y),Xf(v,f,y)),f=Zm(),l!=null&&v!==null&&console.error(\"The seed argument is not enabled outside experimental channels.\"),s.payload={cache:f};return}f=f.return}}function OE(s,l,f){var y=arguments;typeof y[3]==\"function\"&&console.error(\"State updates from the useState() and useReducer() Hooks don\\'t support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().\"),y=Ee(s);var v={lane:y,revertLane:0,action:f,hasEagerState:!1,eagerState:null,next:null};Qg(s)?PE(l,v):(v=Fg(s,l,v,y),v!==null&&(Le(v,s,y),e_(v,l,y))),wt(s,y)}function Q2(s,l,f){var y=arguments;typeof y[3]==\"function\"&&console.error(\"State updates from the useState() and useReducer() Hooks don\\'t support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().\"),y=Ee(s),a0(s,l,f,y),wt(s,y)}function a0(s,l,f,y){var v={lane:y,revertLane:0,action:f,hasEagerState:!1,eagerState:null,next:null};if(Qg(s))PE(l,v);else{var A=s.alternate;if(s.lanes===0&&(A===null||A.lanes===0)&&(A=l.lastRenderedReducer,A!==null)){var K=$e.H;$e.H=A0;try{var te=l.lastRenderedState,fe=A(te,f);if(v.hasEagerState=!0,v.eagerState=fe,od(fe,te))return ip(s,l,v,0),wi===null&&Km(),!1}catch{}finally{$e.H=K}}if(f=Fg(s,l,v,y),f!==null)return Le(f,s,y),e_(f,l,y),!0}return!1}function gb(s,l,f,y){if($e.T===null&&XE===0&&console.error(\"An optimistic state update occurred outside a transition or action. To fix, move the update to an action, or wrap with startTransition.\"),y={lane:2,revertLane:Tc(),action:y,hasEagerState:!1,eagerState:null,next:null},Qg(s)){if(l)throw Error(\"Cannot update optimistic state while rendering.\");console.error(\"Cannot call startTransition while rendering.\")}else l=Fg(s,f,y,2),l!==null&&Le(l,s,2);wt(s,2)}function Qg(s){var l=s.alternate;return s===Dn||l!==null&&l===Dn}function PE(s,l){I_=xN=!0;var f=s.pending;f===null?l.next=l:(l.next=f.next,f.next=l),s.pending=l}function e_(s,l,f){if((f&4194048)!==0){var y=l.lanes;y&=s.pendingLanes,f|=y,l.lanes=f,Mn(s,f)}}function oa(s){var l=or;return s!=null&&(or=l===null?s:l.concat(s)),l}function J2(s,l,f){for(var y=Object.keys(s.props),v=0;v<y.length;v++){var A=y[v];if(A!==\"children\"&&A!==\"key\"){l===null&&(l=jg(s,f.mode,0),l._debugInfo=or,l.return=f),jt(l,function(K){console.error(\"Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.\",K)},A);break}}}function X2(s){var l=A7;return A7+=1,O_===null&&(O_=ns()),hE(O_,s,l)}function yb(s,l){l=l.props.ref,s.ref=l!==void 0?l:null}function il(s,l){throw l.$$typeof===aDe?Error(`A React Element from an older version of React was rendered. This is not supported. It can happen if:\\n- Multiple copies of the \"react\" package is used.\\n- A library pre-bundled an old copy of \"react\" or \"react/jsx-runtime\".\\n- A compiler tries to \"inline\" JSX instead of using the runtime.`):(s=Object.prototype.toString.call(l),Error(\"Objects are not valid as a React child (found: \"+(s===\"[object Object]\"?\"object with keys {\"+Object.keys(l).join(\", \")+\"}\":s)+\"). If you meant to render a collection of children, use an array instead.\"))}function c0(s,l){var f=Z(s)||\"Component\";xle[f]||(xle[f]=!0,l=l.displayName||l.name||\"Component\",s.tag===3?console.error(`Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.\\n  root.render(%s)`,l,l,l):console.error(`Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.\\n  <%s>{%s}</%s>`,l,l,f,l,f))}function sl(s,l){var f=Z(s)||\"Component\";Ele[f]||(Ele[f]=!0,l=String(l),s.tag===3?console.error(`Symbols are not valid as a React child.\\n  root.render(%s)`,l):console.error(`Symbols are not valid as a React child.\\n  <%s>%s</%s>`,f,l,f))}function ME(s){function l(Se,ke){if(s){var Oe=Se.deletions;Oe===null?(Se.deletions=[ke],Se.flags|=16):Oe.push(ke)}}function f(Se,ke){if(!s)return null;for(;ke!==null;)l(Se,ke),ke=ke.sibling;return null}function y(Se){for(var ke=new Map;Se!==null;)Se.key!==null?ke.set(Se.key,Se):ke.set(Se.index,Se),Se=Se.sibling;return ke}function v(Se,ke){return Se=wa(Se,ke),Se.index=0,Se.sibling=null,Se}function A(Se,ke,Oe){return Se.index=Oe,s?(Oe=Se.alternate,Oe!==null?(Oe=Oe.index,Oe<ke?(Se.flags|=67108866,ke):Oe):(Se.flags|=67108866,ke)):(Se.flags|=1048576,ke)}function K(Se){return s&&Se.alternate===null&&(Se.flags|=67108866),Se}function te(Se,ke,Oe,Je){return ke===null||ke.tag!==6?(ke=Yf(Oe,Se.mode,Je),ke.return=Se,ke._debugOwner=Se,ke._debugTask=Se._debugTask,ke._debugInfo=or,ke):(ke=v(ke,Oe),ke.return=Se,ke._debugInfo=or,ke)}function fe(Se,ke,Oe,Je){var Pt=Oe.type;return Pt===l_?(ke=Ue(Se,ke,Oe.props.children,Je,Oe.key),J2(Oe,ke,Se),ke):ke!==null&&(ke.elementType===Pt||ob(ke,Oe)||typeof Pt==\"object\"&&Pt!==null&&Pt.$$typeof===uh&&ww(Pt)===ke.type)?(ke=v(ke,Oe.props),yb(ke,Oe),ke.return=Se,ke._debugOwner=Oe._owner,ke._debugInfo=or,ke):(ke=jg(Oe,Se.mode,Je),yb(ke,Oe),ke.return=Se,ke._debugInfo=or,ke)}function me(Se,ke,Oe,Je){return ke===null||ke.tag!==4||ke.stateNode.containerInfo!==Oe.containerInfo||ke.stateNode.implementation!==Oe.implementation?(ke=cE(Oe,Se.mode,Je),ke.return=Se,ke._debugInfo=or,ke):(ke=v(ke,Oe.children||[]),ke.return=Se,ke._debugInfo=or,ke)}function Ue(Se,ke,Oe,Je,Pt){return ke===null||ke.tag!==7?(ke=Zf(Oe,Se.mode,Je,Pt),ke.return=Se,ke._debugOwner=Se,ke._debugTask=Se._debugTask,ke._debugInfo=or,ke):(ke=v(ke,Oe),ke.return=Se,ke._debugInfo=or,ke)}function Ke(Se,ke,Oe){if(typeof ke==\"string\"&&ke!==\"\"||typeof ke==\"number\"||typeof ke==\"bigint\")return ke=Yf(\"\"+ke,Se.mode,Oe),ke.return=Se,ke._debugOwner=Se,ke._debugTask=Se._debugTask,ke._debugInfo=or,ke;if(typeof ke==\"object\"&&ke!==null){switch(ke.$$typeof){case dw:return Oe=jg(ke,Se.mode,Oe),yb(Oe,ke),Oe.return=Se,Se=oa(ke._debugInfo),Oe._debugInfo=or,or=Se,Oe;case c_:return ke=cE(ke,Se.mode,Oe),ke.return=Se,ke._debugInfo=or,ke;case uh:var Je=oa(ke._debugInfo);return ke=ww(ke),Se=Ke(Se,ke,Oe),or=Je,Se}if(pl(ke)||J(ke))return Oe=Zf(ke,Se.mode,Oe,null),Oe.return=Se,Oe._debugOwner=Se,Oe._debugTask=Se._debugTask,Se=oa(ke._debugInfo),Oe._debugInfo=or,or=Se,Oe;if(typeof ke.then==\"function\")return Je=oa(ke._debugInfo),Se=Ke(Se,X2(ke),Oe),or=Je,Se;if(ke.$$typeof===hy)return Ke(Se,Wd(Se,ke),Oe);il(Se,ke)}return typeof ke==\"function\"&&c0(Se,ke),typeof ke==\"symbol\"&&sl(Se,ke),null}function Fe(Se,ke,Oe,Je){var Pt=ke!==null?ke.key:null;if(typeof Oe==\"string\"&&Oe!==\"\"||typeof Oe==\"number\"||typeof Oe==\"bigint\")return Pt!==null?null:te(Se,ke,\"\"+Oe,Je);if(typeof Oe==\"object\"&&Oe!==null){switch(Oe.$$typeof){case dw:return Oe.key===Pt?(Pt=oa(Oe._debugInfo),Se=fe(Se,ke,Oe,Je),or=Pt,Se):null;case c_:return Oe.key===Pt?me(Se,ke,Oe,Je):null;case uh:return Pt=oa(Oe._debugInfo),Oe=ww(Oe),Se=Fe(Se,ke,Oe,Je),or=Pt,Se}if(pl(Oe)||J(Oe))return Pt!==null?null:(Pt=oa(Oe._debugInfo),Se=Ue(Se,ke,Oe,Je,null),or=Pt,Se);if(typeof Oe.then==\"function\")return Pt=oa(Oe._debugInfo),Se=Fe(Se,ke,X2(Oe),Je),or=Pt,Se;if(Oe.$$typeof===hy)return Fe(Se,ke,Wd(Se,Oe),Je);il(Se,Oe)}return typeof Oe==\"function\"&&c0(Se,Oe),typeof Oe==\"symbol\"&&sl(Se,Oe),null}function Qe(Se,ke,Oe,Je,Pt){if(typeof Je==\"string\"&&Je!==\"\"||typeof Je==\"number\"||typeof Je==\"bigint\")return Se=Se.get(Oe)||null,te(ke,Se,\"\"+Je,Pt);if(typeof Je==\"object\"&&Je!==null){switch(Je.$$typeof){case dw:return Oe=Se.get(Je.key===null?Oe:Je.key)||null,Se=oa(Je._debugInfo),ke=fe(ke,Oe,Je,Pt),or=Se,ke;case c_:return Se=Se.get(Je.key===null?Oe:Je.key)||null,me(ke,Se,Je,Pt);case uh:var Hn=oa(Je._debugInfo);return Je=ww(Je),ke=Qe(Se,ke,Oe,Je,Pt),or=Hn,ke}if(pl(Je)||J(Je))return Oe=Se.get(Oe)||null,Se=oa(Je._debugInfo),ke=Ue(ke,Oe,Je,Pt,null),or=Se,ke;if(typeof Je.then==\"function\")return Hn=oa(Je._debugInfo),ke=Qe(Se,ke,Oe,X2(Je),Pt),or=Hn,ke;if(Je.$$typeof===hy)return Qe(Se,ke,Oe,Wd(ke,Je),Pt);il(ke,Je)}return typeof Je==\"function\"&&c0(ke,Je),typeof Je==\"symbol\"&&sl(ke,Je),null}function tn(Se,ke,Oe,Je){if(typeof Oe!=\"object\"||Oe===null)return Je;switch(Oe.$$typeof){case dw:case c_:c(Se,ke,Oe);var Pt=Oe.key;if(typeof Pt!=\"string\")break;if(Je===null){Je=new Set,Je.add(Pt);break}if(!Je.has(Pt)){Je.add(Pt);break}jt(ke,function(){console.error(\"Encountered two children with the same key, `%s`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/or omitted \\\\u2014 the behavior is unsupported and could change in a future version.\",Pt)});break;case uh:Oe=ww(Oe),tn(Se,ke,Oe,Je)}return Je}function On(Se,ke,Oe,Je){for(var Pt=null,Hn=null,nn=null,qn=ke,Gn=ke=0,Li=null;qn!==null&&Gn<Oe.length;Gn++){qn.index>Gn?(Li=qn,qn=null):Li=qn.sibling;var ua=Fe(Se,qn,Oe[Gn],Je);if(ua===null){qn===null&&(qn=Li);break}Pt=tn(Se,ua,Oe[Gn],Pt),s&&qn&&ua.alternate===null&&l(Se,qn),ke=A(ua,ke,Gn),nn===null?Hn=ua:nn.sibling=ua,nn=ua,qn=Li}if(Gn===Oe.length)return f(Se,qn),Qr&&sp(Se,Gn),Hn;if(qn===null){for(;Gn<Oe.length;Gn++)qn=Ke(Se,Oe[Gn],Je),qn!==null&&(Pt=tn(Se,qn,Oe[Gn],Pt),ke=A(qn,ke,Gn),nn===null?Hn=qn:nn.sibling=qn,nn=qn);return Qr&&sp(Se,Gn),Hn}for(qn=y(qn);Gn<Oe.length;Gn++)Li=Qe(qn,Se,Gn,Oe[Gn],Je),Li!==null&&(Pt=tn(Se,Li,Oe[Gn],Pt),s&&Li.alternate!==null&&qn.delete(Li.key===null?Gn:Li.key),ke=A(Li,ke,Gn),nn===null?Hn=Li:nn.sibling=Li,nn=Li);return s&&qn.forEach(function(Vb){return l(Se,Vb)}),Qr&&sp(Se,Gn),Hn}function xi(Se,ke,Oe,Je){if(Oe==null)throw Error(\"An iterable object provided no iterator.\");for(var Pt=null,Hn=null,nn=ke,qn=ke=0,Gn=null,Li=null,ua=Oe.next();nn!==null&&!ua.done;qn++,ua=Oe.next()){nn.index>qn?(Gn=nn,nn=null):Gn=nn.sibling;var Vb=Fe(Se,nn,ua.value,Je);if(Vb===null){nn===null&&(nn=Gn);break}Li=tn(Se,Vb,ua.value,Li),s&&nn&&Vb.alternate===null&&l(Se,nn),ke=A(Vb,ke,qn),Hn===null?Pt=Vb:Hn.sibling=Vb,Hn=Vb,nn=Gn}if(ua.done)return f(Se,nn),Qr&&sp(Se,qn),Pt;if(nn===null){for(;!ua.done;qn++,ua=Oe.next())nn=Ke(Se,ua.value,Je),nn!==null&&(Li=tn(Se,nn,ua.value,Li),ke=A(nn,ke,qn),Hn===null?Pt=nn:Hn.sibling=nn,Hn=nn);return Qr&&sp(Se,qn),Pt}for(nn=y(nn);!ua.done;qn++,ua=Oe.next())Gn=Qe(nn,Se,qn,ua.value,Je),Gn!==null&&(Li=tn(Se,Gn,ua.value,Li),s&&Gn.alternate!==null&&nn.delete(Gn.key===null?qn:Gn.key),ke=A(Gn,ke,qn),Hn===null?Pt=Gn:Hn.sibling=Gn,Hn=Gn);return s&&nn.forEach(function(ZFe){return l(Se,ZFe)}),Qr&&sp(Se,qn),Pt}function Dr(Se,ke,Oe,Je){if(typeof Oe==\"object\"&&Oe!==null&&Oe.type===l_&&Oe.key===null&&(J2(Oe,null,Se),Oe=Oe.props.children),typeof Oe==\"object\"&&Oe!==null){switch(Oe.$$typeof){case dw:var Pt=oa(Oe._debugInfo);e:{for(var Hn=Oe.key;ke!==null;){if(ke.key===Hn){if(Hn=Oe.type,Hn===l_){if(ke.tag===7){f(Se,ke.sibling),Je=v(ke,Oe.props.children),Je.return=Se,Je._debugOwner=Oe._owner,Je._debugInfo=or,J2(Oe,Je,Se),Se=Je;break e}}else if(ke.elementType===Hn||ob(ke,Oe)||typeof Hn==\"object\"&&Hn!==null&&Hn.$$typeof===uh&&ww(Hn)===ke.type){f(Se,ke.sibling),Je=v(ke,Oe.props),yb(Je,Oe),Je.return=Se,Je._debugOwner=Oe._owner,Je._debugInfo=or,Se=Je;break e}f(Se,ke);break}else l(Se,ke);ke=ke.sibling}Oe.type===l_?(Je=Zf(Oe.props.children,Se.mode,Je,Oe.key),Je.return=Se,Je._debugOwner=Se,Je._debugTask=Se._debugTask,Je._debugInfo=or,J2(Oe,Je,Se),Se=Je):(Je=jg(Oe,Se.mode,Je),yb(Je,Oe),Je.return=Se,Je._debugInfo=or,Se=Je)}return Se=K(Se),or=Pt,Se;case c_:e:{for(Pt=Oe,Oe=Pt.key;ke!==null;){if(ke.key===Oe)if(ke.tag===4&&ke.stateNode.containerInfo===Pt.containerInfo&&ke.stateNode.implementation===Pt.implementation){f(Se,ke.sibling),Je=v(ke,Pt.children||[]),Je.return=Se,Se=Je;break e}else{f(Se,ke);break}else l(Se,ke);ke=ke.sibling}Je=cE(Pt,Se.mode,Je),Je.return=Se,Se=Je}return K(Se);case uh:return Pt=oa(Oe._debugInfo),Oe=ww(Oe),Se=Dr(Se,ke,Oe,Je),or=Pt,Se}if(pl(Oe))return Pt=oa(Oe._debugInfo),Se=On(Se,ke,Oe,Je),or=Pt,Se;if(J(Oe)){if(Pt=oa(Oe._debugInfo),Hn=J(Oe),typeof Hn!=\"function\")throw Error(\"An object is not an iterable. This error is likely caused by a bug in React. Please file an issue.\");var nn=Hn.call(Oe);return nn===Oe?(Se.tag!==0||Object.prototype.toString.call(Se.type)!==\"[object GeneratorFunction]\"||Object.prototype.toString.call(nn)!==\"[object Generator]\")&&(vle||console.error(\"Using Iterators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. You can also use an Iterable that can iterate multiple times over the same items.\"),vle=!0):Oe.entries!==Hn||MK||(console.error(\"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"),MK=!0),Se=xi(Se,ke,nn,Je),or=Pt,Se}if(typeof Oe.then==\"function\")return Pt=oa(Oe._debugInfo),Se=Dr(Se,ke,X2(Oe),Je),or=Pt,Se;if(Oe.$$typeof===hy)return Dr(Se,ke,Wd(Se,Oe),Je);il(Se,Oe)}return typeof Oe==\"string\"&&Oe!==\"\"||typeof Oe==\"number\"||typeof Oe==\"bigint\"?(Pt=\"\"+Oe,ke!==null&&ke.tag===6?(f(Se,ke.sibling),Je=v(ke,Pt),Je.return=Se,Se=Je):(f(Se,ke),Je=Yf(Pt,Se.mode,Je),Je.return=Se,Je._debugOwner=Se,Je._debugTask=Se._debugTask,Je._debugInfo=or,Se=Je),K(Se)):(typeof Oe==\"function\"&&c0(Se,Oe),typeof Oe==\"symbol\"&&sl(Se,Oe),f(Se,ke))}return function(Se,ke,Oe,Je){var Pt=or;or=null;try{A7=0;var Hn=Dr(Se,ke,Oe,Je);return O_=null,Hn}catch(Li){if(Li===S7||Li===bN)throw Li;var nn=g(29,Li,null,Se.mode);nn.lanes=Je,nn.return=Se;var qn=nn._debugInfo=or;if(nn._debugOwner=Se._debugOwner,nn._debugTask=Se._debugTask,qn!=null){for(var Gn=qn.length-1;0<=Gn;Gn--)if(typeof qn[Gn].stack==\"string\"){nn._debugOwner=qn[Gn],nn._debugTask=qn[Gn].debugTask;break}}return nn}finally{or=Pt}}}function nh(s){var l=s.alternate;$(dc,dc.current&M_,s),$(Tp,s,s),xy===null&&(l===null||T_.current!==null||l.memoizedState!==null)&&(xy=s)}function NE(s){if(s.tag===22){if($(dc,dc.current,s),$(Tp,s,s),xy===null){var l=s.alternate;l!==null&&l.memoizedState!==null&&(xy=s)}}else rh(s)}function rh(s){$(dc,dc.current,s),$(Tp,Tp.current,s)}function $d(s){V(Tp,s),xy===s&&(xy=null),V(dc,s)}function bb(s){for(var l=s;l!==null;){if(l.tag===13){var f=l.memoizedState;if(f!==null&&(f=f.dehydrated,f===null||f.data===Hb||HE(f)))return l}else if(l.tag===19&&l.memoizedProps.revealOrder!==void 0){if((l.flags&128)!==0)return l}else if(l.child!==null){l.child.return=l,l=l.child;continue}if(l===s)break;for(;l.sibling===null;){if(l.return===null||l.return===s)return null;l=l.return}l.sibling.return=l.return,l=l.sibling}return null}function ew(s){if(s!==null&&typeof s!=\"function\"){var l=String(s);Nle.has(l)||(Nle.add(l),console.error(\"Expected the last optional `callback` argument to be a function. Instead received: %s.\",s))}}function l0(s,l,f,y){var v=s.memoizedState,A=f(y,v);if(s.mode&ru){se(!0);try{A=f(y,v)}finally{se(!1)}}A===void 0&&(l=ne(l)||\"Component\",Ile.has(l)||(Ile.add(l),console.error(\"%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.\",l))),v=A==null?v:pr({},v,A),s.memoizedState=v,s.lanes===0&&(s.updateQueue.baseState=v)}function vb(s,l,f,y,v,A,K){var te=s.stateNode;if(typeof te.shouldComponentUpdate==\"function\"){if(f=te.shouldComponentUpdate(y,A,K),s.mode&ru){se(!0);try{f=te.shouldComponentUpdate(y,A,K)}finally{se(!1)}}return f===void 0&&console.error(\"%s.shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false.\",ne(l)||\"Component\"),f}return l.prototype&&l.prototype.isPureReactComponent?!$m(f,y)||!$m(v,A):!0}function Kd(s,l,f,y){var v=l.state;typeof l.componentWillReceiveProps==\"function\"&&l.componentWillReceiveProps(f,y),typeof l.UNSAFE_componentWillReceiveProps==\"function\"&&l.UNSAFE_componentWillReceiveProps(f,y),l.state!==v&&(s=Z(s)||\"Component\",_le.has(s)||(_le.add(s),console.error(\"%s.componentWillReceiveProps(): Assigning directly to this.state is deprecated (except inside a component\\'s constructor). Use setState instead.\",s)),NK.enqueueReplaceState(l,l.state,null))}function fp(s,l){var f=l;if(\"ref\"in l){f={};for(var y in l)y!==\"ref\"&&(f[y]=l[y])}if(s=s.defaultProps){f===l&&(f=pr({},f));for(var v in s)f[v]===void 0&&(f[v]=s[v])}return f}function LE(s){LK(s),console.warn(`%s\\n\\n%s\\n`,N_?\"An error occurred in the <\"+N_+\"> component.\":\"An error occurred in one of your React components.\",`Consider adding an error boundary to your tree to customize error handling behavior.\\nVisit https://react.dev/link/error-boundaries to learn more about error boundaries.`)}function BE(s){var l=N_?\"The above error occurred in the <\"+N_+\"> component.\":\"The above error occurred in one of your React components.\",f=\"React will try to recreate this component tree from scratch using the error boundary you provided, \"+((BK||\"Anonymous\")+\".\");if(typeof s==\"object\"&&s!==null&&typeof s.environmentName==\"string\"){var y=s.environmentName;s=[`%o\\n\\n%s\\n\\n%s\\n`,s,l,f].slice(0),typeof s[0]==\"string\"?s.splice(0,1,fue+s[0],hue,HN+y+HN,pue):s.splice(0,0,fue,hue,HN+y+HN,pue),s.unshift(console),y=KFe.apply(console.error,s),y()}else console.error(`%o\\n\\n%s\\n\\n%s\\n`,s,l,f)}function wb(s){LK(s)}function tw(s,l){try{N_=l.source?Z(l.source):null,BK=null;var f=l.value;if($e.actQueue!==null)$e.thrownErrors.push(f);else{var y=s.onUncaughtError;y(f,{componentStack:l.stack})}}catch(v){setTimeout(function(){throw v})}}function DE(s,l,f){try{N_=f.source?Z(f.source):null,BK=Z(l);var y=s.onCaughtError;y(f.value,{componentStack:f.stack,errorBoundary:l.tag===1?l.stateNode:null})}catch(v){setTimeout(function(){throw v})}}function Gd(s,l,f){return f=Vd(f),f.tag=_K,f.payload={element:null},f.callback=function(){jt(l.source,tw,s,l)},f}function hp(s){return s=Vd(s),s.tag=_K,s}function xb(s,l,f,y){var v=f.type.getDerivedStateFromError;if(typeof v==\"function\"){var A=y.value;s.payload=function(){return v(A)},s.callback=function(){Ii(f),jt(y.source,DE,l,f,y)}}var K=f.stateNode;K!==null&&typeof K.componentDidCatch==\"function\"&&(s.callback=function(){Ii(f),jt(y.source,DE,l,f,y),typeof v!=\"function\"&&(kw===null?kw=new Set([this]):kw.add(this)),kFe(this,y),typeof v==\"function\"||(f.lanes&2)===0&&console.error(\"%s: Error boundaries should implement getDerivedStateFromError(). In that method, return a state update to display an error message or fallback UI.\",Z(f)||\"Unknown\")})}function Zu(s,l,f,y,v){if(f.flags|=32768,S0&&as(s,v),y!==null&&typeof y==\"object\"&&typeof y.then==\"function\"){if(l=f.alternate,l!==null&&ea(l,f,v,!0),Qr&&(Db=!0),f=Tp.current,f!==null){switch(f.tag){case 13:return xy===null?Bo():f.alternate===null&&Ds===zb&&(Ds=jK),f.flags&=-257,f.flags|=65536,f.lanes=v,y===kK?f.flags|=16384:(l=f.updateQueue,l===null?f.updateQueue=new Set([y]):l.add(y),cl(s,y,v)),!1;case 22:return f.flags|=65536,y===kK?f.flags|=16384:(l=f.updateQueue,l===null?(l={transitions:null,markerInstances:null,retryQueue:new Set([y])},f.updateQueue=l):(f=l.retryQueue,f===null?l.retryQueue=new Set([y]):f.add(y)),cl(s,y,v)),!1}throw Error(\"Unexpected Suspense handler tag (\"+f.tag+\"). This is a bug in React.\")}return cl(s,y,v),Bo(),!1}if(Qr)return Db=!0,l=Tp.current,l!==null?((l.flags&65536)===0&&(l.flags|=256),l.flags|=65536,l.lanes=v,y!==wK&&jl(Xc(Error(\"There was an error while hydrating but React was able to recover by instead client rendering from the nearest Suspense boundary.\",{cause:y}),f))):(y!==wK&&jl(Xc(Error(\"There was an error while hydrating but React was able to recover by instead client rendering the entire root.\",{cause:y}),f)),s=s.current.alternate,s.flags|=65536,v&=-v,s.lanes|=v,y=Xc(y,f),v=Gd(s.stateNode,y,v),fb(s,v),Ds!==r5&&(Ds=F_)),!1;var A=Xc(Error(\"There was an error during concurrent rendering but React was able to recover by instead synchronously rendering the entire root.\",{cause:y}),f);if(L7===null?L7=[A]:L7.push(A),Ds!==r5&&(Ds=F_),l===null)return!0;y=Xc(y,f),f=l;do{switch(f.tag){case 3:return f.flags|=65536,s=v&-v,f.lanes|=s,s=Gd(f.stateNode,y,s),fb(f,s),!1;case 1:if(l=f.type,A=f.stateNode,(f.flags&128)===0&&(typeof l.getDerivedStateFromError==\"function\"||A!==null&&typeof A.componentDidCatch==\"function\"&&(kw===null||!kw.has(A))))return f.flags|=65536,v&=-v,f.lanes|=v,v=hp(v),xb(v,s,f,y),fb(f,v),!1}f=f.return}while(f!==null);return!1}function Wi(s,l,f,y){l.child=s===null?Sle(l,null,f,y):P_(l,s.child,f,y)}function Jg(s,l,f,y,v){f=f.render;var A=l.ref;if(\"ref\"in y){var K={};for(var te in y)te!==\"ref\"&&(K[te]=y[te])}else K=y;return Gm(l),xe(l),y=hb(s,l,f,K,A,v),te=ra(),_e(),s!==null&&!Ic?(Ec(s,l,v),Zd(s,l,v)):(Qr&&te&&xa(l),l.flags|=1,Wi(s,l,y,v),l.child)}function Eb(s,l,f,y,v){if(s===null){var A=f.type;return typeof A==\"function\"&&!ib(A)&&A.defaultProps===void 0&&f.compare===null?(f=tl(A),l.tag=15,l.type=f,ih(l,A),Sb(s,l,f,y,v)):(s=I2(f.type,null,y,l,l.mode,v),s.ref=l.ref,s.return=l,l.child=s)}if(A=s.child,!h0(s,v)){var K=A.memoizedProps;if(f=f.compare,f=f!==null?f:$m,f(K,y)&&s.ref===l.ref)return Zd(s,l,v)}return l.flags|=1,s=wa(A,y),s.ref=l.ref,s.return=l,l.child=s}function Sb(s,l,f,y,v){if(s!==null){var A=s.memoizedProps;if($m(A,y)&&s.ref===l.ref&&l.type===s.type)if(Ic=!1,l.pendingProps=y=A,h0(s,v))(s.flags&131072)!==0&&(Ic=!0);else return l.lanes=s.lanes,Zd(s,l,v)}return _a(s,l,f,y,v)}function _o(s,l,f){var y=l.pendingProps,v=y.children,A=s!==null?s.memoizedState:null;if(y.mode===\"hidden\"){if((l.flags&128)!==0){if(y=A!==null?A.baseLanes|f:f,s!==null){for(v=l.child=s.child,A=0;v!==null;)A=A|v.lanes|v.childLanes,v=v.sibling;l.childLanes=A&~y}else l.childLanes=0,l.child=null;return Xg(s,l,y,f)}if((f&536870912)!==0)l.memoizedState={baseLanes:0,cachePool:null},s!==null&&Jm(l,A!==null?A.cachePool:null),A!==null?tc(l,A):eh(l),NE(l);else return l.lanes=l.childLanes=536870912,Xg(s,l,A!==null?A.baseLanes|f:f,f)}else A!==null?(Jm(l,A.cachePool),tc(l,A),rh(l),l.memoizedState=null):(s!==null&&Jm(l,null),eh(l),rh(l));return Wi(s,l,v,f),l.child}function Xg(s,l,f,y){var v=lp();return v=v===null?null:{parent:lc._currentValue,pool:v},l.memoizedState={baseLanes:f,cachePool:v},s!==null&&Jm(l,null),eh(l),NE(l),s!==null&&ea(s,l,y,!0),null}function u0(s,l){var f=l.ref;if(f===null)s!==null&&s.ref!==null&&(l.flags|=4194816);else{if(typeof f!=\"function\"&&typeof f!=\"object\")throw Error(\"Expected ref to be a function, an object returned by React.createRef(), or undefined/null.\");(s===null||s.ref!==f)&&(l.flags|=4194816)}}function _a(s,l,f,y,v){if(f.prototype&&typeof f.prototype.render==\"function\"){var A=ne(f)||\"Unknown\";Ble[A]||(console.error(\"The <%s /> component appears to have a render method, but doesn\\'t extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.\",A,A),Ble[A]=!0)}return l.mode&ru&&C0.recordLegacyContextWarning(l,null),s===null&&(ih(l,l.type),f.contextTypes&&(A=ne(f)||\"Unknown\",Fle[A]||(Fle[A]=!0,console.error(\"%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with React.useContext() instead. (https://react.dev/link/legacy-context)\",A)))),Gm(l),xe(l),f=hb(s,l,f,y,void 0,v),y=ra(),_e(),s!==null&&!Ic?(Ec(s,l,v),Zd(s,l,v)):(Qr&&y&&xa(l),l.flags|=1,Wi(s,l,f,v),l.child)}function oh(s,l,f,y,v,A){return Gm(l),xe(l),Ub=-1,C7=s!==null&&s.type!==l.type,l.updateQueue=null,f=L2(l,y,f,v),pE(s,l),y=ra(),_e(),s!==null&&!Ic?(Ec(s,l,A),Zd(s,l,A)):(Qr&&y&&xa(l),l.flags|=1,Wi(s,l,f,A),l.child)}function ql(s,l,f,y,v){switch(a(l)){case!1:var A=l.stateNode,K=new l.type(l.memoizedProps,A.context).state;A.updater.enqueueSetState(A,K,null);break;case!0:l.flags|=128,l.flags|=65536,A=Error(\"Simulated error coming from DevTools\");var te=v&-v;if(l.lanes|=te,K=wi,K===null)throw Error(\"Expected a work-in-progress root. This is a bug in React. Please file an issue.\");te=hp(te),xb(te,K,l,Xc(A,l)),fb(l,te)}if(Gm(l),l.stateNode===null){if(K=yw,A=f.contextType,\"contextType\"in f&&A!==null&&(A===void 0||A.$$typeof!==hy)&&!Mle.has(f)&&(Mle.add(f),te=A===void 0?\" However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file.\":typeof A!=\"object\"?\" However, it is set to a \"+typeof A+\".\":A.$$typeof===W$?\" Did you accidentally pass the Context.Consumer instead?\":\" However, it is set to an object with keys {\"+Object.keys(A).join(\", \")+\"}.\",console.error(\"%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s\",ne(f)||\"Component\",te)),typeof A==\"object\"&&A!==null&&(K=Hr(A)),A=new f(y,K),l.mode&ru){se(!0);try{A=new f(y,K)}finally{se(!1)}}if(K=l.memoizedState=A.state!==null&&A.state!==void 0?A.state:null,A.updater=NK,l.stateNode=A,A._reactInternals=l,A._reactInternalInstance=kle,typeof f.getDerivedStateFromProps==\"function\"&&K===null&&(K=ne(f)||\"Component\",Cle.has(K)||(Cle.add(K),console.error(\"`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.\",K,A.state===null?\"null\":\"undefined\",K))),typeof f.getDerivedStateFromProps==\"function\"||typeof A.getSnapshotBeforeUpdate==\"function\"){var fe=te=K=null;if(typeof A.componentWillMount==\"function\"&&A.componentWillMount.__suppressDeprecationWarning!==!0?K=\"componentWillMount\":typeof A.UNSAFE_componentWillMount==\"function\"&&(K=\"UNSAFE_componentWillMount\"),typeof A.componentWillReceiveProps==\"function\"&&A.componentWillReceiveProps.__suppressDeprecationWarning!==!0?te=\"componentWillReceiveProps\":typeof A.UNSAFE_componentWillReceiveProps==\"function\"&&(te=\"UNSAFE_componentWillReceiveProps\"),typeof A.componentWillUpdate==\"function\"&&A.componentWillUpdate.__suppressDeprecationWarning!==!0?fe=\"componentWillUpdate\":typeof A.UNSAFE_componentWillUpdate==\"function\"&&(fe=\"UNSAFE_componentWillUpdate\"),K!==null||te!==null||fe!==null){A=ne(f)||\"Component\";var me=typeof f.getDerivedStateFromProps==\"function\"?\"getDerivedStateFromProps()\":\"getSnapshotBeforeUpdate()\";Tle.has(A)||(Tle.add(A),console.error(`Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n%s uses %s but also contains the following legacy lifecycles:%s%s%s\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\nhttps://react.dev/link/unsafe-component-lifecycles`,A,me,K!==null?`\\n  `+K:\"\",te!==null?`\\n  `+te:\"\",fe!==null?`\\n  `+fe:\"\"))}}A=l.stateNode,K=ne(f)||\"Component\",A.render||(f.prototype&&typeof f.prototype.render==\"function\"?console.error(\"No `render` method found on the %s instance: did you accidentally return an object from the constructor?\",K):console.error(\"No `render` method found on the %s instance: you may have forgotten to define `render`.\",K)),!A.getInitialState||A.getInitialState.isReactClassApproved||A.state||console.error(\"getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?\",K),A.getDefaultProps&&!A.getDefaultProps.isReactClassApproved&&console.error(\"getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.\",K),A.contextType&&console.error(\"contextType was defined as an instance property on %s. Use a static property to define contextType instead.\",K),f.childContextTypes&&!Ple.has(f)&&(Ple.add(f),console.error(\"%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)\",K)),f.contextTypes&&!Ole.has(f)&&(Ole.add(f),console.error(\"%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with static contextType instead. (https://react.dev/link/legacy-context)\",K)),typeof A.componentShouldUpdate==\"function\"&&console.error(\"%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.\",K),f.prototype&&f.prototype.isPureReactComponent&&typeof A.shouldComponentUpdate<\"u\"&&console.error(\"%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.\",ne(f)||\"A pure component\"),typeof A.componentDidUnmount==\"function\"&&console.error(\"%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?\",K),typeof A.componentDidReceiveProps==\"function\"&&console.error(\"%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().\",K),typeof A.componentWillRecieveProps==\"function\"&&console.error(\"%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?\",K),typeof A.UNSAFE_componentWillRecieveProps==\"function\"&&console.error(\"%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?\",K),te=A.props!==y,A.props!==void 0&&te&&console.error(\"When calling super() in `%s`, make sure to pass up the same props that your component\\'s constructor was passed.\",K),A.defaultProps&&console.error(\"Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.\",K,K),typeof A.getSnapshotBeforeUpdate!=\"function\"||typeof A.componentDidUpdate==\"function\"||Ale.has(f)||(Ale.add(f),console.error(\"%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.\",ne(f))),typeof A.getDerivedStateFromProps==\"function\"&&console.error(\"%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.\",K),typeof A.getDerivedStateFromError==\"function\"&&console.error(\"%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.\",K),typeof f.getSnapshotBeforeUpdate==\"function\"&&console.error(\"%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.\",K),(te=A.state)&&(typeof te!=\"object\"||pl(te))&&console.error(\"%s.state: must be set to an object or null\",K),typeof A.getChildContext==\"function\"&&typeof f.childContextTypes!=\"object\"&&console.error(\"%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().\",K),A=l.stateNode,A.props=y,A.state=l.memoizedState,A.refs={},Sa(l),K=f.contextType,A.context=typeof K==\"object\"&&K!==null?Hr(K):yw,A.state===y&&(K=ne(f)||\"Component\",Rle.has(K)||(Rle.add(K),console.error(\"%s: It is not recommended to assign props directly to state because updates to props won\\'t be reflected in state. In most cases, it is better to use props directly.\",K))),l.mode&ru&&C0.recordLegacyContextWarning(l,A),C0.recordUnsafeLifecycleWarnings(l,A),A.state=l.memoizedState,K=f.getDerivedStateFromProps,typeof K==\"function\"&&(l0(l,f,K,y),A.state=l.memoizedState),typeof f.getDerivedStateFromProps==\"function\"||typeof A.getSnapshotBeforeUpdate==\"function\"||typeof A.UNSAFE_componentWillMount!=\"function\"&&typeof A.componentWillMount!=\"function\"||(K=A.state,typeof A.componentWillMount==\"function\"&&A.componentWillMount(),typeof A.UNSAFE_componentWillMount==\"function\"&&A.UNSAFE_componentWillMount(),K!==A.state&&(console.error(\"%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component\\'s constructor). Use setState instead.\",Z(l)||\"Component\"),NK.enqueueReplaceState(A,A.state,null)),Xm(l,y,A,v),Wg(),A.state=l.memoizedState),typeof A.componentDidMount==\"function\"&&(l.flags|=4194308),(l.mode&_0)!==Ni&&(l.flags|=134217728),A=!0}else if(s===null){A=l.stateNode;var Ue=l.memoizedProps;te=fp(f,Ue),A.props=te;var Ke=A.context;fe=f.contextType,K=yw,typeof fe==\"object\"&&fe!==null&&(K=Hr(fe)),me=f.getDerivedStateFromProps,fe=typeof me==\"function\"||typeof A.getSnapshotBeforeUpdate==\"function\",Ue=l.pendingProps!==Ue,fe||typeof A.UNSAFE_componentWillReceiveProps!=\"function\"&&typeof A.componentWillReceiveProps!=\"function\"||(Ue||Ke!==K)&&Kd(l,A,y,K),bw=!1;var Fe=l.memoizedState;A.state=Fe,Xm(l,y,A,v),Wg(),Ke=l.memoizedState,Ue||Fe!==Ke||bw?(typeof me==\"function\"&&(l0(l,f,me,y),Ke=l.memoizedState),(te=bw||vb(l,f,te,y,Fe,Ke,K))?(fe||typeof A.UNSAFE_componentWillMount!=\"function\"&&typeof A.componentWillMount!=\"function\"||(typeof A.componentWillMount==\"function\"&&A.componentWillMount(),typeof A.UNSAFE_componentWillMount==\"function\"&&A.UNSAFE_componentWillMount()),typeof A.componentDidMount==\"function\"&&(l.flags|=4194308),(l.mode&_0)!==Ni&&(l.flags|=134217728)):(typeof A.componentDidMount==\"function\"&&(l.flags|=4194308),(l.mode&_0)!==Ni&&(l.flags|=134217728),l.memoizedProps=y,l.memoizedState=Ke),A.props=y,A.state=Ke,A.context=K,A=te):(typeof A.componentDidMount==\"function\"&&(l.flags|=4194308),(l.mode&_0)!==Ni&&(l.flags|=134217728),A=!1)}else{A=l.stateNode,qg(s,l),K=l.memoizedProps,fe=fp(f,K),A.props=fe,me=l.pendingProps,Fe=A.context,Ke=f.contextType,te=yw,typeof Ke==\"object\"&&Ke!==null&&(te=Hr(Ke)),Ue=f.getDerivedStateFromProps,(Ke=typeof Ue==\"function\"||typeof A.getSnapshotBeforeUpdate==\"function\")||typeof A.UNSAFE_componentWillReceiveProps!=\"function\"&&typeof A.componentWillReceiveProps!=\"function\"||(K!==me||Fe!==te)&&Kd(l,A,y,te),bw=!1,Fe=l.memoizedState,A.state=Fe,Xm(l,y,A,v),Wg();var Qe=l.memoizedState;K!==me||Fe!==Qe||bw||s!==null&&s.dependencies!==null&&cb(s.dependencies)?(typeof Ue==\"function\"&&(l0(l,f,Ue,y),Qe=l.memoizedState),(fe=bw||vb(l,f,fe,y,Fe,Qe,te)||s!==null&&s.dependencies!==null&&cb(s.dependencies))?(Ke||typeof A.UNSAFE_componentWillUpdate!=\"function\"&&typeof A.componentWillUpdate!=\"function\"||(typeof A.componentWillUpdate==\"function\"&&A.componentWillUpdate(y,Qe,te),typeof A.UNSAFE_componentWillUpdate==\"function\"&&A.UNSAFE_componentWillUpdate(y,Qe,te)),typeof A.componentDidUpdate==\"function\"&&(l.flags|=4),typeof A.getSnapshotBeforeUpdate==\"function\"&&(l.flags|=1024)):(typeof A.componentDidUpdate!=\"function\"||K===s.memoizedProps&&Fe===s.memoizedState||(l.flags|=4),typeof A.getSnapshotBeforeUpdate!=\"function\"||K===s.memoizedProps&&Fe===s.memoizedState||(l.flags|=1024),l.memoizedProps=y,l.memoizedState=Qe),A.props=y,A.state=Qe,A.context=te,A=fe):(typeof A.componentDidUpdate!=\"function\"||K===s.memoizedProps&&Fe===s.memoizedState||(l.flags|=4),typeof A.getSnapshotBeforeUpdate!=\"function\"||K===s.memoizedProps&&Fe===s.memoizedState||(l.flags|=1024),A=!1)}if(te=A,u0(s,l),K=(l.flags&128)!==0,te||K){if(te=l.stateNode,xr(l),K&&typeof f.getDerivedStateFromError!=\"function\")f=null,lf=-1;else{if(xe(l),f=lle(te),l.mode&ru){se(!0);try{lle(te)}finally{se(!1)}}_e()}l.flags|=1,s!==null&&K?(l.child=P_(l,s.child,null,v),l.child=P_(l,null,f,v)):Wi(s,l,f,v),l.memoizedState=te.state,s=l.child}else s=Zd(s,l,v);return v=l.stateNode,A&&v.props!==y&&(L_||console.error(\"It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.\",Z(l)||\"a component\"),L_=!0),s}function ey(s,l,f,y){return zg(),l.flags|=256,Wi(s,l,f,y),l.child}function ih(s,l){l&&l.childContextTypes&&console.error(`childContextTypes cannot be defined on a function component.\\n  %s.childContextTypes = ...`,l.displayName||l.name||\"Component\"),typeof l.getDerivedStateFromProps==\"function\"&&(s=ne(l)||\"Unknown\",Ule[s]||(console.error(\"%s: Function components do not support getDerivedStateFromProps.\",s),Ule[s]=!0)),typeof l.contextType==\"object\"&&l.contextType!==null&&(l=ne(l)||\"Unknown\",Dle[l]||(console.error(\"%s: Function components do not support contextType.\",l),Dle[l]=!0))}function Yu(s){return{baseLanes:s,cachePool:Hg()}}function d0(s,l,f){return s=s!==null?s.childLanes&~f:0,l&&(s|=mh),s}function Wl(s,l,f){var y,v=l.pendingProps;i(l)&&(l.flags|=128);var A=!1,K=(l.flags&128)!==0;if((y=K)||(y=s!==null&&s.memoizedState===null?!1:(dc.current&T7)!==0),y&&(A=!0,l.flags&=-129),y=(l.flags&32)!==0,l.flags&=-33,s===null){if(Qr){if(A?nh(l):rh(l),Qr){var te=Bs,fe;if(!(fe=!te)){e:{var me=te;for(fe=vy;me.nodeType!==8;){if(!fe){fe=null;break e}if(me=td(me.nextSibling),me===null){fe=null;break e}}fe=me}fe!==null?(uo(),l.memoizedState={dehydrated:fe,treeContext:YE!==null?{id:Lb,overflow:Bb}:null,retryLane:536870912,hydrationErrors:null},me=g(18,null,null,Ni),me.stateNode=fe,me.return=l,l.child=me,id=l,Bs=null,fe=!0):fe=!1,fe=!fe}fe&&(lE(l,te),ap(l))}if(te=l.memoizedState,te!==null&&(te=te.dehydrated,te!==null))return HE(te)?l.lanes=32:l.lanes=536870912,null;$d(l)}return te=v.children,v=v.fallback,A?(rh(l),A=l.mode,te=ty({mode:\"hidden\",children:te},A),v=Zf(v,A,f,null),te.return=l,v.return=l,te.sibling=v,l.child=te,A=l.child,A.memoizedState=Yu(f),A.childLanes=d0(s,y,f),l.memoizedState=FK,v):(nh(l),pp(l,te))}var Ue=s.memoizedState;if(Ue!==null&&(te=Ue.dehydrated,te!==null)){if(K)l.flags&256?(nh(l),l.flags&=-257,l=f0(s,l,f)):l.memoizedState!==null?(rh(l),l.child=s.child,l.flags|=128,l=null):(rh(l),A=v.fallback,te=l.mode,v=ty({mode:\"visible\",children:v.children},te),A=Zf(A,te,f,null),A.flags|=2,v.return=l,A.return=l,v.sibling=A,l.child=v,P_(l,s.child,null,f),v=l.child,v.memoizedState=Yu(f),v.childLanes=d0(s,y,f),l.memoizedState=FK,l=A);else if(nh(l),Qr&&console.error(\"We should not be hydrating here. This is a bug in React. Please file a bug.\"),HE(te)){if(y=te.nextSibling&&te.nextSibling.dataset,y){fe=y.dgst;var Ke=y.msg;me=y.stck;var Fe=y.cstck}te=Ke,y=fe,v=me,fe=A=Fe,A=Error(te||\"The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering.\"),A.stack=v||\"\",A.digest=y,y=fe===void 0?null:fe,v={value:A,source:null,stack:y},typeof y==\"string\"&&bK.set(A,v),jl(v),l=f0(s,l,f)}else if(Ic||ea(s,l,f,!1),y=(f&s.childLanes)!==0,Ic||y){if(y=wi,y!==null&&(v=f&-f,v=(v&42)!==0?1:br(v),v=(v&(y.suspendedLanes|f))!==0?0:v,v!==0&&v!==Ue.retryLane))throw Ue.retryLane=v,Rs(s,v),Le(y,s,v),Lle;te.data===Hb||Bo(),l=f0(s,l,f)}else te.data===Hb?(l.flags|=192,l.child=s.child,l=null):(s=Ue.treeContext,Bs=td(te.nextSibling),id=l,Qr=!0,QE=null,Db=!1,kp=null,vy=!1,s!==null&&(uo(),Ep[Sp++]=Lb,Ep[Sp++]=Bb,Ep[Sp++]=YE,Lb=s.id,Bb=s.overflow,YE=l),l=pp(l,v.children),l.flags|=4096);return l}return A?(rh(l),A=v.fallback,te=l.mode,fe=s.child,me=fe.sibling,v=wa(fe,{mode:\"hidden\",children:v.children}),v.subtreeFlags=fe.subtreeFlags&65011712,me!==null?A=wa(me,A):(A=Zf(A,te,f,null),A.flags|=2),A.return=l,v.return=l,v.sibling=A,l.child=v,v=A,A=l.child,te=s.child.memoizedState,te===null?te=Yu(f):(fe=te.cachePool,fe!==null?(me=lc._currentValue,fe=fe.parent!==me?{parent:me,pool:me}:fe):fe=Hg(),te={baseLanes:te.baseLanes|f,cachePool:fe}),A.memoizedState=te,A.childLanes=d0(s,y,f),l.memoizedState=FK,v):(nh(l),f=s.child,s=f.sibling,f=wa(f,{mode:\"visible\",children:v.children}),f.return=l,f.sibling=null,s!==null&&(y=l.deletions,y===null?(l.deletions=[s],l.flags|=16):y.push(s)),l.child=f,l.memoizedState=null,f)}function pp(s,l){return l=ty({mode:\"visible\",children:l},s.mode),l.return=s,s.child=l}function ty(s,l){return s=g(22,s,null,l),s.lanes=0,s.stateNode={_visibility:uN,_pendingMarkers:null,_retryCache:null,_transitions:null},s}function f0(s,l,f){return P_(l,s.child,null,f),s=pp(l,l.pendingProps.children),s.flags|=2,l.memoizedState=null,s}function al(s,l,f){s.lanes|=l;var y=s.alternate;y!==null&&(y.lanes|=l),Xs(s.return,l,f)}function FE(s,l){var f=pl(s);return s=!f&&typeof J(s)==\"function\",f||s?(f=f?\"array\":\"iterable\",console.error(\"A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>\",f,l,f),!1):!0}function mp(s,l,f,y,v){var A=s.memoizedState;A===null?s.memoizedState={isBackwards:l,rendering:null,renderingStartTime:0,last:y,tail:f,tailMode:v}:(A.isBackwards=l,A.rendering=null,A.renderingStartTime=0,A.last=y,A.tail=f,A.tailMode=v)}function nw(s,l,f){var y=l.pendingProps,v=y.revealOrder,A=y.tail;if(y=y.children,v!==void 0&&v!==\"forwards\"&&v!==\"backwards\"&&v!==\"together\"&&!jle[v])if(jle[v]=!0,typeof v==\"string\")switch(v.toLowerCase()){case\"together\":case\"forwards\":case\"backwards\":console.error(\\'\"%s\" is not a valid value for revealOrder on <SuspenseList />. Use lowercase \"%s\" instead.\\',v,v.toLowerCase());break;case\"forward\":case\"backward\":console.error(\\'\"%s\" is not a valid value for revealOrder on <SuspenseList />. React uses the -s suffix in the spelling. Use \"%ss\" instead.\\',v,v.toLowerCase());break;default:console.error(\\'\"%s\" is not a supported revealOrder on <SuspenseList />. Did you mean \"together\", \"forwards\" or \"backwards\"?\\',v)}else console.error(\\'%s is not a supported value for revealOrder on <SuspenseList />. Did you mean \"together\", \"forwards\" or \"backwards\"?\\',v);A===void 0||DK[A]||(A!==\"collapsed\"&&A!==\"hidden\"?(DK[A]=!0,console.error(\\'\"%s\" is not a supported value for tail on <SuspenseList />. Did you mean \"collapsed\" or \"hidden\"?\\',A)):v!==\"forwards\"&&v!==\"backwards\"&&(DK[A]=!0,console.error(\\'<SuspenseList tail=\"%s\" /> is only valid if revealOrder is \"forwards\" or \"backwards\". Did you mean to specify revealOrder=\"forwards\"?\\',A)));e:if((v===\"forwards\"||v===\"backwards\")&&y!==void 0&&y!==null&&y!==!1)if(pl(y)){for(var K=0;K<y.length;K++)if(!FE(y[K],K))break e}else if(K=J(y),typeof K==\"function\"){if(K=K.call(y))for(var te=K.next(),fe=0;!te.done;te=K.next()){if(!FE(te.value,fe))break e;fe++}}else console.error(\\'A single row was passed to a <SuspenseList revealOrder=\"%s\" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?\\',v);if(Wi(s,l,y,f),y=dc.current,(y&T7)!==0)y=y&M_|T7,l.flags|=128;else{if(s!==null&&(s.flags&128)!==0)e:for(s=l.child;s!==null;){if(s.tag===13)s.memoizedState!==null&&al(s,f,l);else if(s.tag===19)al(s,f,l);else if(s.child!==null){s.child.return=s,s=s.child;continue}if(s===l)break e;for(;s.sibling===null;){if(s.return===null||s.return===l)break e;s=s.return}s.sibling.return=s.return,s=s.sibling}y&=M_}switch($(dc,y,l),v){case\"forwards\":for(f=l.child,v=null;f!==null;)s=f.alternate,s!==null&&bb(s)===null&&(v=f),f=f.sibling;f=v,f===null?(v=l.child,l.child=null):(v=f.sibling,f.sibling=null),mp(l,!1,v,f,A);break;case\"backwards\":for(f=null,v=l.child,l.child=null;v!==null;){if(s=v.alternate,s!==null&&bb(s)===null){l.child=v;break}s=v.sibling,v.sibling=f,f=v,v=s}mp(l,!0,f,null,A);break;case\"together\":mp(l,!1,null,null,void 0);break;default:l.memoizedState=null}return l.child}function Zd(s,l,f){if(s!==null&&(l.dependencies=s.dependencies),lf=-1,Ew|=l.lanes,(f&l.childLanes)===0)if(s!==null){if(ea(s,l,f,!1),(f&l.childLanes)===0)return null}else return null;if(s!==null&&l.child!==s.child)throw Error(\"Resuming work not yet implemented.\");if(l.child!==null){for(s=l.child,f=wa(s,s.pendingProps),l.child=f,f.return=l;s.sibling!==null;)s=s.sibling,f=f.sibling=wa(s,s.pendingProps),f.return=l;f.sibling=null}return l.child}function h0(s,l){return(s.lanes&l)!==0?!0:(s=s.dependencies,!!(s!==null&&cb(s)))}function t_(s,l,f){switch(l.tag){case 3:_(l,l.stateNode.containerInfo),Qf(l,lc,s.memoizedState.cache),zg();break;case 27:case 5:N(l);break;case 4:_(l,l.stateNode.containerInfo);break;case 10:Qf(l,l.type,l.memoizedProps.value);break;case 12:(f&l.childLanes)!==0&&(l.flags|=4),l.flags|=2048;var y=l.stateNode;y.effectDuration=-0,y.passiveEffectDuration=-0;break;case 13:if(y=l.memoizedState,y!==null)return y.dehydrated!==null?(nh(l),l.flags|=128,null):(f&l.child.childLanes)!==0?Wl(s,l,f):(nh(l),s=Zd(s,l,f),s!==null?s.sibling:null);nh(l);break;case 19:var v=(s.flags&128)!==0;if(y=(f&l.childLanes)!==0,y||(ea(s,l,f,!1),y=(f&l.childLanes)!==0),v){if(y)return nw(s,l,f);l.flags|=128}if(v=l.memoizedState,v!==null&&(v.rendering=null,v.tail=null,v.lastEffect=null),$(dc,dc.current,l),y)break;return null;case 22:case 23:return l.lanes=0,_o(s,l,f);case 24:Qf(l,lc,s.memoizedState.cache)}return Zd(s,l,f)}function rw(s,l,f){if(l._debugNeedsRemount&&s!==null){f=I2(l.type,l.key,l.pendingProps,l._debugOwner||null,l.mode,l.lanes),f._debugStack=l._debugStack,f._debugTask=l._debugTask;var y=l.return;if(y===null)throw Error(\"Cannot swap the root fiber.\");if(s.alternate=null,l.alternate=null,f.index=l.index,f.sibling=l.sibling,f.return=l.return,f.ref=l.ref,f._debugInfo=l._debugInfo,l===y.child)y.child=f;else{var v=y.child;if(v===null)throw Error(\"Expected parent to have a child.\");for(;v.sibling!==l;)if(v=v.sibling,v===null)throw Error(\"Expected to find the previous sibling.\");v.sibling=f}return l=y.deletions,l===null?(y.deletions=[s],y.flags|=16):l.push(s),f.flags|=2,f}if(s!==null)if(s.memoizedProps!==l.pendingProps||l.type!==s.type)Ic=!0;else{if(!h0(s,f)&&(l.flags&128)===0)return Ic=!1,t_(s,l,f);Ic=(s.flags&131072)!==0}else Ic=!1,(y=Qr)&&(uo(),y=(l.flags&1048576)!==0),y&&(y=l.index,uo(),ec(l,fN,y));switch(l.lanes=0,l.tag){case 16:e:if(y=l.pendingProps,s=ww(l.elementType),l.type=s,typeof s==\"function\")ib(s)?(y=fp(s,y),l.tag=1,l.type=s=tl(s),l=ql(null,l,s,y,f)):(l.tag=0,ih(l,s),l.type=s=tl(s),l=_a(null,l,s,y,f));else{if(s!=null){if(v=s.$$typeof,v===o7){l.tag=11,l.type=s=R2(s),l=Jg(null,l,s,y,f);break e}else if(v===XM){l.tag=14,l=Eb(null,l,s,y,f);break e}}throw l=\"\",s!==null&&typeof s==\"object\"&&s.$$typeof===uh&&(l=\" Did you wrap a component in React.lazy() more than once?\"),s=ne(s)||s,Error(\"Element type is invalid. Received a promise that resolves to: \"+s+\". Lazy element type must resolve to a class or function.\"+l)}return l;case 0:return _a(s,l,l.type,l.pendingProps,f);case 1:return y=l.type,v=fp(y,l.pendingProps),ql(s,l,y,v,f);case 3:e:{if(_(l,l.stateNode.containerInfo),s===null)throw Error(\"Should have a current fiber. This is a bug in React.\");y=l.pendingProps;var A=l.memoizedState;v=A.element,qg(s,l),Xm(l,y,null,f);var K=l.memoizedState;if(y=K.cache,Qf(l,lc,y),y!==A.cache&&O2(l,[lc],f,!0),Wg(),y=K.element,A.isDehydrated)if(A={element:y,isDehydrated:!1,cache:K.cache},l.updateQueue.baseState=A,l.memoizedState=A,l.flags&256){l=ey(s,l,y,f);break e}else if(y!==v){v=Xc(Error(\"This root received an early update, before anything was able hydrate. Switched the entire root to client rendering.\"),l),jl(v),l=ey(s,l,y,f);break e}else{switch(s=l.stateNode.containerInfo,s.nodeType){case 9:s=s.body;break;default:s=s.nodeName===\"HTML\"?s.ownerDocument.body:s}for(Bs=td(s.firstChild),id=l,Qr=!0,QE=null,Db=!1,kp=null,vy=!0,s=Sle(l,null,y,f),l.child=s;s;)s.flags=s.flags&-3|4096,s=s.sibling}else{if(zg(),y===v){l=Zd(s,l,f);break e}Wi(s,l,y,f)}l=l.child}return l;case 26:return u0(s,l),s===null?(s=o_(l.type,null,l.pendingProps,null))?l.memoizedState=s:Qr||(s=l.type,f=l.pendingProps,y=F(hw.current),y=ei(y).createElement(s),y[nu]=l,y[cf]=f,Ro(y,s,f),tt(y),l.stateNode=y):l.memoizedState=o_(l.type,s.memoizedProps,l.pendingProps,s.memoizedState),null;case 27:return N(l),s===null&&Qr&&(y=F(hw.current),v=z(),y=l.stateNode=Pa(l.type,l.pendingProps,y,v,!1),Db||(v=eu(y,l.type,l.pendingProps,v),v!==null&&(Ar(l,0).serverProps=v)),id=l,vy=!0,v=Bs,of(l.type)?(aG=v,Bs=td(y.firstChild)):Bs=v),Wi(s,l,l.pendingProps.children,f),u0(s,l),s===null&&(l.flags|=4194304),l.child;case 5:return s===null&&Qr&&(A=z(),y=eb(l.type,A.ancestorInfo),v=Bs,(K=!v)||(K=zE(v,l.type,l.pendingProps,vy),K!==null?(l.stateNode=K,Db||(A=eu(K,l.type,l.pendingProps,A),A!==null&&(Ar(l,0).serverProps=A)),id=l,Bs=td(K.firstChild),vy=!1,A=!0):A=!1,K=!A),K&&(y&&lE(l,v),ap(l))),N(l),v=l.type,A=l.pendingProps,K=s!==null?s.memoizedProps:null,y=A.children,w0(v,A)?y=null:K!==null&&w0(v,K)&&(l.flags|=32),l.memoizedState!==null&&(v=hb(s,l,e7,null,null,f),q7._currentValue=v),u0(s,l),Wi(s,l,y,f),l.child;case 6:return s===null&&Qr&&(s=l.pendingProps,f=z(),y=f.ancestorInfo.current,s=y!=null?Hd(s,y.tag,f.ancestorInfo.implicitRootScope):!0,f=Bs,(y=!f)||(y=r_(f,l.pendingProps,vy),y!==null?(l.stateNode=y,id=l,Bs=null,y=!0):y=!1,y=!y),y&&(s&&lE(l,f),ap(l))),null;case 13:return Wl(s,l,f);case 4:return _(l,l.stateNode.containerInfo),y=l.pendingProps,s===null?l.child=P_(l,null,y,f):Wi(s,l,y,f),l.child;case 11:return Jg(s,l,l.type,l.pendingProps,f);case 7:return Wi(s,l,l.pendingProps,f),l.child;case 8:return Wi(s,l,l.pendingProps.children,f),l.child;case 12:return l.flags|=4,l.flags|=2048,y=l.stateNode,y.effectDuration=-0,y.passiveEffectDuration=-0,Wi(s,l,l.pendingProps.children,f),l.child;case 10:return y=l.type,v=l.pendingProps,A=v.value,\"value\"in v||zle||(zle=!0,console.error(\"The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?\")),Qf(l,y,A),Wi(s,l,v.children,f),l.child;case 9:return v=l.type._context,y=l.pendingProps.children,typeof y!=\"function\"&&console.error(\"A context consumer was rendered with multiple children, or a child that isn\\'t a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it.\"),Gm(l),v=Hr(v),xe(l),y=OK(y,v,void 0),_e(),l.flags|=1,Wi(s,l,y,f),l.child;case 14:return Eb(s,l,l.type,l.pendingProps,f);case 15:return Sb(s,l,l.type,l.pendingProps,f);case 19:return nw(s,l,f);case 31:return y=l.pendingProps,f=l.mode,y={mode:y.mode,children:y.children},s===null?(s=ty(y,f),s.ref=l.ref,l.child=s,s.return=l,l=s):(s=wa(s.child,y),s.ref=l.ref,l.child=s,s.return=l,l=s),l;case 22:return _o(s,l,f);case 24:return Gm(l),y=Hr(lc),s===null?(v=lp(),v===null&&(v=wi,A=Zm(),v.pooledCache=A,nl(A),A!==null&&(v.pooledCacheLanes|=f),v=A),l.memoizedState={parent:y,cache:v},Sa(l),Qf(l,lc,v)):((s.lanes&f)!==0&&(qg(s,l),Xm(l,null,null,f),Wg()),v=s.memoizedState,A=l.memoizedState,v.parent!==y?(v={parent:y,cache:y},l.memoizedState=v,l.lanes===0&&(l.memoizedState=l.updateQueue.baseState=v),Qf(l,lc,y)):(y=A.cache,Qf(l,lc,y),y!==v.cache&&O2(l,[lc],f,!0))),Wi(s,l,l.pendingProps.children,f),l.child;case 29:throw l.pendingProps}throw Error(\"Unknown unit of work tag (\"+l.tag+\"). This error is likely caused by a bug in React. Please file an issue.\")}function Ca(s){s.flags|=4}function ny(s,l){if(l.type!==\"stylesheet\"||(l.state.loading&Rp)!==f5)s.flags&=-16777217;else if(s.flags|=16777216,!Dae(l)){if(l=Tp.current,l!==null&&((Rr&4194048)===Rr?xy!==null:(Rr&62914560)!==Rr&&(Rr&536870912)===0||l!==xy))throw k7=kK,Qce;s.flags|=8192}}function ry(s,l){l!==null&&(s.flags|=4),s.flags&16384&&(l=s.tag!==22?Bt():536870912,s.lanes|=l,s5|=l)}function kc(s,l){if(!Qr)switch(s.tailMode){case\"hidden\":l=s.tail;for(var f=null;l!==null;)l.alternate!==null&&(f=l),l=l.sibling;f===null?s.tail=null:f.sibling=null;break;case\"collapsed\":f=s.tail;for(var y=null;f!==null;)f.alternate!==null&&(y=f),f=f.sibling;y===null?l||s.tail===null?s.tail=null:s.tail.sibling=null:y.sibling=null}}function fo(s){var l=s.alternate!==null&&s.alternate.child===s.child,f=0,y=0;if(l)if((s.mode&ml)!==Ni){for(var v=s.selfBaseDuration,A=s.child;A!==null;)f|=A.lanes|A.childLanes,y|=A.subtreeFlags&65011712,y|=A.flags&65011712,v+=A.treeBaseDuration,A=A.sibling;s.treeBaseDuration=v}else for(v=s.child;v!==null;)f|=v.lanes|v.childLanes,y|=v.subtreeFlags&65011712,y|=v.flags&65011712,v.return=s,v=v.sibling;else if((s.mode&ml)!==Ni){v=s.actualDuration,A=s.selfBaseDuration;for(var K=s.child;K!==null;)f|=K.lanes|K.childLanes,y|=K.subtreeFlags,y|=K.flags,v+=K.actualDuration,A+=K.treeBaseDuration,K=K.sibling;s.actualDuration=v,s.treeBaseDuration=A}else for(v=s.child;v!==null;)f|=v.lanes|v.childLanes,y|=v.subtreeFlags,y|=v.flags,v.return=s,v=v.sibling;return s.subtreeFlags|=y,s.childLanes=f,l}function kb(s,l,f){var y=l.pendingProps;switch(Is(l),l.tag){case 31:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return fo(l),null;case 1:return fo(l),null;case 3:return f=l.stateNode,y=null,s!==null&&(y=s.memoizedState.cache),l.memoizedState.cache!==y&&(l.flags|=2048),qd(lc,l),O(l),f.pendingContext&&(f.context=f.pendingContext,f.pendingContext=null),(s===null||s.child===null)&&(sb(l)?(dE(),Ca(l)):s===null||s.memoizedState.isDehydrated&&(l.flags&256)===0||(l.flags|=1024,cp())),fo(l),null;case 26:return f=l.memoizedState,s===null?(Ca(l),f!==null?(fo(l),ny(l,f)):(fo(l),l.flags&=-16777217)):f?f!==s.memoizedState?(Ca(l),fo(l),ny(l,f)):(fo(l),l.flags&=-16777217):(s.memoizedProps!==y&&Ca(l),fo(l),l.flags&=-16777217),null;case 27:B(l),f=F(hw.current);var v=l.type;if(s!==null&&l.stateNode!=null)s.memoizedProps!==y&&Ca(l);else{if(!y){if(l.stateNode===null)throw Error(\"We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.\");return fo(l),null}s=z(),sb(l)?uE(l,s):(s=Pa(v,y,f,s,!0),l.stateNode=s,Ca(l))}return fo(l),null;case 5:if(B(l),f=l.type,s!==null&&l.stateNode!=null)s.memoizedProps!==y&&Ca(l);else{if(!y){if(l.stateNode===null)throw Error(\"We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.\");return fo(l),null}if(v=z(),sb(l))uE(l,v);else{switch(s=F(hw.current),eb(f,v.ancestorInfo),v=v.context,s=ei(s),v){case W_:s=s.createElementNS(h_,f);break;case UN:s=s.createElementNS(iN,f);break;default:switch(f){case\"svg\":s=s.createElementNS(h_,f);break;case\"math\":s=s.createElementNS(iN,f);break;case\"script\":s=s.createElement(\"div\"),s.innerHTML=\"<script><\\\\/script>\",s=s.removeChild(s.firstChild);break;case\"select\":s=typeof y.is==\"string\"?s.createElement(\"select\",{is:y.is}):s.createElement(\"select\"),y.multiple?s.multiple=!0:y.size&&(s.size=y.size);break;default:s=typeof y.is==\"string\"?s.createElement(f,{is:y.is}):s.createElement(f),f.indexOf(\"-\")===-1&&(f!==f.toLowerCase()&&console.error(\"<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.\",f),Object.prototype.toString.call(s)!==\"[object HTMLUnknownElement]\"||Mb.call(sue,f)||(sue[f]=!0,console.error(\"The tag <%s> is unrecognized in this browser. If you meant to render a React component, start its name with an uppercase letter.\",f)))}}s[nu]=l,s[cf]=y;e:for(v=l.child;v!==null;){if(v.tag===5||v.tag===6)s.appendChild(v.stateNode);else if(v.tag!==4&&v.tag!==27&&v.child!==null){v.child.return=v,v=v.child;continue}if(v===l)break e;for(;v.sibling===null;){if(v.return===null||v.return===l)break e;v=v.return}v.sibling.return=v.return,v=v.sibling}l.stateNode=s;e:switch(Ro(s,f,y),f){case\"button\":case\"input\":case\"select\":case\"textarea\":s=!!y.autoFocus;break e;case\"img\":s=!0;break e;default:s=!1}s&&Ca(l)}}return fo(l),l.flags&=-16777217,null;case 6:if(s&&l.stateNode!=null)s.memoizedProps!==y&&Ca(l);else{if(typeof y!=\"string\"&&l.stateNode===null)throw Error(\"We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.\");if(s=F(hw.current),f=z(),sb(l)){s=l.stateNode,f=l.memoizedProps,v=!Db,y=null;var A=id;if(A!==null)switch(A.tag){case 3:v&&(v=aw(s,f,y),v!==null&&(Ar(l,0).serverProps=v));break;case 27:case 5:y=A.memoizedProps,v&&(v=aw(s,f,y),v!==null&&(Ar(l,0).serverProps=v))}s[nu]=l,s=!!(s.nodeValue===f||y!==null&&y.suppressHydrationWarning===!0||v0(s.nodeValue,f)),s||ap(l)}else v=f.ancestorInfo.current,v!=null&&Hd(y,v.tag,f.ancestorInfo.implicitRootScope),s=ei(s).createTextNode(y),s[nu]=l,l.stateNode=s}return fo(l),null;case 13:if(y=l.memoizedState,s===null||s.memoizedState!==null&&s.memoizedState.dehydrated!==null){if(v=sb(l),y!==null&&y.dehydrated!==null){if(s===null){if(!v)throw Error(\"A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.\");if(v=l.memoizedState,v=v!==null?v.dehydrated:null,!v)throw Error(\"Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.\");v[nu]=l,fo(l),(l.mode&ml)!==Ni&&y!==null&&(v=l.child,v!==null&&(l.treeBaseDuration-=v.treeBaseDuration))}else dE(),zg(),(l.flags&128)===0&&(l.memoizedState=null),l.flags|=4,fo(l),(l.mode&ml)!==Ni&&y!==null&&(v=l.child,v!==null&&(l.treeBaseDuration-=v.treeBaseDuration));v=!1}else v=cp(),s!==null&&s.memoizedState!==null&&(s.memoizedState.hydrationErrors=v),v=!0;if(!v)return l.flags&256?($d(l),l):($d(l),null)}return $d(l),(l.flags&128)!==0?(l.lanes=f,(l.mode&ml)!==Ni&&Qm(l),l):(f=y!==null,s=s!==null&&s.memoizedState!==null,f&&(y=l.child,v=null,y.alternate!==null&&y.alternate.memoizedState!==null&&y.alternate.memoizedState.cachePool!==null&&(v=y.alternate.memoizedState.cachePool.pool),A=null,y.memoizedState!==null&&y.memoizedState.cachePool!==null&&(A=y.memoizedState.cachePool.pool),A!==v&&(y.flags|=2048)),f!==s&&f&&(l.child.flags|=8192),ry(l,l.updateQueue),fo(l),(l.mode&ml)!==Ni&&f&&(s=l.child,s!==null&&(l.treeBaseDuration-=s.treeBaseDuration)),null);case 4:return O(l),s===null&&Zl(l.stateNode.containerInfo),fo(l),null;case 10:return qd(l.type,l),fo(l),null;case 19:if(V(dc,l),v=l.memoizedState,v===null)return fo(l),null;if(y=(l.flags&128)!==0,A=v.rendering,A===null)if(y)kc(v,!1);else{if(Ds!==zb||s!==null&&(s.flags&128)!==0)for(s=l.child;s!==null;){if(A=bb(s),A!==null){for(l.flags|=128,kc(v,!1),s=A.updateQueue,l.updateQueue=s,ry(l,s),l.subtreeFlags=0,s=f,f=l.child;f!==null;)aE(f,s),f=f.sibling;return $(dc,dc.current&M_|T7,l),l.child}s=s.sibling}v.tail!==null&&py()>AN&&(l.flags|=128,y=!0,kc(v,!1),l.lanes=4194304)}else{if(!y)if(s=bb(A),s!==null){if(l.flags|=128,y=!0,s=s.updateQueue,l.updateQueue=s,ry(l,s),kc(v,!0),v.tail===null&&v.tailMode===\"hidden\"&&!A.alternate&&!Qr)return fo(l),null}else 2*py()-v.renderingStartTime>AN&&f!==536870912&&(l.flags|=128,y=!0,kc(v,!1),l.lanes=4194304);v.isBackwards?(A.sibling=l.child,l.child=A):(s=v.last,s!==null?s.sibling=A:l.child=A,v.last=A)}return v.tail!==null?(s=v.tail,v.rendering=s,v.tail=s.sibling,v.renderingStartTime=py(),s.sibling=null,f=dc.current,f=y?f&M_|T7:f&M_,$(dc,f,l),s):(fo(l),null);case 22:case 23:return $d(l),ol(l),y=l.memoizedState!==null,s!==null?s.memoizedState!==null!==y&&(l.flags|=8192):y&&(l.flags|=8192),y?(f&536870912)!==0&&(l.flags&128)===0&&(fo(l),l.subtreeFlags&6&&(l.flags|=8192)):fo(l),f=l.updateQueue,f!==null&&ry(l,f.retryQueue),f=null,s!==null&&s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(f=s.memoizedState.cachePool.pool),y=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(y=l.memoizedState.cachePool.pool),y!==f&&(l.flags|=2048),s!==null&&V(e5,l),null;case 24:return f=null,s!==null&&(f=s.memoizedState.cache),l.memoizedState.cache!==f&&(l.flags|=2048),qd(lc,l),fo(l),null;case 25:return null;case 30:return null}throw Error(\"Unknown unit of work tag (\"+l.tag+\"). This error is likely caused by a bug in React. Please file an issue.\")}function ow(s,l){switch(Is(l),l.tag){case 1:return s=l.flags,s&65536?(l.flags=s&-65537|128,(l.mode&ml)!==Ni&&Qm(l),l):null;case 3:return qd(lc,l),O(l),s=l.flags,(s&65536)!==0&&(s&128)===0?(l.flags=s&-65537|128,l):null;case 26:case 27:case 5:return B(l),null;case 13:if($d(l),s=l.memoizedState,s!==null&&s.dehydrated!==null){if(l.alternate===null)throw Error(\"Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.\");zg()}return s=l.flags,s&65536?(l.flags=s&-65537|128,(l.mode&ml)!==Ni&&Qm(l),l):null;case 19:return V(dc,l),null;case 4:return O(l),null;case 10:return qd(l.type,l),null;case 22:case 23:return $d(l),ol(l),s!==null&&V(e5,l),s=l.flags,s&65536?(l.flags=s&-65537|128,(l.mode&ml)!==Ni&&Qm(l),l):null;case 24:return qd(lc,l),null;case 25:return null;default:return null}}function _b(s,l){switch(Is(l),l.tag){case 3:qd(lc,l),O(l);break;case 26:case 27:case 5:B(l);break;case 4:O(l);break;case 13:$d(l);break;case 19:V(dc,l);break;case 10:qd(l.type,l);break;case 22:case 23:$d(l),ol(l),s!==null&&V(e5,l);break;case 24:qd(lc,l)}}function fr(s){return(s.mode&ml)!==Ni}function oy(s,l){fr(s)?(pi(),Yd(l,s),Lo()):Yd(l,s)}function p0(s,l,f){fr(s)?(pi(),Qu(f,s,l),Lo()):Qu(f,s,l)}function Yd(s,l){try{var f=l.updateQueue,y=f!==null?f.lastEffect:null;if(y!==null){var v=y.next;f=v;do{if((f.tag&s)===s&&((s&uc)!==_p?Vt!==null&&typeof Vt.markComponentPassiveEffectMountStarted==\"function\"&&Vt.markComponentPassiveEffectMountStarted(l):(s&gl)!==_p&&Vt!==null&&typeof Vt.markComponentLayoutEffectMountStarted==\"function\"&&Vt.markComponentLayoutEffectMountStarted(l),y=void 0,(s&sd)!==_p&&(H_=!0),y=jt(l,_Fe,f),(s&sd)!==_p&&(H_=!1),(s&uc)!==_p?Vt!==null&&typeof Vt.markComponentPassiveEffectMountStopped==\"function\"&&Vt.markComponentPassiveEffectMountStopped():(s&gl)!==_p&&Vt!==null&&typeof Vt.markComponentLayoutEffectMountStopped==\"function\"&&Vt.markComponentLayoutEffectMountStopped(),y!==void 0&&typeof y!=\"function\")){var A=void 0;A=(f.tag&gl)!==0?\"useLayoutEffect\":(f.tag&sd)!==0?\"useInsertionEffect\":\"useEffect\";var K=void 0;K=y===null?\" You returned null. If your effect does not require clean up, return undefined (or nothing).\":typeof y.then==\"function\"?`\\n\\nIt looks like you wrote `+A+`(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately:\\n\\n`+A+`(() => {\\n  async function fetchData() {\\n    // You can await here\\n    const response = await MyAPI.getData(someId);\\n    // ...\\n  }\\n  fetchData();\\n}, [someId]); // Or [] if effect doesn\\'t need props or state\\n\\nLearn more about data fetching with Hooks: https://react.dev/link/hooks-data-fetching`:\" You returned: \"+y,jt(l,function(te,fe){console.error(\"%s must not return anything besides a function, which is used for clean-up.%s\",te,fe)},A,K)}f=f.next}while(f!==v)}}catch(te){Un(l,l.return,te)}}function Qu(s,l,f){try{var y=l.updateQueue,v=y!==null?y.lastEffect:null;if(v!==null){var A=v.next;y=A;do{if((y.tag&s)===s){var K=y.inst,te=K.destroy;te!==void 0&&(K.destroy=void 0,(s&uc)!==_p?Vt!==null&&typeof Vt.markComponentPassiveEffectUnmountStarted==\"function\"&&Vt.markComponentPassiveEffectUnmountStarted(l):(s&gl)!==_p&&Vt!==null&&typeof Vt.markComponentLayoutEffectUnmountStarted==\"function\"&&Vt.markComponentLayoutEffectUnmountStarted(l),(s&sd)!==_p&&(H_=!0),v=l,jt(v,CFe,v,f,te),(s&sd)!==_p&&(H_=!1),(s&uc)!==_p?Vt!==null&&typeof Vt.markComponentPassiveEffectUnmountStopped==\"function\"&&Vt.markComponentPassiveEffectUnmountStopped():(s&gl)!==_p&&Vt!==null&&typeof Vt.markComponentLayoutEffectUnmountStopped==\"function\"&&Vt.markComponentLayoutEffectUnmountStopped())}y=y.next}while(y!==A)}}catch(fe){Un(l,l.return,fe)}}function iy(s,l){fr(s)?(pi(),Yd(l,s),Lo()):Yd(l,s)}function m0(s,l,f){fr(s)?(pi(),Qu(f,s,l),Lo()):Qu(f,s,l)}function g0(s){var l=s.updateQueue;if(l!==null){var f=s.stateNode;s.type.defaultProps||\"ref\"in s.memoizedProps||L_||(f.props!==s.memoizedProps&&console.error(\"Expected %s props to match memoized props before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.\",Z(s)||\"instance\"),f.state!==s.memoizedState&&console.error(\"Expected %s state to match memoized state before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.\",Z(s)||\"instance\"));try{jt(s,t0,l,f)}catch(y){Un(s,s.return,y)}}}function rs(s,l,f){return s.getSnapshotBeforeUpdate(l,f)}function Vl(s,l){var f=l.memoizedProps,y=l.memoizedState;l=s.stateNode,s.type.defaultProps||\"ref\"in s.memoizedProps||L_||(l.props!==s.memoizedProps&&console.error(\"Expected %s props to match memoized props before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.\",Z(s)||\"instance\"),l.state!==s.memoizedState&&console.error(\"Expected %s state to match memoized state before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.\",Z(s)||\"instance\"));try{var v=fp(s.type,f,s.elementType===s.type),A=jt(s,rs,l,v,y);f=Hle,A!==void 0||f.has(s.type)||(f.add(s.type),jt(s,function(){console.error(\"%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.\",Z(s))})),l.__reactInternalSnapshotBeforeUpdate=A}catch(K){Un(s,s.return,K)}}function Qo(s,l,f){f.props=fp(s.type,s.memoizedProps),f.state=s.memoizedState,fr(s)?(pi(),jt(s,mle,s,l,f),Lo()):jt(s,mle,s,l,f)}function sy(s){var l=s.ref;if(l!==null){switch(s.tag){case 26:case 27:case 5:var f=s.stateNode;break;case 30:f=s.stateNode;break;default:f=s.stateNode}if(typeof l==\"function\")if(fr(s))try{pi(),s.refCleanup=l(f)}finally{Lo()}else s.refCleanup=l(f);else typeof l==\"string\"?console.error(\"String refs are no longer supported.\"):l.hasOwnProperty(\"current\")||console.error(\"Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().\",Z(s)),l.current=f}}function sh(s,l){try{jt(s,sy,s)}catch(f){Un(s,l,f)}}function Os(s,l){var f=s.ref,y=s.refCleanup;if(f!==null)if(typeof y==\"function\")try{if(fr(s))try{pi(),jt(s,y)}finally{Lo(s)}else jt(s,y)}catch(v){Un(s,l,v)}finally{s.refCleanup=null,s=s.alternate,s!=null&&(s.refCleanup=null)}else if(typeof f==\"function\")try{if(fr(s))try{pi(),jt(s,f,null)}finally{Lo(s)}else jt(s,f,null)}catch(v){Un(s,l,v)}else f.current=null}function ho(s,l,f,y){var v=s.memoizedProps,A=v.id,K=v.onCommit;v=v.onRender,l=l===null?\"mount\":\"update\",mN&&(l=\"nested-update\"),typeof v==\"function\"&&v(A,l,s.actualDuration,s.treeBaseDuration,s.actualStartTime,f),typeof K==\"function\"&&K(s.memoizedProps.id,l,y,f)}function n_(s,l,f,y){var v=s.memoizedProps;s=v.id,v=v.onPostCommit,l=l===null?\"mount\":\"update\",mN&&(l=\"nested-update\"),typeof v==\"function\"&&v(s,l,y,f)}function y0(s){var l=s.type,f=s.memoizedProps,y=s.stateNode;try{jt(s,ly,y,l,f,s)}catch(v){Un(s,s.return,v)}}function Cb(s,l,f){try{jt(s,rf,s.stateNode,s.type,f,l,s)}catch(y){Un(s,s.return,y)}}function iw(s){return s.tag===5||s.tag===3||s.tag===26||s.tag===27&&of(s.type)||s.tag===4}function Ab(s){e:for(;;){for(;s.sibling===null;){if(s.return===null||iw(s.return))return null;s=s.return}for(s.sibling.return=s.return,s=s.sibling;s.tag!==5&&s.tag!==6&&s.tag!==18;){if(s.tag===27&&of(s.type)||s.flags&2||s.child===null||s.tag===4)continue e;s.child.return=s,s=s.child}if(!(s.flags&2))return s.stateNode}}function Tb(s,l,f){var y=s.tag;if(y===5||y===6)s=s.stateNode,l?(f.nodeType===9?f.body:f.nodeName===\"HTML\"?f.ownerDocument.body:f).insertBefore(s,l):(l=f.nodeType===9?f.body:f.nodeName===\"HTML\"?f.ownerDocument.body:f,l.appendChild(s),f=f._reactRootContainer,f!=null||l.onclick!==null||(l.onclick=Xo));else if(y!==4&&(y===27&&of(s.type)&&(f=s.stateNode,l=null),s=s.child,s!==null))for(Tb(s,l,f),s=s.sibling;s!==null;)Tb(s,l,f),s=s.sibling}function ay(s,l,f){var y=s.tag;if(y===5||y===6)s=s.stateNode,l?f.insertBefore(s,l):f.appendChild(s);else if(y!==4&&(y===27&&of(s.type)&&(f=s.stateNode),s=s.child,s!==null))for(ay(s,l,f),s=s.sibling;s!==null;)ay(s,l,f),s=s.sibling}function x(s){for(var l,f=s.return;f!==null;){if(iw(f)){l=f;break}f=f.return}if(l==null)throw Error(\"Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.\");switch(l.tag){case 27:l=l.stateNode,f=Ab(s),ay(s,f,l);break;case 5:f=l.stateNode,l.flags&32&&(hl(f),l.flags&=-33),l=Ab(s),ay(s,l,f);break;case 3:case 4:l=l.stateNode.containerInfo,f=Ab(s),Tb(s,f,l);break;default:throw Error(\"Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue.\")}}function k(s){var l=s.stateNode,f=s.memoizedProps;try{jt(s,VM,s.type,f,l,s)}catch(y){Un(s,s.return,y)}}function P(s,l){if(s=s.containerInfo,oG=qN,s=Dg(s),Gf(s)){if(\"selectionStart\"in s)var f={start:s.selectionStart,end:s.selectionEnd};else e:{f=(f=s.ownerDocument)&&f.defaultView||window;var y=f.getSelection&&f.getSelection();if(y&&y.rangeCount!==0){f=y.anchorNode;var v=y.anchorOffset,A=y.focusNode;y=y.focusOffset;try{f.nodeType,A.nodeType}catch{f=null;break e}var K=0,te=-1,fe=-1,me=0,Ue=0,Ke=s,Fe=null;t:for(;;){for(var Qe;Ke!==f||v!==0&&Ke.nodeType!==3||(te=K+v),Ke!==A||y!==0&&Ke.nodeType!==3||(fe=K+y),Ke.nodeType===3&&(K+=Ke.nodeValue.length),(Qe=Ke.firstChild)!==null;)Fe=Ke,Ke=Qe;for(;;){if(Ke===s)break t;if(Fe===f&&++me===v&&(te=K),Fe===A&&++Ue===y&&(fe=K),(Qe=Ke.nextSibling)!==null)break;Ke=Fe,Fe=Ke.parentNode}Ke=Qe}f=te===-1||fe===-1?null:{start:te,end:fe}}else f=null}f=f||{start:0,end:0}}else f=null;for(iG={focusedElem:s,selectionRange:f},qN=!1,Oc=l;Oc!==null;)if(l=Oc,s=l.child,(l.subtreeFlags&1024)!==0&&s!==null)s.return=l,Oc=s;else for(;Oc!==null;){switch(s=l=Oc,f=s.alternate,v=s.flags,s.tag){case 0:break;case 11:case 15:break;case 1:(v&1024)!==0&&f!==null&&Vl(s,f);break;case 3:if((v&1024)!==0){if(s=s.stateNode.containerInfo,f=s.nodeType,f===9)Ls(s);else if(f===1)switch(s.nodeName){case\"HEAD\":case\"HTML\":case\"BODY\":Ls(s);break;default:s.textContent=\"\"}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((v&1024)!==0)throw Error(\"This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.\")}if(s=l.sibling,s!==null){s.return=l.return,Oc=s;break}Oc=l.return}}function Q(s,l,f){var y=f.flags;switch(f.tag){case 0:case 11:case 15:lt(s,f),y&4&&oy(f,gl|Cp);break;case 1:if(lt(s,f),y&4)if(s=f.stateNode,l===null)f.type.defaultProps||\"ref\"in f.memoizedProps||L_||(s.props!==f.memoizedProps&&console.error(\"Expected %s props to match memoized props before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.\",Z(f)||\"instance\"),s.state!==f.memoizedState&&console.error(\"Expected %s state to match memoized state before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.\",Z(f)||\"instance\")),fr(f)?(pi(),jt(f,PK,f,s),Lo()):jt(f,PK,f,s);else{var v=fp(f.type,l.memoizedProps);l=l.memoizedState,f.type.defaultProps||\"ref\"in f.memoizedProps||L_||(s.props!==f.memoizedProps&&console.error(\"Expected %s props to match memoized props before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.\",Z(f)||\"instance\"),s.state!==f.memoizedState&&console.error(\"Expected %s state to match memoized state before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.\",Z(f)||\"instance\")),fr(f)?(pi(),jt(f,fle,f,s,v,l,s.__reactInternalSnapshotBeforeUpdate),Lo()):jt(f,fle,f,s,v,l,s.__reactInternalSnapshotBeforeUpdate)}y&64&&g0(f),y&512&&sh(f,f.return);break;case 3:if(l=ko(),lt(s,f),y&64&&(y=f.updateQueue,y!==null)){if(v=null,f.child!==null)switch(f.child.tag){case 27:case 5:v=f.child.stateNode;break;case 1:v=f.child.stateNode}try{jt(f,t0,y,v)}catch(K){Un(f,f.return,K)}}s.effectDuration+=ta(l);break;case 27:l===null&&y&4&&k(f);case 26:case 5:lt(s,f),l===null&&y&4&&y0(f),y&512&&sh(f,f.return);break;case 12:if(y&4){y=ko(),lt(s,f),s=f.stateNode,s.effectDuration+=lb(y);try{jt(f,ho,f,l,pN,s.effectDuration)}catch(K){Un(f,f.return,K)}}else lt(s,f);break;case 13:lt(s,f),y&4&&Pe(s,f),y&64&&(s=f.memoizedState,s!==null&&(s=s.dehydrated,s!==null&&(f=gs.bind(null,f),qE(s,f))));break;case 22:if(y=f.memoizedState!==null||jb,!y){l=l!==null&&l.memoizedState!==null||la,v=jb;var A=la;jb=y,(la=l)&&!A?un(s,f,(f.subtreeFlags&8772)!==0):lt(s,f),jb=v,la=A}break;case 30:break;default:lt(s,f)}}function oe(s){var l=s.alternate;l!==null&&(s.alternate=null,oe(l)),s.child=null,s.deletions=null,s.sibling=null,s.tag===5&&(l=s.stateNode,l!==null&&wr(l)),s.stateNode=null,s._debugOwner=null,s.return=null,s.dependencies=null,s.memoizedProps=null,s.memoizedState=null,s.pendingProps=null,s.stateNode=null,s.updateQueue=null}function de(s,l,f){for(f=f.child;f!==null;)Re(s,l,f),f=f.sibling}function Re(s,l,f){if(tu&&typeof tu.onCommitFiberUnmount==\"function\")try{tu.onCommitFiberUnmount(d_,f)}catch(A){my||(my=!0,console.error(\"React instrumentation encountered an error: %s\",A))}switch(f.tag){case 26:la||Os(f,l),de(s,l,f),f.memoizedState?f.memoizedState.count--:f.stateNode&&(f=f.stateNode,f.parentNode.removeChild(f));break;case 27:la||Os(f,l);var y=La,v=uf;of(f.type)&&(La=f.stateNode,uf=!1),de(s,l,f),jt(f,vp,f.stateNode),La=y,uf=v;break;case 5:la||Os(f,l);case 6:if(y=La,v=uf,La=null,de(s,l,f),La=y,uf=v,La!==null)if(uf)try{jt(f,Rb,La,f.stateNode)}catch(A){Un(f,l,A)}else try{jt(f,x0,La,f.stateNode)}catch(A){Un(f,l,A)}break;case 18:La!==null&&(uf?(s=La,bp(s.nodeType===9?s.body:s.nodeName===\"HTML\"?s.ownerDocument.body:s,f.stateNode),r7(s)):bp(La,f.stateNode));break;case 4:y=La,v=uf,La=f.stateNode.containerInfo,uf=!0,de(s,l,f),La=y,uf=v;break;case 0:case 11:case 14:case 15:la||Qu(sd,f,l),la||p0(f,l,gl),de(s,l,f);break;case 1:la||(Os(f,l),y=f.stateNode,typeof y.componentWillUnmount==\"function\"&&Qo(f,l,y)),de(s,l,f);break;case 21:de(s,l,f);break;case 22:la=(y=la)||f.memoizedState!==null,de(s,l,f),la=y;break;default:de(s,l,f)}}function Pe(s,l){if(l.memoizedState===null&&(s=l.alternate,s!==null&&(s=s.memoizedState,s!==null&&(s=s.dehydrated,s!==null))))try{jt(l,Rc,s)}catch(f){Un(l,l.return,f)}}function nt(s){switch(s.tag){case 13:case 19:var l=s.stateNode;return l===null&&(l=s.stateNode=new qle),l;case 22:return s=s.stateNode,l=s._retryCache,l===null&&(l=s._retryCache=new qle),l;default:throw Error(\"Unexpected Suspense handler tag (\"+s.tag+\"). This is a bug in React.\")}}function Ne(s,l){var f=nt(s);l.forEach(function(y){var v=Mi.bind(null,s,y);if(!f.has(y)){if(f.add(y),S0)if(B_!==null&&D_!==null)as(D_,B_);else throw Error(\"Expected finished root and lanes to be set. This is a bug in React.\");y.then(v,v)}})}function Et(s,l){var f=l.deletions;if(f!==null)for(var y=0;y<f.length;y++){var v=s,A=l,K=f[y],te=A;e:for(;te!==null;){switch(te.tag){case 27:if(of(te.type)){La=te.stateNode,uf=!1;break e}break;case 5:La=te.stateNode,uf=!1;break e;case 3:case 4:La=te.stateNode.containerInfo,uf=!0;break e}te=te.return}if(La===null)throw Error(\"Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.\");Re(v,A,K),La=null,uf=!1,v=K,A=v.alternate,A!==null&&(A.return=null),v.return=null}if(l.subtreeFlags&13878)for(l=l.child;l!==null;)At(l,s),l=l.sibling}function At(s,l){var f=s.alternate,y=s.flags;switch(s.tag){case 0:case 11:case 14:case 15:Et(l,s),Rt(s),y&4&&(Qu(sd|Cp,s,s.return),Yd(sd|Cp,s),p0(s,s.return,gl|Cp));break;case 1:Et(l,s),Rt(s),y&512&&(la||f===null||Os(f,f.return)),y&64&&jb&&(s=s.updateQueue,s!==null&&(y=s.callbacks,y!==null&&(f=s.shared.hiddenCallbacks,s.shared.hiddenCallbacks=f===null?y:f.concat(y))));break;case 26:var v=T0;if(Et(l,s),Rt(s),y&512&&(la||f===null||Os(f,f.return)),y&4)if(l=f!==null?f.memoizedState:null,y=s.memoizedState,f===null)if(y===null)if(s.stateNode===null){e:{y=s.type,f=s.memoizedProps,l=v.ownerDocument||v;t:switch(y){case\"title\":v=l.getElementsByTagName(\"title\")[0],(!v||v[s7]||v[nu]||v.namespaceURI===h_||v.hasAttribute(\"itemprop\"))&&(v=l.createElement(y),l.head.insertBefore(v,l.querySelector(\"head > title\"))),Ro(v,y,f),v[nu]=s,tt(v),y=v;break e;case\"link\":var A=Ob(\"link\",\"href\",l).get(y+(f.href||\"\"));if(A){for(var K=0;K<A.length;K++)if(v=A[K],v.getAttribute(\"href\")===(f.href==null||f.href===\"\"?null:f.href)&&v.getAttribute(\"rel\")===(f.rel==null?null:f.rel)&&v.getAttribute(\"title\")===(f.title==null?null:f.title)&&v.getAttribute(\"crossorigin\")===(f.crossOrigin==null?null:f.crossOrigin)){A.splice(K,1);break t}}v=l.createElement(y),Ro(v,y,f),l.head.appendChild(v);break;case\"meta\":if(A=Ob(\"meta\",\"content\",l).get(y+(f.content||\"\"))){for(K=0;K<A.length;K++)if(v=A[K],I(f.content,\"content\"),v.getAttribute(\"content\")===(f.content==null?null:\"\"+f.content)&&v.getAttribute(\"name\")===(f.name==null?null:f.name)&&v.getAttribute(\"property\")===(f.property==null?null:f.property)&&v.getAttribute(\"http-equiv\")===(f.httpEquiv==null?null:f.httpEquiv)&&v.getAttribute(\"charset\")===(f.charSet==null?null:f.charSet)){A.splice(K,1);break t}}v=l.createElement(y),Ro(v,y,f),l.head.appendChild(v);break;default:throw Error(\\'getNodesForType encountered a type it did not expect: \"\\'+y+\\'\". This is a bug in React.\\')}v[nu]=s,tt(v),y=v}s.stateNode=y}else af(v,s.type,s.stateNode);else s.stateNode=s_(v,y,s.memoizedProps);else l!==y?(l===null?f.stateNode!==null&&(f=f.stateNode,f.parentNode.removeChild(f)):l.count--,y===null?af(v,s.type,s.stateNode):s_(v,y,s.memoizedProps)):y===null&&s.stateNode!==null&&Cb(s,s.memoizedProps,f.memoizedProps);break;case 27:Et(l,s),Rt(s),y&512&&(la||f===null||Os(f,f.return)),f!==null&&y&4&&Cb(s,s.memoizedProps,f.memoizedProps);break;case 5:if(Et(l,s),Rt(s),y&512&&(la||f===null||Os(f,f.return)),s.flags&32){l=s.stateNode;try{jt(s,hl,l)}catch(Ue){Un(s,s.return,Ue)}}y&4&&s.stateNode!=null&&(l=s.memoizedProps,Cb(s,l,f!==null?f.memoizedProps:l)),y&1024&&(UK=!0,s.type!==\"form\"&&console.error(\"Unexpected host component type. Expected a form. This is a bug in React.\"));break;case 6:if(Et(l,s),Rt(s),y&4){if(s.stateNode===null)throw Error(\"This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue.\");y=s.memoizedProps,f=f!==null?f.memoizedProps:y,l=s.stateNode;try{jt(s,yp,l,f,y)}catch(Ue){Un(s,s.return,Ue)}}break;case 3:if(v=ko(),jN=null,A=T0,T0=lw(l.containerInfo),Et(l,s),T0=A,Rt(s),y&4&&f!==null&&f.memoizedState.isDehydrated)try{jt(s,uy,l.containerInfo)}catch(Ue){Un(s,s.return,Ue)}UK&&(UK=!1,Ft(s)),l.effectDuration+=ta(v);break;case 4:y=T0,T0=lw(s.stateNode.containerInfo),Et(l,s),Rt(s),T0=y;break;case 12:y=ko(),Et(l,s),Rt(s),s.stateNode.effectDuration+=lb(y);break;case 13:Et(l,s),Rt(s),s.child.flags&8192&&s.memoizedState!==null!=(f!==null&&f.memoizedState!==null)&&(VK=py()),y&4&&(y=s.updateQueue,y!==null&&(s.updateQueue=null,Ne(s,y)));break;case 22:v=s.memoizedState!==null;var te=f!==null&&f.memoizedState!==null,fe=jb,me=la;if(jb=fe||v,la=me||te,Et(l,s),la=me,jb=fe,Rt(s),y&8192)e:for(l=s.stateNode,l._visibility=v?l._visibility&~uN:l._visibility|uN,v&&(f===null||te||jb||la||Sn(s)),f=null,l=s;;){if(l.tag===5||l.tag===26){if(f===null){te=f=l;try{A=te.stateNode,v?jt(te,UE,A):jt(te,jE,te.stateNode,te.memoizedProps)}catch(Ue){Un(te,te.return,Ue)}}}else if(l.tag===6){if(f===null){te=l;try{K=te.stateNode,v?jt(te,lh,K):jt(te,E0,K,te.memoizedProps)}catch(Ue){Un(te,te.return,Ue)}}}else if((l.tag!==22&&l.tag!==23||l.memoizedState===null||l===s)&&l.child!==null){l.child.return=l,l=l.child;continue}if(l===s)break e;for(;l.sibling===null;){if(l.return===null||l.return===s)break e;f===l&&(f=null),l=l.return}f===l&&(f=null),l.sibling.return=l.return,l=l.sibling}y&4&&(y=s.updateQueue,y!==null&&(f=y.retryQueue,f!==null&&(y.retryQueue=null,Ne(s,f))));break;case 19:Et(l,s),Rt(s),y&4&&(y=s.updateQueue,y!==null&&(s.updateQueue=null,Ne(s,y)));break;case 30:break;case 21:break;default:Et(l,s),Rt(s)}}function Rt(s){var l=s.flags;if(l&2){try{jt(s,x,s)}catch(f){Un(s,s.return,f)}s.flags&=-3}l&4096&&(s.flags&=-4097)}function Ft(s){if(s.subtreeFlags&1024)for(s=s.child;s!==null;){var l=s;Ft(l),l.tag===5&&l.flags&1024&&l.stateNode.reset(),s=s.sibling}}function lt(s,l){if(l.subtreeFlags&8772)for(l=l.child;l!==null;)Q(s,l.alternate,l),l=l.sibling}function Kn(s){switch(s.tag){case 0:case 11:case 14:case 15:p0(s,s.return,gl),Sn(s);break;case 1:Os(s,s.return);var l=s.stateNode;typeof l.componentWillUnmount==\"function\"&&Qo(s,s.return,l),Sn(s);break;case 27:jt(s,vp,s.stateNode);case 26:case 5:Os(s,s.return),Sn(s);break;case 22:s.memoizedState===null&&Sn(s);break;case 30:Sn(s);break;default:Sn(s)}}function Sn(s){for(s=s.child;s!==null;)Kn(s),s=s.sibling}function mn(s,l,f,y){var v=f.flags;switch(f.tag){case 0:case 11:case 15:un(s,f,y),oy(f,gl);break;case 1:if(un(s,f,y),l=f.stateNode,typeof l.componentDidMount==\"function\"&&jt(f,PK,f,l),l=f.updateQueue,l!==null){s=f.stateNode;try{jt(f,e0,l,s)}catch(A){Un(f,f.return,A)}}y&&v&64&&g0(f),sh(f,f.return);break;case 27:k(f);case 26:case 5:un(s,f,y),y&&l===null&&v&4&&y0(f),sh(f,f.return);break;case 12:if(y&&v&4){v=ko(),un(s,f,y),y=f.stateNode,y.effectDuration+=lb(v);try{jt(f,ho,f,l,pN,y.effectDuration)}catch(A){Un(f,f.return,A)}}else un(s,f,y);break;case 13:un(s,f,y),y&&v&4&&Pe(s,f);break;case 22:f.memoizedState===null&&un(s,f,y),sh(f,f.return);break;case 30:break;default:un(s,f,y)}}function un(s,l,f){for(f=f&&(l.subtreeFlags&8772)!==0,l=l.child;l!==null;)mn(s,l.alternate,l,f),l=l.sibling}function Vi(s,l){var f=null;s!==null&&s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(f=s.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==f&&(s!=null&&nl(s),f!=null&&Jf(f))}function cn(s,l){s=null,l.alternate!==null&&(s=l.alternate.memoizedState.cache),l=l.memoizedState.cache,l!==s&&(nl(l),s!=null&&Jf(s))}function Tn(s,l,f,y){if(l.subtreeFlags&10256)for(l=l.child;l!==null;)ro(s,l,f,y),l=l.sibling}function ro(s,l,f,y){var v=l.flags;switch(l.tag){case 0:case 11:case 15:Tn(s,l,f,y),v&2048&&iy(l,uc|Cp);break;case 1:Tn(s,l,f,y);break;case 3:var A=ko();Tn(s,l,f,y),v&2048&&(f=null,l.alternate!==null&&(f=l.alternate.memoizedState.cache),l=l.memoizedState.cache,l!==f&&(nl(l),f!=null&&Jf(f))),s.passiveEffectDuration+=ta(A);break;case 12:if(v&2048){v=ko(),Tn(s,l,f,y),s=l.stateNode,s.passiveEffectDuration+=lb(v);try{jt(l,n_,l,l.alternate,pN,s.passiveEffectDuration)}catch(te){Un(l,l.return,te)}}else Tn(s,l,f,y);break;case 13:Tn(s,l,f,y);break;case 23:break;case 22:A=l.stateNode;var K=l.alternate;l.memoizedState!==null?A._visibility&Nb?Tn(s,l,f,y):ii(s,l):A._visibility&Nb?Tn(s,l,f,y):(A._visibility|=Nb,Oi(s,l,f,y,(l.subtreeFlags&10256)!==0)),v&2048&&Vi(K,l);break;case 24:Tn(s,l,f,y),v&2048&&cn(l.alternate,l);break;default:Tn(s,l,f,y)}}function Oi(s,l,f,y,v){for(v=v&&(l.subtreeFlags&10256)!==0,l=l.child;l!==null;)$i(s,l,f,y,v),l=l.sibling}function $i(s,l,f,y,v){var A=l.flags;switch(l.tag){case 0:case 11:case 15:Oi(s,l,f,y,v),iy(l,uc);break;case 23:break;case 22:var K=l.stateNode;l.memoizedState!==null?K._visibility&Nb?Oi(s,l,f,y,v):ii(s,l):(K._visibility|=Nb,Oi(s,l,f,y,v)),v&&A&2048&&Vi(l.alternate,l);break;case 24:Oi(s,l,f,y,v),v&&A&2048&&cn(l.alternate,l);break;default:Oi(s,l,f,y,v)}}function ii(s,l){if(l.subtreeFlags&10256)for(l=l.child;l!==null;){var f=s,y=l,v=y.flags;switch(y.tag){case 22:ii(f,y),v&2048&&Vi(y.alternate,y);break;case 24:ii(f,y),v&2048&&cn(y.alternate,y);break;default:ii(f,y)}l=l.sibling}}function Co(s){if(s.subtreeFlags&R7)for(s=s.child;s!==null;)_c(s),s=s.sibling}function _c(s){switch(s.tag){case 26:Co(s),s.flags&R7&&s.memoizedState!==null&&YBe(T0,s.memoizedState,s.memoizedProps);break;case 5:Co(s);break;case 3:case 4:var l=T0;T0=lw(s.stateNode.containerInfo),Co(s),T0=l;break;case 22:s.memoizedState===null&&(l=s.alternate,l!==null&&l.memoizedState!==null?(l=R7,R7=16777216,Co(s),R7=l):Co(s));break;default:Co(s)}}function Aa(s){var l=s.alternate;if(l!==null&&(s=l.child,s!==null)){l.child=null;do l=s.sibling,s.sibling=null,s=l;while(s!==null)}}function Er(s){var l=s.deletions;if((s.flags&16)!==0){if(l!==null)for(var f=0;f<l.length;f++){var y=l[f];Oc=y,Y(y,s)}Aa(s)}if(s.subtreeFlags&10256)for(s=s.child;s!==null;)w(s),s=s.sibling}function w(s){switch(s.tag){case 0:case 11:case 15:Er(s),s.flags&2048&&m0(s,s.return,uc|Cp);break;case 3:var l=ko();Er(s),s.stateNode.passiveEffectDuration+=ta(l);break;case 12:l=ko(),Er(s),s.stateNode.passiveEffectDuration+=lb(l);break;case 22:l=s.stateNode,s.memoizedState!==null&&l._visibility&Nb&&(s.return===null||s.return.tag!==13)?(l._visibility&=~Nb,S(s)):Er(s);break;default:Er(s)}}function S(s){var l=s.deletions;if((s.flags&16)!==0){if(l!==null)for(var f=0;f<l.length;f++){var y=l[f];Oc=y,Y(y,s)}Aa(s)}for(s=s.child;s!==null;)M(s),s=s.sibling}function M(s){switch(s.tag){case 0:case 11:case 15:m0(s,s.return,uc),S(s);break;case 22:var l=s.stateNode;l._visibility&Nb&&(l._visibility&=~Nb,S(s));break;default:S(s)}}function Y(s,l){for(;Oc!==null;){var f=Oc,y=f;switch(y.tag){case 0:case 11:case 15:m0(y,l,uc);break;case 23:case 22:y.memoizedState!==null&&y.memoizedState.cachePool!==null&&(y=y.memoizedState.cachePool.pool,y!=null&&nl(y));break;case 24:Jf(y.memoizedState.cache)}if(y=f.child,y!==null)y.return=f,Oc=y;else e:for(f=s;Oc!==null;){y=Oc;var v=y.sibling,A=y.return;if(oe(y),y===f){Oc=null;break e}if(v!==null){v.return=A,Oc=v;break e}Oc=A}}}function re(){TFe.forEach(function(s){return s()})}function ue(){var s=typeof IS_REACT_ACT_ENVIRONMENT<\"u\"?IS_REACT_ACT_ENVIRONMENT:void 0;return s||$e.actQueue===null||console.error(\"The current testing environment is not configured to support act(...)\"),s}function Ee(s){if((Oo&ad)!==hh&&Rr!==0)return Rr&-Rr;var l=$e.T;return l!==null?(l._updatedFibers||(l._updatedFibers=new Set),l._updatedFibers.add(s),s=XE,s!==0?s:Tc()):hi()}function Ae(){mh===0&&(mh=(Rr&536870912)===0||Qr?zt():536870912);var s=Tp.current;return s!==null&&(s.flags|=32),mh}function Le(s,l,f){if(H_&&console.error(\"useInsertionEffect must not schedule updates.\"),YK&&(TN=!0),(s===wi&&(Fo===o5||Fo===i5)||s.cancelPendingCommit!==null)&&(kn(s,0),_t(s,Rr,mh,!1)),qt(s,f),(Oo&ad)!==0&&s===wi){if(yy)switch(l.tag){case 0:case 11:case 15:s=kr&&Z(kr)||\"Unknown\",Xle.has(s)||(Xle.add(s),l=Z(l)||\"Unknown\",console.error(\"Cannot update a component (`%s`) while rendering a different component (`%s`). To locate the bad setState() call inside `%s`, follow the stack trace as described in https://react.dev/link/setstate-in-render\",l,s,s));break;case 1:Jle||(console.error(\"Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state.\"),Jle=!0)}}else S0&&Zs(s,l,f),Ra(l),s===wi&&((Oo&ad)===hh&&(Sw|=f),Ds===r5&&_t(s,Rr,mh,!1)),sa(s)}function Ie(s,l,f){if((Oo&(ad|R0))!==hh)throw Error(\"Should not already be working.\");var y=!f&&(l&124)===0&&(l&s.expiredLanes)===0||Ze(s,l),v=y?os(s,l):Lr(s,l,!0),A=y;do{if(v===zb){j_&&!y&&_t(s,l,0,!1);break}else{if(f=s.current.alternate,A&&!ut(f)){v=Lr(s,l,!1),A=!1;continue}if(v===F_){if(A=l,s.errorRecoveryDisabledLanes&A)var K=0;else K=s.pendingLanes&-536870913,K=K!==0?K:K&536870912?536870912:0;if(K!==0){l=K;e:{v=s;var te=K;K=L7;var fe=v.current.memoizedState.isDehydrated;if(fe&&(kn(v,te).flags|=256),te=Lr(v,te,!1),te!==F_){if(qK&&!fe){v.errorRecoveryDisabledLanes|=A,Sw|=A,v=r5;break e}v=cd,cd=K,v!==null&&(cd===null?cd=v:cd.push.apply(cd,v))}v=te}if(A=!1,v!==F_)continue}}if(v===O7){kn(s,0),_t(s,l,0,!0);break}e:{switch(y=s,v){case zb:case O7:throw Error(\"Root did not complete. This is a bug in React.\");case r5:if((l&4194048)!==l)break;case _N:_t(y,l,mh,!xw);break e;case F_:cd=null;break;case jK:case Wle:break;default:throw Error(\"Unknown root exit status.\")}if($e.actQueue!==null)mo(y,f,l,cd,B7,CN,mh,Sw,s5);else{if((l&62914560)===l&&(A=VK+$le-py(),10<A)){if(_t(y,l,mh,!xw),dt(y,0,!0)!==0)break e;y.timeoutHandle=aue(pt.bind(null,y,f,cd,B7,CN,l,mh,Sw,s5,xw,v,PFe,Gce,0),A);break e}pt(y,f,cd,B7,CN,l,mh,Sw,s5,xw,v,IFe,Gce,0)}}}break}while(!0);sa(s)}function pt(s,l,f,y,v,A,K,te,fe,me,Ue,Ke,Fe,Qe){if(s.timeoutHandle=d5,Ke=l.subtreeFlags,(Ke&8192||(Ke&16785408)===16785408)&&(H7={stylesheets:null,count:0,unsuspend:ZBe},_c(l),Ke=QBe(),Ke!==null)){s.cancelPendingCommit=Ke(mo.bind(null,s,l,A,f,y,v,K,te,fe,Ue,OFe,Fe,Qe)),_t(s,A,K,!me);return}mo(s,l,A,f,y,v,K,te,fe)}function ut(s){for(var l=s;;){var f=l.tag;if((f===0||f===11||f===15)&&l.flags&16384&&(f=l.updateQueue,f!==null&&(f=f.stores,f!==null)))for(var y=0;y<f.length;y++){var v=f[y],A=v.getSnapshot;v=v.value;try{if(!od(A(),v))return!1}catch{return!1}}if(f=l.child,l.subtreeFlags&16384&&f!==null)f.return=l,l=f;else{if(l===s)break;for(;l.sibling===null;){if(l.return===null||l.return===s)return!0;l=l.return}l.sibling.return=l.return,l=l.sibling}}return!0}function _t(s,l,f,y){l&=~WK,l&=~Sw,s.suspendedLanes|=l,s.pingedLanes&=~l,y&&(s.warmLanes|=l),y=s.expirationTimes;for(var v=l;0<v;){var A=31-nd(v),K=1<<A;y[A]=-1,v&=~K}f!==0&&zn(s,f,l)}function bt(){return(Oo&(ad|R0))===hh?(To(0,!1),!1):!0}function rt(){if(kr!==null){if(Fo===df)var s=kr.return;else s=kr,ab(),nc(s),O_=null,A7=0,s=kr;for(;s!==null;)_b(s.alternate,s),s=s.return;kr=null}}function kn(s,l){var f=s.timeoutHandle;f!==d5&&(s.timeoutHandle=d5,VFe(f)),f=s.cancelPendingCommit,f!==null&&(s.cancelPendingCommit=null,f()),rt(),wi=s,kr=f=wa(s.current,null),Rr=l,Fo=df,ph=null,xw=!1,j_=Ze(s,l),qK=!1,Ds=zb,s5=mh=WK=Sw=Ew=0,cd=L7=null,CN=!1,(l&8)!==0&&(l|=l&32);var y=s.entangledLanes;if(y!==0)for(s=s.entanglements,y&=l;0<y;){var v=31-nd(y),A=1<<v;l|=s[v],y&=~A}return Ey=l,Km(),l=$ce(),1e3<l-Vce&&($e.recentlyCreatedOwnerStacks=0,Vce=l),C0.discardPendingWarnings(),f}function Tr(s,l){Dn=null,$e.H=SN,$e.getCurrentStack=null,yy=!1,fh=null,l===S7||l===bN?(l=Ea(),Fo=M7):l===Qce?(l=Ea(),Fo=Vle):Fo=l===Lle?HK:l!==null&&typeof l==\"object\"&&typeof l.then==\"function\"?U_:P7,ph=l;var f=kr;if(f===null)Ds=O7,tw(s,Xc(l,s.current));else switch(f.mode&ml&&M2(f),_e(),Fo){case P7:Vt!==null&&typeof Vt.markComponentErrored==\"function\"&&Vt.markComponentErrored(f,l,Rr);break;case o5:case i5:case M7:case U_:case N7:Vt!==null&&typeof Vt.markComponentSuspended==\"function\"&&Vt.markComponentSuspended(f,l,Rr)}}function _n(){var s=$e.H;return $e.H=SN,s===null?SN:s}function Gt(){var s=$e.A;return $e.A=AFe,s}function Bo(){Ds=r5,xw||(Rr&4194048)!==Rr&&Tp.current!==null||(j_=!0),(Ew&134217727)===0&&(Sw&134217727)===0||wi===null||_t(wi,Rr,mh,!1)}function Lr(s,l,f){var y=Oo;Oo|=ad;var v=_n(),A=Gt();if(wi!==s||Rr!==l){if(S0){var K=s.memoizedUpdaters;0<K.size&&(as(s,Rr),K.clear()),Pr(s,l)}B7=null,kn(s,l)}Me(l),l=!1,K=Ds;e:do try{if(Fo!==df&&kr!==null){var te=kr,fe=ph;switch(Fo){case HK:rt(),K=_N;break e;case M7:case o5:case i5:case U_:Tp.current===null&&(l=!0);var me=Fo;if(Fo=df,ph=null,Jo(s,te,fe,me),f&&j_){K=zb;break e}break;default:me=Fo,Fo=df,ph=null,Jo(s,te,fe,me)}}Rn(),K=Ds;break}catch(Ue){Tr(s,Ue)}while(!0);return l&&s.shellSuspendCounter++,ab(),Oo=y,$e.H=v,$e.A=A,qe(),kr===null&&(wi=null,Rr=0,Km()),K}function Rn(){for(;kr!==null;)si(kr)}function os(s,l){var f=Oo;Oo|=ad;var y=_n(),v=Gt();if(wi!==s||Rr!==l){if(S0){var A=s.memoizedUpdaters;0<A.size&&(as(s,Rr),A.clear()),Pr(s,l)}B7=null,AN=py()+Kle,kn(s,l)}else j_=Ze(s,l);Me(l);e:do try{if(Fo!==df&&kr!==null)t:switch(l=kr,A=ph,Fo){case P7:Fo=df,ph=null,Jo(s,l,A,P7);break;case o5:case i5:if(xc(A)){Fo=df,ph=null,gi(l);break}l=function(){Fo!==o5&&Fo!==i5||wi!==s||(Fo=N7),sa(s)},A.then(l,l);break e;case M7:Fo=N7;break e;case Vle:Fo=zK;break e;case N7:xc(A)?(Fo=df,ph=null,gi(l)):(Fo=df,ph=null,Jo(s,l,A,N7));break;case zK:var K=null;switch(kr.tag){case 26:K=kr.memoizedState;case 5:case 27:var te=kr;if(!K||Dae(K)){Fo=df,ph=null;var fe=te.sibling;if(fe!==null)kr=fe;else{var me=te.return;me!==null?(kr=me,yi(me)):kr=null}break t}break;default:console.error(\"Unexpected type of fiber triggered a suspensey commit. This is a bug in React.\")}Fo=df,ph=null,Jo(s,l,A,zK);break;case U_:Fo=df,ph=null,Jo(s,l,A,U_);break;case HK:rt(),Ds=_N;break e;default:throw Error(\"Unexpected SuspendedReason. This is a bug in React.\")}$e.actQueue!==null?Rn():Ps();break}catch(Ue){Tr(s,Ue)}while(!0);return ab(),$e.H=y,$e.A=v,Oo=f,kr!==null?(Vt!==null&&typeof Vt.markRenderYielded==\"function\"&&Vt.markRenderYielded(),zb):(qe(),wi=null,Rr=0,Km(),Ds)}function Ps(){for(;kr!==null&&!hDe();)si(kr)}function si(s){var l=s.alternate;(s.mode&ml)!==Ni?(P2(s),l=jt(s,rw,l,s,Ey),M2(s)):l=jt(s,rw,l,s,Ey),s.memoizedProps=s.pendingProps,l===null?yi(s):kr=l}function gi(s){var l=jt(s,po,s);s.memoizedProps=s.pendingProps,l===null?yi(s):kr=l}function po(s){var l=s.alternate,f=(s.mode&ml)!==Ni;switch(f&&P2(s),s.tag){case 15:case 0:l=oh(l,s,s.pendingProps,s.type,void 0,Rr);break;case 11:l=oh(l,s,s.pendingProps,s.type.render,s.ref,Rr);break;case 5:nc(s);default:_b(l,s),s=kr=aE(s,Ey),l=rw(l,s,Ey)}return f&&M2(s),l}function Jo(s,l,f,y){ab(),nc(l),O_=null,A7=0;var v=l.return;try{if(Zu(s,v,l,f,Rr)){Ds=O7,tw(s,Xc(f,s.current)),kr=null;return}}catch(A){if(v!==null)throw kr=v,A;Ds=O7,tw(s,Xc(f,s.current)),kr=null;return}l.flags&32768?(Qr||y===P7?s=!0:j_||(Rr&536870912)!==0?s=!1:(xw=s=!0,(y===o5||y===i5||y===M7||y===U_)&&(y=Tp.current,y!==null&&y.tag===13&&(y.flags|=16384))),Bn(l,s)):yi(l)}function yi(s){var l=s;do{if((l.flags&32768)!==0){Bn(l,xw);return}var f=l.alternate;if(s=l.return,P2(l),f=jt(l,kb,f,l,Ey),(l.mode&ml)!==Ni&&Ym(l),f!==null){kr=f;return}if(l=l.sibling,l!==null){kr=l;return}kr=l=s}while(l!==null);Ds===zb&&(Ds=Wle)}function Bn(s,l){do{var f=ow(s.alternate,s);if(f!==null){f.flags&=32767,kr=f;return}if((s.mode&ml)!==Ni){Ym(s),f=s.actualDuration;for(var y=s.child;y!==null;)f+=y.actualDuration,y=y.sibling;s.actualDuration=f}if(f=s.return,f!==null&&(f.flags|=32768,f.subtreeFlags=0,f.deletions=null),!l&&(s=s.sibling,s!==null)){kr=s;return}kr=s=f}while(s!==null);Ds=_N,kr=null}function mo(s,l,f,y,v,A,K,te,fe){s.cancelPendingCommit=null;do Ki();while(yl!==a5);if(C0.flushLegacyContextWarning(),C0.flushPendingUnsafeLifecycleWarnings(),(Oo&(ad|R0))!==hh)throw Error(\"Should not already be working.\");if(Vt!==null&&typeof Vt.markCommitStarted==\"function\"&&Vt.markCommitStarted(f),l===null)ye();else{if(f===0&&console.error(\"finishedLanes should not be empty during a commit. This is a bug in React.\"),l===s.current)throw Error(\"Cannot commit the same tree as before. This error is likely caused by a bug in React. Please file an issue.\");if(A=l.lanes|l.childLanes,A|=vK,Wt(s,f,A,K,te,fe),s===wi&&(kr=wi=null,Rr=0),z_=l,_w=s,Cw=f,KK=A,GK=v,Qle=y,(l.subtreeFlags&10256)!==0||(l.flags&10256)!==0?(s.callbackNode=null,s.callbackPriority=0,Cc(u_,function(){return oc(!0),null})):(s.callbackNode=null,s.callbackPriority=0),pN=C_(),y=(l.flags&13878)!==0,(l.subtreeFlags&13878)!==0||y){y=$e.T,$e.T=null,v=Io.p,Io.p=dh,K=Oo,Oo|=R0;try{P(s,l,f)}finally{Oo=K,Io.p=v,$e.T=y}}yl=Gle,Br(),is(),ss()}}function Br(){if(yl===Gle){yl=a5;var s=_w,l=z_,f=Cw,y=(l.flags&13878)!==0;if((l.subtreeFlags&13878)!==0||y){y=$e.T,$e.T=null;var v=Io.p;Io.p=dh;var A=Oo;Oo|=R0;try{B_=f,D_=s,At(l,s),D_=B_=null,f=iG;var K=Dg(s.containerInfo),te=f.focusedElem,fe=f.selectionRange;if(K!==te&&te&&te.ownerDocument&&Bg(te.ownerDocument.documentElement,te)){if(fe!==null&&Gf(te)){var me=fe.start,Ue=fe.end;if(Ue===void 0&&(Ue=me),\"selectionStart\"in te)te.selectionStart=me,te.selectionEnd=Math.min(Ue,te.value.length);else{var Ke=te.ownerDocument||document,Fe=Ke&&Ke.defaultView||window;if(Fe.getSelection){var Qe=Fe.getSelection(),tn=te.textContent.length,On=Math.min(fe.start,tn),xi=fe.end===void 0?On:Math.min(fe.end,tn);!Qe.extend&&On>xi&&(K=xi,xi=On,On=K);var Dr=sE(te,On),Se=sE(te,xi);if(Dr&&Se&&(Qe.rangeCount!==1||Qe.anchorNode!==Dr.node||Qe.anchorOffset!==Dr.offset||Qe.focusNode!==Se.node||Qe.focusOffset!==Se.offset)){var ke=Ke.createRange();ke.setStart(Dr.node,Dr.offset),Qe.removeAllRanges(),On>xi?(Qe.addRange(ke),Qe.extend(Se.node,Se.offset)):(ke.setEnd(Se.node,Se.offset),Qe.addRange(ke))}}}}for(Ke=[],Qe=te;Qe=Qe.parentNode;)Qe.nodeType===1&&Ke.push({element:Qe,left:Qe.scrollLeft,top:Qe.scrollTop});for(typeof te.focus==\"function\"&&te.focus(),te=0;te<Ke.length;te++){var Oe=Ke[te];Oe.element.scrollLeft=Oe.left,Oe.element.scrollTop=Oe.top}}qN=!!oG,iG=oG=null}finally{Oo=A,Io.p=v,$e.T=y}}s.current=l,yl=Zle}}function is(){if(yl===Zle){yl=a5;var s=_w,l=z_,f=Cw,y=(l.flags&8772)!==0;if((l.subtreeFlags&8772)!==0||y){y=$e.T,$e.T=null;var v=Io.p;Io.p=dh;var A=Oo;Oo|=R0;try{Vt!==null&&typeof Vt.markLayoutEffectsStarted==\"function\"&&Vt.markLayoutEffectsStarted(f),B_=f,D_=s,Q(s,l.alternate,l),D_=B_=null,Vt!==null&&typeof Vt.markLayoutEffectsStopped==\"function\"&&Vt.markLayoutEffectsStopped()}finally{Oo=A,Io.p=v,$e.T=y}}yl=Yle}}function ss(){if(yl===MFe||yl===Yle){yl=a5,pDe();var s=_w,l=z_,f=Cw,y=Qle,v=(l.subtreeFlags&10256)!==0||(l.flags&10256)!==0;v?yl=$K:(yl=a5,z_=_w=null,rc(s,s.pendingLanes),c5=0,F7=null);var A=s.pendingLanes;if(A===0&&(kw=null),v||ia(s),v=vr(f),l=l.stateNode,tu&&typeof tu.onCommitFiberRoot==\"function\")try{var K=(l.current.flags&128)===128;switch(v){case dh:var te=Q$;break;case k0:te=J$;break;case gy:te=u_;break;case rN:te=X$;break;default:te=u_}tu.onCommitFiberRoot(d_,l,te,K)}catch(Ke){my||(my=!0,console.error(\"React instrumentation encountered an error: %s\",Ke))}if(S0&&s.memoizedUpdaters.clear(),re(),y!==null){K=$e.T,te=Io.p,Io.p=dh,$e.T=null;try{var fe=s.onRecoverableError;for(l=0;l<y.length;l++){var me=y[l],Ue=Pi(me.stack);jt(me.source,fe,me.value,Ue)}}finally{$e.T=K,Io.p=te}}(Cw&3)!==0&&Ki(),sa(s),A=s.pendingLanes,(f&4194090)!==0&&(A&42)!==0?(gN=!0,s===ZK?D7++:(D7=0,ZK=s)):D7=0,To(0,!1),ye()}}function Pi(s){return s={componentStack:s},Object.defineProperty(s,\"digest\",{get:function(){console.error(\\'You are accessing \"digest\" from the errorInfo object passed to onRecoverableError. This property is no longer provided as part of errorInfo but can be accessed as a property of the Error instance itself.\\')}}),s}function rc(s,l){(s.pooledCacheLanes&=l)===0&&(l=s.pooledCache,l!=null&&(s.pooledCache=null,Jf(l)))}function Ki(s){return Br(),is(),ss(),oc(s)}function oc(){if(yl!==$K)return!1;var s=_w,l=KK;KK=0;var f=vr(Cw),y=gy===0||gy>f?gy:f;f=$e.T;var v=Io.p;try{Io.p=y,$e.T=null,y=GK,GK=null;var A=_w,K=Cw;if(yl=a5,z_=_w=null,Cw=0,(Oo&(ad|R0))!==hh)throw Error(\"Cannot flush passive effects while already rendering.\");YK=!0,TN=!1,Vt!==null&&typeof Vt.markPassiveEffectsStarted==\"function\"&&Vt.markPassiveEffectsStarted(K);var te=Oo;if(Oo|=R0,w(A.current),ro(A,A.current,K,y),Vt!==null&&typeof Vt.markPassiveEffectsStopped==\"function\"&&Vt.markPassiveEffectsStopped(),ia(A),Oo=te,To(0,!1),TN?A===F7?c5++:(c5=0,F7=A):c5=0,TN=YK=!1,tu&&typeof tu.onPostCommitFiberRoot==\"function\")try{tu.onPostCommitFiberRoot(d_,A)}catch(me){my||(my=!0,console.error(\"React instrumentation encountered an error: %s\",me))}var fe=A.current.stateNode;return fe.effectDuration=0,fe.passiveEffectDuration=0,!0}finally{Io.p=v,$e.T=f,rc(s,l)}}function Ju(s,l,f){l=Xc(f,l),l=Gd(s.stateNode,l,2),s=oi(s,l,2),s!==null&&(qt(s,2),sa(s))}function Un(s,l,f){if(H_=!1,s.tag===3)Ju(s,s,f);else{for(;l!==null;){if(l.tag===3){Ju(l,s,f);return}if(l.tag===1){var y=l.stateNode;if(typeof l.type.getDerivedStateFromError==\"function\"||typeof y.componentDidCatch==\"function\"&&(kw===null||!kw.has(y))){s=Xc(f,s),f=hp(2),y=oi(l,f,2),y!==null&&(xb(f,y,l,s),qt(y,2),sa(y));return}}l=l.return}console.error(`Internal React error: Attempted to capture a commit phase error inside a detached tree. This indicates a bug in React. Potential causes include deleting the same fiber more than once, committing an already-finished tree, or an inconsistent return pointer.\\n\\nError message:\\n\\n%s`,f)}}function cl(s,l,f){var y=s.pingCache;if(y===null){y=s.pingCache=new RFe;var v=new Set;y.set(l,v)}else v=y.get(l),v===void 0&&(v=new Set,y.set(l,v));v.has(f)||(qK=!0,v.add(f),y=Ta.bind(null,s,l,f),S0&&as(s,f),l.then(y,y))}function Ta(s,l,f){var y=s.pingCache;y!==null&&y.delete(l),s.pingedLanes|=s.suspendedLanes&f,s.warmLanes&=~f,ue()&&$e.actQueue===null&&console.error(`A suspended resource finished loading inside a test, but the event was not wrapped in act(...).\\n\\nWhen testing, code that resolves suspended data should be wrapped into act(...):\\n\\nact(() => {\\n  /* finish loading suspended data */\\n});\\n/* assert on the output */\\n\\nThis ensures that you\\'re testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act`),wi===s&&(Rr&f)===f&&(Ds===r5||Ds===jK&&(Rr&62914560)===Rr&&py()-VK<$le?(Oo&ad)===hh&&kn(s,0):WK|=f,s5===Rr&&(s5=0)),sa(s)}function Xu(s,l){l===0&&(l=Bt()),s=Rs(s,l),s!==null&&(qt(s,l),sa(s))}function gs(s){var l=s.memoizedState,f=0;l!==null&&(f=l.retryLane),Xu(s,f)}function Mi(s,l){var f=0;switch(s.tag){case 13:var y=s.stateNode,v=s.memoizedState;v!==null&&(f=v.retryLane);break;case 19:y=s.stateNode;break;case 22:y=s.stateNode._retryCache;break;default:throw Error(\"Pinged unknown suspense boundary type. This is probably a bug in React.\")}y!==null&&y.delete(l),Xu(s,f)}function Ao(s,l,f){if((l.subtreeFlags&67117056)!==0)for(l=l.child;l!==null;){var y=s,v=l,A=v.type===JM;A=f||A,v.tag!==22?v.flags&67108864?A&&jt(v,ys,y,v,(v.mode&Hce)===Ni):Ao(y,v,A):v.memoizedState===null&&(A&&v.flags&8192?jt(v,ys,y,v):v.subtreeFlags&67108864&&jt(v,Ao,y,v,A)),l=l.sibling}}function ys(s,l){var f=2<arguments.length&&arguments[2]!==void 0?arguments[2]:!0;se(!0);try{Kn(l),f&&M(l),mn(s,l.alternate,l,!1),f&&$i(s,l,0,null,!1,0)}finally{se(!1)}}function ia(s){var l=!0;s.current.mode&(ru|_0)||(l=!1),Ao(s,s.current,l)}function $l(s){if((Oo&ad)===hh){var l=s.tag;if(l===3||l===1||l===0||l===11||l===14||l===15){if(l=Z(s)||\"ReactComponent\",RN!==null){if(RN.has(l))return;RN.add(l)}else RN=new Set([l]);jt(s,function(){console.error(\"Can\\'t perform a React state update on a component that hasn\\'t mounted yet. This indicates that you have a side-effect in your render function that asynchronously later calls tries to update the component. Move this work to useEffect instead.\")})}}}function as(s,l){S0&&s.memoizedUpdaters.forEach(function(f){Zs(s,f,l)})}function Cc(s,l){var f=$e.actQueue;return f!==null?(f.push(l),BFe):Y$(s,l)}function Ra(s){ue()&&$e.actQueue===null&&jt(s,function(){console.error(`An update to %s inside a test was not wrapped in act(...).\\n\\nWhen testing, code that causes React state updates should be wrapped into act(...):\\n\\nact(() => {\\n  /* fire events that update state */\\n});\\n/* assert on the output */\\n\\nThis ensures that you\\'re testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act`,Z(s))})}function sa(s){s!==q_&&s.next===null&&(q_===null?IN=q_=s:q_=q_.next=s),ON=!0,$e.actQueue!==null?JK||(JK=!0,ll()):QK||(QK=!0,ll())}function To(s,l){if(!XK&&ON){XK=!0;do for(var f=!1,y=IN;y!==null;){if(!l)if(s!==0){var v=y.pendingLanes;if(v===0)var A=0;else{var K=y.suspendedLanes,te=y.pingedLanes;A=(1<<31-nd(42|s)+1)-1,A&=v&~(K&~te),A=A&201326741?A&201326741|1:A?A|2:0}A!==0&&(f=!0,Kl(y,A))}else A=Rr,A=dt(y,y===wi?A:0,y.cancelPendingCommit!==null||y.timeoutHandle!==d5),(A&3)===0||Ze(y,A)||(f=!0,Kl(y,A));y=y.next}while(f);XK=!1}}function Ms(){ic()}function ic(){ON=JK=QK=!1;var s=0;l5!==0&&(tf()&&(s=l5),l5=0);for(var l=py(),f=null,y=IN;y!==null;){var v=y.next,A=Ac(y,l);A===0?(y.next=null,f===null?IN=v:f.next=v,v===null&&(q_=f)):(f=y,(s!==0||(A&3)!==0)&&(ON=!0)),y=v}To(s,!1)}function Ac(s,l){for(var f=s.suspendedLanes,y=s.pingedLanes,v=s.expirationTimes,A=s.pendingLanes&-62914561;0<A;){var K=31-nd(A),te=1<<K,fe=v[K];fe===-1?((te&f)===0||(te&y)!==0)&&(v[K]=rn(te,l)):fe<=l&&(s.expiredLanes|=te),A&=~te}if(l=wi,f=Rr,f=dt(s,s===l?f:0,s.cancelPendingCommit!==null||s.timeoutHandle!==d5),y=s.callbackNode,f===0||s===l&&(Fo===o5||Fo===i5)||s.cancelPendingCommit!==null)return y!==null&&aa(y),s.callbackNode=null,s.callbackPriority=0;if((f&3)===0||Ze(s,f)){if(l=f&-f,l!==s.callbackPriority||$e.actQueue!==null&&y!==eG)aa(y);else return l;switch(vr(f)){case dh:case k0:f=J$;break;case gy:f=u_;break;case rN:f=X$;break;default:f=u_}return y=sc.bind(null,s),$e.actQueue!==null?($e.actQueue.push(y),f=eG):f=Y$(f,y),s.callbackPriority=l,s.callbackNode=f,l}return y!==null&&aa(y),s.callbackPriority=2,s.callbackNode=null,2}function sc(s,l){if(gN=mN=!1,yl!==a5&&yl!==$K)return s.callbackNode=null,s.callbackPriority=0,null;var f=s.callbackNode;if(Ki(!0)&&s.callbackNode!==f)return null;var y=Rr;return y=dt(s,s===wi?y:0,s.cancelPendingCommit!==null||s.timeoutHandle!==d5),y===0?null:(Ie(s,y,l),Ac(s,py()),s.callbackNode!=null&&s.callbackNode===f?sc.bind(null,s):null)}function Kl(s,l){if(Ki())return null;mN=gN,gN=!1,Ie(s,l,!0)}function aa(s){s!==eG&&s!==null&&fDe(s)}function ll(){$e.actQueue!==null&&$e.actQueue.push(function(){return ic(),null}),$Fe(function(){(Oo&(ad|R0))!==hh?Y$(Q$,Ms):ic()})}function Tc(){return l5===0&&(l5=zt()),l5}function ul(s){return s==null||typeof s==\"symbol\"||typeof s==\"boolean\"?null:typeof s==\"function\"?s:(I(s,\"action\"),zm(\"\"+s))}function dl(s,l){var f=l.ownerDocument.createElement(\"input\");return f.name=l.name,f.value=l.value,s.id&&f.setAttribute(\"form\",s.id),l.parentNode.insertBefore(f,l),s=new FormData(s),f.parentNode.removeChild(f),s}function Ia(s,l,f,y,v){if(l===\"submit\"&&f&&f.stateNode===v){var A=ul((v[cf]||null).action),K=y.submitter;K&&(l=(l=K[cf]||null)?ul(l.formAction):K.getAttribute(\"formAction\"),l!==null&&(A=l,K=null));var te=new cN(\"action\",\"action\",null,y,v);s.push({event:te,listeners:[{instance:null,listener:function(){if(y.defaultPrevented){if(l5!==0){var fe=K?dl(v,K):new FormData(v),me={pending:!0,data:fe,method:v.method,action:A};Object.freeze(me),Yg(f,me,null,fe)}}else typeof A==\"function\"&&(te.preventDefault(),fe=K?dl(v,K):new FormData(v),me={pending:!0,data:fe,method:v.method,action:A},Object.freeze(me),Yg(f,me,A,fe))},currentTarget:v}]})}}function ca(s,l,f){s.currentTarget=f;try{l(s)}catch(y){LK(y)}s.currentTarget=null}function ah(s,l){l=(l&4)!==0;for(var f=0;f<s.length;f++){var y=s[f];e:{var v=void 0,A=y.event;if(y=y.listeners,l)for(var K=y.length-1;0<=K;K--){var te=y[K],fe=te.instance,me=te.currentTarget;if(te=te.listener,fe!==v&&A.isPropagationStopped())break e;fe!==null?jt(fe,ca,A,te,me):ca(A,te,me),v=fe}else for(K=0;K<y.length;K++){if(te=y[K],fe=te.instance,me=te.currentTarget,te=te.listener,fe!==v&&A.isPropagationStopped())break e;fe!==null?jt(fe,ca,A,te,me):ca(A,te,me),v=fe}}}}function pn(s,l){tG.has(s)||console.error(\\'Did not expect a listenToNonDelegatedEvent() call for \"%s\". This is a bug in React. Please file an issue.\\',s);var f=l[eK];f===void 0&&(f=l[eK]=new Set);var y=s+\"__bubble\";f.has(y)||(gp(l,s,2,!1),f.add(y))}function Gl(s,l,f){tG.has(s)&&!l&&console.error(\\'Did not expect a listenToNativeEvent() call for \"%s\" in the bubble phase. This is a bug in React. Please file an issue.\\',s);var y=0;l&&(y|=4),gp(f,s,y,l)}function Zl(s){if(!s[PN]){s[PN]=!0,Yae.forEach(function(f){f!==\"selectionchange\"&&(tG.has(f)||Gl(f,!1,s),Gl(f,!0,s))});var l=s.nodeType===9?s:s.ownerDocument;l===null||l[PN]||(l[PN]=!0,Gl(\"selectionchange\",!1,l))}}function gp(s,l,f,y){switch(Hae(l)){case dh:var v=nDe;break;case k0:v=rDe;break;default:v=F$}f=v.bind(null,l,f,s),v=void 0,!cK||l!==\"touchstart\"&&l!==\"touchmove\"&&l!==\"wheel\"||(v=!0),y?v!==void 0?s.addEventListener(l,f,{capture:!0,passive:v}):s.addEventListener(l,f,!0):v!==void 0?s.addEventListener(l,f,{passive:v}):s.addEventListener(l,f,!1)}function ac(s,l,f,y,v){var A=y;if((l&1)===0&&(l&2)===0&&y!==null)e:for(;;){if(y===null)return;var K=y.tag;if(K===3||K===4){var te=y.stateNode.containerInfo;if(te===v)break;if(K===4)for(K=y.return;K!==null;){var fe=K.tag;if((fe===3||fe===4)&&K.stateNode.containerInfo===v)return;K=K.return}for(;te!==null;){if(K=Ri(te),K===null)return;if(fe=K.tag,fe===5||fe===6||fe===26||fe===27){y=A=K;continue e}te=te.parentNode}}y=y.return}Ig(function(){var me=A,Ue=Qh(f),Ke=[];e:{var Fe=zce.get(s);if(Fe!==void 0){var Qe=cN,tn=s;switch(s){case\"keypress\":if(Kf(f)===0)break e;case\"keydown\":case\"keyup\":Qe=XDe;break;case\"focusin\":tn=\"focus\",Qe=fK;break;case\"focusout\":tn=\"blur\",Qe=fK;break;case\"beforeblur\":case\"afterblur\":Qe=fK;break;case\"click\":if(f.button===2)break e;case\"auxclick\":case\"dblclick\":case\"mousedown\":case\"mousemove\":case\"mouseup\":case\"mouseout\":case\"mouseover\":case\"contextmenu\":Qe=Ace;break;case\"drag\":case\"dragend\":case\"dragenter\":case\"dragexit\":case\"dragleave\":case\"dragover\":case\"dragstart\":case\"drop\":Qe=zDe;break;case\"touchcancel\":case\"touchend\":case\"touchmove\":case\"touchstart\":Qe=nFe;break;case Dce:case Fce:case Uce:Qe=WDe;break;case jce:Qe=oFe;break;case\"scroll\":case\"scrollend\":Qe=UDe;break;case\"wheel\":Qe=sFe;break;case\"copy\":case\"cut\":case\"paste\":Qe=$De;break;case\"gotpointercapture\":case\"lostpointercapture\":case\"pointercancel\":case\"pointerdown\":case\"pointermove\":case\"pointerout\":case\"pointerover\":case\"pointerup\":Qe=Rce;break;case\"toggle\":case\"beforetoggle\":Qe=cFe}var On=(l&4)!==0,xi=!On&&(s===\"scroll\"||s===\"scrollend\"),Dr=On?Fe!==null?Fe+\"Capture\":null:Fe;On=[];for(var Se=me,ke;Se!==null;){var Oe=Se;if(ke=Oe.stateNode,Oe=Oe.tag,Oe!==5&&Oe!==26&&Oe!==27||ke===null||Dr===null||(Oe=$f(Se,Dr),Oe!=null&&On.push(Yl(Se,Oe,ke))),xi)break;Se=Se.return}0<On.length&&(Fe=new Qe(Fe,tn,null,f,Ue),Ke.push({event:Fe,listeners:On}))}}if((l&7)===0){e:{if(Fe=s===\"mouseover\"||s===\"pointerover\",Qe=s===\"mouseout\"||s===\"pointerout\",Fe&&f!==c7&&(tn=f.relatedTarget||f.fromElement)&&(Ri(tn)||tn[mw]))break e;if((Qe||Fe)&&(Fe=Ue.window===Ue?Ue:(Fe=Ue.ownerDocument)?Fe.defaultView||Fe.parentWindow:window,Qe?(tn=f.relatedTarget||f.toElement,Qe=me,tn=tn?Ri(tn):null,tn!==null&&(xi=R(tn),On=tn.tag,tn!==xi||On!==5&&On!==27&&On!==6)&&(tn=null)):(Qe=null,tn=me),Qe!==tn)){if(On=Ace,Oe=\"onMouseLeave\",Dr=\"onMouseEnter\",Se=\"mouse\",(s===\"pointerout\"||s===\"pointerover\")&&(On=Rce,Oe=\"onPointerLeave\",Dr=\"onPointerEnter\",Se=\"pointer\"),xi=Qe==null?Fe:Te(Qe),ke=tn==null?Fe:Te(tn),Fe=new On(Oe,Se+\"leave\",Qe,f,Ue),Fe.target=xi,Fe.relatedTarget=ke,Oe=null,Ri(Ue)===me&&(On=new On(Dr,Se+\"enter\",tn,f,Ue),On.target=ke,On.relatedTarget=xi,Oe=On),xi=Oe,Qe&&tn)t:{for(On=Qe,Dr=tn,Se=0,ke=On;ke;ke=bs(ke))Se++;for(ke=0,Oe=Dr;Oe;Oe=bs(Oe))ke++;for(;0<Se-ke;)On=bs(On),Se--;for(;0<ke-Se;)Dr=bs(Dr),ke--;for(;Se--;){if(On===Dr||Dr!==null&&On===Dr.alternate)break t;On=bs(On),Dr=bs(Dr)}On=null}else On=null;Qe!==null&&Do(Ke,Fe,Qe,On,!1),tn!==null&&xi!==null&&Do(Ke,xi,tn,On,!0)}}e:{if(Fe=me?Te(me):window,Qe=Fe.nodeName&&Fe.nodeName.toLowerCase(),Qe===\"select\"||Qe===\"input\"&&Fe.type===\"file\")var Je=nb;else if(tb(Fe))if(Lce)Je=T2;else{Je=Fk;var Pt=iE}else Qe=Fe.nodeName,!Qe||Qe.toLowerCase()!==\"input\"||Fe.type!==\"checkbox\"&&Fe.type!==\"radio\"?me&&Ul(me.elementType)&&(Je=nb):Je=Vm;if(Je&&(Je=Je(s,me))){A2(Ke,Je,f,Ue);break e}Pt&&Pt(s,Fe,me),s===\"focusout\"&&me&&Fe.type===\"number\"&&me.memoizedProps.value!=null&&Yc(Fe,\"number\",Fe.value)}switch(Pt=me?Te(me):window,s){case\"focusin\":(tb(Pt)||Pt.contentEditable===\"true\")&&(b_=Pt,pK=me,m7=null);break;case\"focusout\":m7=pK=b_=null;break;case\"mousedown\":mK=!0;break;case\"contextmenu\":case\"mouseup\":case\"dragend\":mK=!1,op(Ke,f,Ue);break;case\"selectionchange\":if(fFe)break;case\"keydown\":case\"keyup\":op(Ke,f,Ue)}var Hn;if(hK)e:{switch(s){case\"compositionstart\":var nn=\"onCompositionStart\";break e;case\"compositionend\":nn=\"onCompositionEnd\";break e;case\"compositionupdate\":nn=\"onCompositionUpdate\";break e}nn=void 0}else y_?Wm(s,f)&&(nn=\"onCompositionEnd\"):s===\"keydown\"&&f.keyCode===Ice&&(nn=\"onCompositionStart\");nn&&(Oce&&f.locale!==\"ko\"&&(y_||nn!==\"onCompositionStart\"?nn===\"onCompositionEnd\"&&y_&&(Hn=Hm()):(gw=Ue,lK=\"value\"in gw?gw.value:gw.textContent,y_=!0)),Pt=cs(me,nn),0<Pt.length&&(nn=new Tce(nn,s,null,f,Ue),Ke.push({event:nn,listeners:Pt}),Hn?nn.data=Hn:(Hn=Xh(f),Hn!==null&&(nn.data=Hn)))),(Hn=uFe?Pg(s,f):Mg(s,f))&&(nn=cs(me,\"onBeforeInput\"),0<nn.length&&(Pt=new GDe(\"onBeforeInput\",\"beforeinput\",null,f,Ue),Ke.push({event:Pt,listeners:nn}),Pt.data=Hn)),Ia(Ke,s,me,f,Ue)}ah(Ke,l)})}function Yl(s,l,f){return{instance:s,listener:l,currentTarget:f}}function cs(s,l){for(var f=l+\"Capture\",y=[];s!==null;){var v=s,A=v.stateNode;if(v=v.tag,v!==5&&v!==26&&v!==27||A===null||(v=$f(s,f),v!=null&&y.unshift(Yl(s,v,A)),v=$f(s,l),v!=null&&y.push(Yl(s,v,A))),s.tag===3)return y;s=s.return}return[]}function bs(s){if(s===null)return null;do s=s.return;while(s&&s.tag!==5&&s.tag!==27);return s||null}function Do(s,l,f,y,v){for(var A=l._reactName,K=[];f!==null&&f!==y;){var te=f,fe=te.alternate,me=te.stateNode;if(te=te.tag,fe!==null&&fe===y)break;te!==5&&te!==26&&te!==27||me===null||(fe=me,v?(me=$f(f,A),me!=null&&K.unshift(Yl(f,me,fe))):v||(me=$f(f,A),me!=null&&K.push(Yl(f,me,fe)))),f=f.return}K.length!==0&&s.push({event:l,listeners:K})}function bi(s,l){rE(s,l),s!==\"input\"&&s!==\"textarea\"&&s!==\"select\"||l==null||l.value!==null||_ce||(_ce=!0,s===\"select\"&&l.multiple?console.error(\"`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.\",s):console.error(\"`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.\",s));var f={registrationNameDependencies:GE,possibleRegistrationNames:tK};Ul(s)||typeof l.is==\"string\"||Xa(s,l,f),l.contentEditable&&!l.suppressContentEditableWarning&&l.children!=null&&console.error(\"A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional.\")}function Sr(s,l,f,y){l!==f&&(f=Ns(f),Ns(l)!==f&&(y[s]=l))}function b0(s,l,f){l.forEach(function(y){f[ed(y)]=y===\"style\"?Qd(s):s.getAttribute(y)})}function vi(s,l){l===!1?console.error(\"Expected `%s` listener to be a function, instead got `false`.\\\\n\\\\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.\",s,s,s):console.error(\"Expected `%s` listener to be a function, instead got a value of `%s` type.\",s,typeof l)}function fl(s,l){return s=s.namespaceURI===iN||s.namespaceURI===h_?s.ownerDocument.createElementNS(s.namespaceURI,s.tagName):s.ownerDocument.createElement(s.tagName),s.innerHTML=l,s.innerHTML}function Ns(s){return q(s)&&(console.error(\"The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before using it here.\",j(s)),H(s)),(typeof s==\"string\"?s:\"\"+s).replace(DFe,`\\n`).replace(FFe,\"\")}function v0(s,l){return l=Ns(l),Ns(s)===l}function Xo(){}function hr(s,l,f,y,v,A){switch(f){case\"children\":typeof y==\"string\"?(Hd(y,l,!1),l===\"body\"||l===\"textarea\"&&y===\"\"||Vf(s,y)):(typeof y==\"number\"||typeof y==\"bigint\")&&(Hd(\"\"+y,l,!1),l!==\"body\"&&Vf(s,\"\"+y));break;case\"className\":en(s,\"class\",y);break;case\"tabIndex\":en(s,\"tabindex\",y);break;case\"dir\":case\"role\":case\"viewBox\":case\"width\":case\"height\":en(s,f,y);break;case\"style\":ms(s,y,A);break;case\"data\":if(l!==\"object\"){en(s,\"data\",y);break}case\"src\":case\"href\":if(y===\"\"&&(l!==\"a\"||f!==\"href\")){console.error(f===\"src\"?\\'An empty string (\"\") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\':\\'An empty string (\"\") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\',f,f),s.removeAttribute(f);break}if(y==null||typeof y==\"function\"||typeof y==\"symbol\"||typeof y==\"boolean\"){s.removeAttribute(f);break}I(y,f),y=zm(\"\"+y),s.setAttribute(f,y);break;case\"action\":case\"formAction\":if(y!=null&&(l===\"form\"?f===\"formAction\"?console.error(\"You can only pass the formAction prop to <input> or <button>. Use the action prop on <form>.\"):typeof y==\"function\"&&(v.encType==null&&v.method==null||LN||(LN=!0,console.error(\"Cannot specify a encType or method for a form that specifies a function as the action. React provides those automatically. They will get overridden.\")),v.target==null||NN||(NN=!0,console.error(\"Cannot specify a target for a form that specifies a function as the action. The function will always be executed in the same window.\"))):l===\"input\"||l===\"button\"?f===\"action\"?console.error(\"You can only pass the action prop to <form>. Use the formAction prop on <input> or <button>.\"):l!==\"input\"||v.type===\"submit\"||v.type===\"image\"||MN?l!==\"button\"||v.type==null||v.type===\"submit\"||MN?typeof y==\"function\"&&(v.name==null||nue||(nue=!0,console.error(\\'Cannot specify a \"name\" prop for a button that specifies a function as a formAction. React needs it to encode which action should be invoked. It will get overridden.\\')),v.formEncType==null&&v.formMethod==null||LN||(LN=!0,console.error(\"Cannot specify a formEncType or formMethod for a button that specifies a function as a formAction. React provides those automatically. They will get overridden.\")),v.formTarget==null||NN||(NN=!0,console.error(\"Cannot specify a formTarget for a button that specifies a function as a formAction. The function will always be executed in the same window.\"))):(MN=!0,console.error(\\'A button can only specify a formAction along with type=\"submit\" or no type.\\')):(MN=!0,console.error(\\'An input can only specify a formAction along with type=\"submit\" or type=\"image\".\\')):console.error(f===\"action\"?\"You can only pass the action prop to <form>.\":\"You can only pass the formAction prop to <input> or <button>.\")),typeof y==\"function\"){s.setAttribute(f,\"javascript:throw new Error(\\'A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\\\\\\\\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().\\')\");break}else typeof A==\"function\"&&(f===\"formAction\"?(l!==\"input\"&&hr(s,l,\"name\",v.name,v,null),hr(s,l,\"formEncType\",v.formEncType,v,null),hr(s,l,\"formMethod\",v.formMethod,v,null),hr(s,l,\"formTarget\",v.formTarget,v,null)):(hr(s,l,\"encType\",v.encType,v,null),hr(s,l,\"method\",v.method,v,null),hr(s,l,\"target\",v.target,v,null)));if(y==null||typeof y==\"symbol\"||typeof y==\"boolean\"){s.removeAttribute(f);break}I(y,f),y=zm(\"\"+y),s.setAttribute(f,y);break;case\"onClick\":y!=null&&(typeof y!=\"function\"&&vi(f,y),s.onclick=Xo);break;case\"onScroll\":y!=null&&(typeof y!=\"function\"&&vi(f,y),pn(\"scroll\",s));break;case\"onScrollEnd\":y!=null&&(typeof y!=\"function\"&&vi(f,y),pn(\"scrollend\",s));break;case\"dangerouslySetInnerHTML\":if(y!=null){if(typeof y!=\"object\"||!(\"__html\"in y))throw Error(\"`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.\");if(f=y.__html,f!=null){if(v.children!=null)throw Error(\"Can only set one of `children` or `props.dangerouslySetInnerHTML`.\");s.innerHTML=f}}break;case\"multiple\":s.multiple=y&&typeof y!=\"function\"&&typeof y!=\"symbol\";break;case\"muted\":s.muted=y&&typeof y!=\"function\"&&typeof y!=\"symbol\";break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"ref\":break;case\"autoFocus\":break;case\"xlinkHref\":if(y==null||typeof y==\"function\"||typeof y==\"boolean\"||typeof y==\"symbol\"){s.removeAttribute(\"xlink:href\");break}I(y,f),f=zm(\"\"+y),s.setAttributeNS(u5,\"xlink:href\",f);break;case\"contentEditable\":case\"spellCheck\":case\"draggable\":case\"value\":case\"autoReverse\":case\"externalResourcesRequired\":case\"focusable\":case\"preserveAlpha\":y!=null&&typeof y!=\"function\"&&typeof y!=\"symbol\"?(I(y,f),s.setAttribute(f,\"\"+y)):s.removeAttribute(f);break;case\"inert\":y!==\"\"||BN[f]||(BN[f]=!0,console.error(\"Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.\",f));case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":y&&typeof y!=\"function\"&&typeof y!=\"symbol\"?s.setAttribute(f,\"\"):s.removeAttribute(f);break;case\"capture\":case\"download\":y===!0?s.setAttribute(f,\"\"):y!==!1&&y!=null&&typeof y!=\"function\"&&typeof y!=\"symbol\"?(I(y,f),s.setAttribute(f,y)):s.removeAttribute(f);break;case\"cols\":case\"rows\":case\"size\":case\"span\":y!=null&&typeof y!=\"function\"&&typeof y!=\"symbol\"&&!isNaN(y)&&1<=y?(I(y,f),s.setAttribute(f,y)):s.removeAttribute(f);break;case\"rowSpan\":case\"start\":y==null||typeof y==\"function\"||typeof y==\"symbol\"||isNaN(y)?s.removeAttribute(f):(I(y,f),s.setAttribute(f,y));break;case\"popover\":pn(\"beforetoggle\",s),pn(\"toggle\",s),Fn(s,\"popover\",y);break;case\"xlinkActuate\":ni(s,u5,\"xlink:actuate\",y);break;case\"xlinkArcrole\":ni(s,u5,\"xlink:arcrole\",y);break;case\"xlinkRole\":ni(s,u5,\"xlink:role\",y);break;case\"xlinkShow\":ni(s,u5,\"xlink:show\",y);break;case\"xlinkTitle\":ni(s,u5,\"xlink:title\",y);break;case\"xlinkType\":ni(s,u5,\"xlink:type\",y);break;case\"xmlBase\":ni(s,nG,\"xml:base\",y);break;case\"xmlLang\":ni(s,nG,\"xml:lang\",y);break;case\"xmlSpace\":ni(s,nG,\"xml:space\",y);break;case\"is\":A!=null&&console.error(\\'Cannot update the \"is\" prop after it has been initialized.\\'),Fn(s,\"is\",y);break;case\"innerText\":case\"textContent\":break;case\"popoverTarget\":rue||y==null||typeof y!=\"object\"||(rue=!0,console.error(\"The `popoverTarget` prop expects the ID of an Element as a string. Received %s instead.\",y));default:!(2<f.length)||f[0]!==\"o\"&&f[0]!==\"O\"||f[1]!==\"n\"&&f[1]!==\"N\"?(f=ba(f),Fn(s,f,y)):GE.hasOwnProperty(f)&&y!=null&&typeof y!=\"function\"&&vi(f,y)}}function Ql(s,l,f,y,v,A){switch(f){case\"style\":ms(s,y,A);break;case\"dangerouslySetInnerHTML\":if(y!=null){if(typeof y!=\"object\"||!(\"__html\"in y))throw Error(\"`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.\");if(f=y.__html,f!=null){if(v.children!=null)throw Error(\"Can only set one of `children` or `props.dangerouslySetInnerHTML`.\");s.innerHTML=f}}break;case\"children\":typeof y==\"string\"?Vf(s,y):(typeof y==\"number\"||typeof y==\"bigint\")&&Vf(s,\"\"+y);break;case\"onScroll\":y!=null&&(typeof y!=\"function\"&&vi(f,y),pn(\"scroll\",s));break;case\"onScrollEnd\":y!=null&&(typeof y!=\"function\"&&vi(f,y),pn(\"scrollend\",s));break;case\"onClick\":y!=null&&(typeof y!=\"function\"&&vi(f,y),s.onclick=Xo);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"innerHTML\":case\"ref\":break;case\"innerText\":case\"textContent\":break;default:if(GE.hasOwnProperty(f))y!=null&&typeof y!=\"function\"&&vi(f,y);else e:{if(f[0]===\"o\"&&f[1]===\"n\"&&(v=f.endsWith(\"Capture\"),l=f.slice(2,v?f.length-7:void 0),A=s[cf]||null,A=A!=null?A[f]:null,typeof A==\"function\"&&s.removeEventListener(l,A,v),typeof y==\"function\")){typeof A!=\"function\"&&A!==null&&(f in s?s[f]=null:s.hasAttribute(f)&&s.removeAttribute(f)),s.addEventListener(l,y,v);break e}f in s?s[f]=y:y===!0?s.setAttribute(f,\"\"):Fn(s,f,y)}}}function Ro(s,l,f){switch(bi(l,f),l){case\"div\":case\"span\":case\"svg\":case\"path\":case\"a\":case\"g\":case\"p\":case\"li\":break;case\"img\":pn(\"error\",s),pn(\"load\",s);var y=!1,v=!1,A;for(A in f)if(f.hasOwnProperty(A)){var K=f[A];if(K!=null)switch(A){case\"src\":y=!0;break;case\"srcSet\":v=!0;break;case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l+\" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");default:hr(s,l,A,K,f,null)}}v&&hr(s,l,\"srcSet\",f.srcSet,f,null),y&&hr(s,l,\"src\",f.src,f,null);return;case\"input\":Dt(\"input\",f),pn(\"invalid\",s);var te=A=K=v=null,fe=null,me=null;for(y in f)if(f.hasOwnProperty(y)){var Ue=f[y];if(Ue!=null)switch(y){case\"name\":v=Ue;break;case\"type\":K=Ue;break;case\"checked\":fe=Ue;break;case\"defaultChecked\":me=Ue;break;case\"value\":A=Ue;break;case\"defaultValue\":te=Ue;break;case\"children\":case\"dangerouslySetInnerHTML\":if(Ue!=null)throw Error(l+\" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");break;default:hr(s,l,y,Ue,f,null)}}qu(s,f),Wu(s,A,te,fe,me,K,v,!1),Cr(s);return;case\"select\":Dt(\"select\",f),pn(\"invalid\",s),y=K=A=null;for(v in f)if(f.hasOwnProperty(v)&&(te=f[v],te!=null))switch(v){case\"value\":A=te;break;case\"defaultValue\":K=te;break;case\"multiple\":y=te;default:hr(s,l,v,te,f,null)}Dl(s,f),l=A,f=K,s.multiple=!!y,l!=null?ya(s,!!y,l,!1):f!=null&&ya(s,!!y,f,!0);return;case\"textarea\":Dt(\"textarea\",f),pn(\"invalid\",s),A=v=y=null;for(K in f)if(f.hasOwnProperty(K)&&(te=f[K],te!=null))switch(K){case\"value\":y=te;break;case\"defaultValue\":v=te;break;case\"children\":A=te;break;case\"dangerouslySetInnerHTML\":if(te!=null)throw Error(\"`dangerouslySetInnerHTML` does not make sense on <textarea>.\");break;default:hr(s,l,K,te,f,null)}Ja(s,f),Fd(s,y,v,A),Cr(s);return;case\"option\":Ya(s,f);for(fe in f)if(f.hasOwnProperty(fe)&&(y=f[fe],y!=null))switch(fe){case\"selected\":s.selected=y&&typeof y!=\"function\"&&typeof y!=\"symbol\";break;default:hr(s,l,fe,y,f,null)}return;case\"dialog\":pn(\"beforetoggle\",s),pn(\"toggle\",s),pn(\"cancel\",s),pn(\"close\",s);break;case\"iframe\":case\"object\":pn(\"load\",s);break;case\"video\":case\"audio\":for(y=0;y<U7.length;y++)pn(U7[y],s);break;case\"image\":pn(\"error\",s),pn(\"load\",s);break;case\"details\":pn(\"toggle\",s);break;case\"embed\":case\"source\":case\"link\":pn(\"error\",s),pn(\"load\",s);case\"area\":case\"base\":case\"br\":case\"col\":case\"hr\":case\"keygen\":case\"meta\":case\"param\":case\"track\":case\"wbr\":case\"menuitem\":for(me in f)if(f.hasOwnProperty(me)&&(y=f[me],y!=null))switch(me){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l+\" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");default:hr(s,l,me,y,f,null)}return;default:if(Ul(l)){for(Ue in f)f.hasOwnProperty(Ue)&&(y=f[Ue],y!==void 0&&Ql(s,l,Ue,y,f,void 0));return}}for(te in f)f.hasOwnProperty(te)&&(y=f[te],y!=null&&hr(s,l,te,y,f,null))}function ch(s,l,f,y){switch(bi(l,y),l){case\"div\":case\"span\":case\"svg\":case\"path\":case\"a\":case\"g\":case\"p\":case\"li\":break;case\"input\":var v=null,A=null,K=null,te=null,fe=null,me=null,Ue=null;for(Qe in f){var Ke=f[Qe];if(f.hasOwnProperty(Qe)&&Ke!=null)switch(Qe){case\"checked\":break;case\"value\":break;case\"defaultValue\":fe=Ke;default:y.hasOwnProperty(Qe)||hr(s,l,Qe,null,y,Ke)}}for(var Fe in y){var Qe=y[Fe];if(Ke=f[Fe],y.hasOwnProperty(Fe)&&(Qe!=null||Ke!=null))switch(Fe){case\"type\":A=Qe;break;case\"name\":v=Qe;break;case\"checked\":me=Qe;break;case\"defaultChecked\":Ue=Qe;break;case\"value\":K=Qe;break;case\"defaultValue\":te=Qe;break;case\"children\":case\"dangerouslySetInnerHTML\":if(Qe!=null)throw Error(l+\" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");break;default:Qe!==Ke&&hr(s,l,Fe,Qe,y,Ke)}}l=f.type===\"checkbox\"||f.type===\"radio\"?f.checked!=null:f.value!=null,y=y.type===\"checkbox\"||y.type===\"radio\"?y.checked!=null:y.value!=null,l||!y||tue||(console.error(\"A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components\"),tue=!0),!l||y||eue||(console.error(\"A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components\"),eue=!0),ts(s,K,te,fe,me,Ue,A,v);return;case\"select\":Qe=K=te=Fe=null;for(A in f)if(fe=f[A],f.hasOwnProperty(A)&&fe!=null)switch(A){case\"value\":break;case\"multiple\":Qe=fe;default:y.hasOwnProperty(A)||hr(s,l,A,null,y,fe)}for(v in y)if(A=y[v],fe=f[v],y.hasOwnProperty(v)&&(A!=null||fe!=null))switch(v){case\"value\":Fe=A;break;case\"defaultValue\":te=A;break;case\"multiple\":K=A;default:A!==fe&&hr(s,l,v,A,y,fe)}y=te,l=K,f=Qe,Fe!=null?ya(s,!!l,Fe,!1):!!f!=!!l&&(y!=null?ya(s,!!l,y,!0):ya(s,!!l,l?[]:\"\",!1));return;case\"textarea\":Qe=Fe=null;for(te in f)if(v=f[te],f.hasOwnProperty(te)&&v!=null&&!y.hasOwnProperty(te))switch(te){case\"value\":break;case\"children\":break;default:hr(s,l,te,null,y,v)}for(K in y)if(v=y[K],A=f[K],y.hasOwnProperty(K)&&(v!=null||A!=null))switch(K){case\"value\":Fe=v;break;case\"defaultValue\":Qe=v;break;case\"children\":break;case\"dangerouslySetInnerHTML\":if(v!=null)throw Error(\"`dangerouslySetInnerHTML` does not make sense on <textarea>.\");break;default:v!==A&&hr(s,l,K,v,y,A)}Fl(s,Fe,Qe);return;case\"option\":for(var tn in f)if(Fe=f[tn],f.hasOwnProperty(tn)&&Fe!=null&&!y.hasOwnProperty(tn))switch(tn){case\"selected\":s.selected=!1;break;default:hr(s,l,tn,null,y,Fe)}for(fe in y)if(Fe=y[fe],Qe=f[fe],y.hasOwnProperty(fe)&&Fe!==Qe&&(Fe!=null||Qe!=null))switch(fe){case\"selected\":s.selected=Fe&&typeof Fe!=\"function\"&&typeof Fe!=\"symbol\";break;default:hr(s,l,fe,Fe,y,Qe)}return;case\"img\":case\"link\":case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"keygen\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":case\"menuitem\":for(var On in f)Fe=f[On],f.hasOwnProperty(On)&&Fe!=null&&!y.hasOwnProperty(On)&&hr(s,l,On,null,y,Fe);for(me in y)if(Fe=y[me],Qe=f[me],y.hasOwnProperty(me)&&Fe!==Qe&&(Fe!=null||Qe!=null))switch(me){case\"children\":case\"dangerouslySetInnerHTML\":if(Fe!=null)throw Error(l+\" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");break;default:hr(s,l,me,Fe,y,Qe)}return;default:if(Ul(l)){for(var xi in f)Fe=f[xi],f.hasOwnProperty(xi)&&Fe!==void 0&&!y.hasOwnProperty(xi)&&Ql(s,l,xi,void 0,y,Fe);for(Ue in y)Fe=y[Ue],Qe=f[Ue],!y.hasOwnProperty(Ue)||Fe===Qe||Fe===void 0&&Qe===void 0||Ql(s,l,Ue,Fe,y,Qe);return}}for(var Dr in f)Fe=f[Dr],f.hasOwnProperty(Dr)&&Fe!=null&&!y.hasOwnProperty(Dr)&&hr(s,l,Dr,null,y,Fe);for(Ke in y)Fe=y[Ke],Qe=f[Ke],!y.hasOwnProperty(Ke)||Fe===Qe||Fe==null&&Qe==null||hr(s,l,Ke,Fe,y,Qe)}function ed(s){switch(s){case\"class\":return\"className\";case\"for\":return\"htmlFor\";default:return s}}function Qd(s){var l={};s=s.style;for(var f=0;f<s.length;f++){var y=s[f];l[y]=s.getPropertyValue(y)}return l}function Jd(s,l,f){if(l!=null&&typeof l!=\"object\")console.error(\"The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + \\'em\\'}} when using JSX.\");else{var y,v=y=\"\",A;for(A in l)if(l.hasOwnProperty(A)){var K=l[A];K!=null&&typeof K!=\"boolean\"&&K!==\"\"&&(A.indexOf(\"--\")===0?(U(K,A),y+=v+A+\":\"+(\"\"+K).trim()):typeof K!=\"number\"||K===0||Sce.has(A)?(U(K,A),y+=v+A.replace(bce,\"-$1\").toLowerCase().replace(vce,\"-ms-\")+\":\"+(\"\"+K).trim()):y+=v+A.replace(bce,\"-$1\").toLowerCase().replace(vce,\"-ms-\")+\":\"+K+\"px\",v=\";\")}y=y||null,l=s.getAttribute(\"style\"),l!==y&&(y=Ns(y),Ns(l)!==y&&(f.style=Qd(s)))}}function Oa(s,l,f,y,v,A){if(v.delete(f),s=s.getAttribute(f),s===null)switch(typeof y){case\"undefined\":case\"function\":case\"symbol\":case\"boolean\":return}else if(y!=null)switch(typeof y){case\"function\":case\"symbol\":case\"boolean\":break;default:if(I(y,l),s===\"\"+y)return}Sr(l,s,y,A)}function Xd(s,l,f,y,v,A){if(v.delete(f),s=s.getAttribute(f),s===null){switch(typeof y){case\"function\":case\"symbol\":return}if(!y)return}else switch(typeof y){case\"function\":case\"symbol\":break;default:if(y)return}Sr(l,s,y,A)}function Jl(s,l,f,y,v,A){if(v.delete(f),s=s.getAttribute(f),s===null)switch(typeof y){case\"undefined\":case\"function\":case\"symbol\":return}else if(y!=null)switch(typeof y){case\"function\":case\"symbol\":break;default:if(I(y,f),s===\"\"+y)return}Sr(l,s,y,A)}function Xl(s,l,f,y,v,A){if(v.delete(f),s=s.getAttribute(f),s===null)switch(typeof y){case\"undefined\":case\"function\":case\"symbol\":case\"boolean\":return;default:if(isNaN(y))return}else if(y!=null)switch(typeof y){case\"function\":case\"symbol\":case\"boolean\":break;default:if(!isNaN(y)&&(I(y,l),s===\"\"+y))return}Sr(l,s,y,A)}function cc(s,l,f,y,v,A){if(v.delete(f),s=s.getAttribute(f),s===null)switch(typeof y){case\"undefined\":case\"function\":case\"symbol\":case\"boolean\":return}else if(y!=null)switch(typeof y){case\"function\":case\"symbol\":case\"boolean\":break;default:if(I(y,l),f=zm(\"\"+y),s===f)return}Sr(l,s,y,A)}function eu(s,l,f,y){for(var v={},A=new Set,K=s.attributes,te=0;te<K.length;te++)switch(K[te].name.toLowerCase()){case\"value\":break;case\"checked\":break;case\"selected\":break;default:A.add(K[te].name)}if(Ul(l)){for(var fe in f)if(f.hasOwnProperty(fe)){var me=f[fe];if(me!=null){if(GE.hasOwnProperty(fe))typeof me!=\"function\"&&vi(fe,me);else if(f.suppressHydrationWarning!==!0)switch(fe){case\"children\":typeof me!=\"string\"&&typeof me!=\"number\"||Sr(\"children\",s.textContent,me,v);continue;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"ref\":continue;case\"dangerouslySetInnerHTML\":K=s.innerHTML,me=me?me.__html:void 0,me!=null&&(me=fl(s,me),Sr(fe,K,me,v));continue;case\"style\":A.delete(fe),Jd(s,me,v);continue;case\"offsetParent\":case\"offsetTop\":case\"offsetLeft\":case\"offsetWidth\":case\"offsetHeight\":case\"isContentEditable\":case\"outerText\":case\"outerHTML\":A.delete(fe.toLowerCase()),console.error(\"Assignment to read-only property will result in a no-op: `%s`\",fe);continue;case\"className\":A.delete(\"class\"),K=bn(s,\"class\",me),Sr(\"className\",K,me,v);continue;default:y.context===qb&&l!==\"svg\"&&l!==\"math\"?A.delete(fe.toLowerCase()):A.delete(fe),K=bn(s,fe,me),Sr(fe,K,me,v)}}}}else for(me in f)if(f.hasOwnProperty(me)&&(fe=f[me],fe!=null)){if(GE.hasOwnProperty(me))typeof fe!=\"function\"&&vi(me,fe);else if(f.suppressHydrationWarning!==!0)switch(me){case\"children\":typeof fe!=\"string\"&&typeof fe!=\"number\"||Sr(\"children\",s.textContent,fe,v);continue;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"value\":case\"checked\":case\"selected\":case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"ref\":continue;case\"dangerouslySetInnerHTML\":K=s.innerHTML,fe=fe?fe.__html:void 0,fe!=null&&(fe=fl(s,fe),K!==fe&&(v[me]={__html:K}));continue;case\"className\":Oa(s,me,\"class\",fe,A,v);continue;case\"tabIndex\":Oa(s,me,\"tabindex\",fe,A,v);continue;case\"style\":A.delete(me),Jd(s,fe,v);continue;case\"multiple\":A.delete(me),Sr(me,s.multiple,fe,v);continue;case\"muted\":A.delete(me),Sr(me,s.muted,fe,v);continue;case\"autoFocus\":A.delete(\"autofocus\"),Sr(me,s.autofocus,fe,v);continue;case\"data\":if(l!==\"object\"){A.delete(me),K=s.getAttribute(\"data\"),Sr(me,K,fe,v);continue}case\"src\":case\"href\":if(!(fe!==\"\"||l===\"a\"&&me===\"href\"||l===\"object\"&&me===\"data\")){console.error(me===\"src\"?\\'An empty string (\"\") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\':\\'An empty string (\"\") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\',me,me);continue}cc(s,me,me,fe,A,v);continue;case\"action\":case\"formAction\":if(K=s.getAttribute(me),typeof fe==\"function\"){A.delete(me.toLowerCase()),me===\"formAction\"?(A.delete(\"name\"),A.delete(\"formenctype\"),A.delete(\"formmethod\"),A.delete(\"formtarget\")):(A.delete(\"enctype\"),A.delete(\"method\"),A.delete(\"target\"));continue}else if(K===UFe){A.delete(me.toLowerCase()),Sr(me,\"function\",fe,v);continue}cc(s,me,me.toLowerCase(),fe,A,v);continue;case\"xlinkHref\":cc(s,me,\"xlink:href\",fe,A,v);continue;case\"contentEditable\":Jl(s,me,\"contenteditable\",fe,A,v);continue;case\"spellCheck\":Jl(s,me,\"spellcheck\",fe,A,v);continue;case\"draggable\":case\"autoReverse\":case\"externalResourcesRequired\":case\"focusable\":case\"preserveAlpha\":Jl(s,me,me,fe,A,v);continue;case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":Xd(s,me,me.toLowerCase(),fe,A,v);continue;case\"capture\":case\"download\":e:{te=s;var Ue=K=me,Ke=v;if(A.delete(Ue),te=te.getAttribute(Ue),te===null)switch(typeof fe){case\"undefined\":case\"function\":case\"symbol\":break e;default:if(fe===!1)break e}else if(fe!=null)switch(typeof fe){case\"function\":case\"symbol\":break;case\"boolean\":if(fe===!0&&te===\"\")break e;break;default:if(I(fe,K),te===\"\"+fe)break e}Sr(K,te,fe,Ke)}continue;case\"cols\":case\"rows\":case\"size\":case\"span\":e:{if(te=s,Ue=K=me,Ke=v,A.delete(Ue),te=te.getAttribute(Ue),te===null)switch(typeof fe){case\"undefined\":case\"function\":case\"symbol\":case\"boolean\":break e;default:if(isNaN(fe)||1>fe)break e}else if(fe!=null)switch(typeof fe){case\"function\":case\"symbol\":case\"boolean\":break;default:if(!(isNaN(fe)||1>fe)&&(I(fe,K),te===\"\"+fe))break e}Sr(K,te,fe,Ke)}continue;case\"rowSpan\":Xl(s,me,\"rowspan\",fe,A,v);continue;case\"start\":Xl(s,me,me,fe,A,v);continue;case\"xHeight\":Oa(s,me,\"x-height\",fe,A,v);continue;case\"xlinkActuate\":Oa(s,me,\"xlink:actuate\",fe,A,v);continue;case\"xlinkArcrole\":Oa(s,me,\"xlink:arcrole\",fe,A,v);continue;case\"xlinkRole\":Oa(s,me,\"xlink:role\",fe,A,v);continue;case\"xlinkShow\":Oa(s,me,\"xlink:show\",fe,A,v);continue;case\"xlinkTitle\":Oa(s,me,\"xlink:title\",fe,A,v);continue;case\"xlinkType\":Oa(s,me,\"xlink:type\",fe,A,v);continue;case\"xmlBase\":Oa(s,me,\"xml:base\",fe,A,v);continue;case\"xmlLang\":Oa(s,me,\"xml:lang\",fe,A,v);continue;case\"xmlSpace\":Oa(s,me,\"xml:space\",fe,A,v);continue;case\"inert\":fe!==\"\"||BN[me]||(BN[me]=!0,console.error(\"Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.\",me)),Xd(s,me,me,fe,A,v);continue;default:if(!(2<me.length)||me[0]!==\"o\"&&me[0]!==\"O\"||me[1]!==\"n\"&&me[1]!==\"N\"){te=ba(me),K=!1,y.context===qb&&l!==\"svg\"&&l!==\"math\"?A.delete(te.toLowerCase()):(Ue=me.toLowerCase(),Ue=sN.hasOwnProperty(Ue)&&sN[Ue]||null,Ue!==null&&Ue!==me&&(K=!0,A.delete(Ue)),A.delete(te));e:if(Ue=s,Ke=te,te=fe,sn(Ke))if(Ue.hasAttribute(Ke))Ue=Ue.getAttribute(Ke),I(te,Ke),te=Ue===\"\"+te?te:Ue;else{switch(typeof te){case\"function\":case\"symbol\":break e;case\"boolean\":if(Ue=Ke.toLowerCase().slice(0,5),Ue!==\"data-\"&&Ue!==\"aria-\")break e}te=te===void 0?void 0:null}else te=void 0;K||Sr(me,te,fe,v)}}}return 0<A.size&&f.suppressHydrationWarning!==!0&&b0(s,A,v),Object.keys(v).length===0?null:v}function Gi(s,l){switch(s.length){case 0:return\"\";case 1:return s[0];case 2:return s[0]+\" \"+l+\" \"+s[1];default:return s.slice(0,-1).join(\", \")+\", \"+l+\" \"+s[s.length-1]}}function ei(s){return s.nodeType===9?s:s.ownerDocument}function cy(s){switch(s){case h_:return W_;case iN:return UN;default:return qb}}function ef(s,l){if(s===qb)switch(l){case\"svg\":return W_;case\"math\":return UN;default:return qb}return s===W_&&l===\"foreignObject\"?qb:s}function w0(s,l){return s===\"textarea\"||s===\"noscript\"||typeof l.children==\"string\"||typeof l.children==\"number\"||typeof l.children==\"bigint\"||typeof l.dangerouslySetInnerHTML==\"object\"&&l.dangerouslySetInnerHTML!==null&&l.dangerouslySetInnerHTML.__html!=null}function tf(){var s=window.event;return s&&s.type===\"popstate\"?s===sG?!1:(sG=s,!0):(sG=null,!1)}function nf(s){setTimeout(function(){throw s})}function ly(s,l,f){switch(l){case\"button\":case\"input\":case\"select\":case\"textarea\":f.autoFocus&&s.focus();break;case\"img\":f.src?s.src=f.src:f.srcSet&&(s.srcset=f.srcSet)}}function rf(s,l,f,y){ch(s,l,f,y),s[cf]=y}function hl(s){Vf(s,\"\")}function yp(s,l,f){s.nodeValue=f}function of(s){return s===\"head\"}function x0(s,l){s.removeChild(l)}function Rb(s,l){(s.nodeType===9?s.body:s.nodeName===\"HTML\"?s.ownerDocument.body:s).removeChild(l)}function bp(s,l){var f=l,y=0,v=0;do{var A=f.nextSibling;if(s.removeChild(f),A&&A.nodeType===8)if(f=A.data,f===FN){if(0<y&&8>y){f=y;var K=s.ownerDocument;if(f&zFe&&vp(K.documentElement),f&HFe&&vp(K.body),f&qFe)for(f=K.head,vp(f),K=f.firstChild;K;){var te=K.nextSibling,fe=K.nodeName;K[s7]||fe===\"SCRIPT\"||fe===\"STYLE\"||fe===\"LINK\"&&K.rel.toLowerCase()===\"stylesheet\"||f.removeChild(K),K=te}}if(v===0){s.removeChild(A),r7(l);return}v--}else f===DN||f===Hb||f===j7?v++:y=f.charCodeAt(0)-48;else y=0;f=A}while(f);r7(l)}function UE(s){s=s.style,typeof s.setProperty==\"function\"?s.setProperty(\"display\",\"none\",\"important\"):s.display=\"none\"}function lh(s){s.nodeValue=\"\"}function jE(s,l){l=l[WFe],l=l!=null&&l.hasOwnProperty(\"display\")?l.display:null,s.style.display=l==null||typeof l==\"boolean\"?\"\":(\"\"+l).trim()}function E0(s,l){s.nodeValue=l}function Ls(s){var l=s.firstChild;for(l&&l.nodeType===10&&(l=l.nextSibling);l;){var f=l;switch(l=l.nextSibling,f.nodeName){case\"HTML\":case\"HEAD\":case\"BODY\":Ls(f),wr(f);continue;case\"SCRIPT\":case\"STYLE\":continue;case\"LINK\":if(f.rel.toLowerCase()===\"stylesheet\")continue}s.removeChild(f)}}function zE(s,l,f,y){for(;s.nodeType===1;){var v=f;if(s.nodeName.toLowerCase()!==l.toLowerCase()){if(!y&&(s.nodeName!==\"INPUT\"||s.type!==\"hidden\"))break}else if(y){if(!s[s7])switch(l){case\"meta\":if(!s.hasAttribute(\"itemprop\"))break;return s;case\"link\":if(A=s.getAttribute(\"rel\"),A===\"stylesheet\"&&s.hasAttribute(\"data-precedence\"))break;if(A!==v.rel||s.getAttribute(\"href\")!==(v.href==null||v.href===\"\"?null:v.href)||s.getAttribute(\"crossorigin\")!==(v.crossOrigin==null?null:v.crossOrigin)||s.getAttribute(\"title\")!==(v.title==null?null:v.title))break;return s;case\"style\":if(s.hasAttribute(\"data-precedence\"))break;return s;case\"script\":if(A=s.getAttribute(\"src\"),(A!==(v.src==null?null:v.src)||s.getAttribute(\"type\")!==(v.type==null?null:v.type)||s.getAttribute(\"crossorigin\")!==(v.crossOrigin==null?null:v.crossOrigin))&&A&&s.hasAttribute(\"async\")&&!s.hasAttribute(\"itemprop\"))break;return s;default:return s}}else if(l===\"input\"&&s.type===\"hidden\"){I(v.name,\"name\");var A=v.name==null?null:\"\"+v.name;if(v.type===\"hidden\"&&s.getAttribute(\"name\")===A)return s}else return s;if(s=td(s.nextSibling),s===null)break}return null}function r_(s,l,f){if(l===\"\")return null;for(;s.nodeType!==3;)if((s.nodeType!==1||s.nodeName!==\"INPUT\"||s.type!==\"hidden\")&&!f||(s=td(s.nextSibling),s===null))return null;return s}function HE(s){return s.data===j7||s.data===Hb&&s.ownerDocument.readyState===iue}function qE(s,l){var f=s.ownerDocument;if(s.data!==Hb||f.readyState===iue)l();else{var y=function(){l(),f.removeEventListener(\"DOMContentLoaded\",y)};f.addEventListener(\"DOMContentLoaded\",y),s._reactRetry=y}}function td(s){for(;s!=null;s=s.nextSibling){var l=s.nodeType;if(l===1||l===3)break;if(l===8){if(l=s.data,l===DN||l===j7||l===Hb||l===rG||l===oue)break;if(l===FN)return null}}return s}function sw(s){if(s.nodeType===1){for(var l=s.nodeName.toLowerCase(),f={},y=s.attributes,v=0;v<y.length;v++){var A=y[v];f[ed(A.name)]=A.name.toLowerCase()===\"style\"?Qd(s):A.value}return{type:l,props:f}}return s.nodeType===8?{type:\"Suspense\",props:{}}:s.nodeValue}function aw(s,l,f){return f===null||f[jFe]!==!0?(s.nodeValue===l?s=null:(l=Ns(l),s=Ns(s.nodeValue)===l?null:s.nodeValue),s):null}function cw(s){s=s.nextSibling;for(var l=0;s;){if(s.nodeType===8){var f=s.data;if(f===FN){if(l===0)return td(s.nextSibling);l--}else f!==DN&&f!==j7&&f!==Hb||l++}s=s.nextSibling}return null}function WE(s){s=s.previousSibling;for(var l=0;s;){if(s.nodeType===8){var f=s.data;if(f===DN||f===j7||f===Hb){if(l===0)return s;l--}else f===FN&&l++}s=s.previousSibling}return null}function uy(s){r7(s)}function Rc(s){r7(s)}function Pa(s,l,f,y,v){switch(v&&eb(s,y.ancestorInfo),l=ei(f),s){case\"html\":if(s=l.documentElement,!s)throw Error(\"React expected an <html> element (document.documentElement) to exist in the Document but one was not found. React never removes the documentElement for any Document it renders into so the cause is likely in some other script running on this page.\");return s;case\"head\":if(s=l.head,!s)throw Error(\"React expected a <head> element (document.head) to exist in the Document but one was not found. React never removes the head for any Document it renders into so the cause is likely in some other script running on this page.\");return s;case\"body\":if(s=l.body,!s)throw Error(\"React expected a <body> element (document.body) to exist in the Document but one was not found. React never removes the body for any Document it renders into so the cause is likely in some other script running on this page.\");return s;default:throw Error(\"resolveSingletonInstance was called with an element type that is not supported. This is a bug in React.\")}}function VM(s,l,f,y){if(!f[mw]&&le(f)){var v=f.tagName.toLowerCase();console.error(\"You are mounting a new %s component when a previous one has not first unmounted. It is an error to render more than one %s component at a time and attributes and children of these components will likely fail in unpredictable ways. Please only render a single instance of <%s> and if you need to mount a new one, ensure any previous ones have unmounted first.\",v,v,v)}switch(s){case\"html\":case\"head\":case\"body\":break;default:console.error(\"acquireSingletonInstance was called with an element type that is not supported. This is a bug in React.\")}for(v=f.attributes;v.length;)f.removeAttributeNode(v[0]);Ro(f,s,l),f[nu]=y,f[cf]=l}function vp(s){for(var l=s.attributes;l.length;)s.removeAttributeNode(l[0]);wr(s)}function lw(s){return typeof s.getRootNode==\"function\"?s.getRootNode():s.nodeType===9?s:s.ownerDocument}function dy(s,l,f){var y=V_;if(y&&typeof l==\"string\"&&l){var v=Zo(l);v=\\'link[rel=\"\\'+s+\\'\"][href=\"\\'+v+\\'\"]\\',typeof f==\"string\"&&(v+=\\'[crossorigin=\"\\'+f+\\'\"]\\'),due.has(v)||(due.add(v),s={rel:s,crossOrigin:f,href:l},y.querySelector(v)===null&&(l=y.createElement(\"link\"),Ro(l,\"link\",s),tt(l),y.head.appendChild(l)))}}function o_(s,l,f,y){var v=(v=hw.current)?lw(v):null;if(!v)throw Error(\\'\"resourceRoot\" was expected to exist. This is a bug in React.\\');switch(s){case\"meta\":case\"title\":return null;case\"style\":return typeof f.precedence==\"string\"&&typeof f.href==\"string\"?(f=sf(f.href),l=xt(v).hoistableStyles,y=l.get(f),y||(y={type:\"style\",instance:null,count:0,state:null},l.set(f,y)),y):{type:\"void\",instance:null,count:0,state:null};case\"link\":if(f.rel===\"stylesheet\"&&typeof f.href==\"string\"&&typeof f.precedence==\"string\"){s=sf(f.href);var A=xt(v).hoistableStyles,K=A.get(s);if(!K&&(v=v.ownerDocument||v,K={type:\"stylesheet\",instance:null,count:0,state:{loading:f5,preload:null}},A.set(s,K),(A=v.querySelector(Ib(s)))&&!A._p&&(K.instance=A,K.state.loading=z7|Rp),!Ip.has(s))){var te={rel:\"preload\",as:\"style\",href:f.href,crossOrigin:f.crossOrigin,integrity:f.integrity,media:f.media,hrefLang:f.hrefLang,referrerPolicy:f.referrerPolicy};Ip.set(s,te),A||$M(v,s,te,K.state)}if(l&&y===null)throw f=`\\n\\n  - `+VE(l)+`\\n  + `+VE(f),Error(\"Expected <link> not to update to be updated to a stylesheet with precedence. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key.\"+f);return K}if(l&&y!==null)throw f=`\\n\\n  - `+VE(l)+`\\n  + `+VE(f),Error(\"Expected stylesheet with precedence to not be updated to a different kind of <link>. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key.\"+f);return null;case\"script\":return l=f.async,f=f.src,typeof f==\"string\"&&l&&typeof l!=\"function\"&&typeof l!=\"symbol\"?(f=fy(f),l=xt(v).hoistableScripts,y=l.get(f),y||(y={type:\"script\",instance:null,count:0,state:null},l.set(f,y)),y):{type:\"void\",instance:null,count:0,state:null};default:throw Error(\\'getResource encountered a type it did not expect: \"\\'+s+\\'\". this is a bug in React.\\')}}function VE(s){var l=0,f=\"<link\";return typeof s.rel==\"string\"?(l++,f+=\\' rel=\"\\'+s.rel+\\'\"\\'):Mb.call(s,\"rel\")&&(l++,f+=\\' rel=\"\\'+(s.rel===null?\"null\":\"invalid type \"+typeof s.rel)+\\'\"\\'),typeof s.href==\"string\"?(l++,f+=\\' href=\"\\'+s.href+\\'\"\\'):Mb.call(s,\"href\")&&(l++,f+=\\' href=\"\\'+(s.href===null?\"null\":\"invalid type \"+typeof s.href)+\\'\"\\'),typeof s.precedence==\"string\"?(l++,f+=\\' precedence=\"\\'+s.precedence+\\'\"\\'):Mb.call(s,\"precedence\")&&(l++,f+=\" precedence={\"+(s.precedence===null?\"null\":\"invalid type \"+typeof s.precedence)+\"}\"),Object.getOwnPropertyNames(s).length>l&&(f+=\" ...\"),f+\" />\"}function sf(s){return\\'href=\"\\'+Zo(s)+\\'\"\\'}function Ib(s){return\\'link[rel=\"stylesheet\"][\\'+s+\"]\"}function i_(s){return pr({},s,{\"data-precedence\":s.precedence,precedence:null})}function $M(s,l,f,y){s.querySelector(\\'link[rel=\"preload\"][as=\"style\"][\\'+l+\"]\")?y.loading=z7:(l=s.createElement(\"link\"),y.preload=l,l.addEventListener(\"load\",function(){return y.loading|=z7}),l.addEventListener(\"error\",function(){return y.loading|=lue}),Ro(l,\"link\",f),tt(l),s.head.appendChild(l))}function fy(s){return\\'[src=\"\\'+Zo(s)+\\'\"]\\'}function uw(s){return\"script[async]\"+s}function s_(s,l,f){if(l.count++,l.instance===null)switch(l.type){case\"style\":var y=s.querySelector(\\'style[data-href~=\"\\'+Zo(f.href)+\\'\"]\\');if(y)return l.instance=y,tt(y),y;var v=pr({},f,{\"data-href\":f.href,\"data-precedence\":f.precedence,href:null,precedence:null});return y=(s.ownerDocument||s).createElement(\"style\"),tt(y),Ro(y,\"style\",v),$E(y,f.precedence,s),l.instance=y;case\"stylesheet\":v=sf(f.href);var A=s.querySelector(Ib(v));if(A)return l.state.loading|=Rp,l.instance=A,tt(A),A;y=i_(f),(v=Ip.get(v))&&KE(y,v),A=(s.ownerDocument||s).createElement(\"link\"),tt(A);var K=A;return K._p=new Promise(function(te,fe){K.onload=te,K.onerror=fe}),Ro(A,\"link\",y),l.state.loading|=Rp,$E(A,f.precedence,s),l.instance=A;case\"script\":return A=fy(f.src),(v=s.querySelector(uw(A)))?(l.instance=v,tt(v),v):(y=f,(v=Ip.get(A))&&(y=pr({},f),a_(y,v)),s=s.ownerDocument||s,v=s.createElement(\"script\"),tt(v),Ro(v,\"link\",y),s.head.appendChild(v),l.instance=v);case\"void\":return null;default:throw Error(\\'acquireResource encountered a resource type it did not expect: \"\\'+l.type+\\'\". this is a bug in React.\\')}else l.type===\"stylesheet\"&&(l.state.loading&Rp)===f5&&(y=l.instance,l.state.loading|=Rp,$E(y,f.precedence,s));return l.instance}function $E(s,l,f){for(var y=f.querySelectorAll(\\'link[rel=\"stylesheet\"][data-precedence],style[data-precedence]\\'),v=y.length?y[y.length-1]:null,A=v,K=0;K<y.length;K++){var te=y[K];if(te.dataset.precedence===l)A=te;else if(A!==v)break}A?A.parentNode.insertBefore(s,A.nextSibling):(l=f.nodeType===9?f.head:f,l.insertBefore(s,l.firstChild))}function KE(s,l){s.crossOrigin==null&&(s.crossOrigin=l.crossOrigin),s.referrerPolicy==null&&(s.referrerPolicy=l.referrerPolicy),s.title==null&&(s.title=l.title)}function a_(s,l){s.crossOrigin==null&&(s.crossOrigin=l.crossOrigin),s.referrerPolicy==null&&(s.referrerPolicy=l.referrerPolicy),s.integrity==null&&(s.integrity=l.integrity)}function Ob(s,l,f){if(jN===null){var y=new Map,v=jN=new Map;v.set(f,y)}else v=jN,y=v.get(f),y||(y=new Map,v.set(f,y));if(y.has(s))return y;for(y.set(s,null),f=f.getElementsByTagName(s),v=0;v<f.length;v++){var A=f[v];if(!(A[s7]||A[nu]||s===\"link\"&&A.getAttribute(\"rel\")===\"stylesheet\")&&A.namespaceURI!==h_){var K=A.getAttribute(l)||\"\";K=s+K;var te=y.get(K);te?te.push(A):y.set(K,[A])}}return y}function af(s,l,f){s=s.ownerDocument||s,s.head.insertBefore(f,l===\"title\"?s.querySelector(\"head > title\"):null)}function KM(s,l,f){var y=!f.ancestorInfo.containerTagInScope;if(f.context===W_||l.itemProp!=null)return!y||l.itemProp==null||s!==\"meta\"&&s!==\"title\"&&s!==\"style\"&&s!==\"link\"&&s!==\"script\"||console.error(\"Cannot render a <%s> outside the main document if it has an `itemProp` prop. `itemProp` suggests the tag belongs to an `itemScope` which can appear anywhere in the DOM. If you were intending for React to hoist this <%s> remove the `itemProp` prop. Otherwise, try moving this tag into the <head> or <body> of the Document.\",s,s),!1;switch(s){case\"meta\":case\"title\":return!0;case\"style\":if(typeof l.precedence!=\"string\"||typeof l.href!=\"string\"||l.href===\"\"){y&&console.error(\\'Cannot render a <style> outside the main document without knowing its precedence and a unique href key. React can hoist and deduplicate <style> tags if you provide a `precedence` prop along with an `href` prop that does not conflict with the `href` values used in any other hoisted <style> or <link rel=\"stylesheet\" ...> tags.  Note that hoisting <style> tags is considered an advanced feature that most will not use directly. Consider moving the <style> tag to the <head> or consider adding a `precedence=\"default\"` and `href=\"some unique resource identifier\"`.\\');break}return!0;case\"link\":if(typeof l.rel!=\"string\"||typeof l.href!=\"string\"||l.href===\"\"||l.onLoad||l.onError){if(l.rel===\"stylesheet\"&&typeof l.precedence==\"string\"){s=l.href;var v=l.onError,A=l.disabled;f=[],l.onLoad&&f.push(\"`onLoad`\"),v&&f.push(\"`onError`\"),A!=null&&f.push(\"`disabled`\"),v=Gi(f,\"and\"),v+=f.length===1?\" prop\":\" props\",A=f.length===1?\"an \"+v:\"the \"+v,f.length&&console.error(\\'React encountered a <link rel=\"stylesheet\" href=\"%s\" ... /> with a `precedence` prop that also included %s. The presence of loading and error handlers indicates an intent to manage the stylesheet loading state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the %s, otherwise remove the `precedence` prop.\\',s,A,v)}y&&(typeof l.rel!=\"string\"||typeof l.href!=\"string\"||l.href===\"\"?console.error(\"Cannot render a <link> outside the main document without a `rel` and `href` prop. Try adding a `rel` and/or `href` prop to this <link> or moving the link into the <head> tag\"):(l.onError||l.onLoad)&&console.error(\"Cannot render a <link> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>.\"));break}switch(l.rel){case\"stylesheet\":return s=l.precedence,l=l.disabled,typeof s!=\"string\"&&y&&console.error(\\'Cannot render a <link rel=\"stylesheet\" /> outside the main document without knowing its precedence. Consider adding precedence=\"default\" or moving it into the root <head> tag.\\'),typeof s==\"string\"&&l==null;default:return!0}case\"script\":if(s=l.async&&typeof l.async!=\"function\"&&typeof l.async!=\"symbol\",!s||l.onLoad||l.onError||!l.src||typeof l.src!=\"string\"){y&&(s?l.onLoad||l.onError?console.error(\"Cannot render a <script> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>.\"):console.error(\"Cannot render a <script> outside the main document without `async={true}` and a non-empty `src` prop. Ensure there is a valid `src` and either make the script async or move it into the root <head> tag or somewhere in the <body>.\"):console.error(\\'Cannot render a sync or defer <script> outside the main document without knowing its order. Try adding async=\"\" or moving it into the root <head> tag.\\'));break}return!0;case\"noscript\":case\"template\":y&&console.error(\"Cannot render <%s> outside the main document. Try moving it into the root <head> tag.\",s)}return!1}function Dae(s){return!(s.type===\"stylesheet\"&&(s.state.loading&uue)===f5)}function ZBe(){}function YBe(s,l,f){if(H7===null)throw Error(\"Internal React Error: suspendedState null when it was expected to exists. Please report this as a React bug.\");var y=H7;if(l.type===\"stylesheet\"&&(typeof f.media!=\"string\"||matchMedia(f.media).matches!==!1)&&(l.state.loading&Rp)===f5){if(l.instance===null){var v=sf(f.href),A=s.querySelector(Ib(v));if(A){s=A._p,s!==null&&typeof s==\"object\"&&typeof s.then==\"function\"&&(y.count++,y=GM.bind(y),s.then(y,y)),l.state.loading|=Rp,l.instance=A,tt(A);return}A=s.ownerDocument||s,f=i_(f),(v=Ip.get(v))&&KE(f,v),A=A.createElement(\"link\"),tt(A);var K=A;K._p=new Promise(function(te,fe){K.onload=te,K.onerror=fe}),Ro(A,\"link\",f),l.instance=A}y.stylesheets===null&&(y.stylesheets=new Map),y.stylesheets.set(l,s),(s=l.state.preload)&&(l.state.loading&uue)===f5&&(y.count++,l=GM.bind(y),s.addEventListener(\"load\",l),s.addEventListener(\"error\",l))}}function QBe(){if(H7===null)throw Error(\"Internal React Error: suspendedState null when it was expected to exists. Please report this as a React bug.\");var s=H7;return s.stylesheets&&s.count===0&&L$(s,s.stylesheets),0<s.count?function(l){var f=setTimeout(function(){if(s.stylesheets&&L$(s,s.stylesheets),s.unsuspend){var y=s.unsuspend;s.unsuspend=null,y()}},6e4);return s.unsuspend=l,function(){s.unsuspend=null,clearTimeout(f)}}:null}function GM(){if(this.count--,this.count===0){if(this.stylesheets)L$(this,this.stylesheets);else if(this.unsuspend){var s=this.unsuspend;this.unsuspend=null,s()}}}function L$(s,l){s.stylesheets=null,s.unsuspend!==null&&(s.count++,zN=new Map,l.forEach(JBe,s),zN=null,GM.call(s))}function JBe(s,l){if(!(l.state.loading&Rp)){var f=zN.get(s);if(f)var y=f.get(cG);else{f=new Map,zN.set(s,f);for(var v=s.querySelectorAll(\"link[data-precedence],style[data-precedence]\"),A=0;A<v.length;A++){var K=v[A];(K.nodeName===\"LINK\"||K.getAttribute(\"media\")!==\"not all\")&&(f.set(K.dataset.precedence,K),y=K)}y&&f.set(cG,y)}v=l.instance,K=v.getAttribute(\"data-precedence\"),A=f.get(K)||y,A===y&&f.set(cG,v),f.set(K,v),this.count++,y=GM.bind(this),v.addEventListener(\"load\",y),v.addEventListener(\"error\",y),A?A.parentNode.insertBefore(v,A.nextSibling):(s=s.nodeType===9?s.head:s,s.insertBefore(v,s.firstChild)),l.state.loading|=Rp}}function XBe(s,l,f,y,v,A,K,te){for(this.tag=1,this.containerInfo=s,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=d5,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Mt(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Mt(0),this.hiddenUpdates=Mt(null),this.identifierPrefix=y,this.onUncaughtError=v,this.onCaughtError=A,this.onRecoverableError=K,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=te,this.incompleteTransitions=new Map,this.passiveEffectDuration=this.effectDuration=-0,this.memoizedUpdaters=new Set,s=this.pendingUpdatersLaneMap=[],l=0;31>l;l++)s.push(new Set);this._debugRootType=f?\"hydrateRoot()\":\"createRoot()\"}function Fae(s,l,f,y,v,A,K,te,fe,me,Ue,Ke){return s=new XBe(s,l,f,K,te,fe,me,Ke),l=gFe,A===!0&&(l|=ru|_0),S0&&(l|=ml),A=g(3,null,null,l),s.current=A,A.stateNode=s,l=Zm(),nl(l),s.pooledCache=l,nl(l),A.memoizedState={element:y,isDehydrated:f,cache:l},Sa(A),s}function Uae(s){return s?(s=yw,s):yw}function B$(s,l,f,y,v,A){if(tu&&typeof tu.onScheduleFiberRoot==\"function\")try{tu.onScheduleFiberRoot(d_,y,f)}catch(K){my||(my=!0,console.error(\"React instrumentation encountered an error: %s\",K))}Vt!==null&&typeof Vt.markRenderScheduled==\"function\"&&Vt.markRenderScheduled(l),v=Uae(v),y.context===null?y.context=v:y.pendingContext=v,yy&&fh!==null&&!mue&&(mue=!0,console.error(`Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.\\n\\nCheck the render method of %s.`,Z(fh)||\"Unknown\")),y=Vd(l),y.payload={element:f},A=A===void 0?null:A,A!==null&&(typeof A!=\"function\"&&console.error(\"Expected the last optional `callback` argument to be a function. Instead received: %s.\",A),y.callback=A),f=oi(s,y,l),f!==null&&(Le(f,s,l),Xf(f,s,l))}function jae(s,l){if(s=s.memoizedState,s!==null&&s.dehydrated!==null){var f=s.retryLane;s.retryLane=f!==0&&f<l?f:l}}function D$(s,l){jae(s,l),(s=s.alternate)&&jae(s,l)}function zae(s){if(s.tag===13){var l=Rs(s,67108864);l!==null&&Le(l,s,67108864),D$(s,67108864)}}function eDe(){return fh}function tDe(){for(var s=new Map,l=1,f=0;31>f;f++){var y=ht(l);s.set(l,y),l*=2}return s}function nDe(s,l,f,y){var v=$e.T;$e.T=null;var A=Io.p;try{Io.p=dh,F$(s,l,f,y)}finally{Io.p=A,$e.T=v}}function rDe(s,l,f,y){var v=$e.T;$e.T=null;var A=Io.p;try{Io.p=k0,F$(s,l,f,y)}finally{Io.p=A,$e.T=v}}function F$(s,l,f,y){if(qN){var v=U$(y);if(v===null)ac(s,l,y,WN,f),qae(s,y);else if(oDe(v,s,l,f,y))y.stopPropagation();else if(qae(s,y),l&4&&-1<GFe.indexOf(s)){for(;v!==null;){var A=le(v);if(A!==null)switch(A.tag){case 3:if(A=A.stateNode,A.current.memoizedState.isDehydrated){var K=Ct(A.pendingLanes);if(K!==0){var te=A;for(te.pendingLanes|=2,te.entangledLanes|=2;K;){var fe=1<<31-nd(K);te.entanglements[1]|=fe,K&=~fe}sa(A),(Oo&(ad|R0))===hh&&(AN=py()+Kle,To(0,!1))}}break;case 13:te=Rs(A,2),te!==null&&Le(te,A,2),bt(),D$(A,2)}if(A=U$(y),A===null&&ac(s,l,y,WN,f),A===v)break;v=A}v!==null&&y.stopPropagation()}else ac(s,l,y,null,f)}}function U$(s){return s=Qh(s),j$(s)}function j$(s){if(WN=null,s=Ri(s),s!==null){var l=R(s);if(l===null)s=null;else{var f=l.tag;if(f===13){if(s=L(l),s!==null)return s;s=null}else if(f===3){if(l.stateNode.current.memoizedState.isDehydrated)return l.tag===3?l.stateNode.containerInfo:null;s=null}else l!==s&&(s=null)}}return WN=s,null}function Hae(s){switch(s){case\"beforetoggle\":case\"cancel\":case\"click\":case\"close\":case\"contextmenu\":case\"copy\":case\"cut\":case\"auxclick\":case\"dblclick\":case\"dragend\":case\"dragstart\":case\"drop\":case\"focusin\":case\"focusout\":case\"input\":case\"invalid\":case\"keydown\":case\"keypress\":case\"keyup\":case\"mousedown\":case\"mouseup\":case\"paste\":case\"pause\":case\"play\":case\"pointercancel\":case\"pointerdown\":case\"pointerup\":case\"ratechange\":case\"reset\":case\"resize\":case\"seeked\":case\"submit\":case\"toggle\":case\"touchcancel\":case\"touchend\":case\"touchstart\":case\"volumechange\":case\"change\":case\"selectionchange\":case\"textInput\":case\"compositionstart\":case\"compositionend\":case\"compositionupdate\":case\"beforeblur\":case\"afterblur\":case\"beforeinput\":case\"blur\":case\"fullscreenchange\":case\"focus\":case\"hashchange\":case\"popstate\":case\"select\":case\"selectstart\":return dh;case\"drag\":case\"dragenter\":case\"dragexit\":case\"dragleave\":case\"dragover\":case\"mousemove\":case\"mouseout\":case\"mouseover\":case\"pointermove\":case\"pointerout\":case\"pointerover\":case\"scroll\":case\"touchmove\":case\"wheel\":case\"mouseenter\":case\"mouseleave\":case\"pointerenter\":case\"pointerleave\":return k0;case\"message\":switch(mDe()){case Q$:return dh;case J$:return k0;case u_:case gDe:return gy;case X$:return rN;default:return gy}default:return gy}}function qae(s,l){switch(s){case\"focusin\":case\"focusout\":Aw=null;break;case\"dragenter\":case\"dragleave\":Tw=null;break;case\"mouseover\":case\"mouseout\":Rw=null;break;case\"pointerover\":case\"pointerout\":W7.delete(l.pointerId);break;case\"gotpointercapture\":case\"lostpointercapture\":V7.delete(l.pointerId)}}function n7(s,l,f,y,v,A){return s===null||s.nativeEvent!==A?(s={blockedOn:l,domEventName:f,eventSystemFlags:y,nativeEvent:A,targetContainers:[v]},l!==null&&(l=le(l),l!==null&&zae(l)),s):(s.eventSystemFlags|=y,l=s.targetContainers,v!==null&&l.indexOf(v)===-1&&l.push(v),s)}function oDe(s,l,f,y,v){switch(l){case\"focusin\":return Aw=n7(Aw,s,l,f,y,v),!0;case\"dragenter\":return Tw=n7(Tw,s,l,f,y,v),!0;case\"mouseover\":return Rw=n7(Rw,s,l,f,y,v),!0;case\"pointerover\":var A=v.pointerId;return W7.set(A,n7(W7.get(A)||null,s,l,f,y,v)),!0;case\"gotpointercapture\":return A=v.pointerId,V7.set(A,n7(V7.get(A)||null,s,l,f,y,v)),!0}return!1}function Wae(s){var l=Ri(s.target);if(l!==null){var f=R(l);if(f!==null){if(l=f.tag,l===13){if(l=L(f),l!==null){s.blockedOn=l,er(s.priority,function(){if(f.tag===13){var y=Ee(f);y=br(y);var v=Rs(f,y);v!==null&&Le(v,f,y),D$(f,y)}});return}}else if(l===3&&f.stateNode.current.memoizedState.isDehydrated){s.blockedOn=f.tag===3?f.stateNode.containerInfo:null;return}}}s.blockedOn=null}function ZM(s){if(s.blockedOn!==null)return!1;for(var l=s.targetContainers;0<l.length;){var f=U$(s.nativeEvent);if(f===null){f=s.nativeEvent;var y=new f.constructor(f.type,f),v=y;c7!==null&&console.error(\"Expected currently replaying event to be null. This error is likely caused by a bug in React. Please file an issue.\"),c7=v,f.target.dispatchEvent(y),c7===null&&console.error(\"Expected currently replaying event to not be null. This error is likely caused by a bug in React. Please file an issue.\"),c7=null}else return l=le(f),l!==null&&zae(l),s.blockedOn=f,!1;l.shift()}return!0}function Vae(s,l,f){ZM(s)&&f.delete(l)}function iDe(){lG=!1,Aw!==null&&ZM(Aw)&&(Aw=null),Tw!==null&&ZM(Tw)&&(Tw=null),Rw!==null&&ZM(Rw)&&(Rw=null),W7.forEach(Vae),V7.forEach(Vae)}function YM(s,l){s.blockedOn===l&&(s.blockedOn=null,lG||(lG=!0,Ma.unstable_scheduleCallback(Ma.unstable_NormalPriority,iDe)))}function $ae(s){VN!==s&&(VN=s,Ma.unstable_scheduleCallback(Ma.unstable_NormalPriority,function(){VN===s&&(VN=null);for(var l=0;l<s.length;l+=3){var f=s[l],y=s[l+1],v=s[l+2];if(typeof y!=\"function\"){if(j$(y||f)===null)continue;break}var A=le(f);A!==null&&(s.splice(l,3),l-=3,f={pending:!0,data:v,method:f.method,action:y},Object.freeze(f),Yg(A,f,y,v))}}))}function r7(s){function l(fe){return YM(fe,s)}Aw!==null&&YM(Aw,s),Tw!==null&&YM(Tw,s),Rw!==null&&YM(Rw,s),W7.forEach(l),V7.forEach(l);for(var f=0;f<Iw.length;f++){var y=Iw[f];y.blockedOn===s&&(y.blockedOn=null)}for(;0<Iw.length&&(f=Iw[0],f.blockedOn===null);)Wae(f),f.blockedOn===null&&Iw.shift();if(f=(s.ownerDocument||s).$$reactFormReplay,f!=null)for(y=0;y<f.length;y+=3){var v=f[y],A=f[y+1],K=v[cf]||null;if(typeof A==\"function\")K||$ae(f);else if(K){var te=null;if(A&&A.hasAttribute(\"formAction\")){if(v=A,K=A[cf]||null)te=K.formAction;else if(j$(v)!==null)continue}else te=K.action;typeof te==\"function\"?f[y+1]=te:(f.splice(y,3),y-=3),$ae(f)}}}function z$(s){this._internalRoot=s}function QM(s){this._internalRoot=s}function Kae(s){s[mw]&&(s._reactRootContainer?console.error(\"You are calling ReactDOMClient.createRoot() on a container that was previously passed to ReactDOM.render(). This is not supported.\"):console.error(\"You are calling ReactDOMClient.createRoot() on a container that has already been passed to createRoot() before. Instead, call root.render() on the existing root instead if you want to update it.\"))}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var Ma=Jue(),H$=et(),sDe=I0(),pr=Object.assign,aDe=Symbol.for(\"react.element\"),dw=Symbol.for(\"react.transitional.element\"),c_=Symbol.for(\"react.portal\"),l_=Symbol.for(\"react.fragment\"),JM=Symbol.for(\"react.strict_mode\"),q$=Symbol.for(\"react.profiler\"),cDe=Symbol.for(\"react.provider\"),W$=Symbol.for(\"react.consumer\"),hy=Symbol.for(\"react.context\"),o7=Symbol.for(\"react.forward_ref\"),V$=Symbol.for(\"react.suspense\"),$$=Symbol.for(\"react.suspense_list\"),XM=Symbol.for(\"react.memo\"),uh=Symbol.for(\"react.lazy\");Symbol.for(\"react.scope\");var K$=Symbol.for(\"react.activity\");Symbol.for(\"react.legacy_hidden\"),Symbol.for(\"react.tracing_marker\");var lDe=Symbol.for(\"react.memo_cache_sentinel\");Symbol.for(\"react.view_transition\");var Gae=Symbol.iterator,uDe=Symbol.for(\"react.client.reference\"),pl=Array.isArray,$e=H$.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Io=sDe.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,dDe=Object.freeze({pending:!1,data:null,method:null,action:null}),G$=[],Z$=[],Pb=-1,fw=ae(null),i7=ae(null),hw=ae(null),eN=ae(null),Mb=Object.prototype.hasOwnProperty,Y$=Ma.unstable_scheduleCallback,fDe=Ma.unstable_cancelCallback,hDe=Ma.unstable_shouldYield,pDe=Ma.unstable_requestPaint,py=Ma.unstable_now,mDe=Ma.unstable_getCurrentPriorityLevel,Q$=Ma.unstable_ImmediatePriority,J$=Ma.unstable_UserBlockingPriority,u_=Ma.unstable_NormalPriority,gDe=Ma.unstable_LowPriority,X$=Ma.unstable_IdlePriority,yDe=Ma.log,bDe=Ma.unstable_setDisableYieldValue,d_=null,tu=null,Vt=null,my=!1,S0=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\",nd=Math.clz32?Math.clz32:Ge,vDe=Math.log,wDe=Math.LN2,tN=256,nN=4194304,dh=2,k0=8,gy=32,rN=268435456,pw=Math.random().toString(36).slice(2),nu=\"__reactFiber$\"+pw,cf=\"__reactProps$\"+pw,mw=\"__reactContainer$\"+pw,eK=\"__reactEvents$\"+pw,xDe=\"__reactListeners$\"+pw,EDe=\"__reactHandles$\"+pw,Zae=\"__reactResources$\"+pw,s7=\"__reactMarker$\"+pw,Yae=new Set,GE={},tK={},SDe={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0},kDe=RegExp(\"^[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),Qae={},Jae={},a7=0,Xae,ece,tce,nce,rce,oce,ice;jr.__reactDisabledLog=!0;var nK,sce,rK=!1,oK=new(typeof WeakMap==\"function\"?WeakMap:Map),fh=null,yy=!1,_De=/[\\\\n\"\\\\\\\\]/g,ace=!1,cce=!1,lce=!1,uce=!1,dce=!1,fce=!1,hce=[\"value\",\"defaultValue\"],pce=!1,mce=/[\"\\'&<>\\\\n\\\\t]|^\\\\s|\\\\s$/,CDe=\"address applet area article aside base basefont bgsound blockquote body br button caption center col colgroup dd details dir div dl dt embed fieldset figcaption figure footer form frame frameset h1 h2 h3 h4 h5 h6 head header hgroup hr html iframe img input isindex li link listing main marquee menu menuitem meta nav noembed noframes noscript object ol p param plaintext pre script section select source style summary table tbody td template textarea tfoot th thead title tr track ul wbr xmp\".split(\" \"),gce=\"applet caption html table td th marquee object template foreignObject desc title\".split(\" \"),ADe=gce.concat([\"button\"]),TDe=\"dd dt li option optgroup p rp rt\".split(\" \"),yce={current:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null,containerTagInScope:null,implicitRootScope:!1},oN={},iK={animation:\"animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationPlayState animationTimingFunction\".split(\" \"),background:\"backgroundAttachment backgroundClip backgroundColor backgroundImage backgroundOrigin backgroundPositionX backgroundPositionY backgroundRepeat backgroundSize\".split(\" \"),backgroundPosition:[\"backgroundPositionX\",\"backgroundPositionY\"],border:\"borderBottomColor borderBottomStyle borderBottomWidth borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeftColor borderLeftStyle borderLeftWidth borderRightColor borderRightStyle borderRightWidth borderTopColor borderTopStyle borderTopWidth\".split(\" \"),borderBlockEnd:[\"borderBlockEndColor\",\"borderBlockEndStyle\",\"borderBlockEndWidth\"],borderBlockStart:[\"borderBlockStartColor\",\"borderBlockStartStyle\",\"borderBlockStartWidth\"],borderBottom:[\"borderBottomColor\",\"borderBottomStyle\",\"borderBottomWidth\"],borderColor:[\"borderBottomColor\",\"borderLeftColor\",\"borderRightColor\",\"borderTopColor\"],borderImage:[\"borderImageOutset\",\"borderImageRepeat\",\"borderImageSlice\",\"borderImageSource\",\"borderImageWidth\"],borderInlineEnd:[\"borderInlineEndColor\",\"borderInlineEndStyle\",\"borderInlineEndWidth\"],borderInlineStart:[\"borderInlineStartColor\",\"borderInlineStartStyle\",\"borderInlineStartWidth\"],borderLeft:[\"borderLeftColor\",\"borderLeftStyle\",\"borderLeftWidth\"],borderRadius:[\"borderBottomLeftRadius\",\"borderBottomRightRadius\",\"borderTopLeftRadius\",\"borderTopRightRadius\"],borderRight:[\"borderRightColor\",\"borderRightStyle\",\"borderRightWidth\"],borderStyle:[\"borderBottomStyle\",\"borderLeftStyle\",\"borderRightStyle\",\"borderTopStyle\"],borderTop:[\"borderTopColor\",\"borderTopStyle\",\"borderTopWidth\"],borderWidth:[\"borderBottomWidth\",\"borderLeftWidth\",\"borderRightWidth\",\"borderTopWidth\"],columnRule:[\"columnRuleColor\",\"columnRuleStyle\",\"columnRuleWidth\"],columns:[\"columnCount\",\"columnWidth\"],flex:[\"flexBasis\",\"flexGrow\",\"flexShrink\"],flexFlow:[\"flexDirection\",\"flexWrap\"],font:\"fontFamily fontFeatureSettings fontKerning fontLanguageOverride fontSize fontSizeAdjust fontStretch fontStyle fontVariant fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition fontWeight lineHeight\".split(\" \"),fontVariant:\"fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition\".split(\" \"),gap:[\"columnGap\",\"rowGap\"],grid:\"gridAutoColumns gridAutoFlow gridAutoRows gridTemplateAreas gridTemplateColumns gridTemplateRows\".split(\" \"),gridArea:[\"gridColumnEnd\",\"gridColumnStart\",\"gridRowEnd\",\"gridRowStart\"],gridColumn:[\"gridColumnEnd\",\"gridColumnStart\"],gridColumnGap:[\"columnGap\"],gridGap:[\"columnGap\",\"rowGap\"],gridRow:[\"gridRowEnd\",\"gridRowStart\"],gridRowGap:[\"rowGap\"],gridTemplate:[\"gridTemplateAreas\",\"gridTemplateColumns\",\"gridTemplateRows\"],listStyle:[\"listStyleImage\",\"listStylePosition\",\"listStyleType\"],margin:[\"marginBottom\",\"marginLeft\",\"marginRight\",\"marginTop\"],marker:[\"markerEnd\",\"markerMid\",\"markerStart\"],mask:\"maskClip maskComposite maskImage maskMode maskOrigin maskPositionX maskPositionY maskRepeat maskSize\".split(\" \"),maskPosition:[\"maskPositionX\",\"maskPositionY\"],outline:[\"outlineColor\",\"outlineStyle\",\"outlineWidth\"],overflow:[\"overflowX\",\"overflowY\"],padding:[\"paddingBottom\",\"paddingLeft\",\"paddingRight\",\"paddingTop\"],placeContent:[\"alignContent\",\"justifyContent\"],placeItems:[\"alignItems\",\"justifyItems\"],placeSelf:[\"alignSelf\",\"justifySelf\"],textDecoration:[\"textDecorationColor\",\"textDecorationLine\",\"textDecorationStyle\"],textEmphasis:[\"textEmphasisColor\",\"textEmphasisStyle\"],transition:[\"transitionDelay\",\"transitionDuration\",\"transitionProperty\",\"transitionTimingFunction\"],wordWrap:[\"overflowWrap\"]},bce=/([A-Z])/g,vce=/^ms-/,RDe=/^(?:webkit|moz|o)[A-Z]/,IDe=/^-ms-/,ODe=/-(.)/g,wce=/;\\\\s*$/,f_={},sK={},xce=!1,Ece=!1,Sce=new Set(\"animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp\".split(\" \")),iN=\"http://www.w3.org/1998/Math/MathML\",h_=\"http://www.w3.org/2000/svg\",PDe=new Map([[\"acceptCharset\",\"accept-charset\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"],[\"crossOrigin\",\"crossorigin\"],[\"accentHeight\",\"accent-height\"],[\"alignmentBaseline\",\"alignment-baseline\"],[\"arabicForm\",\"arabic-form\"],[\"baselineShift\",\"baseline-shift\"],[\"capHeight\",\"cap-height\"],[\"clipPath\",\"clip-path\"],[\"clipRule\",\"clip-rule\"],[\"colorInterpolation\",\"color-interpolation\"],[\"colorInterpolationFilters\",\"color-interpolation-filters\"],[\"colorProfile\",\"color-profile\"],[\"colorRendering\",\"color-rendering\"],[\"dominantBaseline\",\"dominant-baseline\"],[\"enableBackground\",\"enable-background\"],[\"fillOpacity\",\"fill-opacity\"],[\"fillRule\",\"fill-rule\"],[\"floodColor\",\"flood-color\"],[\"floodOpacity\",\"flood-opacity\"],[\"fontFamily\",\"font-family\"],[\"fontSize\",\"font-size\"],[\"fontSizeAdjust\",\"font-size-adjust\"],[\"fontStretch\",\"font-stretch\"],[\"fontStyle\",\"font-style\"],[\"fontVariant\",\"font-variant\"],[\"fontWeight\",\"font-weight\"],[\"glyphName\",\"glyph-name\"],[\"glyphOrientationHorizontal\",\"glyph-orientation-horizontal\"],[\"glyphOrientationVertical\",\"glyph-orientation-vertical\"],[\"horizAdvX\",\"horiz-adv-x\"],[\"horizOriginX\",\"horiz-origin-x\"],[\"imageRendering\",\"image-rendering\"],[\"letterSpacing\",\"letter-spacing\"],[\"lightingColor\",\"lighting-color\"],[\"markerEnd\",\"marker-end\"],[\"markerMid\",\"marker-mid\"],[\"markerStart\",\"marker-start\"],[\"overlinePosition\",\"overline-position\"],[\"overlineThickness\",\"overline-thickness\"],[\"paintOrder\",\"paint-order\"],[\"panose-1\",\"panose-1\"],[\"pointerEvents\",\"pointer-events\"],[\"renderingIntent\",\"rendering-intent\"],[\"shapeRendering\",\"shape-rendering\"],[\"stopColor\",\"stop-color\"],[\"stopOpacity\",\"stop-opacity\"],[\"strikethroughPosition\",\"strikethrough-position\"],[\"strikethroughThickness\",\"strikethrough-thickness\"],[\"strokeDasharray\",\"stroke-dasharray\"],[\"strokeDashoffset\",\"stroke-dashoffset\"],[\"strokeLinecap\",\"stroke-linecap\"],[\"strokeLinejoin\",\"stroke-linejoin\"],[\"strokeMiterlimit\",\"stroke-miterlimit\"],[\"strokeOpacity\",\"stroke-opacity\"],[\"strokeWidth\",\"stroke-width\"],[\"textAnchor\",\"text-anchor\"],[\"textDecoration\",\"text-decoration\"],[\"textRendering\",\"text-rendering\"],[\"transformOrigin\",\"transform-origin\"],[\"underlinePosition\",\"underline-position\"],[\"underlineThickness\",\"underline-thickness\"],[\"unicodeBidi\",\"unicode-bidi\"],[\"unicodeRange\",\"unicode-range\"],[\"unitsPerEm\",\"units-per-em\"],[\"vAlphabetic\",\"v-alphabetic\"],[\"vHanging\",\"v-hanging\"],[\"vIdeographic\",\"v-ideographic\"],[\"vMathematical\",\"v-mathematical\"],[\"vectorEffect\",\"vector-effect\"],[\"vertAdvY\",\"vert-adv-y\"],[\"vertOriginX\",\"vert-origin-x\"],[\"vertOriginY\",\"vert-origin-y\"],[\"wordSpacing\",\"word-spacing\"],[\"writingMode\",\"writing-mode\"],[\"xmlnsXlink\",\"xmlns:xlink\"],[\"xHeight\",\"x-height\"]]),sN={accept:\"accept\",acceptcharset:\"acceptCharset\",\"accept-charset\":\"acceptCharset\",accesskey:\"accessKey\",action:\"action\",allowfullscreen:\"allowFullScreen\",alt:\"alt\",as:\"as\",async:\"async\",autocapitalize:\"autoCapitalize\",autocomplete:\"autoComplete\",autocorrect:\"autoCorrect\",autofocus:\"autoFocus\",autoplay:\"autoPlay\",autosave:\"autoSave\",capture:\"capture\",cellpadding:\"cellPadding\",cellspacing:\"cellSpacing\",challenge:\"challenge\",charset:\"charSet\",checked:\"checked\",children:\"children\",cite:\"cite\",class:\"className\",classid:\"classID\",classname:\"className\",cols:\"cols\",colspan:\"colSpan\",content:\"content\",contenteditable:\"contentEditable\",contextmenu:\"contextMenu\",controls:\"controls\",controlslist:\"controlsList\",coords:\"coords\",crossorigin:\"crossOrigin\",dangerouslysetinnerhtml:\"dangerouslySetInnerHTML\",data:\"data\",datetime:\"dateTime\",default:\"default\",defaultchecked:\"defaultChecked\",defaultvalue:\"defaultValue\",defer:\"defer\",dir:\"dir\",disabled:\"disabled\",disablepictureinpicture:\"disablePictureInPicture\",disableremoteplayback:\"disableRemotePlayback\",download:\"download\",draggable:\"draggable\",enctype:\"encType\",enterkeyhint:\"enterKeyHint\",fetchpriority:\"fetchPriority\",for:\"htmlFor\",form:\"form\",formmethod:\"formMethod\",formaction:\"formAction\",formenctype:\"formEncType\",formnovalidate:\"formNoValidate\",formtarget:\"formTarget\",frameborder:\"frameBorder\",headers:\"headers\",height:\"height\",hidden:\"hidden\",high:\"high\",href:\"href\",hreflang:\"hrefLang\",htmlfor:\"htmlFor\",httpequiv:\"httpEquiv\",\"http-equiv\":\"httpEquiv\",icon:\"icon\",id:\"id\",imagesizes:\"imageSizes\",imagesrcset:\"imageSrcSet\",inert:\"inert\",innerhtml:\"innerHTML\",inputmode:\"inputMode\",integrity:\"integrity\",is:\"is\",itemid:\"itemID\",itemprop:\"itemProp\",itemref:\"itemRef\",itemscope:\"itemScope\",itemtype:\"itemType\",keyparams:\"keyParams\",keytype:\"keyType\",kind:\"kind\",label:\"label\",lang:\"lang\",list:\"list\",loop:\"loop\",low:\"low\",manifest:\"manifest\",marginwidth:\"marginWidth\",marginheight:\"marginHeight\",max:\"max\",maxlength:\"maxLength\",media:\"media\",mediagroup:\"mediaGroup\",method:\"method\",min:\"min\",minlength:\"minLength\",multiple:\"multiple\",muted:\"muted\",name:\"name\",nomodule:\"noModule\",nonce:\"nonce\",novalidate:\"noValidate\",open:\"open\",optimum:\"optimum\",pattern:\"pattern\",placeholder:\"placeholder\",playsinline:\"playsInline\",poster:\"poster\",preload:\"preload\",profile:\"profile\",radiogroup:\"radioGroup\",readonly:\"readOnly\",referrerpolicy:\"referrerPolicy\",rel:\"rel\",required:\"required\",reversed:\"reversed\",role:\"role\",rows:\"rows\",rowspan:\"rowSpan\",sandbox:\"sandbox\",scope:\"scope\",scoped:\"scoped\",scrolling:\"scrolling\",seamless:\"seamless\",selected:\"selected\",shape:\"shape\",size:\"size\",sizes:\"sizes\",span:\"span\",spellcheck:\"spellCheck\",src:\"src\",srcdoc:\"srcDoc\",srclang:\"srcLang\",srcset:\"srcSet\",start:\"start\",step:\"step\",style:\"style\",summary:\"summary\",tabindex:\"tabIndex\",target:\"target\",title:\"title\",type:\"type\",usemap:\"useMap\",value:\"value\",width:\"width\",wmode:\"wmode\",wrap:\"wrap\",about:\"about\",accentheight:\"accentHeight\",\"accent-height\":\"accentHeight\",accumulate:\"accumulate\",additive:\"additive\",alignmentbaseline:\"alignmentBaseline\",\"alignment-baseline\":\"alignmentBaseline\",allowreorder:\"allowReorder\",alphabetic:\"alphabetic\",amplitude:\"amplitude\",arabicform:\"arabicForm\",\"arabic-form\":\"arabicForm\",ascent:\"ascent\",attributename:\"attributeName\",attributetype:\"attributeType\",autoreverse:\"autoReverse\",azimuth:\"azimuth\",basefrequency:\"baseFrequency\",baselineshift:\"baselineShift\",\"baseline-shift\":\"baselineShift\",baseprofile:\"baseProfile\",bbox:\"bbox\",begin:\"begin\",bias:\"bias\",by:\"by\",calcmode:\"calcMode\",capheight:\"capHeight\",\"cap-height\":\"capHeight\",clip:\"clip\",clippath:\"clipPath\",\"clip-path\":\"clipPath\",clippathunits:\"clipPathUnits\",cliprule:\"clipRule\",\"clip-rule\":\"clipRule\",color:\"color\",colorinterpolation:\"colorInterpolation\",\"color-interpolation\":\"colorInterpolation\",colorinterpolationfilters:\"colorInterpolationFilters\",\"color-interpolation-filters\":\"colorInterpolationFilters\",colorprofile:\"colorProfile\",\"color-profile\":\"colorProfile\",colorrendering:\"colorRendering\",\"color-rendering\":\"colorRendering\",contentscripttype:\"contentScriptType\",contentstyletype:\"contentStyleType\",cursor:\"cursor\",cx:\"cx\",cy:\"cy\",d:\"d\",datatype:\"datatype\",decelerate:\"decelerate\",descent:\"descent\",diffuseconstant:\"diffuseConstant\",direction:\"direction\",display:\"display\",divisor:\"divisor\",dominantbaseline:\"dominantBaseline\",\"dominant-baseline\":\"dominantBaseline\",dur:\"dur\",dx:\"dx\",dy:\"dy\",edgemode:\"edgeMode\",elevation:\"elevation\",enablebackground:\"enableBackground\",\"enable-background\":\"enableBackground\",end:\"end\",exponent:\"exponent\",externalresourcesrequired:\"externalResourcesRequired\",fill:\"fill\",fillopacity:\"fillOpacity\",\"fill-opacity\":\"fillOpacity\",fillrule:\"fillRule\",\"fill-rule\":\"fillRule\",filter:\"filter\",filterres:\"filterRes\",filterunits:\"filterUnits\",floodopacity:\"floodOpacity\",\"flood-opacity\":\"floodOpacity\",floodcolor:\"floodColor\",\"flood-color\":\"floodColor\",focusable:\"focusable\",fontfamily:\"fontFamily\",\"font-family\":\"fontFamily\",fontsize:\"fontSize\",\"font-size\":\"fontSize\",fontsizeadjust:\"fontSizeAdjust\",\"font-size-adjust\":\"fontSizeAdjust\",fontstretch:\"fontStretch\",\"font-stretch\":\"fontStretch\",fontstyle:\"fontStyle\",\"font-style\":\"fontStyle\",fontvariant:\"fontVariant\",\"font-variant\":\"fontVariant\",fontweight:\"fontWeight\",\"font-weight\":\"fontWeight\",format:\"format\",from:\"from\",fx:\"fx\",fy:\"fy\",g1:\"g1\",g2:\"g2\",glyphname:\"glyphName\",\"glyph-name\":\"glyphName\",glyphorientationhorizontal:\"glyphOrientationHorizontal\",\"glyph-orientation-horizontal\":\"glyphOrientationHorizontal\",glyphorientationvertical:\"glyphOrientationVertical\",\"glyph-orientation-vertical\":\"glyphOrientationVertical\",glyphref:\"glyphRef\",gradienttransform:\"gradientTransform\",gradientunits:\"gradientUnits\",hanging:\"hanging\",horizadvx:\"horizAdvX\",\"horiz-adv-x\":\"horizAdvX\",horizoriginx:\"horizOriginX\",\"horiz-origin-x\":\"horizOriginX\",ideographic:\"ideographic\",imagerendering:\"imageRendering\",\"image-rendering\":\"imageRendering\",in2:\"in2\",in:\"in\",inlist:\"inlist\",intercept:\"intercept\",k1:\"k1\",k2:\"k2\",k3:\"k3\",k4:\"k4\",k:\"k\",kernelmatrix:\"kernelMatrix\",kernelunitlength:\"kernelUnitLength\",kerning:\"kerning\",keypoints:\"keyPoints\",keysplines:\"keySplines\",keytimes:\"keyTimes\",lengthadjust:\"lengthAdjust\",letterspacing:\"letterSpacing\",\"letter-spacing\":\"letterSpacing\",lightingcolor:\"lightingColor\",\"lighting-color\":\"lightingColor\",limitingconeangle:\"limitingConeAngle\",local:\"local\",markerend:\"markerEnd\",\"marker-end\":\"markerEnd\",markerheight:\"markerHeight\",markermid:\"markerMid\",\"marker-mid\":\"markerMid\",markerstart:\"markerStart\",\"marker-start\":\"markerStart\",markerunits:\"markerUnits\",markerwidth:\"markerWidth\",mask:\"mask\",maskcontentunits:\"maskContentUnits\",maskunits:\"maskUnits\",mathematical:\"mathematical\",mode:\"mode\",numoctaves:\"numOctaves\",offset:\"offset\",opacity:\"opacity\",operator:\"operator\",order:\"order\",orient:\"orient\",orientation:\"orientation\",origin:\"origin\",overflow:\"overflow\",overlineposition:\"overlinePosition\",\"overline-position\":\"overlinePosition\",overlinethickness:\"overlineThickness\",\"overline-thickness\":\"overlineThickness\",paintorder:\"paintOrder\",\"paint-order\":\"paintOrder\",panose1:\"panose1\",\"panose-1\":\"panose1\",pathlength:\"pathLength\",patterncontentunits:\"patternContentUnits\",patterntransform:\"patternTransform\",patternunits:\"patternUnits\",pointerevents:\"pointerEvents\",\"pointer-events\":\"pointerEvents\",points:\"points\",pointsatx:\"pointsAtX\",pointsaty:\"pointsAtY\",pointsatz:\"pointsAtZ\",popover:\"popover\",popovertarget:\"popoverTarget\",popovertargetaction:\"popoverTargetAction\",prefix:\"prefix\",preservealpha:\"preserveAlpha\",preserveaspectratio:\"preserveAspectRatio\",primitiveunits:\"primitiveUnits\",property:\"property\",r:\"r\",radius:\"radius\",refx:\"refX\",refy:\"refY\",renderingintent:\"renderingIntent\",\"rendering-intent\":\"renderingIntent\",repeatcount:\"repeatCount\",repeatdur:\"repeatDur\",requiredextensions:\"requiredExtensions\",requiredfeatures:\"requiredFeatures\",resource:\"resource\",restart:\"restart\",result:\"result\",results:\"results\",rotate:\"rotate\",rx:\"rx\",ry:\"ry\",scale:\"scale\",security:\"security\",seed:\"seed\",shaperendering:\"shapeRendering\",\"shape-rendering\":\"shapeRendering\",slope:\"slope\",spacing:\"spacing\",specularconstant:\"specularConstant\",specularexponent:\"specularExponent\",speed:\"speed\",spreadmethod:\"spreadMethod\",startoffset:\"startOffset\",stddeviation:\"stdDeviation\",stemh:\"stemh\",stemv:\"stemv\",stitchtiles:\"stitchTiles\",stopcolor:\"stopColor\",\"stop-color\":\"stopColor\",stopopacity:\"stopOpacity\",\"stop-opacity\":\"stopOpacity\",strikethroughposition:\"strikethroughPosition\",\"strikethrough-position\":\"strikethroughPosition\",strikethroughthickness:\"strikethroughThickness\",\"strikethrough-thickness\":\"strikethroughThickness\",string:\"string\",stroke:\"stroke\",strokedasharray:\"strokeDasharray\",\"stroke-dasharray\":\"strokeDasharray\",strokedashoffset:\"strokeDashoffset\",\"stroke-dashoffset\":\"strokeDashoffset\",strokelinecap:\"strokeLinecap\",\"stroke-linecap\":\"strokeLinecap\",strokelinejoin:\"strokeLinejoin\",\"stroke-linejoin\":\"strokeLinejoin\",strokemiterlimit:\"strokeMiterlimit\",\"stroke-miterlimit\":\"strokeMiterlimit\",strokewidth:\"strokeWidth\",\"stroke-width\":\"strokeWidth\",strokeopacity:\"strokeOpacity\",\"stroke-opacity\":\"strokeOpacity\",suppresscontenteditablewarning:\"suppressContentEditableWarning\",suppresshydrationwarning:\"suppressHydrationWarning\",surfacescale:\"surfaceScale\",systemlanguage:\"systemLanguage\",tablevalues:\"tableValues\",targetx:\"targetX\",targety:\"targetY\",textanchor:\"textAnchor\",\"text-anchor\":\"textAnchor\",textdecoration:\"textDecoration\",\"text-decoration\":\"textDecoration\",textlength:\"textLength\",textrendering:\"textRendering\",\"text-rendering\":\"textRendering\",to:\"to\",transform:\"transform\",transformorigin:\"transformOrigin\",\"transform-origin\":\"transformOrigin\",typeof:\"typeof\",u1:\"u1\",u2:\"u2\",underlineposition:\"underlinePosition\",\"underline-position\":\"underlinePosition\",underlinethickness:\"underlineThickness\",\"underline-thickness\":\"underlineThickness\",unicode:\"unicode\",unicodebidi:\"unicodeBidi\",\"unicode-bidi\":\"unicodeBidi\",unicoderange:\"unicodeRange\",\"unicode-range\":\"unicodeRange\",unitsperem:\"unitsPerEm\",\"units-per-em\":\"unitsPerEm\",unselectable:\"unselectable\",valphabetic:\"vAlphabetic\",\"v-alphabetic\":\"vAlphabetic\",values:\"values\",vectoreffect:\"vectorEffect\",\"vector-effect\":\"vectorEffect\",version:\"version\",vertadvy:\"vertAdvY\",\"vert-adv-y\":\"vertAdvY\",vertoriginx:\"vertOriginX\",\"vert-origin-x\":\"vertOriginX\",vertoriginy:\"vertOriginY\",\"vert-origin-y\":\"vertOriginY\",vhanging:\"vHanging\",\"v-hanging\":\"vHanging\",videographic:\"vIdeographic\",\"v-ideographic\":\"vIdeographic\",viewbox:\"viewBox\",viewtarget:\"viewTarget\",visibility:\"visibility\",vmathematical:\"vMathematical\",\"v-mathematical\":\"vMathematical\",vocab:\"vocab\",widths:\"widths\",wordspacing:\"wordSpacing\",\"word-spacing\":\"wordSpacing\",writingmode:\"writingMode\",\"writing-mode\":\"writingMode\",x1:\"x1\",x2:\"x2\",x:\"x\",xchannelselector:\"xChannelSelector\",xheight:\"xHeight\",\"x-height\":\"xHeight\",xlinkactuate:\"xlinkActuate\",\"xlink:actuate\":\"xlinkActuate\",xlinkarcrole:\"xlinkArcrole\",\"xlink:arcrole\":\"xlinkArcrole\",xlinkhref:\"xlinkHref\",\"xlink:href\":\"xlinkHref\",xlinkrole:\"xlinkRole\",\"xlink:role\":\"xlinkRole\",xlinkshow:\"xlinkShow\",\"xlink:show\":\"xlinkShow\",xlinktitle:\"xlinkTitle\",\"xlink:title\":\"xlinkTitle\",xlinktype:\"xlinkType\",\"xlink:type\":\"xlinkType\",xmlbase:\"xmlBase\",\"xml:base\":\"xmlBase\",xmllang:\"xmlLang\",\"xml:lang\":\"xmlLang\",xmlns:\"xmlns\",\"xml:space\":\"xmlSpace\",xmlnsxlink:\"xmlnsXlink\",\"xmlns:xlink\":\"xmlnsXlink\",xmlspace:\"xmlSpace\",y1:\"y1\",y2:\"y2\",y:\"y\",ychannelselector:\"yChannelSelector\",z:\"z\",zoomandpan:\"zoomAndPan\"},kce={\"aria-current\":0,\"aria-description\":0,\"aria-details\":0,\"aria-disabled\":0,\"aria-hidden\":0,\"aria-invalid\":0,\"aria-keyshortcuts\":0,\"aria-label\":0,\"aria-roledescription\":0,\"aria-autocomplete\":0,\"aria-checked\":0,\"aria-expanded\":0,\"aria-haspopup\":0,\"aria-level\":0,\"aria-modal\":0,\"aria-multiline\":0,\"aria-multiselectable\":0,\"aria-orientation\":0,\"aria-placeholder\":0,\"aria-pressed\":0,\"aria-readonly\":0,\"aria-required\":0,\"aria-selected\":0,\"aria-sort\":0,\"aria-valuemax\":0,\"aria-valuemin\":0,\"aria-valuenow\":0,\"aria-valuetext\":0,\"aria-atomic\":0,\"aria-busy\":0,\"aria-live\":0,\"aria-relevant\":0,\"aria-dropeffect\":0,\"aria-grabbed\":0,\"aria-activedescendant\":0,\"aria-colcount\":0,\"aria-colindex\":0,\"aria-colspan\":0,\"aria-controls\":0,\"aria-describedby\":0,\"aria-errormessage\":0,\"aria-flowto\":0,\"aria-labelledby\":0,\"aria-owns\":0,\"aria-posinset\":0,\"aria-rowcount\":0,\"aria-rowindex\":0,\"aria-rowspan\":0,\"aria-setsize\":0},p_={},MDe=RegExp(\"^(aria)-[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),NDe=RegExp(\"^(aria)[A-Z][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),_ce=!1,rd={},Cce=/^on./,LDe=/^on[^A-Z]/,BDe=RegExp(\"^(aria)-[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),DDe=RegExp(\"^(aria)[A-Z][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),FDe=/^[\\\\u0000-\\\\u001F ]*j[\\\\r\\\\n\\\\t]*a[\\\\r\\\\n\\\\t]*v[\\\\r\\\\n\\\\t]*a[\\\\r\\\\n\\\\t]*s[\\\\r\\\\n\\\\t]*c[\\\\r\\\\n\\\\t]*r[\\\\r\\\\n\\\\t]*i[\\\\r\\\\n\\\\t]*p[\\\\r\\\\n\\\\t]*t[\\\\r\\\\n\\\\t]*:/i,c7=null,m_=null,g_=null,aK=!1,by=!(typeof window>\"u\"||typeof window.document>\"u\"||typeof window.document.createElement>\"u\"),cK=!1;if(by)try{var l7={};Object.defineProperty(l7,\"passive\",{get:function(){cK=!0}}),window.addEventListener(\"test\",l7,l7),window.removeEventListener(\"test\",l7,l7)}catch{cK=!1}var gw=null,lK=null,aN=null,ZE={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(s){return s.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},cN=va(ZE),u7=pr({},ZE,{view:0,detail:0}),UDe=va(u7),uK,dK,d7,lN=pr({},u7,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Jh,button:0,buttons:0,relatedTarget:function(s){return s.relatedTarget===void 0?s.fromElement===s.srcElement?s.toElement:s.fromElement:s.relatedTarget},movementX:function(s){return\"movementX\"in s?s.movementX:(s!==d7&&(d7&&s.type===\"mousemove\"?(uK=s.screenX-d7.screenX,dK=s.screenY-d7.screenY):dK=uK=0,d7=s),uK)},movementY:function(s){return\"movementY\"in s?s.movementY:dK}}),Ace=va(lN),jDe=pr({},lN,{dataTransfer:0}),zDe=va(jDe),HDe=pr({},u7,{relatedTarget:0}),fK=va(HDe),qDe=pr({},ZE,{animationName:0,elapsedTime:0,pseudoElement:0}),WDe=va(qDe),VDe=pr({},ZE,{clipboardData:function(s){return\"clipboardData\"in s?s.clipboardData:window.clipboardData}}),$De=va(VDe),KDe=pr({},ZE,{data:0}),Tce=va(KDe),GDe=Tce,ZDe={Esc:\"Escape\",Spacebar:\" \",Left:\"ArrowLeft\",Up:\"ArrowUp\",Right:\"ArrowRight\",Down:\"ArrowDown\",Del:\"Delete\",Win:\"OS\",Menu:\"ContextMenu\",Apps:\"ContextMenu\",Scroll:\"ScrollLock\",MozPrintableKey:\"Unidentified\"},YDe={8:\"Backspace\",9:\"Tab\",12:\"Clear\",13:\"Enter\",16:\"Shift\",17:\"Control\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Escape\",32:\" \",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",224:\"Meta\"},QDe={Alt:\"altKey\",Control:\"ctrlKey\",Meta:\"metaKey\",Shift:\"shiftKey\"},JDe=pr({},u7,{key:function(s){if(s.key){var l=ZDe[s.key]||s.key;if(l!==\"Unidentified\")return l}return s.type===\"keypress\"?(s=Kf(s),s===13?\"Enter\":String.fromCharCode(s)):s.type===\"keydown\"||s.type===\"keyup\"?YDe[s.keyCode]||\"Unidentified\":\"\"},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Jh,charCode:function(s){return s.type===\"keypress\"?Kf(s):0},keyCode:function(s){return s.type===\"keydown\"||s.type===\"keyup\"?s.keyCode:0},which:function(s){return s.type===\"keypress\"?Kf(s):s.type===\"keydown\"||s.type===\"keyup\"?s.keyCode:0}}),XDe=va(JDe),eFe=pr({},lN,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Rce=va(eFe),tFe=pr({},u7,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Jh}),nFe=va(tFe),rFe=pr({},ZE,{propertyName:0,elapsedTime:0,pseudoElement:0}),oFe=va(rFe),iFe=pr({},lN,{deltaX:function(s){return\"deltaX\"in s?s.deltaX:\"wheelDeltaX\"in s?-s.wheelDeltaX:0},deltaY:function(s){return\"deltaY\"in s?s.deltaY:\"wheelDeltaY\"in s?-s.wheelDeltaY:\"wheelDelta\"in s?-s.wheelDelta:0},deltaZ:0,deltaMode:0}),sFe=va(iFe),aFe=pr({},ZE,{newState:0,oldState:0}),cFe=va(aFe),lFe=[9,13,27,32],Ice=229,hK=by&&\"CompositionEvent\"in window,f7=null;by&&\"documentMode\"in document&&(f7=document.documentMode);var uFe=by&&\"TextEvent\"in window&&!f7,Oce=by&&(!hK||f7&&8<f7&&11>=f7),Pce=32,Mce=String.fromCharCode(Pce),Nce=!1,y_=!1,dFe={color:!0,date:!0,datetime:!0,\"datetime-local\":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0},h7=null,p7=null,Lce=!1;by&&(Lce=Ng(\"input\")&&(!document.documentMode||9<document.documentMode));var od=typeof Object.is==\"function\"?Object.is:np,fFe=by&&\"documentMode\"in document&&11>=document.documentMode,b_=null,pK=null,m7=null,mK=!1,v_={animationend:Vu(\"Animation\",\"AnimationEnd\"),animationiteration:Vu(\"Animation\",\"AnimationIteration\"),animationstart:Vu(\"Animation\",\"AnimationStart\"),transitionrun:Vu(\"Transition\",\"TransitionRun\"),transitionstart:Vu(\"Transition\",\"TransitionStart\"),transitioncancel:Vu(\"Transition\",\"TransitionCancel\"),transitionend:Vu(\"Transition\",\"TransitionEnd\")},gK={},Bce={};by&&(Bce=document.createElement(\"div\").style,\"AnimationEvent\"in window||(delete v_.animationend.animation,delete v_.animationiteration.animation,delete v_.animationstart.animation),\"TransitionEvent\"in window||delete v_.transitionend.transition);var Dce=$u(\"animationend\"),Fce=$u(\"animationiteration\"),Uce=$u(\"animationstart\"),hFe=$u(\"transitionrun\"),pFe=$u(\"transitionstart\"),mFe=$u(\"transitioncancel\"),jce=$u(\"transitionend\"),zce=new Map,yK=\"abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel\".split(\" \");yK.push(\"scrollEnd\");var bK=new WeakMap,uN=1,Nb=2,wp=[],w_=0,vK=0,yw={};Object.freeze(yw);var xp=null,x_=null,Ni=0,gFe=1,ml=2,ru=8,_0=16,Hce=64,qce=!1;try{var Wce=Object.preventExtensions({})}catch{qce=!0}var E_=[],S_=0,dN=null,fN=0,Ep=[],Sp=0,YE=null,Lb=1,Bb=\"\",id=null,Bs=null,Qr=!1,Db=!1,kp=null,QE=null,vy=!1,wK=Error(\"Hydration Mismatch Exception: This is not a real error, and should not leak into userspace. If you\\'re seeing this, it\\'s likely a bug in React.\"),Vce=0;if(typeof performance==\"object\"&&typeof performance.now==\"function\")var yFe=performance,$ce=function(){return yFe.now()};else{var bFe=Date;$ce=function(){return bFe.now()}}var xK=ae(null),EK=ae(null),Kce={},hN=null,k_=null,__=!1,vFe=typeof AbortController<\"u\"?AbortController:function(){var s=[],l=this.signal={aborted:!1,addEventListener:function(f,y){s.push(y)}};this.abort=function(){l.aborted=!0,s.forEach(function(f){return f()})}},wFe=Ma.unstable_scheduleCallback,xFe=Ma.unstable_NormalPriority,lc={$$typeof:hy,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0,_currentRenderer:null,_currentRenderer2:null},C_=Ma.unstable_now,Gce=-0,pN=-0,lf=-1.1,JE=-0,mN=!1,gN=!1,g7=null,SK=0,XE=0,A_=null,Zce=$e.S;$e.S=function(s,l){typeof l==\"object\"&&l!==null&&typeof l.then==\"function\"&&na(s,l),Zce!==null&&Zce(s,l)};var e5=ae(null),C0={recordUnsafeLifecycleWarnings:function(){},flushPendingUnsafeLifecycleWarnings:function(){},recordLegacyContextWarning:function(){},flushLegacyContextWarning:function(){},discardPendingWarnings:function(){}},y7=[],b7=[],v7=[],w7=[],x7=[],E7=[],t5=new Set;C0.recordUnsafeLifecycleWarnings=function(s,l){t5.has(s.type)||(typeof l.componentWillMount==\"function\"&&l.componentWillMount.__suppressDeprecationWarning!==!0&&y7.push(s),s.mode&ru&&typeof l.UNSAFE_componentWillMount==\"function\"&&b7.push(s),typeof l.componentWillReceiveProps==\"function\"&&l.componentWillReceiveProps.__suppressDeprecationWarning!==!0&&v7.push(s),s.mode&ru&&typeof l.UNSAFE_componentWillReceiveProps==\"function\"&&w7.push(s),typeof l.componentWillUpdate==\"function\"&&l.componentWillUpdate.__suppressDeprecationWarning!==!0&&x7.push(s),s.mode&ru&&typeof l.UNSAFE_componentWillUpdate==\"function\"&&E7.push(s))},C0.flushPendingUnsafeLifecycleWarnings=function(){var s=new Set;0<y7.length&&(y7.forEach(function(te){s.add(Z(te)||\"Component\"),t5.add(te.type)}),y7=[]);var l=new Set;0<b7.length&&(b7.forEach(function(te){l.add(Z(te)||\"Component\"),t5.add(te.type)}),b7=[]);var f=new Set;0<v7.length&&(v7.forEach(function(te){f.add(Z(te)||\"Component\"),t5.add(te.type)}),v7=[]);var y=new Set;0<w7.length&&(w7.forEach(function(te){y.add(Z(te)||\"Component\"),t5.add(te.type)}),w7=[]);var v=new Set;0<x7.length&&(x7.forEach(function(te){v.add(Z(te)||\"Component\"),t5.add(te.type)}),x7=[]);var A=new Set;if(0<E7.length&&(E7.forEach(function(te){A.add(Z(te)||\"Component\"),t5.add(te.type)}),E7=[]),0<l.size){var K=m(l);console.error(`Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\\n\\n* Move code with side effects to componentDidMount, and set initial state in the constructor.\\n\\nPlease update the following components: %s`,K)}0<y.size&&(K=m(y),console.error(`Using UNSAFE_componentWillReceiveProps in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\\n\\n* Move data fetching code or side effects to componentDidUpdate.\\n* If you\\'re updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state\\n\\nPlease update the following components: %s`,K)),0<A.size&&(K=m(A),console.error(`Using UNSAFE_componentWillUpdate in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\\n\\n* Move data fetching code or side effects to componentDidUpdate.\\n\\nPlease update the following components: %s`,K)),0<s.size&&(K=m(s),console.warn(`componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\\n\\n* Move code with side effects to componentDidMount, and set initial state in the constructor.\\n* Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \\\\`npx react-codemod rename-unsafe-lifecycles\\\\` in your project source folder.\\n\\nPlease update the following components: %s`,K)),0<f.size&&(K=m(f),console.warn(`componentWillReceiveProps has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\\n\\n* Move data fetching code or side effects to componentDidUpdate.\\n* If you\\'re updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state\\n* Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \\\\`npx react-codemod rename-unsafe-lifecycles\\\\` in your project source folder.\\n\\nPlease update the following components: %s`,K)),0<v.size&&(K=m(v),console.warn(`componentWillUpdate has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\\n\\n* Move data fetching code or side effects to componentDidUpdate.\\n* Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \\\\`npx react-codemod rename-unsafe-lifecycles\\\\` in your project source folder.\\n\\nPlease update the following components: %s`,K))};var yN=new Map,Yce=new Set;C0.recordLegacyContextWarning=function(s,l){for(var f=null,y=s;y!==null;)y.mode&ru&&(f=y),y=y.return;f===null?console.error(\"Expected to find a StrictMode component in a strict mode tree. This error is likely caused by a bug in React. Please file an issue.\"):!Yce.has(s.type)&&(y=yN.get(f),s.type.contextTypes!=null||s.type.childContextTypes!=null||l!==null&&typeof l.getChildContext==\"function\")&&(y===void 0&&(y=[],yN.set(f,y)),y.push(s))},C0.flushLegacyContextWarning=function(){yN.forEach(function(s){if(s.length!==0){var l=s[0],f=new Set;s.forEach(function(v){f.add(Z(v)||\"Component\"),Yce.add(v.type)});var y=m(f);jt(l,function(){console.error(`Legacy context API has been detected within a strict-mode tree.\\n\\nThe old API will be supported in all 16.x releases, but applications using it should migrate to the new version.\\n\\nPlease update the following components: %s\\n\\nLearn more about this warning here: https://react.dev/link/legacy-context`,y)})}})},C0.discardPendingWarnings=function(){y7=[],b7=[],v7=[],w7=[],x7=[],E7=[],yN=new Map};var S7=Error(\"Suspense Exception: This is not a real error! It\\'s an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\\\\n\\\\nTo handle async errors, wrap your component in an error boundary, or call the promise\\'s `.catch` method and pass the result to `use`.\"),Qce=Error(\"Suspense Exception: This is not a real error, and should not leak into userspace. If you\\'re seeing this, it\\'s likely a bug in React.\"),bN=Error(\"Suspense Exception: This is not a real error! It\\'s an implementation detail of `useActionState` to interrupt the current render. You must either rethrow it immediately, or move the `useActionState` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\\\\n\\\\nTo handle async errors, wrap your component in an error boundary.\"),kK={then:function(){console.error(\\'Internal React error: A listener was unexpectedly attached to a \"noop\" thenable. This is a bug in React. Please file an issue.\\')}},k7=null,vN=!1,_p=0,Cp=1,sd=2,gl=4,uc=8,Jce=0,Xce=1,ele=2,_K=3,bw=!1,tle=!1,CK=null,AK=!1,T_=ae(null),wN=ae(0),R_,nle=new Set,rle=new Set,TK=new Set,ole=new Set,vw=0,Dn=null,ai=null,Na=null,xN=!1,I_=!1,n5=!1,EN=0,_7=0,Fb=null,EFe=0,SFe=25,We=null,Ap=null,Ub=-1,C7=!1,SN={readContext:Hr,use:zl,useCallback:Yo,useContext:Yo,useEffect:Yo,useImperativeHandle:Yo,useLayoutEffect:Yo,useInsertionEffect:Yo,useMemo:Yo,useReducer:Yo,useRef:Yo,useState:Yo,useDebugValue:Yo,useDeferredValue:Yo,useTransition:Yo,useSyncExternalStore:Yo,useId:Yo,useHostTransitionStatus:Yo,useFormState:Yo,useActionState:Yo,useOptimistic:Yo,useMemoCache:Yo,useCacheRefresh:Yo},RK=null,ile=null,IK=null,sle=null,wy=null,A0=null,kN=null;RK={readContext:function(s){return Hr(s)},use:zl,useCallback:function(s,l){return We=\"useCallback\",In(),up(l),_E(s,l)},useContext:function(s){return We=\"useContext\",In(),Hr(s)},useEffect:function(s,l){return We=\"useEffect\",In(),up(l),V2(s,l)},useImperativeHandle:function(s,l,f){return We=\"useImperativeHandle\",In(),up(f),kE(s,l,f)},useInsertionEffect:function(s,l){We=\"useInsertionEffect\",In(),up(l),i0(4,sd,s,l)},useLayoutEffect:function(s,l){return We=\"useLayoutEffect\",In(),up(l),SE(s,l)},useMemo:function(s,l){We=\"useMemo\",In(),up(l);var f=$e.H;$e.H=wy;try{return Zg(s,l)}finally{$e.H=f}},useReducer:function(s,l,f){We=\"useReducer\",In();var y=$e.H;$e.H=wy;try{return D2(s,l,f)}finally{$e.H=y}},useRef:function(s){return We=\"useRef\",In(),EE(s)},useState:function(s){We=\"useState\",In();var l=$e.H;$e.H=wy;try{return yE(s)}finally{$e.H=l}},useDebugValue:function(){We=\"useDebugValue\",In()},useDeferredValue:function(s,l){return We=\"useDeferredValue\",In(),CE(s,l)},useTransition:function(){return We=\"useTransition\",In(),TE()},useSyncExternalStore:function(s,l,f){return We=\"useSyncExternalStore\",In(),U2(s,l,f)},useId:function(){return We=\"useId\",In(),IE()},useFormState:function(s,l){return We=\"useFormState\",In(),Vg(),Kg(s,l)},useActionState:function(s,l){return We=\"useActionState\",In(),Kg(s,l)},useOptimistic:function(s){return We=\"useOptimistic\",In(),bE(s)},useHostTransitionStatus:s0,useMemoCache:dp,useCacheRefresh:function(){return We=\"useCacheRefresh\",In(),Y2()}},ile={readContext:function(s){return Hr(s)},use:zl,useCallback:function(s,l){return We=\"useCallback\",gt(),_E(s,l)},useContext:function(s){return We=\"useContext\",gt(),Hr(s)},useEffect:function(s,l){return We=\"useEffect\",gt(),V2(s,l)},useImperativeHandle:function(s,l,f){return We=\"useImperativeHandle\",gt(),kE(s,l,f)},useInsertionEffect:function(s,l){We=\"useInsertionEffect\",gt(),i0(4,sd,s,l)},useLayoutEffect:function(s,l){return We=\"useLayoutEffect\",gt(),SE(s,l)},useMemo:function(s,l){We=\"useMemo\",gt();var f=$e.H;$e.H=wy;try{return Zg(s,l)}finally{$e.H=f}},useReducer:function(s,l,f){We=\"useReducer\",gt();var y=$e.H;$e.H=wy;try{return D2(s,l,f)}finally{$e.H=y}},useRef:function(s){return We=\"useRef\",gt(),EE(s)},useState:function(s){We=\"useState\",gt();var l=$e.H;$e.H=wy;try{return yE(s)}finally{$e.H=l}},useDebugValue:function(){We=\"useDebugValue\",gt()},useDeferredValue:function(s,l){return We=\"useDeferredValue\",gt(),CE(s,l)},useTransition:function(){return We=\"useTransition\",gt(),TE()},useSyncExternalStore:function(s,l,f){return We=\"useSyncExternalStore\",gt(),U2(s,l,f)},useId:function(){return We=\"useId\",gt(),IE()},useActionState:function(s,l){return We=\"useActionState\",gt(),Kg(s,l)},useFormState:function(s,l){return We=\"useFormState\",gt(),Vg(),Kg(s,l)},useOptimistic:function(s){return We=\"useOptimistic\",gt(),bE(s)},useHostTransitionStatus:s0,useMemoCache:dp,useCacheRefresh:function(){return We=\"useCacheRefresh\",gt(),Y2()}},IK={readContext:function(s){return Hr(s)},use:zl,useCallback:function(s,l){return We=\"useCallback\",gt(),K2(s,l)},useContext:function(s){return We=\"useContext\",gt(),Hr(s)},useEffect:function(s,l){We=\"useEffect\",gt(),Sc(2048,uc,s,l)},useImperativeHandle:function(s,l,f){return We=\"useImperativeHandle\",gt(),$2(s,l,f)},useInsertionEffect:function(s,l){return We=\"useInsertionEffect\",gt(),Sc(4,sd,s,l)},useLayoutEffect:function(s,l){return We=\"useLayoutEffect\",gt(),Sc(4,gl,s,l)},useMemo:function(s,l){We=\"useMemo\",gt();var f=$e.H;$e.H=A0;try{return G2(s,l)}finally{$e.H=f}},useReducer:function(s,l,f){We=\"useReducer\",gt();var y=$e.H;$e.H=A0;try{return n0(s,l,f)}finally{$e.H=y}},useRef:function(){return We=\"useRef\",gt(),Nr().memoizedState},useState:function(){We=\"useState\",gt();var s=$e.H;$e.H=A0;try{return n0(Hl)}finally{$e.H=s}},useDebugValue:function(){We=\"useDebugValue\",gt()},useDeferredValue:function(s,l){return We=\"useDeferredValue\",gt(),Gk(s,l)},useTransition:function(){return We=\"useTransition\",gt(),Jk()},useSyncExternalStore:function(s,l,f){return We=\"useSyncExternalStore\",gt(),r0(s,l,f)},useId:function(){return We=\"useId\",gt(),Nr().memoizedState},useFormState:function(s){return We=\"useFormState\",gt(),Vg(),o0(s)},useActionState:function(s){return We=\"useActionState\",gt(),o0(s)},useOptimistic:function(s,l){return We=\"useOptimistic\",gt(),z2(s,l)},useHostTransitionStatus:s0,useMemoCache:dp,useCacheRefresh:function(){return We=\"useCacheRefresh\",gt(),Nr().memoizedState}},sle={readContext:function(s){return Hr(s)},use:zl,useCallback:function(s,l){return We=\"useCallback\",gt(),K2(s,l)},useContext:function(s){return We=\"useContext\",gt(),Hr(s)},useEffect:function(s,l){We=\"useEffect\",gt(),Sc(2048,uc,s,l)},useImperativeHandle:function(s,l,f){return We=\"useImperativeHandle\",gt(),$2(s,l,f)},useInsertionEffect:function(s,l){return We=\"useInsertionEffect\",gt(),Sc(4,sd,s,l)},useLayoutEffect:function(s,l){return We=\"useLayoutEffect\",gt(),Sc(4,gl,s,l)},useMemo:function(s,l){We=\"useMemo\",gt();var f=$e.H;$e.H=kN;try{return G2(s,l)}finally{$e.H=f}},useReducer:function(s,l,f){We=\"useReducer\",gt();var y=$e.H;$e.H=kN;try{return $g(s,l,f)}finally{$e.H=y}},useRef:function(){return We=\"useRef\",gt(),Nr().memoizedState},useState:function(){We=\"useState\",gt();var s=$e.H;$e.H=kN;try{return $g(Hl)}finally{$e.H=s}},useDebugValue:function(){We=\"useDebugValue\",gt()},useDeferredValue:function(s,l){return We=\"useDeferredValue\",gt(),Zk(s,l)},useTransition:function(){return We=\"useTransition\",gt(),RE()},useSyncExternalStore:function(s,l,f){return We=\"useSyncExternalStore\",gt(),r0(s,l,f)},useId:function(){return We=\"useId\",gt(),Nr().memoizedState},useFormState:function(s){return We=\"useFormState\",gt(),Vg(),q2(s)},useActionState:function(s){return We=\"useActionState\",gt(),q2(s)},useOptimistic:function(s,l){return We=\"useOptimistic\",gt(),vE(s,l)},useHostTransitionStatus:s0,useMemoCache:dp,useCacheRefresh:function(){return We=\"useCacheRefresh\",gt(),Nr().memoizedState}},wy={readContext:function(s){return d(),Hr(s)},use:function(s){return u(),zl(s)},useCallback:function(s,l){return We=\"useCallback\",u(),In(),_E(s,l)},useContext:function(s){return We=\"useContext\",u(),In(),Hr(s)},useEffect:function(s,l){return We=\"useEffect\",u(),In(),V2(s,l)},useImperativeHandle:function(s,l,f){return We=\"useImperativeHandle\",u(),In(),kE(s,l,f)},useInsertionEffect:function(s,l){We=\"useInsertionEffect\",u(),In(),i0(4,sd,s,l)},useLayoutEffect:function(s,l){return We=\"useLayoutEffect\",u(),In(),SE(s,l)},useMemo:function(s,l){We=\"useMemo\",u(),In();var f=$e.H;$e.H=wy;try{return Zg(s,l)}finally{$e.H=f}},useReducer:function(s,l,f){We=\"useReducer\",u(),In();var y=$e.H;$e.H=wy;try{return D2(s,l,f)}finally{$e.H=y}},useRef:function(s){return We=\"useRef\",u(),In(),EE(s)},useState:function(s){We=\"useState\",u(),In();var l=$e.H;$e.H=wy;try{return yE(s)}finally{$e.H=l}},useDebugValue:function(){We=\"useDebugValue\",u(),In()},useDeferredValue:function(s,l){return We=\"useDeferredValue\",u(),In(),CE(s,l)},useTransition:function(){return We=\"useTransition\",u(),In(),TE()},useSyncExternalStore:function(s,l,f){return We=\"useSyncExternalStore\",u(),In(),U2(s,l,f)},useId:function(){return We=\"useId\",u(),In(),IE()},useFormState:function(s,l){return We=\"useFormState\",u(),In(),Kg(s,l)},useActionState:function(s,l){return We=\"useActionState\",u(),In(),Kg(s,l)},useOptimistic:function(s){return We=\"useOptimistic\",u(),In(),bE(s)},useMemoCache:function(s){return u(),dp(s)},useHostTransitionStatus:s0,useCacheRefresh:function(){return We=\"useCacheRefresh\",In(),Y2()}},A0={readContext:function(s){return d(),Hr(s)},use:function(s){return u(),zl(s)},useCallback:function(s,l){return We=\"useCallback\",u(),gt(),K2(s,l)},useContext:function(s){return We=\"useContext\",u(),gt(),Hr(s)},useEffect:function(s,l){We=\"useEffect\",u(),gt(),Sc(2048,uc,s,l)},useImperativeHandle:function(s,l,f){return We=\"useImperativeHandle\",u(),gt(),$2(s,l,f)},useInsertionEffect:function(s,l){return We=\"useInsertionEffect\",u(),gt(),Sc(4,sd,s,l)},useLayoutEffect:function(s,l){return We=\"useLayoutEffect\",u(),gt(),Sc(4,gl,s,l)},useMemo:function(s,l){We=\"useMemo\",u(),gt();var f=$e.H;$e.H=A0;try{return G2(s,l)}finally{$e.H=f}},useReducer:function(s,l,f){We=\"useReducer\",u(),gt();var y=$e.H;$e.H=A0;try{return n0(s,l,f)}finally{$e.H=y}},useRef:function(){return We=\"useRef\",u(),gt(),Nr().memoizedState},useState:function(){We=\"useState\",u(),gt();var s=$e.H;$e.H=A0;try{return n0(Hl)}finally{$e.H=s}},useDebugValue:function(){We=\"useDebugValue\",u(),gt()},useDeferredValue:function(s,l){return We=\"useDeferredValue\",u(),gt(),Gk(s,l)},useTransition:function(){return We=\"useTransition\",u(),gt(),Jk()},useSyncExternalStore:function(s,l,f){return We=\"useSyncExternalStore\",u(),gt(),r0(s,l,f)},useId:function(){return We=\"useId\",u(),gt(),Nr().memoizedState},useFormState:function(s){return We=\"useFormState\",u(),gt(),o0(s)},useActionState:function(s){return We=\"useActionState\",u(),gt(),o0(s)},useOptimistic:function(s,l){return We=\"useOptimistic\",u(),gt(),z2(s,l)},useMemoCache:function(s){return u(),dp(s)},useHostTransitionStatus:s0,useCacheRefresh:function(){return We=\"useCacheRefresh\",gt(),Nr().memoizedState}},kN={readContext:function(s){return d(),Hr(s)},use:function(s){return u(),zl(s)},useCallback:function(s,l){return We=\"useCallback\",u(),gt(),K2(s,l)},useContext:function(s){return We=\"useContext\",u(),gt(),Hr(s)},useEffect:function(s,l){We=\"useEffect\",u(),gt(),Sc(2048,uc,s,l)},useImperativeHandle:function(s,l,f){return We=\"useImperativeHandle\",u(),gt(),$2(s,l,f)},useInsertionEffect:function(s,l){return We=\"useInsertionEffect\",u(),gt(),Sc(4,sd,s,l)},useLayoutEffect:function(s,l){return We=\"useLayoutEffect\",u(),gt(),Sc(4,gl,s,l)},useMemo:function(s,l){We=\"useMemo\",u(),gt();var f=$e.H;$e.H=A0;try{return G2(s,l)}finally{$e.H=f}},useReducer:function(s,l,f){We=\"useReducer\",u(),gt();var y=$e.H;$e.H=A0;try{return $g(s,l,f)}finally{$e.H=y}},useRef:function(){return We=\"useRef\",u(),gt(),Nr().memoizedState},useState:function(){We=\"useState\",u(),gt();var s=$e.H;$e.H=A0;try{return $g(Hl)}finally{$e.H=s}},useDebugValue:function(){We=\"useDebugValue\",u(),gt()},useDeferredValue:function(s,l){return We=\"useDeferredValue\",u(),gt(),Zk(s,l)},useTransition:function(){return We=\"useTransition\",u(),gt(),RE()},useSyncExternalStore:function(s,l,f){return We=\"useSyncExternalStore\",u(),gt(),r0(s,l,f)},useId:function(){return We=\"useId\",u(),gt(),Nr().memoizedState},useFormState:function(s){return We=\"useFormState\",u(),gt(),q2(s)},useActionState:function(s){return We=\"useActionState\",u(),gt(),q2(s)},useOptimistic:function(s,l){return We=\"useOptimistic\",u(),gt(),vE(s,l)},useMemoCache:function(s){return u(),dp(s)},useHostTransitionStatus:s0,useCacheRefresh:function(){return We=\"useCacheRefresh\",gt(),Nr().memoizedState}};var ale={\"react-stack-bottom-frame\":function(s,l,f){var y=yy;yy=!0;try{return s(l,f)}finally{yy=y}}},OK=ale[\"react-stack-bottom-frame\"].bind(ale),cle={\"react-stack-bottom-frame\":function(s){var l=yy;yy=!0;try{return s.render()}finally{yy=l}}},lle=cle[\"react-stack-bottom-frame\"].bind(cle),ule={\"react-stack-bottom-frame\":function(s,l){try{l.componentDidMount()}catch(f){Un(s,s.return,f)}}},PK=ule[\"react-stack-bottom-frame\"].bind(ule),dle={\"react-stack-bottom-frame\":function(s,l,f,y,v){try{l.componentDidUpdate(f,y,v)}catch(A){Un(s,s.return,A)}}},fle=dle[\"react-stack-bottom-frame\"].bind(dle),hle={\"react-stack-bottom-frame\":function(s,l){var f=l.stack;s.componentDidCatch(l.value,{componentStack:f!==null?f:\"\"})}},kFe=hle[\"react-stack-bottom-frame\"].bind(hle),ple={\"react-stack-bottom-frame\":function(s,l,f){try{f.componentWillUnmount()}catch(y){Un(s,l,y)}}},mle=ple[\"react-stack-bottom-frame\"].bind(ple),gle={\"react-stack-bottom-frame\":function(s){s.resourceKind!=null&&console.error(\"Expected only SimpleEffects when enableUseEffectCRUDOverload is disabled, got %s\",s.resourceKind);var l=s.create;return s=s.inst,l=l(),s.destroy=l}},_Fe=gle[\"react-stack-bottom-frame\"].bind(gle),yle={\"react-stack-bottom-frame\":function(s,l,f){try{f()}catch(y){Un(s,l,y)}}},CFe=yle[\"react-stack-bottom-frame\"].bind(yle),ble={\"react-stack-bottom-frame\":function(s){var l=s._init;return l(s._payload)}},ww=ble[\"react-stack-bottom-frame\"].bind(ble),O_=null,A7=0,or=null,MK,vle=MK=!1,wle={},xle={},Ele={};c=function(s,l,f){if(f!==null&&typeof f==\"object\"&&f._store&&(!f._store.validated&&f.key==null||f._store.validated===2)){if(typeof f._store!=\"object\")throw Error(\"React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.\");f._store.validated=1;var y=Z(s),v=y||\"null\";if(!wle[v]){wle[v]=!0,f=f._owner,s=s._debugOwner;var A=\"\";s&&typeof s.tag==\"number\"&&(v=Z(s))&&(A=`\\n\\nCheck the render method of \\\\``+v+\"`.\"),A||y&&(A=`\\n\\nCheck the top-level render call using <`+y+\">.\");var K=\"\";f!=null&&s!==f&&(y=null,typeof f.tag==\"number\"?y=Z(f):typeof f.name==\"string\"&&(y=f.name),y&&(K=\" It was passed a child from \"+y+\".\")),jt(l,function(){console.error(\\'Each child in a list should have a unique \"key\" prop.%s%s See https://react.dev/link/warning-keys for more information.\\',A,K)})}}};var P_=ME(!0),Sle=ME(!1),Tp=ae(null),xy=null,M_=1,T7=2,dc=ae(0),kle={},_le=new Set,Cle=new Set,Ale=new Set,Tle=new Set,Rle=new Set,Ile=new Set,Ole=new Set,Ple=new Set,Mle=new Set,Nle=new Set;Object.freeze(kle);var NK={enqueueSetState:function(s,l,f){s=s._reactInternals;var y=Ee(s),v=Vd(y);v.payload=l,f!=null&&(ew(f),v.callback=f),l=oi(s,v,y),l!==null&&(Le(l,s,y),Xf(l,s,y)),wt(s,y)},enqueueReplaceState:function(s,l,f){s=s._reactInternals;var y=Ee(s),v=Vd(y);v.tag=Xce,v.payload=l,f!=null&&(ew(f),v.callback=f),l=oi(s,v,y),l!==null&&(Le(l,s,y),Xf(l,s,y)),wt(s,y)},enqueueForceUpdate:function(s,l){s=s._reactInternals;var f=Ee(s),y=Vd(f);y.tag=ele,l!=null&&(ew(l),y.callback=l),l=oi(s,y,f),l!==null&&(Le(l,s,f),Xf(l,s,f)),Vt!==null&&typeof Vt.markForceUpdateScheduled==\"function\"&&Vt.markForceUpdateScheduled(s,f)}},LK=typeof reportError==\"function\"?reportError:function(s){if(typeof window==\"object\"&&typeof window.ErrorEvent==\"function\"){var l=new window.ErrorEvent(\"error\",{bubbles:!0,cancelable:!0,message:typeof s==\"object\"&&s!==null&&typeof s.message==\"string\"?String(s.message):String(s),error:s});if(!window.dispatchEvent(l))return}else if(typeof process==\"object\"&&typeof process.emit==\"function\"){process.emit(\"uncaughtException\",s);return}console.error(s)},N_=null,BK=null,Lle=Error(\"This is not a real error. It\\'s an implementation detail of React\\'s selective hydration feature. If this leaks into userspace, it\\'s a bug in React. Please file an issue.\"),Ic=!1,Ble={},Dle={},Fle={},Ule={},L_=!1,jle={},DK={},FK={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null},zle=!1,Hle=null;Hle=new Set;var jb=!1,la=!1,UK=!1,qle=typeof WeakSet==\"function\"?WeakSet:Set,Oc=null,B_=null,D_=null,La=null,uf=!1,T0=null,R7=8192,AFe={getCacheForType:function(s){var l=Hr(lc),f=l.data.get(s);return f===void 0&&(f=s(),l.data.set(s,f)),f},getOwner:function(){return fh}};if(typeof Symbol==\"function\"&&Symbol.for){var I7=Symbol.for;I7(\"selector.component\"),I7(\"selector.has_pseudo_class\"),I7(\"selector.role\"),I7(\"selector.test_id\"),I7(\"selector.text\")}var TFe=[],RFe=typeof WeakMap==\"function\"?WeakMap:Map,hh=0,ad=2,R0=4,zb=0,O7=1,F_=2,jK=3,r5=4,_N=6,Wle=5,Oo=hh,wi=null,kr=null,Rr=0,df=0,P7=1,o5=2,M7=3,Vle=4,zK=5,U_=6,N7=7,HK=8,i5=9,Fo=df,ph=null,xw=!1,j_=!1,qK=!1,Ey=0,Ds=zb,Ew=0,Sw=0,WK=0,mh=0,s5=0,L7=null,cd=null,CN=!1,VK=0,$le=300,AN=1/0,Kle=500,B7=null,kw=null,IFe=0,OFe=1,PFe=2,a5=0,Gle=1,Zle=2,Yle=3,MFe=4,$K=5,yl=0,_w=null,z_=null,Cw=0,KK=0,GK=null,Qle=null,NFe=50,D7=0,ZK=null,YK=!1,TN=!1,LFe=50,c5=0,F7=null,H_=!1,RN=null,Jle=!1,Xle=new Set,BFe={},IN=null,q_=null,QK=!1,JK=!1,ON=!1,XK=!1,l5=0,eG={};(function(){for(var s=0;s<yK.length;s++){var l=yK[s],f=l.toLowerCase();l=l[0].toUpperCase()+l.slice(1),Js(f,\"on\"+l)}Js(Dce,\"onAnimationEnd\"),Js(Fce,\"onAnimationIteration\"),Js(Uce,\"onAnimationStart\"),Js(\"dblclick\",\"onDoubleClick\"),Js(\"focusin\",\"onFocus\"),Js(\"focusout\",\"onBlur\"),Js(hFe,\"onTransitionRun\"),Js(pFe,\"onTransitionStart\"),Js(mFe,\"onTransitionCancel\"),Js(jce,\"onTransitionEnd\")})(),hn(\"onMouseEnter\",[\"mouseout\",\"mouseover\"]),hn(\"onMouseLeave\",[\"mouseout\",\"mouseover\"]),hn(\"onPointerEnter\",[\"pointerout\",\"pointerover\"]),hn(\"onPointerLeave\",[\"pointerout\",\"pointerover\"]),It(\"onChange\",\"change click focusin focusout input keydown keyup selectionchange\".split(\" \")),It(\"onSelect\",\"focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange\".split(\" \")),It(\"onBeforeInput\",[\"compositionend\",\"keypress\",\"textInput\",\"paste\"]),It(\"onCompositionEnd\",\"compositionend focusout keydown keypress keyup mousedown\".split(\" \")),It(\"onCompositionStart\",\"compositionstart focusout keydown keypress keyup mousedown\".split(\" \")),It(\"onCompositionUpdate\",\"compositionupdate focusout keydown keypress keyup mousedown\".split(\" \"));var U7=\"abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting\".split(\" \"),tG=new Set(\"beforetoggle cancel close invalid load scroll scrollend toggle\".split(\" \").concat(U7)),PN=\"_reactListening\"+Math.random().toString(36).slice(2),eue=!1,tue=!1,MN=!1,nue=!1,NN=!1,LN=!1,rue=!1,BN={},DFe=/\\\\r\\\\n?/g,FFe=/\\\\u0000|\\\\uFFFD/g,u5=\"http://www.w3.org/1999/xlink\",nG=\"http://www.w3.org/XML/1998/namespace\",UFe=\"javascript:throw new Error(\\'React form unexpectedly submitted.\\')\",jFe=\"suppressHydrationWarning\",DN=\"$\",FN=\"/$\",Hb=\"$?\",j7=\"$!\",zFe=1,HFe=2,qFe=4,rG=\"F!\",oue=\"F\",iue=\"complete\",WFe=\"style\",qb=0,W_=1,UN=2,oG=null,iG=null,sue={dialog:!0,webview:!0},sG=null,aue=typeof setTimeout==\"function\"?setTimeout:void 0,VFe=typeof clearTimeout==\"function\"?clearTimeout:void 0,d5=-1,cue=typeof Promise==\"function\"?Promise:void 0,$Fe=typeof queueMicrotask==\"function\"?queueMicrotask:typeof cue<\"u\"?function(s){return cue.resolve(null).then(s).catch(nf)}:aue,aG=null,f5=0,z7=1,lue=2,uue=3,Rp=4,Ip=new Map,due=new Set,Wb=Io.d;Io.d={f:function(){var s=Wb.f(),l=bt();return s||l},r:function(s){var l=le(s);l!==null&&l.tag===5&&l.type===\"form\"?th(l):Wb.r(s)},D:function(s){Wb.D(s),dy(\"dns-prefetch\",s,null)},C:function(s,l){Wb.C(s,l),dy(\"preconnect\",s,l)},L:function(s,l,f){Wb.L(s,l,f);var y=V_;if(y&&s&&l){var v=\\'link[rel=\"preload\"][as=\"\\'+Zo(l)+\\'\"]\\';l===\"image\"&&f&&f.imageSrcSet?(v+=\\'[imagesrcset=\"\\'+Zo(f.imageSrcSet)+\\'\"]\\',typeof f.imageSizes==\"string\"&&(v+=\\'[imagesizes=\"\\'+Zo(f.imageSizes)+\\'\"]\\')):v+=\\'[href=\"\\'+Zo(s)+\\'\"]\\';var A=v;switch(l){case\"style\":A=sf(s);break;case\"script\":A=fy(s)}Ip.has(A)||(s=pr({rel:\"preload\",href:l===\"image\"&&f&&f.imageSrcSet?void 0:s,as:l},f),Ip.set(A,s),y.querySelector(v)!==null||l===\"style\"&&y.querySelector(Ib(A))||l===\"script\"&&y.querySelector(uw(A))||(l=y.createElement(\"link\"),Ro(l,\"link\",s),tt(l),y.head.appendChild(l)))}},m:function(s,l){Wb.m(s,l);var f=V_;if(f&&s){var y=l&&typeof l.as==\"string\"?l.as:\"script\",v=\\'link[rel=\"modulepreload\"][as=\"\\'+Zo(y)+\\'\"][href=\"\\'+Zo(s)+\\'\"]\\',A=v;switch(y){case\"audioworklet\":case\"paintworklet\":case\"serviceworker\":case\"sharedworker\":case\"worker\":case\"script\":A=fy(s)}if(!Ip.has(A)&&(s=pr({rel:\"modulepreload\",href:s},l),Ip.set(A,s),f.querySelector(v)===null)){switch(y){case\"audioworklet\":case\"paintworklet\":case\"serviceworker\":case\"sharedworker\":case\"worker\":case\"script\":if(f.querySelector(uw(A)))return}y=f.createElement(\"link\"),Ro(y,\"link\",s),tt(y),f.head.appendChild(y)}}},X:function(s,l){Wb.X(s,l);var f=V_;if(f&&s){var y=xt(f).hoistableScripts,v=fy(s),A=y.get(v);A||(A=f.querySelector(uw(v)),A||(s=pr({src:s,async:!0},l),(l=Ip.get(v))&&a_(s,l),A=f.createElement(\"script\"),tt(A),Ro(A,\"link\",s),f.head.appendChild(A)),A={type:\"script\",instance:A,count:1,state:null},y.set(v,A))}},S:function(s,l,f){Wb.S(s,l,f);var y=V_;if(y&&s){var v=xt(y).hoistableStyles,A=sf(s);l=l||\"default\";var K=v.get(A);if(!K){var te={loading:f5,preload:null};if(K=y.querySelector(Ib(A)))te.loading=z7|Rp;else{s=pr({rel:\"stylesheet\",href:s,\"data-precedence\":l},f),(f=Ip.get(A))&&KE(s,f);var fe=K=y.createElement(\"link\");tt(fe),Ro(fe,\"link\",s),fe._p=new Promise(function(me,Ue){fe.onload=me,fe.onerror=Ue}),fe.addEventListener(\"load\",function(){te.loading|=z7}),fe.addEventListener(\"error\",function(){te.loading|=lue}),te.loading|=Rp,$E(K,l,y)}K={type:\"stylesheet\",instance:K,count:1,state:te},v.set(A,K)}}},M:function(s,l){Wb.M(s,l);var f=V_;if(f&&s){var y=xt(f).hoistableScripts,v=fy(s),A=y.get(v);A||(A=f.querySelector(uw(v)),A||(s=pr({src:s,async:!0,type:\"module\"},l),(l=Ip.get(v))&&a_(s,l),A=f.createElement(\"script\"),tt(A),Ro(A,\"link\",s),f.head.appendChild(A)),A={type:\"script\",instance:A,count:1,state:null},y.set(v,A))}}};var V_=typeof document>\"u\"?null:document,jN=null,H7=null,cG=null,zN=null,h5=dDe,q7={$$typeof:hy,Provider:null,Consumer:null,_currentValue:h5,_currentValue2:h5,_threadCount:0},fue=\"%c%s%c \",hue=\"background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px\",pue=\"\",HN=\" \",KFe=Function.prototype.bind,mue=!1,gue=null,yue=null,bue=null,vue=null,wue=null,xue=null,Eue=null,Sue=null,kue=null;gue=function(s,l,f,y){l=t(s,l),l!==null&&(f=e(l.memoizedState,f,0,y),l.memoizedState=f,l.baseState=f,s.memoizedProps=pr({},s.memoizedProps),f=Rs(s,2),f!==null&&Le(f,s,2))},yue=function(s,l,f){l=t(s,l),l!==null&&(f=o(l.memoizedState,f,0),l.memoizedState=f,l.baseState=f,s.memoizedProps=pr({},s.memoizedProps),f=Rs(s,2),f!==null&&Le(f,s,2))},bue=function(s,l,f,y){l=t(s,l),l!==null&&(f=n(l.memoizedState,f,y),l.memoizedState=f,l.baseState=f,s.memoizedProps=pr({},s.memoizedProps),f=Rs(s,2),f!==null&&Le(f,s,2))},vue=function(s,l,f){s.pendingProps=e(s.memoizedProps,l,0,f),s.alternate&&(s.alternate.pendingProps=s.pendingProps),l=Rs(s,2),l!==null&&Le(l,s,2)},wue=function(s,l){s.pendingProps=o(s.memoizedProps,l,0),s.alternate&&(s.alternate.pendingProps=s.pendingProps),l=Rs(s,2),l!==null&&Le(l,s,2)},xue=function(s,l,f){s.pendingProps=n(s.memoizedProps,l,f),s.alternate&&(s.alternate.pendingProps=s.pendingProps),l=Rs(s,2),l!==null&&Le(l,s,2)},Eue=function(s){var l=Rs(s,2);l!==null&&Le(l,s,2)},Sue=function(s){a=s},kue=function(s){i=s};var qN=!0,WN=null,lG=!1,Aw=null,Tw=null,Rw=null,W7=new Map,V7=new Map,Iw=[],GFe=\"mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset\".split(\" \"),VN=null;if(QM.prototype.render=z$.prototype.render=function(s){var l=this._internalRoot;if(l===null)throw Error(\"Cannot update an unmounted root.\");var f=arguments;typeof f[1]==\"function\"?console.error(\"does not support the second callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().\"):T(f[1])?console.error(\"You passed a container to the second argument of root.render(...). You don\\'t need to pass it again since you already passed it to create the root.\"):typeof f[1]<\"u\"&&console.error(\"You passed a second argument to root.render(...) but it only accepts one argument.\"),f=s;var y=l.current,v=Ee(y);B$(y,v,f,l,null,null)},QM.prototype.unmount=z$.prototype.unmount=function(){var s=arguments;if(typeof s[0]==\"function\"&&console.error(\"does not support a callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().\"),s=this._internalRoot,s!==null){this._internalRoot=null;var l=s.containerInfo;(Oo&(ad|R0))!==hh&&console.error(\"Attempted to synchronously unmount a root while React was already rendering. React cannot finish unmounting the root until the current render has completed, which may lead to a race condition.\"),B$(s.current,2,null,s,null,null),bt(),l[mw]=null}},QM.prototype.unstable_scheduleHydration=function(s){if(s){var l=hi();s={blockedOn:null,target:s,priority:l};for(var f=0;f<Iw.length&&l!==0&&l<Iw[f].priority;f++);Iw.splice(f,0,s),f===0&&Wae(s)}},function(){var s=H$.version;if(s!==\"19.1.0\")throw Error(`Incompatible React versions: The \"react\" and \"react-dom\" packages must have the exact same version. Instead got:\\n  - react:      `+(s+`\\n  - react-dom:  19.1.0\\nLearn more: https://react.dev/warnings/version-mismatch`))}(),typeof Map==\"function\"&&Map.prototype!=null&&typeof Map.prototype.forEach==\"function\"&&typeof Set==\"function\"&&Set.prototype!=null&&typeof Set.prototype.clear==\"function\"&&typeof Set.prototype.forEach==\"function\"||console.error(\"React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://react.dev/link/react-polyfills\"),Io.findDOMNode=function(s){var l=s._reactInternals;if(l===void 0)throw typeof s.render==\"function\"?Error(\"Unable to find node on an unmounted component.\"):(s=Object.keys(s).join(\",\"),Error(\"Argument appears to not be a ReactComponent. Keys: \"+s));return s=G(l),s=s!==null?W(s):null,s=s===null?null:s.stateNode,s},!function(){var s={bundleType:1,version:\"19.1.0\",rendererPackageName:\"react-dom\",currentDispatcherRef:$e,reconcilerVersion:\"19.1.0\"};return s.overrideHookState=gue,s.overrideHookStateDeletePath=yue,s.overrideHookStateRenamePath=bue,s.overrideProps=vue,s.overridePropsDeletePath=wue,s.overridePropsRenamePath=xue,s.scheduleUpdate=Eue,s.setErrorHandler=Sue,s.setSuspenseHandler=kue,s.scheduleRefresh=E,s.scheduleRoot=b,s.setRefreshHandler=C,s.getCurrentFiber=eDe,s.getLaneLabelMap=tDe,s.injectProfilingHooks=pe,ee(s)}()&&by&&window.top===window.self&&(-1<navigator.userAgent.indexOf(\"Chrome\")&&navigator.userAgent.indexOf(\"Edge\")===-1||-1<navigator.userAgent.indexOf(\"Firefox\"))){var _ue=window.location.protocol;/^(https?|file):$/.test(_ue)&&console.info(\"%cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools\"+(_ue===\"file:\"?`\\nYou might need to use a local HTTP server (instead of file://): https://react.dev/link/react-devtools-faq`:\"\"),\"font-weight:bold\")}YN.createRoot=function(s,l){if(!T(s))throw Error(\"Target container is not a DOM element.\");Kae(s);var f=!1,y=\"\",v=LE,A=BE,K=wb,te=null;return l!=null&&(l.hydrate?console.warn(\"hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead.\"):typeof l==\"object\"&&l!==null&&l.$$typeof===dw&&console.error(`You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage:\\n\\n  let root = createRoot(domContainer);\\n  root.render(<App />);`),l.unstable_strictMode===!0&&(f=!0),l.identifierPrefix!==void 0&&(y=l.identifierPrefix),l.onUncaughtError!==void 0&&(v=l.onUncaughtError),l.onCaughtError!==void 0&&(A=l.onCaughtError),l.onRecoverableError!==void 0&&(K=l.onRecoverableError),l.unstable_transitionCallbacks!==void 0&&(te=l.unstable_transitionCallbacks)),l=Fae(s,1,!1,null,null,f,y,v,A,K,te,null),s[mw]=l.current,Zl(s),new z$(l)},YN.hydrateRoot=function(s,l,f){if(!T(s))throw Error(\"Target container is not a DOM element.\");Kae(s),l===void 0&&console.error(\"Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)\");var y=!1,v=\"\",A=LE,K=BE,te=wb,fe=null,me=null;return f!=null&&(f.unstable_strictMode===!0&&(y=!0),f.identifierPrefix!==void 0&&(v=f.identifierPrefix),f.onUncaughtError!==void 0&&(A=f.onUncaughtError),f.onCaughtError!==void 0&&(K=f.onCaughtError),f.onRecoverableError!==void 0&&(te=f.onRecoverableError),f.unstable_transitionCallbacks!==void 0&&(fe=f.unstable_transitionCallbacks),f.formState!==void 0&&(me=f.formState)),l=Fae(s,1,!0,l,f??null,y,v,A,K,te,fe,me),l.context=Uae(null),f=l.current,y=Ee(f),y=br(y),v=Vd(y),v.callback=null,oi(f,v,y),f=y,l.current.lanes=f,qt(l,f),sa(l),s[mw]=l.current,Zl(s),new QM(l)},YN.version=\"19.1.0\",typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var ide=be((Ebt,ode)=>{\"use strict\";p();ode.exports=rde()});function Ba(t){return{formatters:void 0,fees:void 0,serializers:void 0,...t}}var O0=ce(()=>{p()});var xG,sde=ce(()=>{p();xG=\"2.31.4\"});function ade(t,e){return e?.(t)?t:t&&typeof t==\"object\"&&\"cause\"in t&&t.cause!==void 0?ade(t.cause,e):e?null:t}var EG,Be,ir=ce(()=>{p();sde();EG={getDocsUrl:({docsBaseUrl:t,docsPath:e=\"\",docsSlug:n})=>e?`${t??\"https://viem.sh\"}${e}${n?`#${n}`:\"\"}`:void 0,version:`viem@${xG}`},Be=class t extends Error{constructor(e,n={}){let r=n.cause instanceof t?n.cause.details:n.cause?.message?n.cause.message:n.details,o=n.cause instanceof t&&n.cause.docsPath||n.docsPath,i=EG.getDocsUrl?.({...n,docsPath:o}),a=[e||\"An error occurred.\",\"\",...n.metaMessages?[...n.metaMessages,\"\"]:[],...i?[`Docs: ${i}`]:[],...r?[`Details: ${r}`]:[],...EG.version?[`Version: ${EG.version}`]:[]].join(`\\n`);super(a,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,\"details\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"docsPath\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"metaMessages\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"shortMessage\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"version\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"BaseError\"}),this.details=r,this.docsPath=o,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=e,this.version=xG}walk(e){return ade(this,e)}}});var Y_,QN,JN,XN,Z7=ce(()=>{p();ir();Y_=class extends Be{constructor({max:e,min:n,signed:r,size:o,value:i}){super(`Number \"${i}\" is not in safe ${o?`${o*8}-bit ${r?\"signed\":\"unsigned\"} `:\"\"}integer range ${e?`(${n} to ${e})`:`(above ${n})`}`,{name:\"IntegerOutOfRangeError\"})}},QN=class extends Be{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:\"InvalidBytesBooleanError\"})}},JN=class extends Be{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:\"InvalidHexBooleanError\"})}},XN=class extends Be{constructor({givenSize:e,maxSize:n}){super(`Size cannot exceed ${n} bytes. Given size: ${e} bytes.`,{name:\"SizeOverflowError\"})}}});function da(t,{strict:e=!0}={}){return!t||typeof t!=\"string\"?!1:e?/^0x[0-9a-fA-F]*$/.test(t):t.startsWith(\"0x\")}var P0=ce(()=>{p()});function Jr(t){return da(t,{strict:!1})?Math.ceil((t.length-2)/2):t.length}var Mp=ce(()=>{p();P0()});function Fs(t,{dir:e=\"left\"}={}){let n=typeof t==\"string\"?t.replace(\"0x\",\"\"):t,r=0;for(let o=0;o<n.length-1&&n[e===\"left\"?o:n.length-o-1].toString()===\"0\";o++)r++;return n=e===\"left\"?n.slice(r):n.slice(0,n.length-r),typeof t==\"string\"?(n.length===1&&e===\"right\"&&(n=`${n}0`),`0x${n.length%2===1?`0${n}`:n}`):n}var Pw=ce(()=>{p()});var Y7,Q7,J7,eL=ce(()=>{p();ir();Y7=class extends Be{constructor({offset:e,position:n,size:r}){super(`Slice ${n===\"start\"?\"starting\":\"ending\"} at offset \"${e}\" is out-of-bounds (size: ${r}).`,{name:\"SliceOffsetOutOfBoundsError\"})}},Q7=class extends Be{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (${e}) exceeds padding size (${n}).`,{name:\"SizeExceedsPaddingSizeError\"})}},J7=class extends Be{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} is expected to be ${n} ${r} long, but is ${e} ${r} long.`,{name:\"InvalidBytesLengthError\"})}}});function Np(t,{dir:e,size:n=32}={}){return typeof t==\"string\"?Gb(t,{dir:e,size:n}):LUe(t,{dir:e,size:n})}function Gb(t,{dir:e,size:n=32}={}){if(n===null)return t;let r=t.replace(\"0x\",\"\");if(r.length>n*2)throw new Q7({size:Math.ceil(r.length/2),targetSize:n,type:\"hex\"});return`0x${r[e===\"right\"?\"padEnd\":\"padStart\"](n*2,\"0\")}`}function LUe(t,{dir:e,size:n=32}={}){if(n===null)return t;if(t.length>n)throw new Q7({size:t.length,targetSize:n,type:\"bytes\"});let r=new Uint8Array(n);for(let o=0;o<n;o++){let i=e===\"right\";r[i?o:n-o-1]=t[i?o:t.length-o-1]}return r}var X7=ce(()=>{p();eL()});function Uo(t,e={}){return typeof t==\"number\"||typeof t==\"bigint\"?Ye(t,e):typeof t==\"string\"?gh(t,e):typeof t==\"boolean\"?Q_(t,e):Xr(t,e)}function Q_(t,e={}){let n=`0x${Number(t)}`;return typeof e.size==\"number\"?(dd(n,{size:e.size}),Np(n,{size:e.size})):n}function Xr(t,e={}){let n=\"\";for(let o=0;o<t.length;o++)n+=BUe[t[o]];let r=`0x${n}`;return typeof e.size==\"number\"?(dd(r,{size:e.size}),Np(r,{dir:\"right\",size:e.size})):r}function Ye(t,e={}){let{signed:n,size:r}=e,o=BigInt(t),i;r?n?i=(1n<<BigInt(r)*8n-1n)-1n:i=2n**(BigInt(r)*8n)-1n:typeof t==\"number\"&&(i=BigInt(Number.MAX_SAFE_INTEGER));let a=typeof i==\"bigint\"&&n?-i-1n:0;if(i&&o>i||o<a){let u=typeof t==\"bigint\"?\"n\":\"\";throw new Y_({max:i?`${i}${u}`:void 0,min:`${a}${u}`,signed:n,size:r,value:`${t}${u}`})}let c=`0x${(n&&o<0?(1n<<BigInt(r*8))+BigInt(o):o).toString(16)}`;return r?Np(c,{size:r}):c}function gh(t,e={}){let n=DUe.encode(t);return Xr(n,e)}var BUe,DUe,gn=ce(()=>{p();Z7();X7();fc();BUe=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,\"0\"));DUe=new TextEncoder});function Lp(t,e={}){return typeof t==\"number\"||typeof t==\"bigint\"?jUe(t,e):typeof t==\"boolean\"?UUe(t,e):da(t)?Us(t,e):M0(t,e)}function UUe(t,e={}){let n=new Uint8Array(1);return n[0]=Number(t),typeof e.size==\"number\"?(dd(n,{size:e.size}),Np(n,{size:e.size})):n}function cde(t){if(t>=Zb.zero&&t<=Zb.nine)return t-Zb.zero;if(t>=Zb.A&&t<=Zb.F)return t-(Zb.A-10);if(t>=Zb.a&&t<=Zb.f)return t-(Zb.a-10)}function Us(t,e={}){let n=t;e.size&&(dd(n,{size:e.size}),n=Np(n,{dir:\"right\",size:e.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let o=r.length/2,i=new Uint8Array(o);for(let a=0,c=0;a<o;a++){let u=cde(r.charCodeAt(c++)),d=cde(r.charCodeAt(c++));if(u===void 0||d===void 0)throw new Be(`Invalid byte sequence (\"${r[c-2]}${r[c-1]}\" in \"${r}\").`);i[a]=u*16+d}return i}function jUe(t,e){let n=Ye(t,e);return Us(n)}function M0(t,e={}){let n=FUe.encode(t);return typeof e.size==\"number\"?(dd(n,{size:e.size}),Np(n,{dir:\"right\",size:e.size})):n}var FUe,Zb,hc=ce(()=>{p();ir();P0();X7();fc();gn();FUe=new TextEncoder;Zb={zero:48,nine:57,A:65,F:70,a:97,f:102}});function dd(t,{size:e}){if(Jr(t)>e)throw new XN({givenSize:Jr(t),maxSize:e})}function tL(t,e){let n=typeof e==\"string\"?{to:e}:e,r=n.to;return r===\"number\"?Ei(t,n):r===\"bigint\"?jo(t,n):r===\"string\"?g5(t,n):r===\"boolean\"?eR(t,n):Us(t,n)}function jo(t,e={}){let{signed:n}=e;e.size&&dd(t,{size:e.size});let r=BigInt(t);if(!n)return r;let o=(t.length-2)/2,i=(1n<<BigInt(o)*8n-1n)-1n;return r<=i?r:r-BigInt(`0x${\"f\".padStart(o*2,\"f\")}`)-1n}function eR(t,e={}){let n=t;if(e.size&&(dd(n,{size:e.size}),n=Fs(n)),Fs(n)===\"0x00\")return!1;if(Fs(n)===\"0x01\")return!0;throw new JN(n)}function Ei(t,e={}){return Number(jo(t,e))}function g5(t,e={}){let n=Us(t);return e.size&&(dd(n,{size:e.size}),n=Fs(n,{dir:\"right\"})),new TextDecoder().decode(n)}var fc=ce(()=>{p();Z7();Mp();Pw();hc()});function J_(t,e){return({exclude:n,format:r})=>({exclude:n,format:o=>{let i=e(o);if(n)for(let a of n)delete i[a];return{...i,...r(o)}},type:t})}var nL=ce(()=>{p()});function y5(t){let e={...t,blockHash:t.blockHash?t.blockHash:null,blockNumber:t.blockNumber?BigInt(t.blockNumber):null,chainId:t.chainId?Ei(t.chainId):void 0,gas:t.gas?BigInt(t.gas):void 0,gasPrice:t.gasPrice?BigInt(t.gasPrice):void 0,maxFeePerBlobGas:t.maxFeePerBlobGas?BigInt(t.maxFeePerBlobGas):void 0,maxFeePerGas:t.maxFeePerGas?BigInt(t.maxFeePerGas):void 0,maxPriorityFeePerGas:t.maxPriorityFeePerGas?BigInt(t.maxPriorityFeePerGas):void 0,nonce:t.nonce?Ei(t.nonce):void 0,to:t.to?t.to:null,transactionIndex:t.transactionIndex?Number(t.transactionIndex):null,type:t.type?SG[t.type]:void 0,typeHex:t.type?t.type:void 0,value:t.value?BigInt(t.value):void 0,v:t.v?BigInt(t.v):void 0};return t.authorizationList&&(e.authorizationList=zUe(t.authorizationList)),e.yParity=(()=>{if(t.yParity)return Number(t.yParity);if(typeof e.v==\"bigint\"){if(e.v===0n||e.v===27n)return 0;if(e.v===1n||e.v===28n)return 1;if(e.v>=35n)return e.v%2n===0n?1:0}})(),e.type===\"legacy\"&&(delete e.accessList,delete e.maxFeePerBlobGas,delete e.maxFeePerGas,delete e.maxPriorityFeePerGas,delete e.yParity),e.type===\"eip2930\"&&(delete e.maxFeePerBlobGas,delete e.maxFeePerGas,delete e.maxPriorityFeePerGas),e.type===\"eip1559\"&&delete e.maxFeePerBlobGas,e}function zUe(t){return t.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}var SG,lde,tR=ce(()=>{p();fc();nL();SG={\"0x0\":\"legacy\",\"0x1\":\"eip2930\",\"0x2\":\"eip1559\",\"0x3\":\"eip4844\",\"0x4\":\"eip7702\"};lde=J_(\"transaction\",y5)});function nR(t){let e=(t.transactions??[]).map(n=>typeof n==\"string\"?n:y5(n));return{...t,baseFeePerGas:t.baseFeePerGas?BigInt(t.baseFeePerGas):null,blobGasUsed:t.blobGasUsed?BigInt(t.blobGasUsed):void 0,difficulty:t.difficulty?BigInt(t.difficulty):void 0,excessBlobGas:t.excessBlobGas?BigInt(t.excessBlobGas):void 0,gasLimit:t.gasLimit?BigInt(t.gasLimit):void 0,gasUsed:t.gasUsed?BigInt(t.gasUsed):void 0,hash:t.hash?t.hash:null,logsBloom:t.logsBloom?t.logsBloom:null,nonce:t.nonce?t.nonce:null,number:t.number?BigInt(t.number):null,size:t.size?BigInt(t.size):void 0,timestamp:t.timestamp?BigInt(t.timestamp):void 0,transactions:e,totalDifficulty:t.totalDifficulty?BigInt(t.totalDifficulty):null}}var ude,rL=ce(()=>{p();nL();tR();ude=J_(\"block\",nR)});function ou(t,{args:e,eventName:n}={}){return{...t,blockHash:t.blockHash?t.blockHash:null,blockNumber:t.blockNumber?BigInt(t.blockNumber):null,logIndex:t.logIndex?Number(t.logIndex):null,transactionHash:t.transactionHash?t.transactionHash:null,transactionIndex:t.transactionIndex?Number(t.transactionIndex):null,...n?{args:e,eventName:n}:{}}}var Mw=ce(()=>{p()});function _G(t){let e={...t,blockNumber:t.blockNumber?BigInt(t.blockNumber):null,contractAddress:t.contractAddress?t.contractAddress:null,cumulativeGasUsed:t.cumulativeGasUsed?BigInt(t.cumulativeGasUsed):null,effectiveGasPrice:t.effectiveGasPrice?BigInt(t.effectiveGasPrice):null,gasUsed:t.gasUsed?BigInt(t.gasUsed):null,logs:t.logs?t.logs.map(n=>ou(n)):null,to:t.to?t.to:null,transactionIndex:t.transactionIndex?Ei(t.transactionIndex):null,status:t.status?kG[t.status]:null,type:t.type?SG[t.type]||t.type:null};return t.blobGasPrice&&(e.blobGasPrice=BigInt(t.blobGasPrice)),t.blobGasUsed&&(e.blobGasUsed=BigInt(t.blobGasUsed)),e}var kG,dde,oL=ce(()=>{p();fc();nL();Mw();tR();kG={\"0x0\":\"reverted\",\"0x1\":\"success\"};dde=J_(\"transactionReceipt\",_G)});function Bp(t){let e={};return typeof t.authorizationList<\"u\"&&(e.authorizationList=qUe(t.authorizationList)),typeof t.accessList<\"u\"&&(e.accessList=t.accessList),typeof t.blobVersionedHashes<\"u\"&&(e.blobVersionedHashes=t.blobVersionedHashes),typeof t.blobs<\"u\"&&(typeof t.blobs[0]!=\"string\"?e.blobs=t.blobs.map(n=>Xr(n)):e.blobs=t.blobs),typeof t.data<\"u\"&&(e.data=t.data),typeof t.from<\"u\"&&(e.from=t.from),typeof t.gas<\"u\"&&(e.gas=Ye(t.gas)),typeof t.gasPrice<\"u\"&&(e.gasPrice=Ye(t.gasPrice)),typeof t.maxFeePerBlobGas<\"u\"&&(e.maxFeePerBlobGas=Ye(t.maxFeePerBlobGas)),typeof t.maxFeePerGas<\"u\"&&(e.maxFeePerGas=Ye(t.maxFeePerGas)),typeof t.maxPriorityFeePerGas<\"u\"&&(e.maxPriorityFeePerGas=Ye(t.maxPriorityFeePerGas)),typeof t.nonce<\"u\"&&(e.nonce=Ye(t.nonce)),typeof t.to<\"u\"&&(e.to=t.to),typeof t.type<\"u\"&&(e.type=HUe[t.type]),typeof t.value<\"u\"&&(e.value=Ye(t.value)),e}function qUe(t){return t.map(e=>({address:e.address,r:e.r?Ye(BigInt(e.r)):e.r,s:e.s?Ye(BigInt(e.s)):e.s,chainId:Ye(e.chainId),nonce:Ye(e.nonce),...typeof e.yParity<\"u\"?{yParity:Ye(e.yParity)}:{},...typeof e.v<\"u\"&&typeof e.yParity>\"u\"?{v:Ye(e.v)}:{}}))}var HUe,b5=ce(()=>{p();gn();HUe={legacy:\"0x0\",eip2930:\"0x1\",eip1559:\"0x2\",eip4844:\"0x3\",eip7702:\"0x4\"}});var Pvt,Mvt,Nvt,Lvt,Bvt,Dvt,Fvt,Uvt,jvt,zvt,Hvt,qvt,Wvt,Vvt,$vt,Kvt,Gvt,Zvt,Yvt,Qvt,Jvt,Xvt,e2t,t2t,n2t,r2t,o2t,i2t,s2t,a2t,c2t,l2t,u2t,d2t,f2t,h2t,p2t,m2t,g2t,y2t,b2t,v2t,w2t,x2t,E2t,S2t,k2t,_2t,C2t,A2t,T2t,R2t,I2t,O2t,P2t,M2t,N2t,L2t,B2t,D2t,F2t,U2t,j2t,z2t,H2t,q2t,W2t,V2t,$2t,K2t,G2t,Z2t,Y2t,Q2t,J2t,X2t,ewt,twt,nwt,rwt,owt,iwt,swt,awt,cwt,lwt,uwt,dwt,fwt,hwt,pwt,mwt,gwt,ywt,bwt,X_,CG=ce(()=>{p();Pvt=2n**(8n-1n)-1n,Mvt=2n**(16n-1n)-1n,Nvt=2n**(24n-1n)-1n,Lvt=2n**(32n-1n)-1n,Bvt=2n**(40n-1n)-1n,Dvt=2n**(48n-1n)-1n,Fvt=2n**(56n-1n)-1n,Uvt=2n**(64n-1n)-1n,jvt=2n**(72n-1n)-1n,zvt=2n**(80n-1n)-1n,Hvt=2n**(88n-1n)-1n,qvt=2n**(96n-1n)-1n,Wvt=2n**(104n-1n)-1n,Vvt=2n**(112n-1n)-1n,$vt=2n**(120n-1n)-1n,Kvt=2n**(128n-1n)-1n,Gvt=2n**(136n-1n)-1n,Zvt=2n**(144n-1n)-1n,Yvt=2n**(152n-1n)-1n,Qvt=2n**(160n-1n)-1n,Jvt=2n**(168n-1n)-1n,Xvt=2n**(176n-1n)-1n,e2t=2n**(184n-1n)-1n,t2t=2n**(192n-1n)-1n,n2t=2n**(200n-1n)-1n,r2t=2n**(208n-1n)-1n,o2t=2n**(216n-1n)-1n,i2t=2n**(224n-1n)-1n,s2t=2n**(232n-1n)-1n,a2t=2n**(240n-1n)-1n,c2t=2n**(248n-1n)-1n,l2t=2n**(256n-1n)-1n,u2t=-(2n**(8n-1n)),d2t=-(2n**(16n-1n)),f2t=-(2n**(24n-1n)),h2t=-(2n**(32n-1n)),p2t=-(2n**(40n-1n)),m2t=-(2n**(48n-1n)),g2t=-(2n**(56n-1n)),y2t=-(2n**(64n-1n)),b2t=-(2n**(72n-1n)),v2t=-(2n**(80n-1n)),w2t=-(2n**(88n-1n)),x2t=-(2n**(96n-1n)),E2t=-(2n**(104n-1n)),S2t=-(2n**(112n-1n)),k2t=-(2n**(120n-1n)),_2t=-(2n**(128n-1n)),C2t=-(2n**(136n-1n)),A2t=-(2n**(144n-1n)),T2t=-(2n**(152n-1n)),R2t=-(2n**(160n-1n)),I2t=-(2n**(168n-1n)),O2t=-(2n**(176n-1n)),P2t=-(2n**(184n-1n)),M2t=-(2n**(192n-1n)),N2t=-(2n**(200n-1n)),L2t=-(2n**(208n-1n)),B2t=-(2n**(216n-1n)),D2t=-(2n**(224n-1n)),F2t=-(2n**(232n-1n)),U2t=-(2n**(240n-1n)),j2t=-(2n**(248n-1n)),z2t=-(2n**(256n-1n)),H2t=2n**8n-1n,q2t=2n**16n-1n,W2t=2n**24n-1n,V2t=2n**32n-1n,$2t=2n**40n-1n,K2t=2n**48n-1n,G2t=2n**56n-1n,Z2t=2n**64n-1n,Y2t=2n**72n-1n,Q2t=2n**80n-1n,J2t=2n**88n-1n,X2t=2n**96n-1n,ewt=2n**104n-1n,twt=2n**112n-1n,nwt=2n**120n-1n,rwt=2n**128n-1n,owt=2n**136n-1n,iwt=2n**144n-1n,swt=2n**152n-1n,awt=2n**160n-1n,cwt=2n**168n-1n,lwt=2n**176n-1n,uwt=2n**184n-1n,dwt=2n**192n-1n,fwt=2n**200n-1n,hwt=2n**208n-1n,pwt=2n**216n-1n,mwt=2n**224n-1n,gwt=2n**232n-1n,ywt=2n**240n-1n,bwt=2n**248n-1n,X_=2n**256n-1n});function Da(t){return typeof t[0]==\"string\"?fa(t):WUe(t)}function WUe(t){let e=0;for(let o of t)e+=o.length;let n=new Uint8Array(e),r=0;for(let o of t)n.set(o,r),r+=o.length;return n}function fa(t){return`0x${t.reduce((e,n)=>e+n.replace(\"0x\",\"\"),\"\")}`}var iu=ce(()=>{p()});var rR,e4,iL,AG=ce(()=>{p();ir();rR=class extends Be{constructor({offset:e}){super(`Offset \\\\`${e}\\\\` cannot be negative.`,{name:\"NegativeOffsetError\"})}},e4=class extends Be{constructor({length:e,position:n}){super(`Position \\\\`${n}\\\\` is out of bounds (\\\\`0 < position < ${e}\\\\`).`,{name:\"PositionOutOfBoundsError\"})}},iL=class extends Be{constructor({count:e,limit:n}){super(`Recursive read limit of \\\\`${n}\\\\` exceeded (recursive read count: \\\\`${e}\\\\`).`,{name:\"RecursiveReadLimitExceededError\"})}}});function t4(t,{recursiveReadLimit:e=8192}={}){let n=Object.create(VUe);return n.bytes=t,n.dataView=new DataView(t.buffer,t.byteOffset,t.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=e,n}var VUe,sL=ce(()=>{p();AG();VUe={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:Number.POSITIVE_INFINITY,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new iL({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(t){if(t<0||t>this.bytes.length-1)throw new e4({length:this.bytes.length,position:t})},decrementPosition(t){if(t<0)throw new rR({offset:t});let e=this.position-t;this.assertPosition(e),this.position=e},getReadCount(t){return this.positionReadCount.get(t||this.position)||0},incrementPosition(t){if(t<0)throw new rR({offset:t});let e=this.position+t;this.assertPosition(e),this.position=e},inspectByte(t){let e=t??this.position;return this.assertPosition(e),this.bytes[e]},inspectBytes(t,e){let n=e??this.position;return this.assertPosition(n+t-1),this.bytes.subarray(n,n+t)},inspectUint8(t){let e=t??this.position;return this.assertPosition(e),this.bytes[e]},inspectUint16(t){let e=t??this.position;return this.assertPosition(e+1),this.dataView.getUint16(e)},inspectUint24(t){let e=t??this.position;return this.assertPosition(e+2),(this.dataView.getUint16(e)<<8)+this.dataView.getUint8(e+2)},inspectUint32(t){let e=t??this.position;return this.assertPosition(e+3),this.dataView.getUint32(e)},pushByte(t){this.assertPosition(this.position),this.bytes[this.position]=t,this.position++},pushBytes(t){this.assertPosition(this.position+t.length-1),this.bytes.set(t,this.position),this.position+=t.length},pushUint8(t){this.assertPosition(this.position),this.bytes[this.position]=t,this.position++},pushUint16(t){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,t),this.position+=2},pushUint24(t){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,t>>8),this.dataView.setUint8(this.position+2,t&255),this.position+=3},pushUint32(t){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,t),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let t=this.inspectByte();return this.position++,t},readBytes(t,e){this.assertReadLimit(),this._touch();let n=this.inspectBytes(t);return this.position+=e??t,n},readUint8(){this.assertReadLimit(),this._touch();let t=this.inspectUint8();return this.position+=1,t},readUint16(){this.assertReadLimit(),this._touch();let t=this.inspectUint16();return this.position+=2,t},readUint24(){this.assertReadLimit(),this._touch();let t=this.inspectUint24();return this.position+=3,t},readUint32(){this.assertReadLimit(),this._touch();let t=this.inspectUint32();return this.position+=4,t},get remaining(){return this.bytes.length-this.position},setPosition(t){let e=this.position;return this.assertPosition(t),this.position=t,()=>this.position=e},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;let t=this.getReadCount();this.positionReadCount.set(this.position,t+1),t>0&&this.recursiveReadCount++}}});function N0(t,e=\"hex\"){let n=fde(t),r=t4(new Uint8Array(n.length));return n.encode(r),e===\"hex\"?Xr(r.bytes):r.bytes}function fde(t){return Array.isArray(t)?$Ue(t.map(e=>fde(e))):KUe(t)}function $Ue(t){let e=t.reduce((o,i)=>o+i.length,0),n=hde(e);return{length:e<=55?1+e:1+n+e,encode(o){e<=55?o.pushByte(192+e):(o.pushByte(247+n),n===1?o.pushUint8(e):n===2?o.pushUint16(e):n===3?o.pushUint24(e):o.pushUint32(e));for(let{encode:i}of t)i(o)}}}function KUe(t){let e=typeof t==\"string\"?Us(t):t,n=hde(e.length);return{length:e.length===1&&e[0]<128?1:e.length<=55?1+e.length:1+n+e.length,encode(o){e.length===1&&e[0]<128?o.pushBytes(e):e.length<=55?(o.pushByte(128+e.length),o.pushBytes(e)):(o.pushByte(183+n),n===1?o.pushUint8(e.length):n===2?o.pushUint16(e.length):n===3?o.pushUint24(e.length):o.pushUint32(e.length),o.pushBytes(e))}}}function hde(t){if(t<2**8)return 1;if(t<2**16)return 2;if(t<2**24)return 3;if(t<2**32)return 4;throw new Be(\"Length is too large.\")}var aL=ce(()=>{p();ir();sL();hc();gn()});var TG,RG,IG,cL=ce(()=>{p();TG={gwei:9,wei:18},RG={ether:-9,wei:9},IG={ether:-18,gwei:-9}});function vs(t,e){let n=t.toString(),r=n.startsWith(\"-\");r&&(n=n.slice(1)),n=n.padStart(e,\"0\");let[o,i]=[n.slice(0,n.length-e),n.slice(n.length-e)];return i=i.replace(/(0+)$/,\"\"),`${r?\"-\":\"\"}${o||\"0\"}${i?`.${i}`:\"\"}`}var lL=ce(()=>{p()});function n4(t,e=\"wei\"){return vs(t,TG[e])}var uL=ce(()=>{p();cL();lL()});function pc(t,e=\"wei\"){return vs(t,RG[e])}var r4=ce(()=>{p();cL();lL()});function v5(t){let e=Object.entries(t).map(([r,o])=>o===void 0||o===!1?null:[r,o]).filter(Boolean),n=e.reduce((r,[o])=>Math.max(r,o.length),0);return e.map(([r,o])=>`  ${`${r}:`.padEnd(n+1)}  ${o}`).join(`\\n`)}var dL,fL,hL,pL,mL,o4,i4,gL,L0=ce(()=>{p();uL();r4();ir();dL=class extends Be{constructor(){super([\"Cannot specify both a `gasPrice` and a `maxFeePerGas`/`maxPriorityFeePerGas`.\",\"Use `maxFeePerGas`/`maxPriorityFeePerGas` for EIP-1559 compatible networks, and `gasPrice` for others.\"].join(`\\n`),{name:\"FeeConflictError\"})}},fL=class extends Be{constructor({v:e}){super(`Invalid \\\\`v\\\\` value \"${e}\". Expected 27 or 28.`,{name:\"InvalidLegacyVError\"})}},hL=class extends Be{constructor({transaction:e}){super(\"Cannot infer a transaction type from provided transaction.\",{metaMessages:[\"Provided Transaction:\",\"{\",v5(e),\"}\",\"\",\"To infer the type, either provide:\",\"- a `type` to the Transaction, or\",\"- an EIP-1559 Transaction with `maxFeePerGas`, or\",\"- an EIP-2930 Transaction with `gasPrice` & `accessList`, or\",\"- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:\"InvalidSerializableTransactionError\"})}},pL=class extends Be{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:\"InvalidStorageKeySizeError\"})}},mL=class extends Be{constructor(e,{account:n,docsPath:r,chain:o,data:i,gas:a,gasPrice:c,maxFeePerGas:u,maxPriorityFeePerGas:d,nonce:h,to:m,value:g}){let b=v5({chain:o&&`${o?.name} (id: ${o?.id})`,from:n?.address,to:m,value:typeof g<\"u\"&&`${n4(g)} ${o?.nativeCurrency?.symbol||\"ETH\"}`,data:i,gas:a,gasPrice:typeof c<\"u\"&&`${pc(c)} gwei`,maxFeePerGas:typeof u<\"u\"&&`${pc(u)} gwei`,maxPriorityFeePerGas:typeof d<\"u\"&&`${pc(d)} gwei`,nonce:h});super(e.shortMessage,{cause:e,docsPath:r,metaMessages:[...e.metaMessages?[...e.metaMessages,\" \"]:[],\"Request Arguments:\",b].filter(Boolean),name:\"TransactionExecutionError\"}),Object.defineProperty(this,\"cause\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},o4=class extends Be{constructor({blockHash:e,blockNumber:n,blockTag:r,hash:o,index:i}){let a=\"Transaction\";r&&i!==void 0&&(a=`Transaction at block time \"${r}\" at index \"${i}\"`),e&&i!==void 0&&(a=`Transaction at block hash \"${e}\" at index \"${i}\"`),n&&i!==void 0&&(a=`Transaction at block number \"${n}\" at index \"${i}\"`),o&&(a=`Transaction with hash \"${o}\"`),super(`${a} could not be found.`,{name:\"TransactionNotFoundError\"})}},i4=class extends Be{constructor({hash:e}){super(`Transaction receipt with hash \"${e}\" could not be found. The Transaction may not be processed on a block yet.`,{name:\"TransactionReceiptNotFoundError\"})}},gL=class extends Be{constructor({hash:e}){super(`Timed out while waiting for transaction with hash \"${e}\" to be confirmed.`,{name:\"WaitForTransactionReceiptTimeoutError\"})}}});function pde(t){if(!t||t.length===0)return[];let e=[];for(let n of t){let{chainId:r,nonce:o,...i}=n,a=n.address;e.push([r?Uo(r):\"0x\",a,o?Uo(o):\"0x\",...s4({},i)])}return e}var mde=ce(()=>{p();gn();OG()});function a4(t){let{kzg:e}=t,n=t.to??(typeof t.blobs[0]==\"string\"?\"hex\":\"bytes\"),r=typeof t.blobs[0]==\"string\"?t.blobs.map(i=>Us(i)):t.blobs,o=[];for(let i of r)o.push(Uint8Array.from(e.blobToKzgCommitment(i)));return n===\"bytes\"?o:o.map(i=>Xr(i))}var yL=ce(()=>{p();hc();gn()});function c4(t){let{kzg:e}=t,n=t.to??(typeof t.blobs[0]==\"string\"?\"hex\":\"bytes\"),r=typeof t.blobs[0]==\"string\"?t.blobs.map(a=>Us(a)):t.blobs,o=typeof t.commitments[0]==\"string\"?t.commitments.map(a=>Us(a)):t.commitments,i=[];for(let a=0;a<r.length;a++){let c=r[a],u=o[a];i.push(Uint8Array.from(e.computeBlobKzgProof(c,u)))}return n===\"bytes\"?i:i.map(a=>Xr(a))}var bL=ce(()=>{p();hc();gn()});var w5,gde=ce(()=>{p();w5=typeof globalThis==\"object\"&&\"crypto\"in globalThis?globalThis.crypto:void 0});function Bw(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name===\"Uint8Array\"}function Nw(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(\"positive integer expected, got \"+t)}function Zi(t,...e){if(!Bw(t))throw new Error(\"Uint8Array expected\");if(e.length>0&&!e.includes(t.length))throw new Error(\"Uint8Array expected of length \"+e+\", got length=\"+t.length)}function bde(t){if(typeof t!=\"function\"||typeof t.create!=\"function\")throw new Error(\"Hash should be wrapped by utils.createHasher\");Nw(t.outputLen),Nw(t.blockLen)}function Qb(t,e=!0){if(t.destroyed)throw new Error(\"Hash instance has been destroyed\");if(e&&t.finished)throw new Error(\"Hash#digest() has already been called\")}function vL(t,e){Zi(t);let n=e.outputLen;if(t.length<n)throw new Error(\"digestInto() expects output buffer of length at least \"+n)}function vde(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function Dp(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function wL(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function B0(t,e){return t<<32-e|t>>>e}function ZUe(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}function YUe(t){for(let e=0;e<t.length;e++)t[e]=ZUe(t[e]);return t}function Fp(t){if(Zi(t),wde)return t.toHex();let e=\"\";for(let n=0;n<t.length;n++)e+=QUe[t[n]];return e}function yde(t){if(t>=Yb._0&&t<=Yb._9)return t-Yb._0;if(t>=Yb.A&&t<=Yb.F)return t-(Yb.A-10);if(t>=Yb.a&&t<=Yb.f)return t-(Yb.a-10)}function l4(t){if(typeof t!=\"string\")throw new Error(\"hex string expected, got \"+typeof t);if(wde)return Uint8Array.fromHex(t);let e=t.length,n=e/2;if(e%2)throw new Error(\"hex string expected, got unpadded hex of length \"+e);let r=new Uint8Array(n);for(let o=0,i=0;o<n;o++,i+=2){let a=yde(t.charCodeAt(i)),c=yde(t.charCodeAt(i+1));if(a===void 0||c===void 0){let u=t[i]+t[i+1];throw new Error(\\'hex string expected, got non-hex character \"\\'+u+\\'\" at index \\'+i)}r[o]=a*16+c}return r}function u4(t){if(typeof t!=\"string\")throw new Error(\"string expected\");return new Uint8Array(new TextEncoder().encode(t))}function x5(t){return typeof t==\"string\"&&(t=u4(t)),Zi(t),t}function ws(...t){let e=0;for(let r=0;r<t.length;r++){let o=t[r];Zi(o),e+=o.length}let n=new Uint8Array(e);for(let r=0,o=0;r<t.length;r++){let i=t[r];n.set(i,o),o+=i.length}return n}function oR(t){let e=r=>t().update(x5(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function E5(t=32){if(w5&&typeof w5.getRandomValues==\"function\")return w5.getRandomValues(new Uint8Array(t));if(w5&&typeof w5.randomBytes==\"function\")return Uint8Array.from(w5.randomBytes(t));throw new Error(\"crypto.getRandomValues must be defined\")}var GUe,PG,wde,QUe,Yb,Lw,Jb=ce(()=>{p();gde();GUe=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;PG=GUe?t=>t:YUe,wde=typeof Uint8Array.from([]).toHex==\"function\"&&typeof Uint8Array.fromHex==\"function\",QUe=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,\"0\"));Yb={_0:48,_9:57,A:65,F:70,a:97,f:102};Lw=class{}});function JUe(t,e,n,r){if(typeof t.setBigUint64==\"function\")return t.setBigUint64(e,n,r);let o=BigInt(32),i=BigInt(4294967295),a=Number(n>>o&i),c=Number(n&i),u=r?4:0,d=r?0:4;t.setUint32(e+u,a,r),t.setUint32(e+d,c,r)}function xde(t,e,n){return t&e^~t&n}function Ede(t,e,n){return t&e^t&n^e&n}var iR,Xb,bl,Sde=ce(()=>{p();Jb();iR=class extends Lw{constructor(e,n,r,o){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=n,this.padOffset=r,this.isLE=o,this.buffer=new Uint8Array(e),this.view=wL(this.buffer)}update(e){Qb(this),e=x5(e),Zi(e);let{view:n,buffer:r,blockLen:o}=this,i=e.length;for(let a=0;a<i;){let c=Math.min(o-this.pos,i-a);if(c===o){let u=wL(e);for(;o<=i-a;a+=o)this.process(u,a);continue}r.set(e.subarray(a,a+c),this.pos),this.pos+=c,a+=c,this.pos===o&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Qb(this),vL(e,this),this.finished=!0;let{buffer:n,view:r,blockLen:o,isLE:i}=this,{pos:a}=this;n[a++]=128,Dp(this.buffer.subarray(a)),this.padOffset>o-a&&(this.process(r,0),a=0);for(let m=a;m<o;m++)n[m]=0;JUe(r,o-8,BigInt(this.length*8),i),this.process(r,0);let c=wL(e),u=this.outputLen;if(u%4)throw new Error(\"_sha2: outputLen should be aligned to 32bit\");let d=u/4,h=this.get();if(d>h.length)throw new Error(\"_sha2: outputLen bigger than state\");for(let m=0;m<d;m++)c.setUint32(4*m,h[m],i)}digest(){let{buffer:e,outputLen:n}=this;this.digestInto(e);let r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:n,buffer:r,length:o,finished:i,destroyed:a,pos:c}=this;return e.destroyed=a,e.finished=i,e.length=o,e.pos=c,o%n&&e.buffer.set(r),e}clone(){return this._cloneInto()}},Xb=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),bl=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])});function XUe(t,e=!1){return e?{h:Number(t&xL),l:Number(t>>kde&xL)}:{h:Number(t>>kde&xL)|0,l:Number(t&xL)|0}}function EL(t,e=!1){let n=t.length,r=new Uint32Array(n),o=new Uint32Array(n);for(let i=0;i<n;i++){let{h:a,l:c}=XUe(t[i],e);[r[i],o[i]]=[a,c]}return[r,o]}function _y(t,e,n,r){let o=(e>>>0)+(r>>>0);return{h:t+n+(o/2**32|0)|0,l:o|0}}var xL,kde,MG,NG,S5,k5,sR,aR,_de,Cde,Ade,Tde,Rde,Ide,Ode,Pde,Mde,Nde,LG=ce(()=>{p();xL=BigInt(4294967295),kde=BigInt(32);MG=(t,e,n)=>t>>>n,NG=(t,e,n)=>t<<32-n|e>>>n,S5=(t,e,n)=>t>>>n|e<<32-n,k5=(t,e,n)=>t<<32-n|e>>>n,sR=(t,e,n)=>t<<64-n|e>>>n-32,aR=(t,e,n)=>t>>>n-32|e<<64-n,_de=(t,e,n)=>t<<n|e>>>32-n,Cde=(t,e,n)=>e<<n|t>>>32-n,Ade=(t,e,n)=>e<<n-32|t>>>64-n,Tde=(t,e,n)=>t<<n-32|e>>>64-n;Rde=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),Ide=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,Ode=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),Pde=(t,e,n,r,o)=>e+n+r+o+(t/2**32|0)|0,Mde=(t,e,n,r,o)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(o>>>0),Nde=(t,e,n,r,o,i)=>e+n+r+o+i+(t/2**32|0)|0});var tje,Dw,SL,Lde,nje,rje,Fw,Uw,BG,_5,Bde,kL=ce(()=>{p();Sde();LG();Jb();tje=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Dw=new Uint32Array(64),SL=class extends iR{constructor(e=32){super(64,e,8,!1),this.A=Xb[0]|0,this.B=Xb[1]|0,this.C=Xb[2]|0,this.D=Xb[3]|0,this.E=Xb[4]|0,this.F=Xb[5]|0,this.G=Xb[6]|0,this.H=Xb[7]|0}get(){let{A:e,B:n,C:r,D:o,E:i,F:a,G:c,H:u}=this;return[e,n,r,o,i,a,c,u]}set(e,n,r,o,i,a,c,u){this.A=e|0,this.B=n|0,this.C=r|0,this.D=o|0,this.E=i|0,this.F=a|0,this.G=c|0,this.H=u|0}process(e,n){for(let m=0;m<16;m++,n+=4)Dw[m]=e.getUint32(n,!1);for(let m=16;m<64;m++){let g=Dw[m-15],b=Dw[m-2],E=B0(g,7)^B0(g,18)^g>>>3,C=B0(b,17)^B0(b,19)^b>>>10;Dw[m]=C+Dw[m-7]+E+Dw[m-16]|0}let{A:r,B:o,C:i,D:a,E:c,F:u,G:d,H:h}=this;for(let m=0;m<64;m++){let g=B0(c,6)^B0(c,11)^B0(c,25),b=h+g+xde(c,u,d)+tje[m]+Dw[m]|0,C=(B0(r,2)^B0(r,13)^B0(r,22))+Ede(r,o,i)|0;h=d,d=u,u=c,c=a+b|0,a=i,i=o,o=r,r=b+C|0}r=r+this.A|0,o=o+this.B|0,i=i+this.C|0,a=a+this.D|0,c=c+this.E|0,u=u+this.F|0,d=d+this.G|0,h=h+this.H|0,this.set(r,o,i,a,c,u,d,h)}roundClean(){Dp(Dw)}destroy(){this.set(0,0,0,0,0,0,0,0),Dp(this.buffer)}},Lde=EL([\"0x428a2f98d728ae22\",\"0x7137449123ef65cd\",\"0xb5c0fbcfec4d3b2f\",\"0xe9b5dba58189dbbc\",\"0x3956c25bf348b538\",\"0x59f111f1b605d019\",\"0x923f82a4af194f9b\",\"0xab1c5ed5da6d8118\",\"0xd807aa98a3030242\",\"0x12835b0145706fbe\",\"0x243185be4ee4b28c\",\"0x550c7dc3d5ffb4e2\",\"0x72be5d74f27b896f\",\"0x80deb1fe3b1696b1\",\"0x9bdc06a725c71235\",\"0xc19bf174cf692694\",\"0xe49b69c19ef14ad2\",\"0xefbe4786384f25e3\",\"0x0fc19dc68b8cd5b5\",\"0x240ca1cc77ac9c65\",\"0x2de92c6f592b0275\",\"0x4a7484aa6ea6e483\",\"0x5cb0a9dcbd41fbd4\",\"0x76f988da831153b5\",\"0x983e5152ee66dfab\",\"0xa831c66d2db43210\",\"0xb00327c898fb213f\",\"0xbf597fc7beef0ee4\",\"0xc6e00bf33da88fc2\",\"0xd5a79147930aa725\",\"0x06ca6351e003826f\",\"0x142929670a0e6e70\",\"0x27b70a8546d22ffc\",\"0x2e1b21385c26c926\",\"0x4d2c6dfc5ac42aed\",\"0x53380d139d95b3df\",\"0x650a73548baf63de\",\"0x766a0abb3c77b2a8\",\"0x81c2c92e47edaee6\",\"0x92722c851482353b\",\"0xa2bfe8a14cf10364\",\"0xa81a664bbc423001\",\"0xc24b8b70d0f89791\",\"0xc76c51a30654be30\",\"0xd192e819d6ef5218\",\"0xd69906245565a910\",\"0xf40e35855771202a\",\"0x106aa07032bbd1b8\",\"0x19a4c116b8d2d0c8\",\"0x1e376c085141ab53\",\"0x2748774cdf8eeb99\",\"0x34b0bcb5e19b48a8\",\"0x391c0cb3c5c95a63\",\"0x4ed8aa4ae3418acb\",\"0x5b9cca4f7763e373\",\"0x682e6ff3d6b2b8a3\",\"0x748f82ee5defb2fc\",\"0x78a5636f43172f60\",\"0x84c87814a1f0ab72\",\"0x8cc702081a6439ec\",\"0x90befffa23631e28\",\"0xa4506cebde82bde9\",\"0xbef9a3f7b2c67915\",\"0xc67178f2e372532b\",\"0xca273eceea26619c\",\"0xd186b8c721c0c207\",\"0xeada7dd6cde0eb1e\",\"0xf57d4f7fee6ed178\",\"0x06f067aa72176fba\",\"0x0a637dc5a2c898a6\",\"0x113f9804bef90dae\",\"0x1b710b35131c471b\",\"0x28db77f523047d84\",\"0x32caab7b40c72493\",\"0x3c9ebe0a15c9bebc\",\"0x431d67c49c100d4c\",\"0x4cc5d4becb3e42b6\",\"0x597f299cfc657e2a\",\"0x5fcb6fab3ad6faec\",\"0x6c44198c4a475817\"].map(t=>BigInt(t))),nje=Lde[0],rje=Lde[1],Fw=new Uint32Array(80),Uw=new Uint32Array(80),BG=class extends iR{constructor(e=64){super(128,e,16,!1),this.Ah=bl[0]|0,this.Al=bl[1]|0,this.Bh=bl[2]|0,this.Bl=bl[3]|0,this.Ch=bl[4]|0,this.Cl=bl[5]|0,this.Dh=bl[6]|0,this.Dl=bl[7]|0,this.Eh=bl[8]|0,this.El=bl[9]|0,this.Fh=bl[10]|0,this.Fl=bl[11]|0,this.Gh=bl[12]|0,this.Gl=bl[13]|0,this.Hh=bl[14]|0,this.Hl=bl[15]|0}get(){let{Ah:e,Al:n,Bh:r,Bl:o,Ch:i,Cl:a,Dh:c,Dl:u,Eh:d,El:h,Fh:m,Fl:g,Gh:b,Gl:E,Hh:C,Hl:T}=this;return[e,n,r,o,i,a,c,u,d,h,m,g,b,E,C,T]}set(e,n,r,o,i,a,c,u,d,h,m,g,b,E,C,T){this.Ah=e|0,this.Al=n|0,this.Bh=r|0,this.Bl=o|0,this.Ch=i|0,this.Cl=a|0,this.Dh=c|0,this.Dl=u|0,this.Eh=d|0,this.El=h|0,this.Fh=m|0,this.Fl=g|0,this.Gh=b|0,this.Gl=E|0,this.Hh=C|0,this.Hl=T|0}process(e,n){for(let D=0;D<16;D++,n+=4)Fw[D]=e.getUint32(n),Uw[D]=e.getUint32(n+=4);for(let D=16;D<80;D++){let G=Fw[D-15]|0,W=Uw[D-15]|0,J=S5(G,W,1)^S5(G,W,8)^MG(G,W,7),ne=k5(G,W,1)^k5(G,W,8)^NG(G,W,7),ie=Fw[D-2]|0,Z=Uw[D-2]|0,ae=S5(ie,Z,19)^sR(ie,Z,61)^MG(ie,Z,6),V=k5(ie,Z,19)^aR(ie,Z,61)^NG(ie,Z,6),$=Ode(ne,V,Uw[D-7],Uw[D-16]),F=Pde($,J,ae,Fw[D-7],Fw[D-16]);Fw[D]=F|0,Uw[D]=$|0}let{Ah:r,Al:o,Bh:i,Bl:a,Ch:c,Cl:u,Dh:d,Dl:h,Eh:m,El:g,Fh:b,Fl:E,Gh:C,Gl:T,Hh:R,Hl:L}=this;for(let D=0;D<80;D++){let G=S5(m,g,14)^S5(m,g,18)^sR(m,g,41),W=k5(m,g,14)^k5(m,g,18)^aR(m,g,41),J=m&b^~m&C,ne=g&E^~g&T,ie=Mde(L,W,ne,rje[D],Uw[D]),Z=Nde(ie,R,G,J,nje[D],Fw[D]),ae=ie|0,V=S5(r,o,28)^sR(r,o,34)^sR(r,o,39),$=k5(r,o,28)^aR(r,o,34)^aR(r,o,39),F=r&i^r&c^i&c,_=o&a^o&u^a&u;R=C|0,L=T|0,C=b|0,T=E|0,b=m|0,E=g|0,{h:m,l:g}=_y(d|0,h|0,Z|0,ae|0),d=c|0,h=u|0,c=i|0,u=a|0,i=r|0,a=o|0;let O=Rde(ae,$,_);r=Ide(O,Z,V,F),o=O|0}({h:r,l:o}=_y(this.Ah|0,this.Al|0,r|0,o|0)),{h:i,l:a}=_y(this.Bh|0,this.Bl|0,i|0,a|0),{h:c,l:u}=_y(this.Ch|0,this.Cl|0,c|0,u|0),{h:d,l:h}=_y(this.Dh|0,this.Dl|0,d|0,h|0),{h:m,l:g}=_y(this.Eh|0,this.El|0,m|0,g|0),{h:b,l:E}=_y(this.Fh|0,this.Fl|0,b|0,E|0),{h:C,l:T}=_y(this.Gh|0,this.Gl|0,C|0,T|0),{h:R,l:L}=_y(this.Hh|0,this.Hl|0,R|0,L|0),this.set(r,o,i,a,c,u,d,h,m,g,b,E,C,T,R,L)}roundClean(){Dp(Fw,Uw)}destroy(){Dp(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},_5=oR(()=>new SL),Bde=oR(()=>new BG)});var C5,_L=ce(()=>{p();kL();C5=_5});function cR(t,e){let n=e||\"hex\",r=C5(da(t,{strict:!1})?Lp(t):t);return n===\"bytes\"?r:Uo(r)}var DG=ce(()=>{p();_L();P0();hc();gn()});function Dde(t){let{commitment:e,version:n=1}=t,r=t.to??(typeof e==\"string\"?\"hex\":\"bytes\"),o=cR(e,\"bytes\");return o.set([n],0),r===\"bytes\"?o:Xr(o)}var Fde=ce(()=>{p();gn();DG()});function CL(t){let{commitments:e,version:n}=t,r=t.to??(typeof e[0]==\"string\"?\"hex\":\"bytes\"),o=[];for(let i of e)o.push(Dde({commitment:i,to:r,version:n}));return o}var FG=ce(()=>{p();Fde()});var AL,d4,TL,RL,UG=ce(()=>{p();ir();AL=class extends Be{constructor({maxSize:e,size:n}){super(\"Blob size is too large.\",{metaMessages:[`Max: ${e} bytes`,`Given: ${n} bytes`],name:\"BlobSizeTooLargeError\"})}},d4=class extends Be{constructor(){super(\"Blob data must not be empty.\",{name:\"EmptyBlobError\"})}},TL=class extends Be{constructor({hash:e,size:n}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[\"Expected: 32\",`Received: ${n}`],name:\"InvalidVersionedHashSizeError\"})}},RL=class extends Be{constructor({hash:e,version:n}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: ${1}`,`Received: ${n}`],name:\"InvalidVersionedHashVersionError\"})}}});function Ude(t){let e=t.to??(typeof t.data==\"string\"?\"hex\":\"bytes\"),n=typeof t.data==\"string\"?Us(t.data):t.data,r=Jr(n);if(!r)throw new d4;if(r>761855)throw new AL({maxSize:761855,size:r});let o=[],i=!0,a=0;for(;i;){let c=t4(new Uint8Array(131072)),u=0;for(;u<4096;){let d=n.slice(a,a+31);if(c.pushByte(0),c.pushBytes(d),d.length<31){c.pushByte(128),i=!1;break}u++,a+=31}o.push(c)}return e===\"bytes\"?o.map(c=>c.bytes):o.map(c=>Xr(c.bytes))}var jde=ce(()=>{p();UG();sL();Mp();hc();gn()});function IL(t){let{data:e,kzg:n,to:r}=t,o=t.blobs??Ude({data:e,to:r}),i=t.commitments??a4({blobs:o,kzg:n,to:r}),a=t.proofs??c4({blobs:o,commitments:i,kzg:n,to:r}),c=[];for(let u=0;u<o.length;u++)c.push({blob:o[u],commitment:i[u],proof:a[u]});return c}var jG=ce(()=>{p();yL();bL();jde()});var ci,D0=ce(()=>{p();ir();ci=class extends Be{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[\"- Address must be a hex value of 20 bytes (40 hex characters).\",\"- Address must match its checksum counterpart.\"],name:\"InvalidAddressError\"})}}});var A5,OL,PL,lR,T5,uR=ce(()=>{p();ir();A5=class extends Be{constructor({blockNumber:e,chain:n,contract:r}){super(`Chain \"${n.name}\" does not support contract \"${r.name}\".`,{metaMessages:[\"This could be due to any of the following:\",...e&&r.blockCreated&&r.blockCreated>e?[`- The contract \"${r.name}\" was not deployed until block ${r.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${r.name}\" configured.`]],name:\"ChainDoesNotSupportContract\"})}},OL=class extends Be{constructor({chain:e,currentChainId:n}){super(`The current chain of the wallet (id: ${n}) does not match the target chain for the transaction (id: ${e.id} \\\\u2013 ${e.name}).`,{metaMessages:[`Current Chain ID:  ${n}`,`Expected Chain ID: ${e.id} \\\\u2013 ${e.name}`],name:\"ChainMismatchError\"})}},PL=class extends Be{constructor(){super([\"No chain was provided to the request.\",\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\\n`),{name:\"ChainNotFoundError\"})}},lR=class extends Be{constructor(){super(\"No chain was provided to the Client.\",{name:\"ClientChainNotConfiguredError\"})}},T5=class extends Be{constructor({chainId:e}){super(typeof e==\"number\"?`Chain ID \"${e}\" is invalid.`:\"Chain ID is invalid.\",{name:\"InvalidChainIdError\"})}}});var ev,Up,f4,h4,p4,m4,g4,y4,b4,v4,Cy,jp,jw=ce(()=>{p();r4();ir();ev=class extends Be{constructor({cause:e,message:n}={}){let r=n?.replace(\"execution reverted: \",\"\")?.replace(\"execution reverted\",\"\");super(`Execution reverted ${r?`with reason: ${r}`:\"for an unknown reason\"}.`,{cause:e,name:\"ExecutionRevertedError\"})}};Object.defineProperty(ev,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(ev,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});Up=class extends Be{constructor({cause:e,maxFeePerGas:n}={}){super(`The fee cap (\\\\`maxFeePerGas\\\\`${n?` = ${pc(n)} gwei`:\"\"}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:\"FeeCapTooHighError\"})}};Object.defineProperty(Up,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\\\^256-1|fee cap higher than 2\\\\^256-1/});f4=class extends Be{constructor({cause:e,maxFeePerGas:n}={}){super(`The fee cap (\\\\`maxFeePerGas\\\\`${n?` = ${pc(n)}`:\"\"} gwei) cannot be lower than the block base fee.`,{cause:e,name:\"FeeCapTooLowError\"})}};Object.defineProperty(f4,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/});h4=class extends Be{constructor({cause:e,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:\"\"}is higher than the next one expected.`,{cause:e,name:\"NonceTooHighError\"})}};Object.defineProperty(h4,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});p4=class extends Be{constructor({cause:e,nonce:n}={}){super([`Nonce provided for the transaction ${n?`(${n}) `:\"\"}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\\n`),{cause:e,name:\"NonceTooLowError\"})}};Object.defineProperty(p4,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});m4=class extends Be{constructor({cause:e,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:\"\"}exceeds the maximum allowed nonce.`,{cause:e,name:\"NonceMaxValueError\"})}};Object.defineProperty(m4,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});g4=class extends Be{constructor({cause:e}={}){super([\"The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.\"].join(`\\n`),{cause:e,metaMessages:[\"This error could arise when the account does not have enough funds to:\",\" - pay for the total gas fee,\",\" - pay for the value to send.\",\" \",\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:\"InsufficientFundsError\"})}};Object.defineProperty(g4,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});y4=class extends Be{constructor({cause:e,gas:n}={}){super(`The amount of gas ${n?`(${n}) `:\"\"}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:\"IntrinsicGasTooHighError\"})}};Object.defineProperty(y4,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});b4=class extends Be{constructor({cause:e,gas:n}={}){super(`The amount of gas ${n?`(${n}) `:\"\"}provided for the transaction is too low.`,{cause:e,name:\"IntrinsicGasTooLowError\"})}};Object.defineProperty(b4,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});v4=class extends Be{constructor({cause:e}){super(\"The transaction type is not supported for this chain.\",{cause:e,name:\"TransactionTypeNotSupportedError\"})}};Object.defineProperty(v4,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});Cy=class extends Be{constructor({cause:e,maxPriorityFeePerGas:n,maxFeePerGas:r}={}){super([`The provided tip (\\\\`maxPriorityFeePerGas\\\\`${n?` = ${pc(n)} gwei`:\"\"}) cannot be higher than the fee cap (\\\\`maxFeePerGas\\\\`${r?` = ${pc(r)} gwei`:\"\"}).`].join(`\\n`),{cause:e,name:\"TipAboveFeeCapError\"})}};Object.defineProperty(Cy,\"nodeMessage\",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});jp=class extends Be{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:\"UnknownNodeError\"})}}});var Ay,dR=ce(()=>{p();Ay=class extends Map{constructor(e){super(),Object.defineProperty(this,\"maxSize\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let n=super.get(e);return super.has(e)&&n!==void 0&&(this.delete(e),super.set(e,n)),n}set(e,n){if(super.set(e,n),this.maxSize&&this.size>this.maxSize){let r=this.keys().next().value;r&&this.delete(r)}return this}}});function hje(t,e=24){let n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let a=0;a<10;a++)n[a]=t[a]^t[a+10]^t[a+20]^t[a+30]^t[a+40];for(let a=0;a<10;a+=2){let c=(a+8)%10,u=(a+2)%10,d=n[u],h=n[u+1],m=zde(d,h,1)^n[c],g=Hde(d,h,1)^n[c+1];for(let b=0;b<50;b+=10)t[a+b]^=m,t[a+b+1]^=g}let o=t[2],i=t[3];for(let a=0;a<24;a++){let c=Wde[a],u=zde(o,i,c),d=Hde(o,i,c),h=qde[a];o=t[h],i=t[h+1],t[h]=u,t[h+1]=d}for(let a=0;a<50;a+=10){for(let c=0;c<10;c++)n[c]=t[a+c];for(let c=0;c<10;c++)t[a+c]^=~n[(c+2)%10]&n[(c+4)%10]}t[0]^=dje[r],t[1]^=fje[r]}Dp(n)}var sje,fR,aje,cje,lje,uje,qde,Wde,Vde,$de,dje,fje,zde,Hde,zG,pje,R5,ML=ce(()=>{p();LG();Jb();sje=BigInt(0),fR=BigInt(1),aje=BigInt(2),cje=BigInt(7),lje=BigInt(256),uje=BigInt(113),qde=[],Wde=[],Vde=[];for(let t=0,e=fR,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],qde.push(2*(5*r+n)),Wde.push((t+1)*(t+2)/2%64);let o=sje;for(let i=0;i<7;i++)e=(e<<fR^(e>>cje)*uje)%lje,e&aje&&(o^=fR<<(fR<<BigInt(i))-fR);Vde.push(o)}$de=EL(Vde,!0),dje=$de[0],fje=$de[1],zde=(t,e,n)=>n>32?Ade(t,e,n):_de(t,e,n),Hde=(t,e,n)=>n>32?Tde(t,e,n):Cde(t,e,n);zG=class t extends Lw{constructor(e,n,r,o=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=o,this.rounds=i,Nw(r),!(0<e&&e<200))throw new Error(\"only keccak-f1600 function is supported\");this.state=new Uint8Array(200),this.state32=vde(this.state)}clone(){return this._cloneInto()}keccak(){PG(this.state32),hje(this.state32,this.rounds),PG(this.state32),this.posOut=0,this.pos=0}update(e){Qb(this),e=x5(e),Zi(e);let{blockLen:n,state:r}=this,o=e.length;for(let i=0;i<o;){let a=Math.min(n-this.pos,o-i);for(let c=0;c<a;c++)r[this.pos++]^=e[i++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:n,pos:r,blockLen:o}=this;e[r]^=n,(n&128)!==0&&r===o-1&&this.keccak(),e[o-1]^=128,this.keccak()}writeInto(e){Qb(this,!1),Zi(e),this.finish();let n=this.state,{blockLen:r}=this;for(let o=0,i=e.length;o<i;){this.posOut>=r&&this.keccak();let a=Math.min(r-this.posOut,i-o);e.set(n.subarray(this.posOut,this.posOut+a),o),this.posOut+=a,o+=a}return e}xofInto(e){if(!this.enableXOF)throw new Error(\"XOF is not possible for this instance\");return this.writeInto(e)}xof(e){return Nw(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(vL(e,this),this.finished)throw new Error(\"digest() was already called\");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,Dp(this.state)}_cloneInto(e){let{blockLen:n,suffix:r,outputLen:o,rounds:i,enableXOF:a}=this;return e||(e=new t(n,r,o,a,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=o,e.enableXOF=a,e.destroyed=this.destroyed,e}},pje=(t,e,n)=>oR(()=>new zG(e,t,n)),R5=pje(1,136,256/8)});function Po(t,e){let n=e||\"hex\",r=R5(da(t,{strict:!1})?Lp(t):t);return n===\"bytes\"?r:Uo(r)}var zp=ce(()=>{p();ML();P0();hc();gn()});function Ty(t,e){if(HG.has(`${t}.${e}`))return HG.get(`${t}.${e}`);let n=e?`${e}${t.toLowerCase()}`:t.substring(2).toLowerCase(),r=Po(M0(n),\"bytes\"),o=(e?n.substring(`${e}0x`.length):n).split(\"\");for(let a=0;a<40;a+=2)r[a>>1]>>4>=8&&o[a]&&(o[a]=o[a].toUpperCase()),(r[a>>1]&15)>=8&&o[a+1]&&(o[a+1]=o[a+1].toUpperCase());let i=`0x${o.join(\"\")}`;return HG.set(`${t}.${e}`,i),i}function Fr(t,e){if(!Kr(t,{strict:!1}))throw new ci({address:t});return Ty(t,e)}var HG,tv=ce(()=>{p();D0();hc();zp();dR();hf();HG=new Ay(8192)});function Kr(t,e){let{strict:n=!0}=e??{},r=`${t}.${n}`;if(qG.has(r))return qG.get(r);let o=mje.test(t)?t.toLowerCase()===t?!0:n?Ty(t)===t:!0:!1;return qG.set(r,o),o}var mje,qG,hf=ce(()=>{p();dR();tv();mje=/^0x[a-fA-F0-9]{40}$/,qG=new Ay(8192)});function Hp(t,e,n,{strict:r}={}){return da(t,{strict:!1})?w4(t,e,n,{strict:r}):WG(t,e,n,{strict:r})}function Kde(t,e){if(typeof e==\"number\"&&e>0&&e>Jr(t)-1)throw new Y7({offset:e,position:\"start\",size:Jr(t)})}function Gde(t,e,n){if(typeof e==\"number\"&&typeof n==\"number\"&&Jr(t)!==n-e)throw new Y7({offset:n,position:\"end\",size:Jr(t)})}function WG(t,e,n,{strict:r}={}){Kde(t,e);let o=t.slice(e,n);return r&&Gde(o,e,n),o}function w4(t,e,n,{strict:r}={}){Kde(t,e);let o=`0x${t.replace(\"0x\",\"\").slice((e??0)*2,(n??t.length)*2)}`;return r&&Gde(o,e,n),o}var nv=ce(()=>{p();eL();P0();Mp()});function Zde(t){let{authorizationList:e}=t;if(e)for(let n of e){let{chainId:r}=n,o=n.address;if(!Kr(o))throw new ci({address:o});if(r<0)throw new T5({chainId:r})}NL(t)}function Yde(t){let{blobVersionedHashes:e}=t;if(e){if(e.length===0)throw new d4;for(let n of e){let r=Jr(n),o=Ei(Hp(n,0,1));if(r!==32)throw new TL({hash:n,size:r});if(o!==1)throw new RL({hash:n,version:o})}}NL(t)}function NL(t){let{chainId:e,maxPriorityFeePerGas:n,maxFeePerGas:r,to:o}=t;if(e<=0)throw new T5({chainId:e});if(o&&!Kr(o))throw new ci({address:o});if(r&&r>X_)throw new Up({maxFeePerGas:r});if(n&&r&&n>r)throw new Cy({maxFeePerGas:r,maxPriorityFeePerGas:n})}function Qde(t){let{chainId:e,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:o,to:i}=t;if(e<=0)throw new T5({chainId:e});if(i&&!Kr(i))throw new ci({address:i});if(n||o)throw new Be(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>X_)throw new Up({maxFeePerGas:r})}function Jde(t){let{chainId:e,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:o,to:i}=t;if(i&&!Kr(i))throw new ci({address:i});if(typeof e<\"u\"&&e<=0)throw new T5({chainId:e});if(n||o)throw new Be(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>X_)throw new Up({maxFeePerGas:r})}var Xde=ce(()=>{p();CG();D0();ir();UG();uR();jw();hf();Mp();nv();fc()});function LL(t){if(t.type)return t.type;if(typeof t.authorizationList<\"u\")return\"eip7702\";if(typeof t.blobs<\"u\"||typeof t.blobVersionedHashes<\"u\"||typeof t.maxFeePerBlobGas<\"u\"||typeof t.sidecars<\"u\")return\"eip4844\";if(typeof t.maxFeePerGas<\"u\"||typeof t.maxPriorityFeePerGas<\"u\")return\"eip1559\";if(typeof t.gasPrice<\"u\")return typeof t.accessList<\"u\"?\"eip2930\":\"legacy\";throw new hL({transaction:t})}var VG=ce(()=>{p();L0()});function hR(t){if(!t||t.length===0)return[];let e=[];for(let n=0;n<t.length;n++){let{address:r,storageKeys:o}=t[n];for(let i=0;i<o.length;i++)if(o[i].length-2!==64)throw new pL({storageKey:o[i]});if(!Kr(r,{strict:!1}))throw new ci({address:r});e.push([r,o])}return e}var efe=ce(()=>{p();D0();L0();hf()});function tfe(t,e){let n=LL(t);return n===\"eip1559\"?bje(t,e):n===\"eip2930\"?vje(t,e):n===\"eip4844\"?yje(t,e):n===\"eip7702\"?gje(t,e):wje(t,e)}function gje(t,e){let{authorizationList:n,chainId:r,gas:o,nonce:i,to:a,value:c,maxFeePerGas:u,maxPriorityFeePerGas:d,accessList:h,data:m}=t;Zde(t);let g=hR(h),b=pde(n);return fa([\"0x04\",N0([Ye(r),i?Ye(i):\"0x\",d?Ye(d):\"0x\",u?Ye(u):\"0x\",o?Ye(o):\"0x\",a??\"0x\",c?Ye(c):\"0x\",m??\"0x\",g,b,...s4(t,e)])])}function yje(t,e){let{chainId:n,gas:r,nonce:o,to:i,value:a,maxFeePerBlobGas:c,maxFeePerGas:u,maxPriorityFeePerGas:d,accessList:h,data:m}=t;Yde(t);let g=t.blobVersionedHashes,b=t.sidecars;if(t.blobs&&(typeof g>\"u\"||typeof b>\"u\")){let D=typeof t.blobs[0]==\"string\"?t.blobs:t.blobs.map(J=>Xr(J)),G=t.kzg,W=a4({blobs:D,kzg:G});if(typeof g>\"u\"&&(g=CL({commitments:W})),typeof b>\"u\"){let J=c4({blobs:D,commitments:W,kzg:G});b=IL({blobs:D,commitments:W,proofs:J})}}let E=hR(h),C=[Ye(n),o?Ye(o):\"0x\",d?Ye(d):\"0x\",u?Ye(u):\"0x\",r?Ye(r):\"0x\",i??\"0x\",a?Ye(a):\"0x\",m??\"0x\",E,c?Ye(c):\"0x\",g??[],...s4(t,e)],T=[],R=[],L=[];if(b)for(let D=0;D<b.length;D++){let{blob:G,commitment:W,proof:J}=b[D];T.push(G),R.push(W),L.push(J)}return fa([\"0x03\",b?N0([C,T,R,L]):N0(C)])}function bje(t,e){let{chainId:n,gas:r,nonce:o,to:i,value:a,maxFeePerGas:c,maxPriorityFeePerGas:u,accessList:d,data:h}=t;NL(t);let m=hR(d),g=[Ye(n),o?Ye(o):\"0x\",u?Ye(u):\"0x\",c?Ye(c):\"0x\",r?Ye(r):\"0x\",i??\"0x\",a?Ye(a):\"0x\",h??\"0x\",m,...s4(t,e)];return fa([\"0x02\",N0(g)])}function vje(t,e){let{chainId:n,gas:r,data:o,nonce:i,to:a,value:c,accessList:u,gasPrice:d}=t;Qde(t);let h=hR(u),m=[Ye(n),i?Ye(i):\"0x\",d?Ye(d):\"0x\",r?Ye(r):\"0x\",a??\"0x\",c?Ye(c):\"0x\",o??\"0x\",h,...s4(t,e)];return fa([\"0x01\",N0(m)])}function wje(t,e){let{chainId:n=0,gas:r,data:o,nonce:i,to:a,value:c,gasPrice:u}=t;Jde(t);let d=[i?Ye(i):\"0x\",u?Ye(u):\"0x\",r?Ye(r):\"0x\",a??\"0x\",c?Ye(c):\"0x\",o??\"0x\"];if(e){let h=(()=>{if(e.v>=35n)return(e.v-35n)/2n>0?e.v:27n+(e.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+e.v-27n);let b=27n+(e.v===27n?0n:1n);if(e.v!==b)throw new fL({v:e.v});return b})(),m=Fs(e.r),g=Fs(e.s);d=[...d,Ye(h),m===\"0x00\"?\"0x\":m,g===\"0x00\"?\"0x\":g]}else n>0&&(d=[...d,Ye(n),\"0x\",\"0x\"]);return N0(d)}function s4(t,e){let n=e??t,{v:r,yParity:o}=n;if(typeof n.r>\"u\")return[];if(typeof n.s>\"u\")return[];if(typeof r>\"u\"&&typeof o>\"u\")return[];let i=Fs(n.r),a=Fs(n.s);return[typeof o==\"number\"?o?Ye(1):\"0x\":r===0n?\"0x\":r===1n?Ye(1):r===27n?\"0x\":Ye(1),i===\"0x00\"?\"0x\":i,a===\"0x00\"?\"0x\":a]}var OG=ce(()=>{p();L0();mde();yL();bL();FG();jG();iu();Pw();gn();aL();Xde();VG();efe()});var nfe,rfe=ce(()=>{p();nfe={gasPriceOracle:{address:\"0x420000000000000000000000000000000000000F\"},l1Block:{address:\"0x4200000000000000000000000000000000000015\"},l2CrossDomainMessenger:{address:\"0x4200000000000000000000000000000000000007\"},l2Erc721Bridge:{address:\"0x4200000000000000000000000000000000000014\"},l2StandardBridge:{address:\"0x4200000000000000000000000000000000000010\"},l2ToL1MessagePasser:{address:\"0x4200000000000000000000000000000000000016\"}}});var ofe,ife=ce(()=>{p();fc();rL();tR();oL();ofe={block:ude({format(t){return{transactions:t.transactions?.map(n=>{if(typeof n==\"string\")return n;let r=y5(n);return r.typeHex===\"0x7e\"&&(r.isSystemTx=n.isSystemTx,r.mint=n.mint?jo(n.mint):void 0,r.sourceHash=n.sourceHash,r.type=\"deposit\"),r}),stateRoot:t.stateRoot}}}),transaction:lde({format(t){let e={};return t.type===\"0x7e\"&&(e.isSystemTx=t.isSystemTx,e.mint=t.mint?jo(t.mint):void 0,e.sourceHash=t.sourceHash,e.type=\"deposit\"),e}}),transactionReceipt:dde({format(t){return{l1GasPrice:t.l1GasPrice?jo(t.l1GasPrice):null,l1GasUsed:t.l1GasUsed?jo(t.l1GasUsed):null,l1Fee:t.l1Fee?jo(t.l1Fee):null,l1FeeScalar:t.l1FeeScalar?Number(t.l1FeeScalar):null}}})}});function xje(t,e){return Sje(t)?Eje(t):tfe(t,e)}function Eje(t){kje(t);let{sourceHash:e,data:n,from:r,gas:o,isSystemTx:i,mint:a,to:c,value:u}=t,d=[e,r,c??\"0x\",a?Uo(a):\"0x\",u?Uo(u):\"0x\",o?Uo(o):\"0x\",i?\"0x1\":\"0x\",n??\"0x\"];return fa([\"0x7e\",N0(d)])}function Sje(t){return t.type===\"deposit\"||typeof t.sourceHash<\"u\"}function kje(t){let{from:e,to:n}=t;if(e&&!Kr(e))throw new ci({address:e});if(n&&!Kr(n))throw new ci({address:n})}var sfe,afe=ce(()=>{p();D0();hf();iu();gn();aL();OG();sfe={transaction:xje}});var qp,pR=ce(()=>{p();rfe();ife();afe();qp={blockTime:2e3,contracts:nfe,formatters:ofe,serializers:sfe}});var $G,cfe=ce(()=>{p();O0();$G=Ba({id:42161,name:\"Arbitrum One\",nativeCurrency:{name:\"Ether\",symbol:\"ETH\",decimals:18},rpcUrls:{default:{http:[\"https://arb1.arbitrum.io/rpc\"]}},blockExplorers:{default:{name:\"Arbiscan\",url:\"https://arbiscan.io\",apiUrl:\"https://api.arbiscan.io/api\"}},contracts:{multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:7654707}}})});var KG,lfe=ce(()=>{p();O0();KG=Ba({id:421614,name:\"Arbitrum Sepolia\",nativeCurrency:{name:\"Arbitrum Sepolia Ether\",symbol:\"ETH\",decimals:18},rpcUrls:{default:{http:[\"https://sepolia-rollup.arbitrum.io/rpc\"]}},blockExplorers:{default:{name:\"Arbiscan\",url:\"https://sepolia.arbiscan.io\",apiUrl:\"https://api-sepolia.arbiscan.io/api\"}},contracts:{multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:81930}},testnet:!0})});var mR,Yn,ufe=ce(()=>{p();pR();O0();mR=1,Yn=Ba({...qp,id:8453,name:\"Base\",nativeCurrency:{name:\"Ether\",symbol:\"ETH\",decimals:18},rpcUrls:{default:{http:[\"https://mainnet.base.org\"]}},blockExplorers:{default:{name:\"Basescan\",url:\"https://basescan.org\",apiUrl:\"https://api.basescan.org/api\"}},contracts:{...qp.contracts,disputeGameFactory:{[mR]:{address:\"0x43edB88C4B80fDD2AdFF2412A7BebF9dF42cB40e\"}},l2OutputOracle:{[mR]:{address:\"0x56315b90c40730925ec5485cf004d835058518A0\"}},multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:5022},portal:{[mR]:{address:\"0x49048044D57e1C92A77f79988d21Fa8fAF74E97e\",blockCreated:17482143}},l1StandardBridge:{[mR]:{address:\"0x3154Cf16ccdb4C6d922629664174b904d80F2C35\",blockCreated:17482143}}},sourceId:mR})});var gR,xs,dfe=ce(()=>{p();pR();O0();gR=11155111,xs=Ba({...qp,id:84532,network:\"base-sepolia\",name:\"Base Sepolia\",nativeCurrency:{name:\"Sepolia Ether\",symbol:\"ETH\",decimals:18},rpcUrls:{default:{http:[\"https://sepolia.base.org\"]}},blockExplorers:{default:{name:\"Basescan\",url:\"https://sepolia.basescan.org\",apiUrl:\"https://api-sepolia.basescan.org/api\"}},contracts:{...qp.contracts,disputeGameFactory:{[gR]:{address:\"0xd6E6dBf4F7EA0ac412fD8b65ED297e64BB7a06E1\"}},l2OutputOracle:{[gR]:{address:\"0x84457ca9D0163FbC4bbfe4Dfbb20ba46e48DF254\"}},portal:{[gR]:{address:\"0x49f53e41452c74589e85ca1677426ba426459e85\",blockCreated:4446677}},l1StandardBridge:{[gR]:{address:\"0xfd0Bf71F60660E2f608ed56e1659C450eB113120\",blockCreated:4446677}},multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:1059647}},testnet:!0,sourceId:gR})});function BL({chain:t,currentChainId:e}){if(!t)throw new PL;if(e!==t.id)throw new OL({chain:t,currentChainId:e})}var GG=ce(()=>{p();uR()});function Wp({blockNumber:t,chain:e,contract:n}){let r=e?.contracts?.[n];if(!r)throw new A5({chain:e,contract:{name:n}});if(t&&r.blockCreated&&r.blockCreated>t)throw new A5({blockNumber:t,chain:e,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var I5=ce(()=>{p();uR()});function Wn(t){return typeof t==\"string\"?{address:t,type:\"json-rpc\"}:t}var js=ce(()=>{p()});var su,zw,Hw=ce(()=>{p();ir();su=class extends Be{constructor({docsPath:e}={}){super([\"Could not find an Account to execute with this Action.\",\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\\n`),{docsPath:e,docsSlug:\"account\",name:\"AccountNotFoundError\"})}},zw=class extends Be{constructor({docsPath:e,metaMessages:n,type:r}){super(`Account type \"${r}\" is not supported.`,{docsPath:e,metaMessages:n,name:\"AccountTypeNotSupportedError\"})}}});var DL,FL,ffe,yR=ce(()=>{p();DL={1:\"An `assert` condition failed.\",17:\"Arithmetic operation resulted in underflow or overflow.\",18:\"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).\",33:\"Attempted to convert to an invalid type.\",34:\"Attempted to access a storage byte array that is incorrectly encoded.\",49:\"Performed `.pop()` on an empty array\",50:\"Array index is out of bounds.\",65:\"Allocated too much memory or created an array which is too large.\",81:\"Attempted to call a zero-initialized variable of internal function type.\"},FL={inputs:[{name:\"message\",type:\"string\"}],name:\"Error\",type:\"error\"},ffe={inputs:[{name:\"reason\",type:\"uint256\"}],name:\"Panic\",type:\"error\"}});function mc(t,{includeName:e=!1}={}){if(t.type!==\"function\"&&t.type!==\"event\"&&t.type!==\"error\")throw new UL(t.type);return`${t.name}(${bR(t.inputs,{includeName:e})})`}function bR(t,{includeName:e=!1}={}){return t?t.map(n=>_je(n,{includeName:e})).join(e?\", \":\",\"):\"\"}function _je(t,{includeName:e}){return t.type.startsWith(\"tuple\")?`(${bR(t.components,{includeName:e})})${t.type.slice(5)}`:t.type+(e&&t.name?` ${t.name}`:\"\")}var rv=ce(()=>{p();Es()});var jL,vR,x4,Vp,zL,HL,E4,qL,wR,S4,WL,k4,xR,F0,_4,VL,$L,C4,U0,Ry,KL,GL,A4,UL,ZL,Es=ce(()=>{p();rv();Mp();ir();jL=class extends Be{constructor({docsPath:e}){super([\"A constructor was not found on the ABI.\",\"Make sure you are using the correct ABI and that the constructor exists on it.\"].join(`\\n`),{docsPath:e,name:\"AbiConstructorNotFoundError\"})}},vR=class extends Be{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\\n`),{docsPath:e,name:\"AbiConstructorParamsNotFoundError\"})}},x4=class extends Be{constructor({data:e,params:n,size:r}){super([`Data size of ${r} bytes is too small for given parameters.`].join(`\\n`),{metaMessages:[`Params: (${bR(n,{includeName:!0})})`,`Data:   ${e} (${r} bytes)`],name:\"AbiDecodingDataSizeTooSmallError\"}),Object.defineProperty(this,\"data\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"params\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"size\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e,this.params=n,this.size=r}},Vp=class extends Be{constructor(){super(\\'Cannot decode zero data (\"0x\") with ABI parameters.\\',{name:\"AbiDecodingZeroDataError\"})}},zL=class extends Be{constructor({expectedLength:e,givenLength:n,type:r}){super([`ABI encoding array length mismatch for type ${r}.`,`Expected length: ${e}`,`Given length: ${n}`].join(`\\n`),{name:\"AbiEncodingArrayLengthMismatchError\"})}},HL=class extends Be{constructor({expectedSize:e,value:n}){super(`Size of bytes \"${n}\" (bytes${Jr(n)}) does not match expected size (bytes${e}).`,{name:\"AbiEncodingBytesSizeMismatchError\"})}},E4=class extends Be{constructor({expectedLength:e,givenLength:n}){super([\"ABI encoding params/values length mismatch.\",`Expected length (params): ${e}`,`Given length (values): ${n}`].join(`\\n`),{name:\"AbiEncodingLengthMismatchError\"})}},qL=class extends Be{constructor(e,{docsPath:n}){super([`Arguments (\\\\`args\\\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\\\`inputs\\\\`).`,\"Cannot encode error result without knowing what the parameter types are.\",\"Make sure you are using the correct ABI and that the inputs exist on it.\"].join(`\\n`),{docsPath:n,name:\"AbiErrorInputsNotFoundError\"})}},wR=class extends Be{constructor(e,{docsPath:n}={}){super([`Error ${e?`\"${e}\" `:\"\"}not found on ABI.`,\"Make sure you are using the correct ABI and that the error exists on it.\"].join(`\\n`),{docsPath:n,name:\"AbiErrorNotFoundError\"})}},S4=class extends Be{constructor(e,{docsPath:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,\"Make sure you are using the correct ABI and that the error exists on it.\",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${e}.`].join(`\\n`),{docsPath:n,name:\"AbiErrorSignatureNotFoundError\"}),Object.defineProperty(this,\"signature\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},WL=class extends Be{constructor({docsPath:e}){super(\"Cannot extract event signature from empty topics.\",{docsPath:e,name:\"AbiEventSignatureEmptyTopicsError\"})}},k4=class extends Be{constructor(e,{docsPath:n}){super([`Encoded event signature \"${e}\" not found on ABI.`,\"Make sure you are using the correct ABI and that the event exists on it.\",`You can look up the signature here: https://openchain.xyz/signatures?query=${e}.`].join(`\\n`),{docsPath:n,name:\"AbiEventSignatureNotFoundError\"})}},xR=class extends Be{constructor(e,{docsPath:n}={}){super([`Event ${e?`\"${e}\" `:\"\"}not found on ABI.`,\"Make sure you are using the correct ABI and that the event exists on it.\"].join(`\\n`),{docsPath:n,name:\"AbiEventNotFoundError\"})}},F0=class extends Be{constructor(e,{docsPath:n}={}){super([`Function ${e?`\"${e}\" `:\"\"}not found on ABI.`,\"Make sure you are using the correct ABI and that the function exists on it.\"].join(`\\n`),{docsPath:n,name:\"AbiFunctionNotFoundError\"})}},_4=class extends Be{constructor(e,{docsPath:n}){super([`Function \"${e}\" does not contain any \\\\`outputs\\\\` on ABI.`,\"Cannot decode function result without knowing what the parameter types are.\",\"Make sure you are using the correct ABI and that the function exists on it.\"].join(`\\n`),{docsPath:n,name:\"AbiFunctionOutputsNotFoundError\"})}},VL=class extends Be{constructor(e,{docsPath:n}){super([`Encoded function signature \"${e}\" not found on ABI.`,\"Make sure you are using the correct ABI and that the function exists on it.\",`You can look up the signature here: https://openchain.xyz/signatures?query=${e}.`].join(`\\n`),{docsPath:n,name:\"AbiFunctionSignatureNotFoundError\"})}},$L=class extends Be{constructor(e,n){super(\"Found ambiguous types in overloaded ABI items.\",{metaMessages:[`\\\\`${e.type}\\\\` in \\\\`${mc(e.abiItem)}\\\\`, and`,`\\\\`${n.type}\\\\` in \\\\`${mc(n.abiItem)}\\\\``,\"\",\"These types encode differently and cannot be distinguished at runtime.\",\"Remove one of the ambiguous items in the ABI.\"],name:\"AbiItemAmbiguityError\"})}},C4=class extends Be{constructor({expectedSize:e,givenSize:n}){super(`Expected bytes${e}, got bytes${n}.`,{name:\"BytesSizeMismatchError\"})}},U0=class extends Be{constructor({abiItem:e,data:n,params:r,size:o}){super([`Data size of ${o} bytes is too small for non-indexed event parameters.`].join(`\\n`),{metaMessages:[`Params: (${bR(r,{includeName:!0})})`,`Data:   ${n} (${o} bytes)`],name:\"DecodeLogDataMismatch\"}),Object.defineProperty(this,\"abiItem\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"data\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"params\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"size\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e,this.data=n,this.params=r,this.size=o}},Ry=class extends Be{constructor({abiItem:e,param:n}){super([`Expected a topic for indexed event parameter${n.name?` \"${n.name}\"`:\"\"} on event \"${mc(e,{includeName:!0})}\".`].join(`\\n`),{name:\"DecodeLogTopicsMismatch\"}),Object.defineProperty(this,\"abiItem\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},KL=class extends Be{constructor(e,{docsPath:n}){super([`Type \"${e}\" is not a valid encoding type.`,\"Please provide a valid ABI type.\"].join(`\\n`),{docsPath:n,name:\"InvalidAbiEncodingType\"})}},GL=class extends Be{constructor(e,{docsPath:n}){super([`Type \"${e}\" is not a valid decoding type.`,\"Please provide a valid ABI type.\"].join(`\\n`),{docsPath:n,name:\"InvalidAbiDecodingType\"})}},A4=class extends Be{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\\n`),{name:\"InvalidArrayError\"})}},UL=class extends Be{constructor(e){super([`\"${e}\" is not a valid definition type.`,\\'Valid types: \"function\", \"event\", \"error\"\\'].join(`\\n`),{name:\"InvalidDefinitionTypeError\"})}},ZL=class extends Be{constructor(e){super(`Type \"${e}\" is not supported for packed encoding.`,{name:\"UnsupportedPackedAbiType\"})}}});function hfe(t){return Cje(t)}var Cje,pfe=ce(()=>{p();hc();zp();Cje=t=>Po(Lp(t))});var mfe,gfe=ce(()=>{p();mfe=\"1.0.8\"});var Fa,T4=ce(()=>{p();gfe();Fa=class t extends Error{constructor(e,n={}){let r=n.cause instanceof t?n.cause.details:n.cause?.message?n.cause.message:n.details,o=n.cause instanceof t&&n.cause.docsPath||n.docsPath,i=[e||\"An error occurred.\",\"\",...n.metaMessages?[...n.metaMessages,\"\"]:[],...o?[`Docs: https://abitype.dev${o}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${mfe}`].join(`\\n`);super(i),Object.defineProperty(this,\"details\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"docsPath\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"metaMessages\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"shortMessage\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"AbiTypeError\"}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=o,this.metaMessages=n.metaMessages,this.shortMessage=e}}});function yh(t,e){return t.exec(e)?.groups}var ZG,YG,YL,ER=ce(()=>{p();ZG=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,YG=/^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)?$/,YL=/^\\\\(.+?\\\\).*?$/});function QL(t){let e=t.type;if(yfe.test(t.type)&&\"components\"in t){e=\"(\";let n=t.components.length;for(let o=0;o<n;o++){let i=t.components[o];e+=QL(i),o<n-1&&(e+=\", \")}let r=yh(yfe,t.type);return e+=`)${r?.array??\"\"}`,QL({...t,type:e})}return\"indexed\"in t&&t.indexed&&(e=`${e} indexed`),t.name?`${e} ${t.name}`:e}var yfe,bfe=ce(()=>{p();ER();yfe=/^tuple(?<array>(\\\\[(\\\\d*)\\\\])*)$/});function R4(t){let e=\"\",n=t.length;for(let r=0;r<n;r++){let o=t[r];e+=QL(o),r!==n-1&&(e+=\", \")}return e}var vfe=ce(()=>{p();bfe()});function O5(t){return t.type===\"function\"?`function ${t.name}(${R4(t.inputs)})${t.stateMutability&&t.stateMutability!==\"nonpayable\"?` ${t.stateMutability}`:\"\"}${t.outputs?.length?` returns (${R4(t.outputs)})`:\"\"}`:t.type===\"event\"?`event ${t.name}(${R4(t.inputs)})`:t.type===\"error\"?`error ${t.name}(${R4(t.inputs)})`:t.type===\"constructor\"?`constructor(${R4(t.inputs)})${t.stateMutability===\"payable\"?\" payable\":\"\"}`:t.type===\"fallback\"?`fallback() external${t.stateMutability===\"payable\"?\" payable\":\"\"}`:\"receive() external payable\"}var wfe=ce(()=>{p();vfe()});function Efe(t){return xfe.test(t)}function Sfe(t){return yh(xfe,t)}function _fe(t){return kfe.test(t)}function Cfe(t){return yh(kfe,t)}function Tfe(t){return Afe.test(t)}function Rfe(t){return yh(Afe,t)}function I4(t){return Ife.test(t)}function Ofe(t){return yh(Ife,t)}function Mfe(t){return Pfe.test(t)}function Nfe(t){return yh(Pfe,t)}function Bfe(t){return Lfe.test(t)}function Dfe(t){return yh(Lfe,t)}function Ffe(t){return Aje.test(t)}var xfe,kfe,Afe,Ife,Pfe,Lfe,Aje,Ufe,JL,SR=ce(()=>{p();ER();xfe=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\\\((?<parameters>.*?)\\\\)$/;kfe=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\\\((?<parameters>.*?)\\\\)$/;Afe=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\\\((?<parameters>.*?)\\\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\\\s?\\\\((?<returns>.*?)\\\\))?$/;Ife=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\\\{(?<properties>.*?)\\\\}$/;Pfe=/^constructor\\\\((?<parameters>.*?)\\\\)(?:\\\\s(?<stateMutability>payable{1}))?$/;Lfe=/^fallback\\\\(\\\\) external(?:\\\\s(?<stateMutability>payable{1}))?$/;Aje=/^receive\\\\(\\\\) external payable$/;Ufe=new Set([\"indexed\"]),JL=new Set([\"calldata\",\"memory\",\"storage\"])});var kR,_R,XL,eB=ce(()=>{p();T4();kR=class extends Fa{constructor({signature:e}){super(\"Failed to parse ABI item.\",{details:`parseAbiItem(${JSON.stringify(e,null,2)})`,docsPath:\"/api/human#parseabiitem-1\"}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"InvalidAbiItemError\"})}},_R=class extends Fa{constructor({type:e}){super(\"Unknown type.\",{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"UnknownTypeError\"})}},XL=class extends Fa{constructor({type:e}){super(\"Unknown type.\",{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"UnknownSolidityTypeError\"})}}});var CR,AR,TR,RR,IR,QG=ce(()=>{p();T4();CR=class extends Fa{constructor({param:e}){super(\"Invalid ABI parameter.\",{details:e}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"InvalidParameterError\"})}},AR=class extends Fa{constructor({param:e,name:n}){super(\"Invalid ABI parameter.\",{details:e,metaMessages:[`\"${n}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"SolidityProtectedKeywordError\"})}},TR=class extends Fa{constructor({param:e,type:n,modifier:r}){super(\"Invalid ABI parameter.\",{details:e,metaMessages:[`Modifier \"${r}\" not allowed${n?` in \"${n}\" type`:\"\"}.`]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"InvalidModifierError\"})}},RR=class extends Fa{constructor({param:e,type:n,modifier:r}){super(\"Invalid ABI parameter.\",{details:e,metaMessages:[`Modifier \"${r}\" not allowed${n?` in \"${n}\" type`:\"\"}.`,`Data location can only be specified for array, struct, or mapping types, but \"${r}\" was given.`]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"InvalidFunctionModifierError\"})}},IR=class extends Fa{constructor({abiParameter:e}){super(\"Invalid ABI parameter.\",{details:JSON.stringify(e,null,2),metaMessages:[\"ABI parameter type is invalid.\"]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"InvalidAbiTypeParameterError\"})}}});var j0,OR,PR,JG=ce(()=>{p();T4();j0=class extends Fa{constructor({signature:e,type:n}){super(`Invalid ${n} signature.`,{details:e}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"InvalidSignatureError\"})}},OR=class extends Fa{constructor({signature:e}){super(\"Unknown signature.\",{details:e}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"UnknownSignatureError\"})}},PR=class extends Fa{constructor({signature:e}){super(\"Invalid struct signature.\",{details:e,metaMessages:[\"No properties exist.\"]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"InvalidStructSignatureError\"})}}});var MR,jfe=ce(()=>{p();T4();MR=class extends Fa{constructor({type:e}){super(\"Circular reference detected.\",{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"CircularReferenceError\"})}}});var NR,zfe=ce(()=>{p();T4();NR=class extends Fa{constructor({current:e,depth:n}){super(\"Unbalanced parentheses.\",{metaMessages:[`\"${e.trim()}\" has too many ${n>0?\"opening\":\"closing\"} parentheses.`],details:`Depth \"${n}\"`}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"InvalidParenthesisError\"})}}});function Hfe(t,e,n){let r=\"\";if(n)for(let o of Object.entries(n)){if(!o)continue;let i=\"\";for(let a of o[1])i+=`[${a.type}${a.name?`:${a.name}`:\"\"}]`;r+=`(${o[0]}{${i}})`}return e?`${e}:${t}${r}`:t}var tB,qfe=ce(()=>{p();tB=new Map([[\"address\",{type:\"address\"}],[\"bool\",{type:\"bool\"}],[\"bytes\",{type:\"bytes\"}],[\"bytes32\",{type:\"bytes32\"}],[\"int\",{type:\"int256\"}],[\"int256\",{type:\"int256\"}],[\"string\",{type:\"string\"}],[\"uint\",{type:\"uint256\"}],[\"uint8\",{type:\"uint8\"}],[\"uint16\",{type:\"uint16\"}],[\"uint24\",{type:\"uint24\"}],[\"uint32\",{type:\"uint32\"}],[\"uint64\",{type:\"uint64\"}],[\"uint96\",{type:\"uint96\"}],[\"uint112\",{type:\"uint112\"}],[\"uint160\",{type:\"uint160\"}],[\"uint192\",{type:\"uint192\"}],[\"uint256\",{type:\"uint256\"}],[\"address owner\",{type:\"address\",name:\"owner\"}],[\"address to\",{type:\"address\",name:\"to\"}],[\"bool approved\",{type:\"bool\",name:\"approved\"}],[\"bytes _data\",{type:\"bytes\",name:\"_data\"}],[\"bytes data\",{type:\"bytes\",name:\"data\"}],[\"bytes signature\",{type:\"bytes\",name:\"signature\"}],[\"bytes32 hash\",{type:\"bytes32\",name:\"hash\"}],[\"bytes32 r\",{type:\"bytes32\",name:\"r\"}],[\"bytes32 root\",{type:\"bytes32\",name:\"root\"}],[\"bytes32 s\",{type:\"bytes32\",name:\"s\"}],[\"string name\",{type:\"string\",name:\"name\"}],[\"string symbol\",{type:\"string\",name:\"symbol\"}],[\"string tokenURI\",{type:\"string\",name:\"tokenURI\"}],[\"uint tokenId\",{type:\"uint256\",name:\"tokenId\"}],[\"uint8 v\",{type:\"uint8\",name:\"v\"}],[\"uint256 balance\",{type:\"uint256\",name:\"balance\"}],[\"uint256 tokenId\",{type:\"uint256\",name:\"tokenId\"}],[\"uint256 value\",{type:\"uint256\",name:\"value\"}],[\"event:address indexed from\",{type:\"address\",name:\"from\",indexed:!0}],[\"event:address indexed to\",{type:\"address\",name:\"to\",indexed:!0}],[\"event:uint indexed tokenId\",{type:\"uint256\",name:\"tokenId\",indexed:!0}],[\"event:uint256 indexed tokenId\",{type:\"uint256\",name:\"tokenId\",indexed:!0}]])});function LR(t,e={}){if(Tfe(t))return Tje(t,e);if(_fe(t))return Rje(t,e);if(Efe(t))return Ije(t,e);if(Mfe(t))return Oje(t,e);if(Bfe(t))return Pje(t);if(Ffe(t))return{type:\"receive\",stateMutability:\"payable\"};throw new OR({signature:t})}function Tje(t,e={}){let n=Rfe(t);if(!n)throw new j0({signature:t,type:\"function\"});let r=z0(n.parameters),o=[],i=r.length;for(let c=0;c<i;c++)o.push(qw(r[c],{modifiers:JL,structs:e,type:\"function\"}));let a=[];if(n.returns){let c=z0(n.returns),u=c.length;for(let d=0;d<u;d++)a.push(qw(c[d],{modifiers:JL,structs:e,type:\"function\"}))}return{name:n.name,type:\"function\",stateMutability:n.stateMutability??\"nonpayable\",inputs:o,outputs:a}}function Rje(t,e={}){let n=Cfe(t);if(!n)throw new j0({signature:t,type:\"event\"});let r=z0(n.parameters),o=[],i=r.length;for(let a=0;a<i;a++)o.push(qw(r[a],{modifiers:Ufe,structs:e,type:\"event\"}));return{name:n.name,type:\"event\",inputs:o}}function Ije(t,e={}){let n=Sfe(t);if(!n)throw new j0({signature:t,type:\"error\"});let r=z0(n.parameters),o=[],i=r.length;for(let a=0;a<i;a++)o.push(qw(r[a],{structs:e,type:\"error\"}));return{name:n.name,type:\"error\",inputs:o}}function Oje(t,e={}){let n=Nfe(t);if(!n)throw new j0({signature:t,type:\"constructor\"});let r=z0(n.parameters),o=[],i=r.length;for(let a=0;a<i;a++)o.push(qw(r[a],{structs:e,type:\"constructor\"}));return{type:\"constructor\",stateMutability:n.stateMutability??\"nonpayable\",inputs:o}}function Pje(t){let e=Dfe(t);if(!e)throw new j0({signature:t,type:\"fallback\"});return{type:\"fallback\",stateMutability:e.stateMutability??\"nonpayable\"}}function qw(t,e){let n=Hfe(t,e?.type,e?.structs);if(tB.has(n))return tB.get(n);let r=YL.test(t),o=yh(r?Nje:Mje,t);if(!o)throw new CR({param:t});if(o.name&&Dje(o.name))throw new AR({param:t,name:o.name});let i=o.name?{name:o.name}:{},a=o.modifier===\"indexed\"?{indexed:!0}:{},c=e?.structs??{},u,d={};if(r){u=\"tuple\";let m=z0(o.type),g=[],b=m.length;for(let E=0;E<b;E++)g.push(qw(m[E],{structs:c}));d={components:g}}else if(o.type in c)u=\"tuple\",d={components:c[o.type]};else if(Lje.test(o.type))u=`${o.type}256`;else if(u=o.type,e?.type!==\"struct\"&&!XG(u))throw new XL({type:u});if(o.modifier){if(!e?.modifiers?.has?.(o.modifier))throw new TR({param:t,type:e?.type,modifier:o.modifier});if(JL.has(o.modifier)&&!Fje(u,!!o.array))throw new RR({param:t,type:e?.type,modifier:o.modifier})}let h={type:`${u}${o.array??\"\"}`,...i,...a,...d};return tB.set(n,h),h}function z0(t,e=[],n=\"\",r=0){let o=t.trim().length;for(let i=0;i<o;i++){let a=t[i],c=t.slice(i+1);switch(a){case\",\":return r===0?z0(c,[...e,n.trim()]):z0(c,e,`${n}${a}`,r);case\"(\":return z0(c,e,`${n}${a}`,r+1);case\")\":return z0(c,e,`${n}${a}`,r-1);default:return z0(c,e,`${n}${a}`,r)}}if(n===\"\")return e;if(r!==0)throw new NR({current:n,depth:r});return e.push(n.trim()),e}function XG(t){return t===\"address\"||t===\"bool\"||t===\"function\"||t===\"string\"||ZG.test(t)||YG.test(t)}function Dje(t){return t===\"address\"||t===\"bool\"||t===\"function\"||t===\"string\"||t===\"tuple\"||ZG.test(t)||YG.test(t)||Bje.test(t)}function Fje(t,e){return e||t===\"bytes\"||t===\"string\"||t===\"tuple\"}var Mje,Nje,Lje,Bje,nB=ce(()=>{p();ER();eB();QG();JG();zfe();qfe();SR();Mje=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\\\[\\\\d*?\\\\])+?)?(?:\\\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Nje=/^\\\\((?<type>.+?)\\\\)(?<array>(?:\\\\[\\\\d*?\\\\])+?)?(?:\\\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Lje=/^u?int$/;Bje=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/});function rB(t){let e={},n=t.length;for(let a=0;a<n;a++){let c=t[a];if(!I4(c))continue;let u=Ofe(c);if(!u)throw new j0({signature:c,type:\"struct\"});let d=u.properties.split(\";\"),h=[],m=d.length;for(let g=0;g<m;g++){let E=d[g].trim();if(!E)continue;let C=qw(E,{type:\"struct\"});h.push(C)}if(!h.length)throw new PR({signature:c});e[u.name]=h}let r={},o=Object.entries(e),i=o.length;for(let a=0;a<i;a++){let[c,u]=o[a];r[c]=Wfe(u,e)}return r}function Wfe(t,e,n=new Set){let r=[],o=t.length;for(let i=0;i<o;i++){let a=t[i];if(YL.test(a.type))r.push(a);else{let u=yh(Uje,a.type);if(!u?.type)throw new IR({abiParameter:a});let{array:d,type:h}=u;if(h in e){if(n.has(h))throw new MR({type:h});r.push({...a,type:`tuple${d??\"\"}`,components:Wfe(e[h]??[],e,new Set([...n,h]))})}else if(XG(h))r.push(a);else throw new _R({type:h})}}return r}var Uje,eZ=ce(()=>{p();ER();eB();QG();JG();jfe();SR();nB();Uje=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\\\[\\\\d*?\\\\])+?)?$/});function P5(t){let e=rB(t),n=[],r=t.length;for(let o=0;o<r;o++){let i=t[o];I4(i)||n.push(LR(i,e))}return n}var Vfe=ce(()=>{p();SR();eZ();nB()});function BR(t){let e;if(typeof t==\"string\")e=LR(t);else{let n=rB(t),r=t.length;for(let o=0;o<r;o++){let i=t[o];if(!I4(i)){e=LR(i,n);break}}}if(!e)throw new kR({signature:t});return e}var $fe=ce(()=>{p();eB();SR();eZ();nB()});var DR=ce(()=>{p();wfe();Vfe();$fe()});function Kfe(t){let e=!0,n=\"\",r=0,o=\"\",i=!1;for(let a=0;a<t.length;a++){let c=t[a];if([\"(\",\")\",\",\"].includes(c)&&(e=!0),c===\"(\"&&r++,c===\")\"&&r--,!!e){if(r===0){if(c===\" \"&&[\"event\",\"function\",\"\"].includes(o))o=\"\";else if(o+=c,c===\")\"){i=!0;break}continue}if(c===\" \"){t[a-1]!==\",\"&&n!==\",\"&&n!==\",(\"&&(n=\"\",e=!1);continue}o+=c,n+=c}}if(!i)throw new Be(\"Unable to normalize signature.\");return o}var Gfe=ce(()=>{p();ir()});var Zfe,Yfe=ce(()=>{p();DR();Gfe();Zfe=t=>{let e=typeof t==\"string\"?t:O5(t);return Kfe(e)}});function oB(t){return hfe(Zfe(t))}var tZ=ce(()=>{p();pfe();Yfe()});var Iy,O4=ce(()=>{p();nv();tZ();Iy=t=>Hp(oB(t),0,4)});function Qfe(t,e={}){typeof e.size<\"u\"&&dd(t,{size:e.size});let n=Xr(t,e);return jo(n,e)}function Jfe(t,e={}){let n=t;if(typeof e.size<\"u\"&&(dd(n,{size:e.size}),n=Fs(n)),n.length>1||n[0]>1)throw new QN(n);return!!n[0]}function Oy(t,e={}){typeof e.size<\"u\"&&dd(t,{size:e.size});let n=Xr(t,e);return Ei(n,e)}function Xfe(t,e={}){let n=t;return typeof e.size<\"u\"&&(dd(n,{size:e.size}),n=Fs(n,{dir:\"right\"})),new TextDecoder().decode(n)}var ehe=ce(()=>{p();Z7();Pw();fc();gn()});var the,iB,P4,sB=ce(()=>{p();the=/^(.*)\\\\[([0-9]*)\\\\]$/,iB=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,P4=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/});function vl(t,e){if(t.length!==e.length)throw new E4({expectedLength:t.length,givenLength:e.length});let n=zje({params:t,values:e}),r=rZ(n);return r.length===0?\"0x\":r}function zje({params:t,values:e}){let n=[];for(let r=0;r<t.length;r++)n.push(nZ({param:t[r],value:e[r]}));return n}function nZ({param:t,value:e}){let n=aB(t.type);if(n){let[r,o]=n;return qje(e,{length:r,param:{...t,type:o}})}if(t.type===\"tuple\")return Gje(e,{param:t});if(t.type===\"address\")return Hje(e);if(t.type===\"bool\")return Vje(e);if(t.type.startsWith(\"uint\")||t.type.startsWith(\"int\")){let r=t.type.startsWith(\"int\"),[,,o=\"256\"]=P4.exec(t.type)??[];return $je(e,{signed:r,size:Number(o)})}if(t.type.startsWith(\"bytes\"))return Wje(e,{param:t});if(t.type===\"string\")return Kje(e);throw new KL(t.type,{docsPath:\"/docs/contract/encodeAbiParameters\"})}function rZ(t){let e=0;for(let i=0;i<t.length;i++){let{dynamic:a,encoded:c}=t[i];a?e+=32:e+=Jr(c)}let n=[],r=[],o=0;for(let i=0;i<t.length;i++){let{dynamic:a,encoded:c}=t[i];a?(n.push(Ye(e+o,{size:32})),r.push(c),o+=Jr(c)):n.push(c)}return Da([...n,...r])}function Hje(t){if(!Kr(t))throw new ci({address:t});return{dynamic:!1,encoded:Gb(t.toLowerCase())}}function qje(t,{length:e,param:n}){let r=e===null;if(!Array.isArray(t))throw new A4(t);if(!r&&t.length!==e)throw new zL({expectedLength:e,givenLength:t.length,type:`${n.type}[${e}]`});let o=!1,i=[];for(let a=0;a<t.length;a++){let c=nZ({param:n,value:t[a]});c.dynamic&&(o=!0),i.push(c)}if(r||o){let a=rZ(i);if(r){let c=Ye(i.length,{size:32});return{dynamic:!0,encoded:i.length>0?Da([c,a]):c}}if(o)return{dynamic:!0,encoded:a}}return{dynamic:!1,encoded:Da(i.map(({encoded:a})=>a))}}function Wje(t,{param:e}){let[,n]=e.type.split(\"bytes\"),r=Jr(t);if(!n){let o=t;return r%32!==0&&(o=Gb(o,{dir:\"right\",size:Math.ceil((t.length-2)/2/32)*32})),{dynamic:!0,encoded:Da([Gb(Ye(r,{size:32})),o])}}if(r!==Number.parseInt(n))throw new HL({expectedSize:Number.parseInt(n),value:t});return{dynamic:!1,encoded:Gb(t,{dir:\"right\"})}}function Vje(t){if(typeof t!=\"boolean\")throw new Be(`Invalid boolean value: \"${t}\" (type: ${typeof t}). Expected: \\\\`true\\\\` or \\\\`false\\\\`.`);return{dynamic:!1,encoded:Gb(Q_(t))}}function $je(t,{signed:e,size:n=256}){if(typeof n==\"number\"){let r=2n**(BigInt(n)-(e?1n:0n))-1n,o=e?-r-1n:0n;if(t>r||t<o)throw new Y_({max:r.toString(),min:o.toString(),signed:e,size:n/8,value:t.toString()})}return{dynamic:!1,encoded:Ye(t,{size:32,signed:e})}}function Kje(t){let e=gh(t),n=Math.ceil(Jr(e)/32),r=[];for(let o=0;o<n;o++)r.push(Gb(Hp(e,o*32,(o+1)*32),{dir:\"right\"}));return{dynamic:!0,encoded:Da([Gb(Ye(Jr(e),{size:32})),...r])}}function Gje(t,{param:e}){let n=!1,r=[];for(let o=0;o<e.components.length;o++){let i=e.components[o],a=Array.isArray(t)?o:i.name,c=nZ({param:i,value:t[a]});r.push(c),c.dynamic&&(n=!0)}return{dynamic:n,encoded:n?rZ(r):Da(r.map(({encoded:o})=>o))}}function aB(t){let e=t.match(/^(.*)\\\\[(\\\\d+)?\\\\]$/);return e?[e[2]?Number(e[2]):null,e[1]]:void 0}var Py=ce(()=>{p();Es();D0();ir();Z7();hf();iu();X7();Mp();nv();gn();sB()});function H0(t,e){let n=typeof e==\"string\"?Us(e):e,r=t4(n);if(Jr(n)===0&&t.length>0)throw new Vp;if(Jr(e)&&Jr(e)<32)throw new x4({data:typeof e==\"string\"?e:Xr(e),params:t,size:Jr(e)});let o=0,i=[];for(let a=0;a<t.length;++a){let c=t[a];r.setPosition(o);let[u,d]=M4(r,c,{staticPosition:0});o+=d,i.push(u)}return i}function M4(t,e,{staticPosition:n}){let r=aB(e.type);if(r){let[o,i]=r;return Yje(t,{...e,type:i},{length:o,staticPosition:n})}if(e.type===\"tuple\")return eze(t,e,{staticPosition:n});if(e.type===\"address\")return Zje(t);if(e.type===\"bool\")return Qje(t);if(e.type.startsWith(\"bytes\"))return Jje(t,e,{staticPosition:n});if(e.type.startsWith(\"uint\")||e.type.startsWith(\"int\"))return Xje(t,e);if(e.type===\"string\")return tze(t,{staticPosition:n});throw new GL(e.type,{docsPath:\"/docs/contract/decodeAbiParameters\"})}function Zje(t){let e=t.readBytes(32);return[Ty(Xr(WG(e,-20))),32]}function Yje(t,e,{length:n,staticPosition:r}){if(!n){let a=Oy(t.readBytes(oZ)),c=r+a,u=c+nhe;t.setPosition(c);let d=Oy(t.readBytes(nhe)),h=FR(e),m=0,g=[];for(let b=0;b<d;++b){t.setPosition(u+(h?b*32:m));let[E,C]=M4(t,e,{staticPosition:u});m+=C,g.push(E)}return t.setPosition(r+32),[g,32]}if(FR(e)){let a=Oy(t.readBytes(oZ)),c=r+a,u=[];for(let d=0;d<n;++d){t.setPosition(c+d*32);let[h]=M4(t,e,{staticPosition:c});u.push(h)}return t.setPosition(r+32),[u,32]}let o=0,i=[];for(let a=0;a<n;++a){let[c,u]=M4(t,e,{staticPosition:r+o});o+=u,i.push(c)}return[i,o]}function Qje(t){return[Jfe(t.readBytes(32),{size:32}),32]}function Jje(t,e,{staticPosition:n}){let[r,o]=e.type.split(\"bytes\");if(!o){let a=Oy(t.readBytes(32));t.setPosition(n+a);let c=Oy(t.readBytes(32));if(c===0)return t.setPosition(n+32),[\"0x\",32];let u=t.readBytes(c);return t.setPosition(n+32),[Xr(u),32]}return[Xr(t.readBytes(Number.parseInt(o),32)),32]}function Xje(t,e){let n=e.type.startsWith(\"int\"),r=Number.parseInt(e.type.split(\"int\")[1]||\"256\"),o=t.readBytes(32);return[r>48?Qfe(o,{signed:n}):Oy(o,{signed:n}),32]}function eze(t,e,{staticPosition:n}){let r=e.components.length===0||e.components.some(({name:a})=>!a),o=r?[]:{},i=0;if(FR(e)){let a=Oy(t.readBytes(oZ)),c=n+a;for(let u=0;u<e.components.length;++u){let d=e.components[u];t.setPosition(c+i);let[h,m]=M4(t,d,{staticPosition:c});i+=m,o[r?u:d?.name]=h}return t.setPosition(n+32),[o,32]}for(let a=0;a<e.components.length;++a){let c=e.components[a],[u,d]=M4(t,c,{staticPosition:n});o[r?a:c?.name]=u,i+=d}return[o,i]}function tze(t,{staticPosition:e}){let n=Oy(t.readBytes(32)),r=e+n;t.setPosition(r);let o=Oy(t.readBytes(32));if(o===0)return t.setPosition(e+32),[\"\",32];let i=t.readBytes(o,32),a=Xfe(Fs(i));return t.setPosition(e+32),[a,32]}function FR(t){let{type:e}=t;if(e===\"string\"||e===\"bytes\"||e.endsWith(\"[]\"))return!0;if(e===\"tuple\")return t.components?.some(FR);let n=aB(t.type);return!!(n&&FR({...t,type:n[1]}))}var nhe,oZ,N4=ce(()=>{p();Es();tv();sL();Mp();nv();Pw();ehe();hc();gn();Py();nhe=32,oZ=32});function cB(t){let{abi:e,data:n}=t,r=Hp(n,0,4);if(r===\"0x\")throw new Vp;let i=[...e||[],FL,ffe].find(a=>a.type===\"error\"&&r===Iy(mc(a)));if(!i)throw new S4(r,{docsPath:\"/docs/contract/decodeErrorResult\"});return{abiItem:i,args:\"inputs\"in i&&i.inputs&&i.inputs.length>0?H0(i.inputs,Hp(n,4)):void 0,errorName:i.name}}var iZ=ce(()=>{p();yR();Es();nv();O4();N4();rv()});var qr,au=ce(()=>{p();qr=(t,e,n)=>JSON.stringify(t,(r,o)=>{let i=typeof o==\"bigint\"?o.toString():o;return typeof e==\"function\"?e(r,i):i},n)});function sZ({abiItem:t,args:e,includeFunctionName:n=!0,includeName:r=!1}){if(\"name\"in t&&\"inputs\"in t&&t.inputs)return`${n?t.name:\"\"}(${t.inputs.map((o,i)=>`${r&&o.name?`${o.name}: `:\"\"}${typeof e[i]==\"object\"?qr(e[i]):e[i]}`).join(\", \")})`}var rhe=ce(()=>{p();au()});var Ww,UR=ce(()=>{p();tZ();Ww=oB});function pf(t){let{abi:e,args:n=[],name:r}=t,o=da(r,{strict:!1}),i=e.filter(c=>o?c.type===\"function\"?Iy(c)===r:c.type===\"event\"?Ww(c)===r:!1:\"name\"in c&&c.name===r);if(i.length===0)return;if(i.length===1)return i[0];let a;for(let c of i){if(!(\"inputs\"in c))continue;if(!n||n.length===0){if(!c.inputs||c.inputs.length===0)return c;continue}if(!c.inputs||c.inputs.length===0||c.inputs.length!==n.length)continue;if(n.every((d,h)=>{let m=\"inputs\"in c&&c.inputs[h];return m?aZ(d,m):!1})){if(a&&\"inputs\"in a&&a.inputs){let d=ohe(c.inputs,a.inputs,n);if(d)throw new $L({abiItem:c,type:d[0]},{abiItem:a,type:d[1]})}a=c}}return a||i[0]}function aZ(t,e){let n=typeof t,r=e.type;switch(r){case\"address\":return Kr(t,{strict:!1});case\"bool\":return n===\"boolean\";case\"function\":return n===\"string\";case\"string\":return n===\"string\";default:return r===\"tuple\"&&\"components\"in e?Object.values(e.components).every((o,i)=>aZ(Object.values(t)[i],o)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===\"number\"||n===\"bigint\":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===\"string\"||t instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\\\[[0-9]{0,}\\\\])+$/.test(r)?Array.isArray(t)&&t.every(o=>aZ(o,{...e,type:r.replace(/(\\\\[[0-9]{0,}\\\\])$/,\"\")})):!1}}function ohe(t,e,n){for(let r in t){let o=t[r],i=e[r];if(o.type===\"tuple\"&&i.type===\"tuple\"&&\"components\"in o&&\"components\"in i)return ohe(o.components,i.components,n[r]);let a=[o.type,i.type];if(a.includes(\"address\")&&a.includes(\"bytes20\")?!0:a.includes(\"address\")&&a.includes(\"string\")?Kr(n[r],{strict:!1}):a.includes(\"address\")&&a.includes(\"bytes\")?Kr(n[r],{strict:!1}):!1)return a}}var Vw=ce(()=>{p();Es();P0();hf();UR();O4()});function ihe(t){return t.reduce((e,{slot:n,value:r})=>`${e}        ${n}: ${r}\\n`,\"\")}function she(t){return t.reduce((e,{address:n,...r})=>{let o=`${e}    ${n}:\\n`;return r.nonce&&(o+=`      nonce: ${r.nonce}\\n`),r.balance&&(o+=`      balance: ${r.balance}\\n`),r.code&&(o+=`      code: ${r.code}\\n`),r.state&&(o+=`      state:\\n`,o+=ihe(r.state)),r.stateDiff&&(o+=`      stateDiff:\\n`,o+=ihe(r.stateDiff)),o},`  State Override:\\n`).slice(0,-1)}var lB,uB,cZ=ce(()=>{p();ir();lB=class extends Be{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:\"AccountStateConflictError\"})}},uB=class extends Be{constructor(){super(\"state and stateDiff are set on the same account.\",{name:\"StateAssignmentConflictError\"})}}});var ahe,M5,dB=ce(()=>{p();ahe=t=>t,M5=t=>t});var N5,L5,$w,jR,zR,q0,ov=ce(()=>{p();js();yR();iZ();rv();rhe();Vw();uL();r4();Es();ir();cZ();L0();dB();N5=class extends Be{constructor(e,{account:n,docsPath:r,chain:o,data:i,gas:a,gasPrice:c,maxFeePerGas:u,maxPriorityFeePerGas:d,nonce:h,to:m,value:g,stateOverride:b}){let E=n?Wn(n):void 0,C=v5({from:E?.address,to:m,value:typeof g<\"u\"&&`${n4(g)} ${o?.nativeCurrency?.symbol||\"ETH\"}`,data:i,gas:a,gasPrice:typeof c<\"u\"&&`${pc(c)} gwei`,maxFeePerGas:typeof u<\"u\"&&`${pc(u)} gwei`,maxPriorityFeePerGas:typeof d<\"u\"&&`${pc(d)} gwei`,nonce:h});b&&(C+=`\\n${she(b)}`),super(e.shortMessage,{cause:e,docsPath:r,metaMessages:[...e.metaMessages?[...e.metaMessages,\" \"]:[],\"Raw Call Arguments:\",C].filter(Boolean),name:\"CallExecutionError\"}),Object.defineProperty(this,\"cause\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},L5=class extends Be{constructor(e,{abi:n,args:r,contractAddress:o,docsPath:i,functionName:a,sender:c}){let u=pf({abi:n,args:r,name:a}),d=u?sZ({abiItem:u,args:r,includeFunctionName:!1,includeName:!1}):void 0,h=u?mc(u,{includeName:!0}):void 0,m=v5({address:o&&ahe(o),function:h,args:d&&d!==\"()\"&&`${[...Array(a?.length??0).keys()].map(()=>\" \").join(\"\")}${d}`,sender:c});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,\" \"]:[],m&&\"Contract Call:\",m].filter(Boolean),name:\"ContractFunctionExecutionError\"}),Object.defineProperty(this,\"abi\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"args\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"cause\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"contractAddress\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"formattedArgs\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"functionName\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"sender\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=n,this.args=r,this.cause=e,this.contractAddress=o,this.functionName=a,this.sender=c}},$w=class extends Be{constructor({abi:e,data:n,functionName:r,message:o}){let i,a,c,u;if(n&&n!==\"0x\")try{a=cB({abi:e,data:n});let{abiItem:h,errorName:m,args:g}=a;if(m===\"Error\")u=g[0];else if(m===\"Panic\"){let[b]=g;u=DL[b]}else{let b=h?mc(h,{includeName:!0}):void 0,E=h&&g?sZ({abiItem:h,args:g,includeFunctionName:!1,includeName:!1}):void 0;c=[b?`Error: ${b}`:\"\",E&&E!==\"()\"?`       ${[...Array(m?.length??0).keys()].map(()=>\" \").join(\"\")}${E}`:\"\"]}}catch(h){i=h}else o&&(u=o);let d;i instanceof S4&&(d=i.signature,c=[`Unable to decode signature \"${d}\" as it was not found on the provided ABI.`,\"Make sure you are using the correct ABI and that the error exists on it.\",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${d}.`]),super(u&&u!==\"execution reverted\"||d?[`The contract function \"${r}\" reverted with the following ${d?\"signature\":\"reason\"}:`,u||d].join(`\\n`):`The contract function \"${r}\" reverted.`,{cause:i,metaMessages:c,name:\"ContractFunctionRevertedError\"}),Object.defineProperty(this,\"data\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"raw\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"reason\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"signature\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=a,this.raw=n,this.reason=u,this.signature=d}},jR=class extends Be{constructor({functionName:e}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[\"This could be due to any of the following:\",`  - The contract does not have the function \"${e}\",`,\"  - The parameters passed to the contract function may be invalid, or\",\"  - The address is not a contract.\"],name:\"ContractFunctionZeroDataError\"})}},zR=class extends Be{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:\"\"}`,{metaMessages:[\"Please ensure:\",\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:\"CounterfactualDeploymentFailedError\"})}},q0=class extends Be{constructor({data:e,message:n}){super(n||\"\",{name:\"RawContractError\"}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,\"data\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}});var $p,Kw,HR,B5=ce(()=>{p();au();ir();dB();$p=class extends Be{constructor({body:e,cause:n,details:r,headers:o,status:i,url:a}){super(\"HTTP request failed.\",{cause:n,details:r,metaMessages:[i&&`Status: ${i}`,`URL: ${M5(a)}`,e&&`Request body: ${qr(e)}`].filter(Boolean),name:\"HttpRequestError\"}),Object.defineProperty(this,\"body\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"headers\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"status\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"url\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=o,this.status=i,this.url=a}},Kw=class extends Be{constructor({body:e,error:n,url:r}){super(\"RPC Request failed.\",{cause:n,details:n.message,metaMessages:[`URL: ${M5(r)}`,`Request body: ${qr(e)}`],name:\"RpcRequestError\"}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"data\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=n.code,this.data=n.data}},HR=class extends Be{constructor({body:e,url:n}){super(\"The request took too long to respond.\",{details:\"The request timed out.\",metaMessages:[`URL: ${M5(n)}`,`Request body: ${qr(e)}`],name:\"TimeoutError\"})}}});var nze,wl,cu,D5,F5,U5,j5,My,W0,z5,mf,H5,iv,Gw,q5,oo,W5,V5,$5,K5,ha,sv,G5,Z5,Y5,Q5,J5,av,qR,X5=ce(()=>{p();ir();B5();nze=-1,wl=class extends Be{constructor(e,{code:n,docsPath:r,metaMessages:o,name:i,shortMessage:a}){super(a,{cause:e,docsPath:r,metaMessages:o||e?.metaMessages,name:i||\"RpcError\"}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof Kw?e.code:n??nze}},cu=class extends wl{constructor(e,n){super(e,n),Object.defineProperty(this,\"data\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=n.data}},D5=class t extends wl{constructor(e){super(e,{code:t.code,name:\"ParseRpcError\",shortMessage:\"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"})}};Object.defineProperty(D5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32700});F5=class t extends wl{constructor(e){super(e,{code:t.code,name:\"InvalidRequestRpcError\",shortMessage:\"JSON is not a valid request object.\"})}};Object.defineProperty(F5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32600});U5=class t extends wl{constructor(e,{method:n}={}){super(e,{code:t.code,name:\"MethodNotFoundRpcError\",shortMessage:`The method${n?` \"${n}\"`:\"\"} does not exist / is not available.`})}};Object.defineProperty(U5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32601});j5=class t extends wl{constructor(e){super(e,{code:t.code,name:\"InvalidParamsRpcError\",shortMessage:[\"Invalid parameters were provided to the RPC method.\",\"Double check you have provided the correct parameters.\"].join(`\\n`)})}};Object.defineProperty(j5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32602});My=class t extends wl{constructor(e){super(e,{code:t.code,name:\"InternalRpcError\",shortMessage:\"An internal error was received.\"})}};Object.defineProperty(My,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32603});W0=class t extends wl{constructor(e){super(e,{code:t.code,name:\"InvalidInputRpcError\",shortMessage:[\"Missing or invalid parameters.\",\"Double check you have provided the correct parameters.\"].join(`\\n`)})}};Object.defineProperty(W0,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});z5=class t extends wl{constructor(e){super(e,{code:t.code,name:\"ResourceNotFoundRpcError\",shortMessage:\"Requested resource not found.\"}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ResourceNotFoundRpcError\"})}};Object.defineProperty(z5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32001});mf=class t extends wl{constructor(e){super(e,{code:t.code,name:\"ResourceUnavailableRpcError\",shortMessage:\"Requested resource not available.\"})}};Object.defineProperty(mf,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32002});H5=class t extends wl{constructor(e){super(e,{code:t.code,name:\"TransactionRejectedRpcError\",shortMessage:\"Transaction creation failed.\"})}};Object.defineProperty(H5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32003});iv=class t extends wl{constructor(e,{method:n}={}){super(e,{code:t.code,name:\"MethodNotSupportedRpcError\",shortMessage:`Method${n?` \"${n}\"`:\"\"} is not supported.`})}};Object.defineProperty(iv,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32004});Gw=class t extends wl{constructor(e){super(e,{code:t.code,name:\"LimitExceededRpcError\",shortMessage:\"Request exceeds defined limit.\"})}};Object.defineProperty(Gw,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32005});q5=class t extends wl{constructor(e){super(e,{code:t.code,name:\"JsonRpcVersionUnsupportedError\",shortMessage:\"Version of JSON-RPC protocol is not supported.\"})}};Object.defineProperty(q5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32006});oo=class t extends cu{constructor(e){super(e,{code:t.code,name:\"UserRejectedRequestError\",shortMessage:\"User rejected the request.\"})}};Object.defineProperty(oo,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4001});W5=class t extends cu{constructor(e){super(e,{code:t.code,name:\"UnauthorizedProviderError\",shortMessage:\"The requested method and/or account has not been authorized by the user.\"})}};Object.defineProperty(W5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4100});V5=class t extends cu{constructor(e,{method:n}={}){super(e,{code:t.code,name:\"UnsupportedProviderMethodError\",shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:\"\"}.`})}};Object.defineProperty(V5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4200});$5=class t extends cu{constructor(e){super(e,{code:t.code,name:\"ProviderDisconnectedError\",shortMessage:\"The Provider is disconnected from all chains.\"})}};Object.defineProperty($5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4900});K5=class t extends cu{constructor(e){super(e,{code:t.code,name:\"ChainDisconnectedError\",shortMessage:\"The Provider is not connected to the requested chain.\"})}};Object.defineProperty(K5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4901});ha=class t extends cu{constructor(e){super(e,{code:t.code,name:\"SwitchChainError\",shortMessage:\"An error occurred when attempting to switch chain.\"})}};Object.defineProperty(ha,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4902});sv=class t extends cu{constructor(e){super(e,{code:t.code,name:\"UnsupportedNonOptionalCapabilityError\",shortMessage:\"This Wallet does not support a capability that was not marked as optional.\"})}};Object.defineProperty(sv,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:5700});G5=class t extends cu{constructor(e){super(e,{code:t.code,name:\"UnsupportedChainIdError\",shortMessage:\"This Wallet does not support the requested chain ID.\"})}};Object.defineProperty(G5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:5710});Z5=class t extends cu{constructor(e){super(e,{code:t.code,name:\"DuplicateIdError\",shortMessage:\"There is already a bundle submitted with this ID.\"})}};Object.defineProperty(Z5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:5720});Y5=class t extends cu{constructor(e){super(e,{code:t.code,name:\"UnknownBundleIdError\",shortMessage:\"This bundle id is unknown / has not been submitted\"})}};Object.defineProperty(Y5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:5730});Q5=class t extends cu{constructor(e){super(e,{code:t.code,name:\"BundleTooLargeError\",shortMessage:\"The call bundle is too large for the Wallet to process.\"})}};Object.defineProperty(Q5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:5740});J5=class t extends cu{constructor(e){super(e,{code:t.code,name:\"AtomicReadyWalletRejectedUpgradeError\",shortMessage:\"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.\"})}};Object.defineProperty(J5,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:5750});av=class t extends cu{constructor(e){super(e,{code:t.code,name:\"AtomicityNotSupportedError\",shortMessage:\"The wallet does not support atomic execution but the request requires it.\"})}};Object.defineProperty(av,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:5760});qR=class extends wl{constructor(e){super(e,{name:\"UnknownRpcError\",shortMessage:\"An unknown RPC error occurred.\"})}}});function Zw(t,e){let n=(t.details||\"\").toLowerCase(),r=t instanceof Be?t.walk(o=>o?.code===ev.code):t;return r instanceof Be?new ev({cause:t,message:r.details}):ev.nodeMessage.test(n)?new ev({cause:t,message:t.details}):Up.nodeMessage.test(n)?new Up({cause:t,maxFeePerGas:e?.maxFeePerGas}):f4.nodeMessage.test(n)?new f4({cause:t,maxFeePerGas:e?.maxFeePerGas}):h4.nodeMessage.test(n)?new h4({cause:t,nonce:e?.nonce}):p4.nodeMessage.test(n)?new p4({cause:t,nonce:e?.nonce}):m4.nodeMessage.test(n)?new m4({cause:t,nonce:e?.nonce}):g4.nodeMessage.test(n)?new g4({cause:t}):y4.nodeMessage.test(n)?new y4({cause:t,gas:e?.gas}):b4.nodeMessage.test(n)?new b4({cause:t,gas:e?.gas}):v4.nodeMessage.test(n)?new v4({cause:t}):Cy.nodeMessage.test(n)?new Cy({cause:t,maxFeePerGas:e?.maxFeePerGas,maxPriorityFeePerGas:e?.maxPriorityFeePerGas}):new jp({cause:t})}var WR=ce(()=>{p();ir();jw()});function fB(t,{docsPath:e,...n}){let r=(()=>{let o=Zw(t,n);return o instanceof jp?t:o})();return new N5(r,{docsPath:e,...n})}var lZ=ce(()=>{p();ov();jw();WR()});function Yw(t,{format:e}){if(!e)return{};let n={};function r(i){let a=Object.keys(i);for(let c of a)c in t&&(n[c]=t[c]),i[c]&&typeof i[c]==\"object\"&&!Array.isArray(i[c])&&r(i[c])}let o=e(t||{});return r(o),n}var VR=ce(()=>{p()});function gf(t){let{account:e,gasPrice:n,maxFeePerGas:r,maxPriorityFeePerGas:o,to:i}=t,a=e?Wn(e):void 0;if(a&&!Kr(a.address))throw new ci({address:a.address});if(i&&!Kr(i))throw new ci({address:i});if(typeof n<\"u\"&&(typeof r<\"u\"||typeof o<\"u\"))throw new dL;if(r&&r>X_)throw new Up({maxFeePerGas:r});if(o&&r&&o>r)throw new Cy({maxFeePerGas:r,maxPriorityFeePerGas:o})}var Qw=ce(()=>{p();js();CG();D0();jw();L0();hf()});var li,che=ce(()=>{p();O0();li=Ba({id:1,name:\"Ethereum\",nativeCurrency:{name:\"Ether\",symbol:\"ETH\",decimals:18},rpcUrls:{default:{http:[\"https://eth.merkle.io\"]}},blockExplorers:{default:{name:\"Etherscan\",url:\"https://etherscan.io\",apiUrl:\"https://api.etherscan.io/api\"}},contracts:{ensRegistry:{address:\"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e\"},ensUniversalResolver:{address:\"0xce01f8eee7E479C928F8919abD53E553a36CeF67\",blockCreated:19258213},multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:14353601}}})});var $R,KR,lhe=ce(()=>{p();pR();O0();$R=1,KR=Ba({...qp,id:10,name:\"OP Mainnet\",nativeCurrency:{name:\"Ether\",symbol:\"ETH\",decimals:18},rpcUrls:{default:{http:[\"https://mainnet.optimism.io\"]}},blockExplorers:{default:{name:\"Optimism Explorer\",url:\"https://optimistic.etherscan.io\",apiUrl:\"https://api-optimistic.etherscan.io/api\"}},contracts:{...qp.contracts,disputeGameFactory:{[$R]:{address:\"0xe5965Ab5962eDc7477C8520243A95517CD252fA9\"}},l2OutputOracle:{[$R]:{address:\"0xdfe97868233d1aa22e815a266982f2cf17685a27\"}},multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:4286263},portal:{[$R]:{address:\"0xbEb5Fc579115071764c7423A4f12eDde41f106Ed\"}},l1StandardBridge:{[$R]:{address:\"0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1\"}}},sourceId:$R})});var GR,uZ,uhe=ce(()=>{p();pR();O0();GR=11155111,uZ=Ba({...qp,id:11155420,name:\"OP Sepolia\",nativeCurrency:{name:\"Sepolia Ether\",symbol:\"ETH\",decimals:18},rpcUrls:{default:{http:[\"https://sepolia.optimism.io\"]}},blockExplorers:{default:{name:\"Blockscout\",url:\"https://optimism-sepolia.blockscout.com\",apiUrl:\"https://optimism-sepolia.blockscout.com/api\"}},contracts:{...qp.contracts,disputeGameFactory:{[GR]:{address:\"0x05F9613aDB30026FFd634f38e5C4dFd30a197Fa1\"}},l2OutputOracle:{[GR]:{address:\"0x90E9c4f8a994a250F6aEfd61CAFb4F2e895D458F\"}},multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:1620204},portal:{[GR]:{address:\"0x16Fc5058F25648194471939df75CF27A2fdC48BC\"}},l1StandardBridge:{[GR]:{address:\"0xFBb0621E0B23b5478B630BD55a5f21f67730B0F1\"}}},testnet:!0,sourceId:GR})});var dZ,dhe=ce(()=>{p();O0();dZ=Ba({id:137,name:\"Polygon\",nativeCurrency:{name:\"POL\",symbol:\"POL\",decimals:18},rpcUrls:{default:{http:[\"https://polygon-rpc.com\"]}},blockExplorers:{default:{name:\"PolygonScan\",url:\"https://polygonscan.com\",apiUrl:\"https://api.polygonscan.com/api\"}},contracts:{multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:25770160}}})});var fZ,fhe=ce(()=>{p();O0();fZ=Ba({id:80001,name:\"Polygon Mumbai\",nativeCurrency:{name:\"MATIC\",symbol:\"MATIC\",decimals:18},rpcUrls:{default:{http:[\"https://80001.rpc.thirdweb.com\"]}},blockExplorers:{default:{name:\"PolygonScan\",url:\"https://mumbai.polygonscan.com\",apiUrl:\"https://api-testnet.polygonscan.com/api\"}},contracts:{multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:25770160}},testnet:!0})});var ZR,hhe=ce(()=>{p();O0();ZR=Ba({id:11155111,name:\"Sepolia\",nativeCurrency:{name:\"Sepolia Ether\",symbol:\"ETH\",decimals:18},rpcUrls:{default:{http:[\"https://sepolia.drpc.org\"]}},blockExplorers:{default:{name:\"Etherscan\",url:\"https://sepolia.etherscan.io\",apiUrl:\"https://api-sepolia.etherscan.io/api\"}},contracts:{multicall3:{address:\"0xca11bde05977b3631167028862be2a173976ca11\",blockCreated:751532},ensRegistry:{address:\"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e\"},ensUniversalResolver:{address:\"0xc8Af999e38273D658BE1b921b88A9Ddf005769cC\",blockCreated:5317080}},testnet:!0})});var Si=ce(()=>{p();cfe();lfe();ufe();dfe();che();lhe();uhe();dhe();fhe();hhe()});var phe=be(hB=>{\"use strict\";p();(function(){function t(q){if(q==null)return null;if(typeof q==\"function\")return q.$$typeof===ae?null:q.displayName||q.name||null;if(typeof q==\"string\")return q;switch(q){case C:return\"Fragment\";case R:return\"Profiler\";case T:return\"StrictMode\";case W:return\"Suspense\";case J:return\"SuspenseList\";case Z:return\"Activity\"}if(typeof q==\"object\")switch(typeof q.tag==\"number\"&&console.error(\"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"),q.$$typeof){case E:return\"Portal\";case D:return(q.displayName||\"Context\")+\".Provider\";case L:return(q._context.displayName||\"Context\")+\".Consumer\";case G:var H=q.render;return q=q.displayName,q||(q=H.displayName||H.name||\"\",q=q!==\"\"?\"ForwardRef(\"+q+\")\":\"ForwardRef\"),q;case ne:return H=q.displayName||null,H!==null?H:t(q.type)||\"Memo\";case ie:H=q._payload,q=q._init;try{return t(q(H))}catch{}}return null}function e(q){return\"\"+q}function n(q){try{e(q);var H=!1}catch{H=!0}if(H){H=console;var I=H.error,U=typeof Symbol==\"function\"&&Symbol.toStringTag&&q[Symbol.toStringTag]||q.constructor.name||\"Object\";return I.call(H,\"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",U),e(q)}}function r(q){if(q===C)return\"<>\";if(typeof q==\"object\"&&q!==null&&q.$$typeof===ie)return\"<...>\";try{var H=t(q);return H?\"<\"+H+\">\":\"<...>\"}catch{return\"<...>\"}}function o(){var q=V.A;return q===null?null:q.getOwner()}function i(){return Error(\"react-stack-top-frame\")}function a(q){if($.call(q,\"key\")){var H=Object.getOwnPropertyDescriptor(q,\"key\").get;if(H&&H.isReactWarning)return!1}return q.key!==void 0}function c(q,H){function I(){O||(O=!0,console.error(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",H))}I.isReactWarning=!0,Object.defineProperty(q,\"key\",{get:I,configurable:!0})}function u(){var q=t(this.type);return z[q]||(z[q]=!0,console.error(\"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\")),q=this.props.ref,q!==void 0?q:null}function d(q,H,I,U,X,ee,se,pe){return I=ee.ref,q={$$typeof:b,type:q,key:H,props:ee,_owner:X},(I!==void 0?I:null)!==null?Object.defineProperty(q,\"ref\",{enumerable:!1,get:u}):Object.defineProperty(q,\"ref\",{enumerable:!1,value:null}),q._store={},Object.defineProperty(q._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(q,\"_debugInfo\",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(q,\"_debugStack\",{configurable:!1,enumerable:!1,writable:!0,value:se}),Object.defineProperty(q,\"_debugTask\",{configurable:!1,enumerable:!1,writable:!0,value:pe}),Object.freeze&&(Object.freeze(q.props),Object.freeze(q)),q}function h(q,H,I,U,X,ee,se,pe){var ye=H.children;if(ye!==void 0)if(U)if(F(ye)){for(U=0;U<ye.length;U++)m(ye[U]);Object.freeze&&Object.freeze(ye)}else console.error(\"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\");else m(ye);if($.call(H,\"key\")){ye=t(q);var xe=Object.keys(H).filter(function(Me){return Me!==\"key\"});U=0<xe.length?\"{key: someKey, \"+xe.join(\": ..., \")+\": ...}\":\"{key: someKey}\",j[ye+U]||(xe=0<xe.length?\"{\"+xe.join(\": ..., \")+\": ...}\":\"{}\",console.error(`A props object containing a \"key\" prop is being spread into JSX:\\n  let props = %s;\\n  <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n  let props = %s;\\n  <%s key={someKey} {...props} />`,U,ye,xe,ye),j[ye+U]=!0)}if(ye=null,I!==void 0&&(n(I),ye=\"\"+I),a(H)&&(n(H.key),ye=\"\"+H.key),\"key\"in H){I={};for(var _e in H)_e!==\"key\"&&(I[_e]=H[_e])}else I=H;return ye&&c(I,typeof q==\"function\"?q.displayName||q.name||\"Unknown\":q),d(q,ye,ee,X,o(),I,se,pe)}function m(q){typeof q==\"object\"&&q!==null&&q.$$typeof===b&&q._store&&(q._store.validated=1)}var g=et(),b=Symbol.for(\"react.transitional.element\"),E=Symbol.for(\"react.portal\"),C=Symbol.for(\"react.fragment\"),T=Symbol.for(\"react.strict_mode\"),R=Symbol.for(\"react.profiler\");Symbol.for(\"react.provider\");var L=Symbol.for(\"react.consumer\"),D=Symbol.for(\"react.context\"),G=Symbol.for(\"react.forward_ref\"),W=Symbol.for(\"react.suspense\"),J=Symbol.for(\"react.suspense_list\"),ne=Symbol.for(\"react.memo\"),ie=Symbol.for(\"react.lazy\"),Z=Symbol.for(\"react.activity\"),ae=Symbol.for(\"react.client.reference\"),V=g.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,$=Object.prototype.hasOwnProperty,F=Array.isArray,_=console.createTask?console.createTask:function(){return null};g={\"react-stack-bottom-frame\":function(q){return q()}};var O,z={},N=g[\"react-stack-bottom-frame\"].bind(g,i)(),B=_(r(i)),j={};hB.Fragment=C,hB.jsx=function(q,H,I,U,X){var ee=1e4>V.recentlyCreatedOwnerStacks++;return h(q,H,I,!1,U,X,ee?Error(\"react-stack-top-frame\"):N,ee?_(r(q)):B)},hB.jsxs=function(q,H,I,U,X){var ee=1e4>V.recentlyCreatedOwnerStacks++;return h(q,H,I,!0,U,X,ee?Error(\"react-stack-top-frame\"):N,ee?_(r(q)):B)}})()});var De=be((G_t,mhe)=>{\"use strict\";p();mhe.exports=phe()});async function epe(t,{chain:e}){let{id:n,name:r,nativeCurrency:o,rpcUrls:i,blockExplorers:a}=e;await t.request({method:\"wallet_addEthereumChain\",params:[{chainId:Ye(n),chainName:r,nativeCurrency:o,rpcUrls:i.default.http,blockExplorerUrls:a?Object.values(a).map(({url:c})=>c):void 0}]},{dedupe:!0,retryCount:0})}var tpe=ce(()=>{p();gn()});function h6(t){let{abi:e,args:n,bytecode:r}=t;if(!n||n.length===0)return r;let o=e.find(a=>\"type\"in a&&a.type===\"constructor\");if(!o)throw new jL({docsPath:LZ});if(!(\"inputs\"in o))throw new vR({docsPath:LZ});if(!o.inputs||o.inputs.length===0)throw new vR({docsPath:LZ});let i=vl(o.inputs,n);return fa([r,i])}var LZ,kB=ce(()=>{p();Es();iu();Py();LZ=\"/docs/contract/encodeDeployData\"});function npe(t){let e=Po(`0x${t.substring(4)}`).substring(26);return Ty(`0x${e}`)}var rpe=ce(()=>{p();tv();zp()});var _B,BZ,ope=ce(()=>{p();Jb();_B=class extends Lw{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,bde(e);let r=x5(n);if(this.iHash=e.create(),typeof this.iHash.update!=\"function\")throw new Error(\"Expected instance of class which extends utils.Hash\");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(r.length>o?e.create().update(r).digest():r);for(let a=0;a<i.length;a++)i[a]^=54;this.iHash.update(i),this.oHash=e.create();for(let a=0;a<i.length;a++)i[a]^=106;this.oHash.update(i),Dp(i)}update(e){return Qb(this),this.iHash.update(e),this}digestInto(e){Qb(this),Zi(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:n,iHash:r,finished:o,destroyed:i,blockLen:a,outputLen:c}=this;return e=e,e.finished=o,e.destroyed=i,e.blockLen=a,e.outputLen=c,e.oHash=n._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},BZ=(t,e,n)=>new _B(t,e).update(n).digest();BZ.create=(t,e)=>new _B(t,e)});function pv(t,e){if(typeof e!=\"boolean\")throw new Error(t+\" boolean expected, got \"+e)}function a9(t){let e=t.toString(16);return e.length&1?\"0\"+e:e}function ipe(t){if(typeof t!=\"string\")throw new Error(\"hex string expected, got \"+typeof t);return t===\"\"?UZ:BigInt(\"0x\"+t)}function G0(t){return ipe(Fp(t))}function p6(t){return Zi(t),ipe(Fp(Uint8Array.from(t).reverse()))}function m6(t,e){return l4(t.toString(16).padStart(e*2,\"0\"))}function J4(t,e){return m6(t,e).reverse()}function Ho(t,e,n){let r;if(typeof e==\"string\")try{r=l4(e)}catch(i){throw new Error(t+\" must be hex string or Uint8Array, cause: \"+i)}else if(Bw(e))r=Uint8Array.from(e);else throw new Error(t+\" must be hex string or Uint8Array\");let o=r.length;if(typeof n==\"number\"&&o!==n)throw new Error(t+\" of length \"+n+\" expected, got \"+o);return r}function c9(t,e,n){return DZ(t)&&DZ(e)&&DZ(n)&&e<=t&&t<n}function Fy(t,e,n,r){if(!c9(e,n,r))throw new Error(\"expected valid \"+t+\": \"+n+\" <= n < \"+r+\", got \"+e)}function spe(t){let e;for(e=0;t>UZ;t>>=FZ,e+=1);return e}function ape(t,e,n){if(typeof t!=\"number\"||t<2)throw new Error(\"hashLen must be a number\");if(typeof e!=\"number\"||e<2)throw new Error(\"qByteLen must be a number\");if(typeof n!=\"function\")throw new Error(\"hmacFn must be a function\");let r=b=>new Uint8Array(b),o=b=>Uint8Array.of(b),i=r(t),a=r(t),c=0,u=()=>{i.fill(1),a.fill(0),c=0},d=(...b)=>n(a,i,...b),h=(b=r(0))=>{a=d(o(0),b),i=d(),b.length!==0&&(a=d(o(1),b),i=d())},m=()=>{if(c++>=1e3)throw new Error(\"drbg: tried 1000 values\");let b=0,E=[];for(;b<e;){i=d();let C=i.slice();E.push(C),b+=i.length}return ws(...E)};return(b,E)=>{u(),h(b);let C;for(;!(C=E(m()));)h();return u(),C}}function cpe(t){return typeof t==\"function\"&&Number.isSafeInteger(t.outputLen)}function Uy(t,e,n={}){if(!t||typeof t!=\"object\")throw new Error(\"expected valid options object\");function r(o,i,a){let c=t[o];if(a&&c===void 0)return;let u=typeof c;if(u!==i||c===null)throw new Error(`param \"${o}\" is invalid: expected ${i}, got ${u}`)}Object.entries(e).forEach(([o,i])=>r(o,i,!1)),Object.entries(n).forEach(([o,i])=>r(o,i,!0))}function X4(t){let e=new WeakMap;return(n,...r)=>{let o=e.get(n);if(o!==void 0)return o;let i=t(n,...r);return e.set(n,i),i}}var UZ,FZ,DZ,g6,y6=ce(()=>{p();Jb();Jb();UZ=BigInt(0),FZ=BigInt(1);DZ=t=>typeof t==\"bigint\"&&UZ<=t;g6=t=>(FZ<<BigInt(t))-FZ});function ui(t,e){let n=t%e;return n>=md?n:e+n}function us(t,e,n){let r=t;for(;e-- >md;)r*=r,r%=n;return r}function lpe(t,e){if(t===md)throw new Error(\"invert: expected non-zero number\");if(e<=md)throw new Error(\"invert: expected positive modulus, got \"+e);let n=ui(t,e),r=e,o=md,i=Mc,a=Mc,c=md;for(;n!==md;){let d=r/n,h=r%n,m=o-a*d,g=i-c*d;r=n,n=h,o=a,i=c,a=m,c=g}if(r!==Mc)throw new Error(\"invert: does not exist\");return ui(o,e)}function ppe(t,e){let n=(t.ORDER+Mc)/dpe,r=t.pow(e,n);if(!t.eql(t.sqr(r),e))throw new Error(\"Cannot find square root\");return r}function mze(t,e){let n=(t.ORDER-fpe)/hpe,r=t.mul(e,b6),o=t.pow(r,n),i=t.mul(e,o),a=t.mul(t.mul(i,b6),o),c=t.mul(i,t.sub(a,t.ONE));if(!t.eql(t.sqr(c),e))throw new Error(\"Cannot find square root\");return c}function gze(t){if(t<BigInt(3))throw new Error(\"sqrt is not defined for small field\");let e=t-Mc,n=0;for(;e%b6===md;)e/=b6,n++;let r=b6,o=Z0(t);for(;upe(o,r)===1;)if(r++>1e3)throw new Error(\"Cannot find square root: probably non-prime P\");if(n===1)return ppe;let i=o.pow(r,e),a=(e+Mc)/b6;return function(u,d){if(u.is0(d))return d;if(upe(u,d)!==1)throw new Error(\"Cannot find square root\");let h=n,m=u.mul(u.ONE,i),g=u.pow(d,e),b=u.pow(d,a);for(;!u.eql(g,u.ONE);){if(u.is0(g))return u.ZERO;let E=1,C=u.sqr(g);for(;!u.eql(C,u.ONE);)if(E++,C=u.sqr(C),E===h)throw new Error(\"Cannot find square root\");let T=Mc<<BigInt(h-E-1),R=u.pow(m,T);h=E,m=u.sqr(R),g=u.mul(g,m),b=u.mul(b,R)}return b}}function yze(t){return t%dpe===pze?ppe:t%hpe===fpe?mze:gze(t)}function CB(t){let e={ORDER:\"bigint\",MASK:\"bigint\",BYTES:\"number\",BITS:\"number\"},n=bze.reduce((r,o)=>(r[o]=\"function\",r),e);return Uy(t,n),t}function vze(t,e,n){if(n<md)throw new Error(\"invalid exponent, negatives unsupported\");if(n===md)return t.ONE;if(n===Mc)return e;let r=t.ONE,o=e;for(;n>md;)n&Mc&&(r=t.mul(r,o)),o=t.sqr(o),n>>=Mc;return r}function dx(t,e,n=!1){let r=new Array(e.length).fill(n?t.ZERO:void 0),o=e.reduce((a,c,u)=>t.is0(c)?a:(r[u]=a,t.mul(a,c)),t.ONE),i=t.inv(o);return e.reduceRight((a,c,u)=>t.is0(c)?a:(r[u]=t.mul(a,r[u]),t.mul(a,c)),i),r}function upe(t,e){let n=(t.ORDER-Mc)/b6,r=t.pow(e,n),o=t.eql(r,t.ONE),i=t.eql(r,t.ZERO),a=t.eql(r,t.neg(t.ONE));if(!o&&!i&&!a)throw new Error(\"invalid Legendre symbol result\");return o?1:i?0:-1}function gpe(t,e){e!==void 0&&Nw(e);let n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function Z0(t,e,n=!1,r={}){if(t<=md)throw new Error(\"invalid field: expected ORDER > 0, got \"+t);let o,i;if(typeof e==\"object\"&&e!=null){if(r.sqrt||n)throw new Error(\"cannot specify opts in two arguments\");let h=e;h.BITS&&(o=h.BITS),h.sqrt&&(i=h.sqrt),typeof h.isLE==\"boolean\"&&(n=h.isLE)}else typeof e==\"number\"&&(o=e),r.sqrt&&(i=r.sqrt);let{nBitLength:a,nByteLength:c}=gpe(t,o);if(c>2048)throw new Error(\"invalid field: expected ORDER of <= 2048 bytes\");let u,d=Object.freeze({ORDER:t,isLE:n,BITS:a,BYTES:c,MASK:g6(a),ZERO:md,ONE:Mc,create:h=>ui(h,t),isValid:h=>{if(typeof h!=\"bigint\")throw new Error(\"invalid field element: expected bigint, got \"+typeof h);return md<=h&&h<t},is0:h=>h===md,isValidNot0:h=>!d.is0(h)&&d.isValid(h),isOdd:h=>(h&Mc)===Mc,neg:h=>ui(-h,t),eql:(h,m)=>h===m,sqr:h=>ui(h*h,t),add:(h,m)=>ui(h+m,t),sub:(h,m)=>ui(h-m,t),mul:(h,m)=>ui(h*m,t),pow:(h,m)=>vze(d,h,m),div:(h,m)=>ui(h*lpe(m,t),t),sqrN:h=>h*h,addN:(h,m)=>h+m,subN:(h,m)=>h-m,mulN:(h,m)=>h*m,inv:h=>lpe(h,t),sqrt:i||(h=>(u||(u=yze(t)),u(d,h))),toBytes:h=>n?J4(h,c):m6(h,c),fromBytes:h=>{if(h.length!==c)throw new Error(\"Field.fromBytes: expected \"+c+\" bytes, got \"+h.length);return n?p6(h):G0(h)},invertBatch:h=>dx(d,h),cmov:(h,m,g)=>g?m:h});return Object.freeze(d)}function ype(t){if(typeof t!=\"bigint\")throw new Error(\"field order must be bigint\");let e=t.toString(2).length;return Math.ceil(e/8)}function jZ(t){let e=ype(t);return e+Math.ceil(e/2)}function bpe(t,e,n=!1){let r=t.length,o=ype(e),i=jZ(e);if(r<16||r<i||r>1024)throw new Error(\"expected \"+i+\"-1024 bytes of input, got \"+r);let a=n?p6(t):G0(t),c=ui(a,e-Mc)+Mc;return n?J4(c,o):m6(c,o)}var md,Mc,b6,pze,dpe,fpe,hpe,mpe,bze,v6=ce(()=>{p();y6();md=BigInt(0),Mc=BigInt(1),b6=BigInt(2),pze=BigInt(3),dpe=BigInt(4),fpe=BigInt(5),hpe=BigInt(8);mpe=(t,e)=>(ui(t,e)&Mc)===Mc,bze=[\"create\",\"isValid\",\"is0\",\"neg\",\"inv\",\"sqrt\",\"sqr\",\"eql\",\"add\",\"sub\",\"mul\",\"pow\",\"div\",\"addN\",\"subN\",\"mulN\",\"sqrN\"]});function eC(t,e){let n=e.negate();return t?n:e}function AB(t,e,n){let r=e===\"pz\"?a=>a.pz:a=>a.ez,o=dx(t.Fp,n.map(r));return n.map((a,c)=>a.toAffine(o[c])).map(t.fromAffine)}function Epe(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error(\"invalid window size, expected [1..\"+e+\"], got W=\"+t)}function zZ(t,e){Epe(t,e);let n=Math.ceil(e/t)+1,r=2**(t-1),o=2**t,i=g6(t),a=BigInt(t);return{windows:n,windowSize:r,mask:i,maxNumber:o,shiftBy:a}}function vpe(t,e,n){let{windowSize:r,mask:o,maxNumber:i,shiftBy:a}=n,c=Number(t&o),u=t>>a;c>r&&(c-=i,u+=w6);let d=e*r,h=d+Math.abs(c)-1,m=c===0,g=c<0,b=e%2!==0;return{nextN:u,offset:h,isZero:m,isNeg:g,isNegF:b,offsetF:d}}function wze(t,e){if(!Array.isArray(t))throw new Error(\"array expected\");t.forEach((n,r)=>{if(!(n instanceof e))throw new Error(\"invalid point at index \"+r)})}function xze(t,e){if(!Array.isArray(t))throw new Error(\"array of scalars expected\");t.forEach((n,r)=>{if(!e.isValid(n))throw new Error(\"invalid scalar at index \"+r)})}function qZ(t){return Spe.get(t)||1}function wpe(t){if(t!==tC)throw new Error(\"invalid wNAF\")}function TB(t,e){return{constTimeNegate:eC,hasPrecomputes(n){return qZ(n)!==1},unsafeLadder(n,r,o=t.ZERO){let i=n;for(;r>tC;)r&w6&&(o=o.add(i)),i=i.double(),r>>=w6;return o},precomputeWindow(n,r){let{windows:o,windowSize:i}=zZ(r,e),a=[],c=n,u=c;for(let d=0;d<o;d++){u=c,a.push(u);for(let h=1;h<i;h++)u=u.add(c),a.push(u);c=u.double()}return a},wNAF(n,r,o){let i=t.ZERO,a=t.BASE,c=zZ(n,e);for(let u=0;u<c.windows;u++){let{nextN:d,offset:h,isZero:m,isNeg:g,isNegF:b,offsetF:E}=vpe(o,u,c);o=d,m?a=a.add(eC(b,r[E])):i=i.add(eC(g,r[h]))}return wpe(o),{p:i,f:a}},wNAFUnsafe(n,r,o,i=t.ZERO){let a=zZ(n,e);for(let c=0;c<a.windows&&o!==tC;c++){let{nextN:u,offset:d,isZero:h,isNeg:m}=vpe(o,c,a);if(o=u,!h){let g=r[d];i=i.add(m?g.negate():g)}}return wpe(o),i},getPrecomputes(n,r,o){let i=HZ.get(r);return i||(i=this.precomputeWindow(r,n),n!==1&&(typeof o==\"function\"&&(i=o(i)),HZ.set(r,i))),i},wNAFCached(n,r,o){let i=qZ(n);return this.wNAF(i,this.getPrecomputes(i,n,o),r)},wNAFCachedUnsafe(n,r,o,i){let a=qZ(n);return a===1?this.unsafeLadder(n,r,i):this.wNAFUnsafe(a,this.getPrecomputes(a,n,o),r,i)},setWindowSize(n,r){Epe(r,e),Spe.set(n,r),HZ.delete(n)}}}function kpe(t,e,n,r){let o=e,i=t.ZERO,a=t.ZERO;for(;n>tC||r>tC;)n&w6&&(i=i.add(o)),r&w6&&(a=a.add(o)),o=o.double(),n>>=w6,r>>=w6;return{p1:i,p2:a}}function RB(t,e,n,r){wze(n,t),xze(r,e);let o=n.length,i=r.length;if(o!==i)throw new Error(\"arrays of points and scalars must have equal length\");let a=t.ZERO,c=spe(BigInt(o)),u=1;c>12?u=c-3:c>4?u=c-2:c>0&&(u=2);let d=g6(u),h=new Array(Number(d)+1).fill(a),m=Math.floor((e.BITS-1)/u)*u,g=a;for(let b=m;b>=0;b-=u){h.fill(a);for(let C=0;C<i;C++){let T=r[C],R=Number(T>>BigInt(b)&d);h[R]=h[R].add(n[C])}let E=a;for(let C=h.length-1,T=a;C>0;C--)T=T.add(h[C]),E=E.add(T);if(g=g.add(E),b!==0)for(let C=0;C<u;C++)g=g.double()}return g}function xpe(t,e){if(e){if(e.ORDER!==t)throw new Error(\"Field.ORDER must match order: Fp == p, Fn == n\");return CB(e),e}else return Z0(t)}function IB(t,e,n={}){if(!e||typeof e!=\"object\")throw new Error(`expected valid ${t} CURVE object`);for(let c of[\"p\",\"n\",\"h\"]){let u=e[c];if(!(typeof u==\"bigint\"&&u>tC))throw new Error(`CURVE.${c} must be positive bigint`)}let r=xpe(e.p,n.Fp),o=xpe(e.n,n.Fn),a=[\"Gx\",\"Gy\",\"a\",t===\"weierstrass\"?\"b\":\"d\"];for(let c of a)if(!r.isValid(e[c]))throw new Error(`CURVE.${c} must be valid field element of CURVE.Fp`);return{Fp:r,Fn:o}}var tC,w6,HZ,Spe,WZ=ce(()=>{p();y6();v6();tC=BigInt(0),w6=BigInt(1);HZ=new WeakMap,Spe=new WeakMap});function _pe(t){t.lowS!==void 0&&pv(\"lowS\",t.lowS),t.prehash!==void 0&&pv(\"prehash\",t.prehash)}function Eze(t,e,n){function r(o){let i=t.sqr(o),a=t.mul(i,o);return t.add(t.add(a,t.mul(o,e)),n)}return r}function Cpe(t,e,n){let{BYTES:r}=t;function o(i){let a;if(typeof i==\"bigint\")a=i;else{let c=Ho(\"private key\",i);if(e){if(!e.includes(c.length*2))throw new Error(\"invalid private key\");let u=new Uint8Array(r);u.set(c,u.length-c.length),c=u}try{a=t.fromBytes(c)}catch{throw new Error(`invalid private key: expected ui8a of size ${r}, got ${typeof i}`)}}if(n&&(a=t.create(a)),!t.isValidNot0(a))throw new Error(\"invalid private key: out of range [1..N-1]\");return a}return o}function Sze(t,e={}){let{Fp:n,Fn:r}=IB(\"weierstrass\",t,e),{h:o,n:i}=t;Uy(e,{},{allowInfinityPoint:\"boolean\",clearCofactor:\"function\",isTorsionFree:\"function\",fromBytes:\"function\",toBytes:\"function\",endo:\"object\",wrapPrivateKey:\"boolean\"});let{endo:a}=e;if(a&&(!n.is0(t.a)||typeof a.beta!=\"bigint\"||typeof a.splitScalar!=\"function\"))throw new Error(\\'invalid endo: expected \"beta\": bigint and \"splitScalar\": function\\');function c(){if(!n.isOdd)throw new Error(\"compression is not supported: Field does not have .isOdd()\")}function u(ie,Z,ae){let{x:V,y:$}=Z.toAffine(),F=n.toBytes(V);if(pv(\"isCompressed\",ae),ae){c();let _=!n.isOdd($);return ws(Ape(_),F)}else return ws(Uint8Array.of(4),F,n.toBytes($))}function d(ie){Zi(ie);let Z=n.BYTES,ae=Z+1,V=2*Z+1,$=ie.length,F=ie[0],_=ie.subarray(1);if($===ae&&(F===2||F===3)){let O=n.fromBytes(_);if(!n.isValid(O))throw new Error(\"bad point: is not on curve, wrong x\");let z=g(O),N;try{N=n.sqrt(z)}catch(q){let H=q instanceof Error?\": \"+q.message:\"\";throw new Error(\"bad point: is not on curve, sqrt error\"+H)}c();let B=n.isOdd(N);return(F&1)===1!==B&&(N=n.neg(N)),{x:O,y:N}}else if($===V&&F===4){let O=n.fromBytes(_.subarray(Z*0,Z*1)),z=n.fromBytes(_.subarray(Z*1,Z*2));if(!b(O,z))throw new Error(\"bad point: is not on curve\");return{x:O,y:z}}else throw new Error(`bad point: got length ${$}, expected compressed=${ae} or uncompressed=${V}`)}let h=e.toBytes||u,m=e.fromBytes||d,g=Eze(n,t.a,t.b);function b(ie,Z){let ae=n.sqr(Z),V=g(ie);return n.eql(ae,V)}if(!b(t.Gx,t.Gy))throw new Error(\"bad curve params: generator point\");let E=n.mul(n.pow(t.a,nC),$Z),C=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(E,C)))throw new Error(\"bad curve params: a or b\");function T(ie,Z,ae=!1){if(!n.isValid(Z)||ae&&n.is0(Z))throw new Error(`bad point coordinate ${ie}`);return Z}function R(ie){if(!(ie instanceof W))throw new Error(\"ProjectivePoint expected\")}let L=X4((ie,Z)=>{let{px:ae,py:V,pz:$}=ie;if(n.eql($,n.ONE))return{x:ae,y:V};let F=ie.is0();Z==null&&(Z=F?n.ONE:n.inv($));let _=n.mul(ae,Z),O=n.mul(V,Z),z=n.mul($,Z);if(F)return{x:n.ZERO,y:n.ZERO};if(!n.eql(z,n.ONE))throw new Error(\"invZ was invalid\");return{x:_,y:O}}),D=X4(ie=>{if(ie.is0()){if(e.allowInfinityPoint&&!n.is0(ie.py))return;throw new Error(\"bad point: ZERO\")}let{x:Z,y:ae}=ie.toAffine();if(!n.isValid(Z)||!n.isValid(ae))throw new Error(\"bad point: x or y not field elements\");if(!b(Z,ae))throw new Error(\"bad point: equation left != right\");if(!ie.isTorsionFree())throw new Error(\"bad point: not in prime-order subgroup\");return!0});function G(ie,Z,ae,V,$){return ae=new W(n.mul(ae.px,ie),ae.py,ae.pz),Z=eC(V,Z),ae=eC($,ae),Z.add(ae)}class W{constructor(Z,ae,V){this.px=T(\"x\",Z),this.py=T(\"y\",ae,!0),this.pz=T(\"z\",V),Object.freeze(this)}static fromAffine(Z){let{x:ae,y:V}=Z||{};if(!Z||!n.isValid(ae)||!n.isValid(V))throw new Error(\"invalid affine point\");if(Z instanceof W)throw new Error(\"projective point not allowed\");return n.is0(ae)&&n.is0(V)?W.ZERO:new W(ae,V,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(Z){return AB(W,\"pz\",Z)}static fromBytes(Z){return Zi(Z),W.fromHex(Z)}static fromHex(Z){let ae=W.fromAffine(m(Ho(\"pointHex\",Z)));return ae.assertValidity(),ae}static fromPrivateKey(Z){let ae=Cpe(r,e.allowedPrivateKeyLengths,e.wrapPrivateKey);return W.BASE.multiply(ae(Z))}static msm(Z,ae){return RB(W,r,Z,ae)}precompute(Z=8,ae=!0){return ne.setWindowSize(this,Z),ae||this.multiply(nC),this}_setWindowSize(Z){this.precompute(Z)}assertValidity(){D(this)}hasEvenY(){let{y:Z}=this.toAffine();if(!n.isOdd)throw new Error(\"Field doesn\\'t support isOdd\");return!n.isOdd(Z)}equals(Z){R(Z);let{px:ae,py:V,pz:$}=this,{px:F,py:_,pz:O}=Z,z=n.eql(n.mul(ae,O),n.mul(F,$)),N=n.eql(n.mul(V,O),n.mul(_,$));return z&&N}negate(){return new W(this.px,n.neg(this.py),this.pz)}double(){let{a:Z,b:ae}=t,V=n.mul(ae,nC),{px:$,py:F,pz:_}=this,O=n.ZERO,z=n.ZERO,N=n.ZERO,B=n.mul($,$),j=n.mul(F,F),q=n.mul(_,_),H=n.mul($,F);return H=n.add(H,H),N=n.mul($,_),N=n.add(N,N),O=n.mul(Z,N),z=n.mul(V,q),z=n.add(O,z),O=n.sub(j,z),z=n.add(j,z),z=n.mul(O,z),O=n.mul(H,O),N=n.mul(V,N),q=n.mul(Z,q),H=n.sub(B,q),H=n.mul(Z,H),H=n.add(H,N),N=n.add(B,B),B=n.add(N,B),B=n.add(B,q),B=n.mul(B,H),z=n.add(z,B),q=n.mul(F,_),q=n.add(q,q),B=n.mul(q,H),O=n.sub(O,B),N=n.mul(q,j),N=n.add(N,N),N=n.add(N,N),new W(O,z,N)}add(Z){R(Z);let{px:ae,py:V,pz:$}=this,{px:F,py:_,pz:O}=Z,z=n.ZERO,N=n.ZERO,B=n.ZERO,j=t.a,q=n.mul(t.b,nC),H=n.mul(ae,F),I=n.mul(V,_),U=n.mul($,O),X=n.add(ae,V),ee=n.add(F,_);X=n.mul(X,ee),ee=n.add(H,I),X=n.sub(X,ee),ee=n.add(ae,$);let se=n.add(F,O);return ee=n.mul(ee,se),se=n.add(H,U),ee=n.sub(ee,se),se=n.add(V,$),z=n.add(_,O),se=n.mul(se,z),z=n.add(I,U),se=n.sub(se,z),B=n.mul(j,ee),z=n.mul(q,U),B=n.add(z,B),z=n.sub(I,B),B=n.add(I,B),N=n.mul(z,B),I=n.add(H,H),I=n.add(I,H),U=n.mul(j,U),ee=n.mul(q,ee),I=n.add(I,U),U=n.sub(H,U),U=n.mul(j,U),ee=n.add(ee,U),H=n.mul(I,ee),N=n.add(N,H),H=n.mul(se,ee),z=n.mul(X,z),z=n.sub(z,H),H=n.mul(X,I),B=n.mul(se,B),B=n.add(B,H),new W(z,N,B)}subtract(Z){return this.add(Z.negate())}is0(){return this.equals(W.ZERO)}multiply(Z){let{endo:ae}=e;if(!r.isValidNot0(Z))throw new Error(\"invalid scalar: out of range\");let V,$,F=_=>ne.wNAFCached(this,_,W.normalizeZ);if(ae){let{k1neg:_,k1:O,k2neg:z,k2:N}=ae.splitScalar(Z),{p:B,f:j}=F(O),{p:q,f:H}=F(N);$=j.add(H),V=G(ae.beta,B,q,_,z)}else{let{p:_,f:O}=F(Z);V=_,$=O}return W.normalizeZ([V,$])[0]}multiplyUnsafe(Z){let{endo:ae}=e,V=this;if(!r.isValid(Z))throw new Error(\"invalid scalar: out of range\");if(Z===x6||V.is0())return W.ZERO;if(Z===gd)return V;if(ne.hasPrecomputes(this))return this.multiply(Z);if(ae){let{k1neg:$,k1:F,k2neg:_,k2:O}=ae.splitScalar(Z),{p1:z,p2:N}=kpe(W,V,F,O);return G(ae.beta,z,N,$,_)}else return ne.wNAFCachedUnsafe(V,Z)}multiplyAndAddUnsafe(Z,ae,V){let $=this.multiplyUnsafe(ae).add(Z.multiplyUnsafe(V));return $.is0()?void 0:$}toAffine(Z){return L(this,Z)}isTorsionFree(){let{isTorsionFree:Z}=e;return o===gd?!0:Z?Z(W,this):ne.wNAFCachedUnsafe(this,i).is0()}clearCofactor(){let{clearCofactor:Z}=e;return o===gd?this:Z?Z(W,this):this.multiplyUnsafe(o)}toBytes(Z=!0){return pv(\"isCompressed\",Z),this.assertValidity(),h(W,this,Z)}toRawBytes(Z=!0){return this.toBytes(Z)}toHex(Z=!0){return Fp(this.toBytes(Z))}toString(){return`<Point ${this.is0()?\"ZERO\":this.toHex()}>`}}W.BASE=new W(t.Gx,t.Gy,n.ONE),W.ZERO=new W(n.ZERO,n.ONE,n.ZERO),W.Fp=n,W.Fn=r;let J=r.BITS,ne=TB(W,e.endo?Math.ceil(J/2):J);return W}function Ape(t){return Uint8Array.of(t?2:3)}function kze(t,e,n={}){Uy(e,{hash:\"function\"},{hmac:\"function\",lowS:\"boolean\",randomBytes:\"function\",bits2int:\"function\",bits2int_modN:\"function\"});let r=e.randomBytes||E5,o=e.hmac||((V,...$)=>BZ(e.hash,V,ws(...$))),{Fp:i,Fn:a}=t,{ORDER:c,BITS:u}=a;function d(V){let $=c>>gd;return V>$}function h(V){return d(V)?a.neg(V):V}function m(V,$){if(!a.isValidNot0($))throw new Error(`invalid signature ${V}: out of range 1..CURVE.n`)}class g{constructor($,F,_){m(\"r\",$),m(\"s\",F),this.r=$,this.s=F,_!=null&&(this.recovery=_),Object.freeze(this)}static fromCompact($){let F=a.BYTES,_=Ho(\"compactSignature\",$,F*2);return new g(a.fromBytes(_.subarray(0,F)),a.fromBytes(_.subarray(F,F*2)))}static fromDER($){let{r:F,s:_}=gv.toSig(Ho(\"DER\",$));return new g(F,_)}assertValidity(){}addRecoveryBit($){return new g(this.r,this.s,$)}recoverPublicKey($){let F=i.ORDER,{r:_,s:O,recovery:z}=this;if(z==null||![0,1,2,3].includes(z))throw new Error(\"recovery id invalid\");if(c*mv<F&&z>1)throw new Error(\"recovery id is ambiguous for h>1 curve\");let B=z===2||z===3?_+c:_;if(!i.isValid(B))throw new Error(\"recovery id 2 or 3 invalid\");let j=i.toBytes(B),q=t.fromHex(ws(Ape((z&1)===0),j)),H=a.inv(B),I=D(Ho(\"msgHash\",$)),U=a.create(-I*H),X=a.create(O*H),ee=t.BASE.multiplyUnsafe(U).add(q.multiplyUnsafe(X));if(ee.is0())throw new Error(\"point at infinify\");return ee.assertValidity(),ee}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new g(this.r,a.neg(this.s),this.recovery):this}toBytes($){if($===\"compact\")return ws(a.toBytes(this.r),a.toBytes(this.s));if($===\"der\")return l4(gv.hexFromSig(this));throw new Error(\"invalid format\")}toDERRawBytes(){return this.toBytes(\"der\")}toDERHex(){return Fp(this.toBytes(\"der\"))}toCompactRawBytes(){return this.toBytes(\"compact\")}toCompactHex(){return Fp(this.toBytes(\"compact\"))}}let b=Cpe(a,n.allowedPrivateKeyLengths,n.wrapPrivateKey),E={isValidPrivateKey(V){try{return b(V),!0}catch{return!1}},normPrivateKeyToScalar:b,randomPrivateKey:()=>{let V=c;return bpe(r(jZ(V)),V)},precompute(V=8,$=t.BASE){return $.precompute(V,!1)}};function C(V,$=!0){return t.fromPrivateKey(V).toBytes($)}function T(V){if(typeof V==\"bigint\")return!1;if(V instanceof t)return!0;let F=Ho(\"key\",V).length,_=i.BYTES,O=_+1,z=2*_+1;if(!(n.allowedPrivateKeyLengths||a.BYTES===O))return F===O||F===z}function R(V,$,F=!0){if(T(V)===!0)throw new Error(\"first arg must be private key\");if(T($)===!1)throw new Error(\"second arg must be public key\");return t.fromHex($).multiply(b(V)).toBytes(F)}let L=e.bits2int||function(V){if(V.length>8192)throw new Error(\"input is too large\");let $=G0(V),F=V.length*8-u;return F>0?$>>BigInt(F):$},D=e.bits2int_modN||function(V){return a.create(L(V))},G=g6(u);function W(V){return Fy(\"num < 2^\"+u,V,x6,G),a.toBytes(V)}function J(V,$,F=ne){if([\"recovered\",\"canonical\"].some(X=>X in F))throw new Error(\"sign() legacy options not supported\");let{hash:_}=e,{lowS:O,prehash:z,extraEntropy:N}=F;O==null&&(O=!0),V=Ho(\"msgHash\",V),_pe(F),z&&(V=Ho(\"prehashed msgHash\",_(V)));let B=D(V),j=b($),q=[W(j),W(B)];if(N!=null&&N!==!1){let X=N===!0?r(i.BYTES):N;q.push(Ho(\"extraEntropy\",X))}let H=ws(...q),I=B;function U(X){let ee=L(X);if(!a.isValidNot0(ee))return;let se=a.inv(ee),pe=t.BASE.multiply(ee).toAffine(),ye=a.create(pe.x);if(ye===x6)return;let xe=a.create(se*a.create(I+ye*j));if(xe===x6)return;let _e=(pe.x===ye?0:2)|Number(pe.y&gd),Me=xe;return O&&d(xe)&&(Me=h(xe),_e^=1),new g(ye,Me,_e)}return{seed:H,k2sig:U}}let ne={lowS:e.lowS,prehash:!1},ie={lowS:e.lowS,prehash:!1};function Z(V,$,F=ne){let{seed:_,k2sig:O}=J(V,$,F);return ape(e.hash.outputLen,a.BYTES,o)(_,O)}t.BASE.precompute(8);function ae(V,$,F,_=ie){let O=V;$=Ho(\"msgHash\",$),F=Ho(\"publicKey\",F),_pe(_);let{lowS:z,prehash:N,format:B}=_;if(\"strict\"in _)throw new Error(\"options.strict was renamed to lowS\");if(B!==void 0&&![\"compact\",\"der\",\"js\"].includes(B))throw new Error(\\'format must be \"compact\", \"der\" or \"js\"\\');let j=typeof O==\"string\"||Bw(O),q=!j&&!B&&typeof O==\"object\"&&O!==null&&typeof O.r==\"bigint\"&&typeof O.s==\"bigint\";if(!j&&!q)throw new Error(\"invalid signature, expected Uint8Array, hex string or Signature instance\");let H,I;try{if(q)if(B===void 0||B===\"js\")H=new g(O.r,O.s);else throw new Error(\"invalid format\");if(j){try{B!==\"compact\"&&(H=g.fromDER(O))}catch(Me){if(!(Me instanceof gv.Err))throw Me}!H&&B!==\"der\"&&(H=g.fromCompact(O))}I=t.fromHex(F)}catch{return!1}if(!H||z&&H.hasHighS())return!1;N&&($=e.hash($));let{r:U,s:X}=H,ee=D($),se=a.inv(X),pe=a.create(ee*se),ye=a.create(U*se),xe=t.BASE.multiplyUnsafe(pe).add(I.multiplyUnsafe(ye));return xe.is0()?!1:a.create(xe.x)===U}return Object.freeze({getPublicKey:C,getSharedSecret:R,sign:Z,verify:ae,utils:E,Point:t,Signature:g})}function _ze(t){let e={a:t.a,b:t.b,p:t.Fp.ORDER,n:t.n,h:t.h,Gx:t.Gx,Gy:t.Gy},n=t.Fp,r=Z0(e.n,t.nBitLength),o={Fp:n,Fn:r,allowedPrivateKeyLengths:t.allowedPrivateKeyLengths,allowInfinityPoint:t.allowInfinityPoint,endo:t.endo,wrapPrivateKey:t.wrapPrivateKey,isTorsionFree:t.isTorsionFree,clearCofactor:t.clearCofactor,fromBytes:t.fromBytes,toBytes:t.toBytes};return{CURVE:e,curveOpts:o}}function Cze(t){let{CURVE:e,curveOpts:n}=_ze(t),r={hash:t.hash,hmac:t.hmac,randomBytes:t.randomBytes,lowS:t.lowS,bits2int:t.bits2int,bits2int_modN:t.bits2int_modN};return{CURVE:e,curveOpts:n,ecdsaOpts:r}}function Aze(t,e){return Object.assign({},e,{ProjectivePoint:e.Point,CURVE:t})}function Tpe(t){let{CURVE:e,curveOpts:n,ecdsaOpts:r}=Cze(t),o=Sze(e,n),i=kze(o,r,n);return Aze(t,i)}function Tze(t,e){let n=t.ORDER,r=x6;for(let E=n-gd;E%mv===x6;E/=mv)r+=gd;let o=r,i=mv<<o-gd-gd,a=i*mv,c=(n-gd)/a,u=(c-gd)/mv,d=a-gd,h=i,m=t.pow(e,c),g=t.pow(e,(c+gd)/mv),b=(E,C)=>{let T=m,R=t.pow(C,d),L=t.sqr(R);L=t.mul(L,C);let D=t.mul(E,L);D=t.pow(D,u),D=t.mul(D,R),R=t.mul(D,C),L=t.mul(D,E);let G=t.mul(L,R);D=t.pow(G,h);let W=t.eql(D,t.ONE);R=t.mul(L,g),D=t.mul(G,T),L=t.cmov(R,L,W),G=t.cmov(D,G,W);for(let J=o;J>gd;J--){let ne=J-mv;ne=mv<<ne-gd;let ie=t.pow(G,ne),Z=t.eql(ie,t.ONE);R=t.mul(L,T),T=t.mul(T,T),ie=t.mul(G,T),L=t.cmov(R,L,Z),G=t.cmov(ie,G,Z)}return{isValid:W,value:L}};if(t.ORDER%$Z===nC){let E=(t.ORDER-nC)/$Z,C=t.sqrt(t.neg(e));b=(T,R)=>{let L=t.sqr(R),D=t.mul(T,R);L=t.mul(L,D);let G=t.pow(L,E);G=t.mul(G,D);let W=t.mul(G,C),J=t.mul(t.sqr(G),R),ne=t.eql(J,T),ie=t.cmov(W,G,ne);return{isValid:ne,value:ie}}}return b}function Rpe(t,e){CB(t);let{A:n,B:r,Z:o}=e;if(!t.isValid(n)||!t.isValid(r)||!t.isValid(o))throw new Error(\"mapToCurveSimpleSWU: invalid opts\");let i=Tze(t,o);if(!t.isOdd)throw new Error(\"Field does not have .isOdd()\");return a=>{let c,u,d,h,m,g,b,E;c=t.sqr(a),c=t.mul(c,o),u=t.sqr(c),u=t.add(u,c),d=t.add(u,t.ONE),d=t.mul(d,r),h=t.cmov(o,t.neg(u),!t.eql(u,t.ZERO)),h=t.mul(h,n),u=t.sqr(d),g=t.sqr(h),m=t.mul(g,n),u=t.add(u,m),u=t.mul(u,d),g=t.mul(g,h),m=t.mul(g,r),u=t.add(u,m),b=t.mul(c,d);let{isValid:C,value:T}=i(u,g);E=t.mul(c,a),E=t.mul(E,T),b=t.cmov(b,d,C),E=t.cmov(E,T,C);let R=t.isOdd(a)===t.isOdd(E);E=t.cmov(t.neg(E),E,R);let L=dx(t,[h],!0)[0];return b=t.mul(b,L),{x:b,y:E}}}var VZ,gv,x6,gd,mv,nC,$Z,KZ=ce(()=>{p();ope();y6();WZ();v6();VZ=class extends Error{constructor(e=\"\"){super(e)}},gv={Err:VZ,_tlv:{encode:(t,e)=>{let{Err:n}=gv;if(t<0||t>256)throw new n(\"tlv.encode: wrong tag\");if(e.length&1)throw new n(\"tlv.encode: unpadded data\");let r=e.length/2,o=a9(r);if(o.length/2&128)throw new n(\"tlv.encode: long form length too big\");let i=r>127?a9(o.length/2|128):\"\";return a9(t)+i+o+e},decode(t,e){let{Err:n}=gv,r=0;if(t<0||t>256)throw new n(\"tlv.encode: wrong tag\");if(e.length<2||e[r++]!==t)throw new n(\"tlv.decode: wrong tlv\");let o=e[r++],i=!!(o&128),a=0;if(!i)a=o;else{let u=o&127;if(!u)throw new n(\"tlv.decode(long): indefinite length not supported\");if(u>4)throw new n(\"tlv.decode(long): byte length is too big\");let d=e.subarray(r,r+u);if(d.length!==u)throw new n(\"tlv.decode: length bytes not complete\");if(d[0]===0)throw new n(\"tlv.decode(long): zero leftmost byte\");for(let h of d)a=a<<8|h;if(r+=u,a<128)throw new n(\"tlv.decode(long): not minimal encoding\")}let c=e.subarray(r,r+a);if(c.length!==a)throw new n(\"tlv.decode: wrong value length\");return{v:c,l:e.subarray(r+a)}}},_int:{encode(t){let{Err:e}=gv;if(t<x6)throw new e(\"integer: negative integers are not allowed\");let n=a9(t);if(Number.parseInt(n[0],16)&8&&(n=\"00\"+n),n.length&1)throw new e(\"unexpected DER parsing assertion: unpadded hex\");return n},decode(t){let{Err:e}=gv;if(t[0]&128)throw new e(\"invalid signature integer: negative\");if(t[0]===0&&!(t[1]&128))throw new e(\"invalid signature integer: unnecessary leading zero\");return G0(t)}},toSig(t){let{Err:e,_int:n,_tlv:r}=gv,o=Ho(\"signature\",t),{v:i,l:a}=r.decode(48,o);if(a.length)throw new e(\"invalid signature: left bytes after parsing\");let{v:c,l:u}=r.decode(2,i),{v:d,l:h}=r.decode(2,u);if(h.length)throw new e(\"invalid signature: left bytes after parsing\");return{r:n.decode(c),s:n.decode(d)}},hexFromSig(t){let{_tlv:e,_int:n}=gv,r=e.encode(2,n.encode(t.r)),o=e.encode(2,n.encode(t.s)),i=r+o;return e.encode(48,i)}},x6=BigInt(0),gd=BigInt(1),mv=BigInt(2),nC=BigInt(3),$Z=BigInt(4)});function Ipe(t,e){let n=r=>Tpe({...t,hash:r});return{...n(e),create:n}}var Ope=ce(()=>{p();KZ();});function fx(t,e){if(l9(t),l9(e),t<0||t>=1<<8*e)throw new Error(\"invalid I2OSP input: \"+t);let n=Array.from({length:e}).fill(0);for(let r=e-1;r>=0;r--)n[r]=t&255,t>>>=8;return new Uint8Array(n)}function Ize(t,e){let n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t[r]^e[r];return n}function l9(t){if(!Number.isSafeInteger(t))throw new Error(\"number expected\")}function Oze(t,e,n,r){Zi(t),Zi(e),l9(n),e.length>255&&(e=r(ws(u4(\"H2C-OVERSIZE-DST-\"),e)));let{outputLen:o,blockLen:i}=r,a=Math.ceil(n/o);if(n>65535||a>255)throw new Error(\"expand_message_xmd: invalid lenInBytes\");let c=ws(e,fx(e.length,1)),u=fx(0,i),d=fx(n,2),h=new Array(a),m=r(ws(u,t,d,fx(0,1),c));h[0]=r(ws(m,fx(1,1),c));for(let b=1;b<=a;b++){let E=[Ize(m,h[b-1]),fx(b+1,1),c];h[b]=r(ws(...E))}return ws(...h).slice(0,n)}function Pze(t,e,n,r,o){if(Zi(t),Zi(e),l9(n),e.length>255){let i=Math.ceil(2*r/8);e=o.create({dkLen:i}).update(u4(\"H2C-OVERSIZE-DST-\")).update(e).digest()}if(n>65535||e.length>255)throw new Error(\"expand_message_xof: invalid lenInBytes\");return o.create({dkLen:n}).update(t).update(fx(n,2)).update(e).update(fx(e.length,1)).digest()}function Ppe(t,e,n){Uy(n,{p:\"bigint\",m:\"number\",k:\"number\",hash:\"function\"});let{p:r,k:o,m:i,hash:a,expand:c,DST:u}=n;if(!Bw(u)&&typeof u!=\"string\")throw new Error(\"DST must be string or uint8array\");if(!cpe(n.hash))throw new Error(\"expected valid hash\");Zi(t),l9(e);let d=typeof u==\"string\"?u4(u):u,h=r.toString(2).length,m=Math.ceil((h+o)/8),g=e*i*m,b;if(c===\"xmd\")b=Oze(t,d,g,a);else if(c===\"xof\")b=Pze(t,d,g,o,a);else if(c===\"_internal_pass\")b=t;else throw new Error(\\'expand must be \"xmd\" or \"xof\"\\');let E=new Array(e);for(let C=0;C<e;C++){let T=new Array(i);for(let R=0;R<i;R++){let L=m*(R+C*i),D=b.subarray(L,L+m);T[R]=ui(Rze(D),r)}E[C]=T}return E}function Mpe(t,e){let n=e.map(r=>Array.from(r).reverse());return(r,o)=>{let[i,a,c,u]=n.map(m=>m.reduce((g,b)=>t.add(t.mul(g,r),b))),[d,h]=dx(t,[a,u],!0);return r=t.mul(i,d),o=t.mul(o,t.mul(c,h)),{x:r,y:o}}}function Npe(t,e,n){if(typeof e!=\"function\")throw new Error(\"mapToCurve() must be defined\");function r(i){return t.fromAffine(e(i))}function o(i){let a=i.clearCofactor();return a.equals(t.ZERO)?t.ZERO:(a.assertValidity(),a)}return{defaults:n,hashToCurve(i,a){let c=n.DST?n.DST:{},u=Object.assign({},n,c,a),d=Ppe(i,2,u),h=r(d[0]),m=r(d[1]);return o(h.add(m))},encodeToCurve(i,a){let c=n.encodeDST?n.encodeDST:{},u=Object.assign({},n,c,a),d=Ppe(i,1,u);return o(r(d[0]))},mapToCurve(i){if(!Array.isArray(i))throw new Error(\"expected array of bigints\");for(let a of i)if(typeof a!=\"bigint\")throw new Error(\"expected array of bigints\");return o(r(i))}}}var Rze,Lpe=ce(()=>{p();y6();v6();Rze=G0});var qpe={};ld(qpe,{encodeToCurve:()=>Uze,hashToCurve:()=>Fze,schnorr:()=>Lze,secp256k1:()=>Y0,secp256k1_hasher:()=>eY});function Upe(t){let e=yv.p,n=BigInt(3),r=BigInt(6),o=BigInt(11),i=BigInt(22),a=BigInt(23),c=BigInt(44),u=BigInt(88),d=t*t*t%e,h=d*d*t%e,m=us(h,n,e)*h%e,g=us(m,n,e)*h%e,b=us(g,PB,e)*d%e,E=us(b,o,e)*b%e,C=us(E,i,e)*E%e,T=us(C,c,e)*C%e,R=us(T,u,e)*T%e,L=us(R,c,e)*C%e,D=us(L,n,e)*h%e,G=us(D,a,e)*E%e,W=us(G,r,e)*d%e,J=us(W,PB,e);if(!hx.eql(hx.sqr(J),t))throw new Error(\"Cannot find square root\");return J}function MB(t,...e){let n=Dpe[t];if(n===void 0){let r=_5(Uint8Array.from(t,o=>o.charCodeAt(0)));n=ws(r,r),Dpe[t]=n}return _5(ws(n,...e))}function YZ(t){let e=Y0.utils.normPrivateKeyToScalar(t),n=JZ.fromPrivateKey(e);return{scalar:XZ(n.y)?e:u9(-e),bytes:QZ(n)}}function jpe(t){Fy(\"x\",t,OB,yv.p);let e=GZ(t*t),n=GZ(e*t+BigInt(7)),r=Upe(n);XZ(r)||(r=GZ(-r));let o=JZ.fromAffine({x:t,y:r});return o.assertValidity(),o}function zpe(...t){return u9(rC(MB(\"BIP0340/challenge\",...t)))}function Mze(t){return YZ(t).bytes}function Nze(t,e,n=E5(32)){let r=Ho(\"message\",t),{bytes:o,scalar:i}=YZ(e),a=Ho(\"auxRand\",n,32),c=ZZ(i^rC(MB(\"BIP0340/aux\",a))),u=MB(\"BIP0340/nonce\",c,o,r),d=u9(rC(u));if(d===Fpe)throw new Error(\"sign failed: k is zero\");let{bytes:h,scalar:m}=YZ(d),g=zpe(h,o,r),b=new Uint8Array(64);if(b.set(h,0),b.set(ZZ(u9(m+g*i)),32),!Hpe(b,r,o))throw new Error(\"sign: Invalid signature produced\");return b}function Hpe(t,e,n){let r=Ho(\"signature\",t,64),o=Ho(\"message\",e),i=Ho(\"publicKey\",n,32);try{let a=jpe(rC(i)),c=rC(r.subarray(0,32));if(!c9(c,OB,yv.p))return!1;let u=rC(r.subarray(32,64));if(!c9(u,OB,yv.n))return!1;let d=zpe(ZZ(c),QZ(a),o),h=JZ.BASE.multiplyUnsafe(u).add(a.multiplyUnsafe(u9(-d))),{x:m,y:g}=h.toAffine();return!(h.is0()||!XZ(g)||m!==c)}catch{return!1}}var yv,Fpe,OB,PB,Bpe,hx,Y0,Dpe,QZ,ZZ,GZ,u9,JZ,XZ,rC,Lze,Bze,Dze,eY,Fze,Uze,NB=ce(()=>{p();kL();Jb();Ope();Lpe();v6();KZ();y6();yv={p:BigInt(\"0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f\"),n:BigInt(\"0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141\"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt(\"0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798\"),Gy:BigInt(\"0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8\")},Fpe=BigInt(0),OB=BigInt(1),PB=BigInt(2),Bpe=(t,e)=>(t+e/PB)/e;hx=Z0(yv.p,void 0,void 0,{sqrt:Upe}),Y0=Ipe({...yv,Fp:hx,lowS:!0,endo:{beta:BigInt(\"0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee\"),splitScalar:t=>{let e=yv.n,n=BigInt(\"0x3086d221a7d46bcde86c90e49284eb15\"),r=-OB*BigInt(\"0xe4437ed6010e88286f547fa90abfe4c3\"),o=BigInt(\"0x114ca50f7a8e2f3f657c1108d9d44cfd8\"),i=n,a=BigInt(\"0x100000000000000000000000000000000\"),c=Bpe(i*t,e),u=Bpe(-r*t,e),d=ui(t-c*n-u*o,e),h=ui(-c*r-u*i,e),m=d>a,g=h>a;if(m&&(d=e-d),g&&(h=e-h),d>a||h>a)throw new Error(\"splitScalar: Endomorphism failed, k=\"+t);return{k1neg:m,k1:d,k2neg:g,k2:h}}}},_5),Dpe={};QZ=t=>t.toBytes(!0).slice(1),ZZ=t=>m6(t,32),GZ=t=>ui(t,yv.p),u9=t=>ui(t,yv.n),JZ=Y0.Point,XZ=t=>t%PB===Fpe;rC=G0;Lze={getPublicKey:Mze,sign:Nze,verify:Hpe,utils:{randomPrivateKey:Y0.utils.randomPrivateKey,lift_x:jpe,pointToBytes:QZ,numberToBytesBE:m6,bytesToNumberBE:G0,taggedHash:MB,mod:ui}},Bze=Mpe(hx,[[\"0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7\",\"0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581\",\"0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262\",\"0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c\"],[\"0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b\",\"0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14\",\"0x0000000000000000000000000000000000000000000000000000000000000001\"],[\"0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c\",\"0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3\",\"0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931\",\"0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84\"],[\"0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b\",\"0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573\",\"0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f\",\"0x0000000000000000000000000000000000000000000000000000000000000001\"]].map(t=>t.map(e=>BigInt(e)))),Dze=Rpe(hx,{A:BigInt(\"0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533\"),B:BigInt(\"1771\"),Z:hx.create(BigInt(\"-11\"))}),eY=Npe(Y0.Point,t=>{let{x:e,y:n}=Dze(hx.create(t[0]));return Bze(e,n)},{DST:\"secp256k1_XMD:SHA-256_SSWU_RO_\",encodeDST:\"secp256k1_XMD:SHA-256_SSWU_NU_\",p:hx.ORDER,m:1,k:128,expand:\"xmd\",hash:_5}),Fze=eY.hashToCurve,Uze=eY.encodeToCurve});async function Vpe({hash:t,signature:e}){let n=da(t)?t:Uo(t),{secp256k1:r}=await Promise.resolve().then(()=>(NB(),qpe));return`0x${(()=>{if(typeof e==\"object\"&&\"r\"in e&&\"s\"in e){let{r:d,s:h,v:m,yParity:g}=e,b=Number(g??m),E=Wpe(b);return new r.Signature(jo(d),jo(h)).addRecoveryBit(E)}let a=da(e)?e:Uo(e);if(Jr(a)!==65)throw new Error(\"invalid signature length\");let c=Ei(`0x${a.slice(130)}`),u=Wpe(c);return r.Signature.fromCompact(a.substring(2,130)).addRecoveryBit(u)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Wpe(t){if(t===0||t===1)return t;if(t===27)return 0;if(t===28)return 1;throw new Error(\"Invalid yParityOrV value\")}var $pe=ce(()=>{p();P0();Mp();fc();gn()});async function LB({hash:t,signature:e}){return npe(await Vpe({hash:t,signature:e}))}var tY=ce(()=>{p();rpe();$pe()});function Kpe(t){let{chainId:e,nonce:n,to:r}=t,o=t.contractAddress??t.address,i=Po(fa([\"0x05\",N0([e?Ye(e):\"0x\",o,n?Ye(n):\"0x\"])]));return r===\"bytes\"?Us(i):i}var Gpe=ce(()=>{p();iu();hc();gn();aL();zp()});async function BB(t){let{authorization:e,signature:n}=t;return LB({hash:Kpe(e),signature:n??e})}var nY=ce(()=>{p();tY();Gpe()});function DB(t,{docsPath:e,...n}){let r=(()=>{let o=Zw(t,n);return o instanceof jp?t:o})();return new mL(r,{docsPath:e,...n})}var rY=ce(()=>{p();jw();L0();WR()});function Lt(t,e,n){let r=t[e.name];if(typeof r==\"function\")return r;let o=t[n];return typeof o==\"function\"?o:i=>e(t,i)}var ki=ce(()=>{p()});async function Zp(t){let e=await t.request({method:\"eth_chainId\"},{dedupe:!0});return Ei(e)}var E6=ce(()=>{p();fc()});var FB,px,UB,jB=ce(()=>{p();r4();ir();FB=class extends Be{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:\"BaseFeeScalarError\"})}},px=class extends Be{constructor(){super(\"Chain does not support EIP-1559 fees.\",{name:\"Eip1559FeesNotSupportedError\"})}},UB=class extends Be{constructor({maxPriorityFeePerGas:e}){super(`\\\\`maxFeePerGas\\\\` cannot be less than the \\\\`maxPriorityFeePerGas\\\\` (${pc(e)} gwei).`,{name:\"MaxFeePerGasTooLowError\"})}}});var oC,oY=ce(()=>{p();ir();oC=class extends Be{constructor({blockHash:e,blockNumber:n}){let r=\"Block\";e&&(r=`Block at hash \"${e}\"`),n&&(r=`Block at number \"${n}\"`),super(`${r} could not be found.`,{name:\"BlockNotFoundError\"})}}});async function uu(t,{blockHash:e,blockNumber:n,blockTag:r,includeTransactions:o}={}){let i=r??\"latest\",a=o??!1,c=n!==void 0?Ye(n):void 0,u=null;if(e?u=await t.request({method:\"eth_getBlockByHash\",params:[e,a]},{dedupe:!0}):u=await t.request({method:\"eth_getBlockByNumber\",params:[c||i,a]},{dedupe:!!c}),!u)throw new oC({blockHash:e,blockNumber:n});return(t.chain?.formatters?.block?.format||nR)(u)}var S6=ce(()=>{p();oY();gn();rL()});async function iC(t){let e=await t.request({method:\"eth_gasPrice\"});return BigInt(e)}var zB=ce(()=>{p()});async function Zpe(t,e){return iY(t,e)}async function iY(t,e){let{block:n,chain:r=t.chain,request:o}=e||{};try{let i=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof i==\"function\"){let c=n||await Lt(t,uu,\"getBlock\")({}),u=await i({block:c,client:t,request:o});if(u===null)throw new Error;return u}if(typeof i<\"u\")return i;let a=await t.request({method:\"eth_maxPriorityFeePerGas\"});return jo(a)}catch{let[i,a]=await Promise.all([n?Promise.resolve(n):Lt(t,uu,\"getBlock\")({}),Lt(t,iC,\"getGasPrice\")({})]);if(typeof i.baseFeePerGas!=\"bigint\")throw new px;let c=a-i.baseFeePerGas;return c<0n?0n:c}}var sY=ce(()=>{p();jB();fc();ki();S6();zB()});async function Ype(t,e){return HB(t,e)}async function HB(t,e){let{block:n,chain:r=t.chain,request:o,type:i=\"eip1559\"}=e||{},a=await(async()=>typeof r?.fees?.baseFeeMultiplier==\"function\"?r.fees.baseFeeMultiplier({block:n,client:t,request:o}):r?.fees?.baseFeeMultiplier??1.2)();if(a<1)throw new FB;let u=10**(a.toString().split(\".\")[1]?.length??0),d=g=>g*BigInt(Math.ceil(a*u))/BigInt(u),h=n||await Lt(t,uu,\"getBlock\")({});if(typeof r?.fees?.estimateFeesPerGas==\"function\"){let g=await r.fees.estimateFeesPerGas({block:n,client:t,multiply:d,request:o,type:i});if(g!==null)return g}if(i===\"eip1559\"){if(typeof h.baseFeePerGas!=\"bigint\")throw new px;let g=typeof o?.maxPriorityFeePerGas==\"bigint\"?o.maxPriorityFeePerGas:await iY(t,{block:h,chain:r,request:o}),b=d(h.baseFeePerGas);return{maxFeePerGas:o?.maxFeePerGas??b+g,maxPriorityFeePerGas:g}}return{gasPrice:o?.gasPrice??d(await Lt(t,iC,\"getGasPrice\")({}))}}var aY=ce(()=>{p();jB();ki();sY();S6();zB()});var qB,Qpe=ce(()=>{p();uL();r4();ir();L0();qB=class extends Be{constructor(e,{account:n,docsPath:r,chain:o,data:i,gas:a,gasPrice:c,maxFeePerGas:u,maxPriorityFeePerGas:d,nonce:h,to:m,value:g}){let b=v5({from:n?.address,to:m,value:typeof g<\"u\"&&`${n4(g)} ${o?.nativeCurrency?.symbol||\"ETH\"}`,data:i,gas:a,gasPrice:typeof c<\"u\"&&`${pc(c)} gwei`,maxFeePerGas:typeof u<\"u\"&&`${pc(u)} gwei`,maxPriorityFeePerGas:typeof d<\"u\"&&`${pc(d)} gwei`,nonce:h});super(e.shortMessage,{cause:e,docsPath:r,metaMessages:[...e.metaMessages?[...e.metaMessages,\" \"]:[],\"Estimate Gas Arguments:\",b].filter(Boolean),name:\"EstimateGasExecutionError\"}),Object.defineProperty(this,\"cause\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}});function Jpe(t,{docsPath:e,...n}){let r=(()=>{let o=Zw(t,n);return o instanceof jp?t:o})();return new qB(r,{docsPath:e,...n})}var Xpe=ce(()=>{p();Qpe();jw();WR()});function eme(t){if(!(!t||t.length===0))return t.reduce((e,{slot:n,value:r})=>{if(n.length!==66)throw new J7({size:n.length,targetSize:66,type:\"hex\"});if(r.length!==66)throw new J7({size:r.length,targetSize:66,type:\"hex\"});return e[n]=r,e},{})}function jze(t){let{balance:e,nonce:n,state:r,stateDiff:o,code:i}=t,a={};if(i!==void 0&&(a.code=i),e!==void 0&&(a.balance=Ye(e)),n!==void 0&&(a.nonce=Ye(n)),r!==void 0&&(a.state=eme(r)),o!==void 0){if(a.state)throw new uB;a.stateDiff=eme(o)}return a}function sC(t){if(!t)return;let e={};for(let{address:n,...r}of t){if(!Kr(n,{strict:!1}))throw new ci({address:n});if(e[n])throw new lB({address:n});e[n]=jze(r)}return e}var WB=ce(()=>{p();D0();eL();cZ();hf();gn()});async function k6(t,{address:e,blockNumber:n,blockTag:r=\"latest\"}){let o=typeof n==\"bigint\"?Ye(n):void 0,i=await t.request({method:\"eth_getBalance\",params:[e,o||r]});return BigInt(i)}var VB=ce(()=>{p();gn()});async function aC(t,e){let{account:n=t.account}=e,r=n?Wn(n):void 0;try{let V=function(F){let{block:_,request:O,rpcStateOverride:z}=F;return t.request({method:\"eth_estimateGas\",params:z?[O,_??\"latest\",z]:_?[O,_]:[O]})},{accessList:o,authorizationList:i,blobs:a,blobVersionedHashes:c,blockNumber:u,blockTag:d,data:h,gas:m,gasPrice:g,maxFeePerBlobGas:b,maxFeePerGas:E,maxPriorityFeePerGas:C,nonce:T,value:R,stateOverride:L,...D}=await mx(t,{...e,parameters:r?.type===\"local\"?void 0:[\"blobVersionedHashes\"]}),W=(typeof u==\"bigint\"?Ye(u):void 0)||d,J=sC(L),ne=await(async()=>{if(D.to)return D.to;if(i&&i.length>0)return await BB({authorization:i[0]}).catch(()=>{throw new Be(\"`to` is required. Could not infer from `authorizationList`\")})})();gf(e);let ie=t.chain?.formatters?.transactionRequest?.format,ae=(ie||Bp)({...Yw(D,{format:ie}),from:r?.address,accessList:o,authorizationList:i,blobs:a,blobVersionedHashes:c,data:h,gas:m,gasPrice:g,maxFeePerBlobGas:b,maxFeePerGas:E,maxPriorityFeePerGas:C,nonce:T,to:ne,value:R}),$=BigInt(await V({block:W,request:ae,rpcStateOverride:J}));if(i){let F=await k6(t,{address:ae.from}),_=await Promise.all(i.map(async O=>{let{address:z}=O,N=await V({block:W,request:{authorizationList:void 0,data:h,from:r?.address,to:z,value:Ye(F)},rpcStateOverride:J}).catch(()=>100000n);return 2n*BigInt(N)}));$+=_.reduce((O,z)=>O+z,0n)}return $}catch(o){throw Jpe(o,{...e,account:r,chain:t.chain})}}var $B=ce(()=>{p();js();ir();nY();gn();Xpe();VR();b5();WB();Qw();d9();VB()});async function cC(t,{address:e,blockTag:n=\"latest\",blockNumber:r}){let o=await t.request({method:\"eth_getTransactionCount\",params:[e,typeof r==\"bigint\"?Ye(r):n]},{dedupe:!!r});return Ei(o)}var KB=ce(()=>{p();fc();gn()});async function mx(t,e){let{account:n=t.account,blobs:r,chain:o,gas:i,kzg:a,nonce:c,nonceManager:u,parameters:d=cY,type:h}=e,m=n&&Wn(n),g={...e,...m?{from:m?.address}:{}},b;async function E(){return b||(b=await Lt(t,uu,\"getBlock\")({blockTag:\"latest\"}),b)}let C;async function T(){return C||(o?o.id:typeof e.chainId<\"u\"?e.chainId:(C=await Lt(t,Zp,\"getChainId\")({}),C))}if(d.includes(\"nonce\")&&typeof c>\"u\"&&m)if(u){let R=await T();g.nonce=await u.consume({address:m.address,chainId:R,client:t})}else g.nonce=await Lt(t,cC,\"getTransactionCount\")({address:m.address,blockTag:\"pending\"});if((d.includes(\"blobVersionedHashes\")||d.includes(\"sidecars\"))&&r&&a){let R=a4({blobs:r,kzg:a});if(d.includes(\"blobVersionedHashes\")){let L=CL({commitments:R,to:\"hex\"});g.blobVersionedHashes=L}if(d.includes(\"sidecars\")){let L=c4({blobs:r,commitments:R,kzg:a}),D=IL({blobs:r,commitments:R,proofs:L,to:\"hex\"});g.sidecars=D}}if(d.includes(\"chainId\")&&(g.chainId=await T()),(d.includes(\"fees\")||d.includes(\"type\"))&&typeof h>\"u\")try{g.type=LL(g)}catch{let R=tme.get(t.uid);typeof R>\"u\"&&(R=typeof(await E())?.baseFeePerGas==\"bigint\",tme.set(t.uid,R)),g.type=R?\"eip1559\":\"legacy\"}if(d.includes(\"fees\"))if(g.type!==\"legacy\"&&g.type!==\"eip2930\"){if(typeof g.maxFeePerGas>\"u\"||typeof g.maxPriorityFeePerGas>\"u\"){let R=await E(),{maxFeePerGas:L,maxPriorityFeePerGas:D}=await HB(t,{block:R,chain:o,request:g});if(typeof e.maxPriorityFeePerGas>\"u\"&&e.maxFeePerGas&&e.maxFeePerGas<D)throw new UB({maxPriorityFeePerGas:D});g.maxPriorityFeePerGas=D,g.maxFeePerGas=L}}else{if(typeof e.maxFeePerGas<\"u\"||typeof e.maxPriorityFeePerGas<\"u\")throw new px;if(typeof e.gasPrice>\"u\"){let R=await E(),{gasPrice:L}=await HB(t,{block:R,chain:o,request:g,type:\"legacy\"});g.gasPrice=L}}return d.includes(\"gas\")&&typeof i>\"u\"&&(g.gas=await Lt(t,aC,\"estimateGas\")({...g,account:m&&{address:m.address,type:\"json-rpc\"}})),gf(g),delete g.parameters,g}var cY,tme,d9=ce(()=>{p();js();aY();$B();S6();KB();jB();yL();bL();FG();jG();ki();Qw();VG();E6();cY=[\"blobVersionedHashes\",\"chainId\",\"fees\",\"gas\",\"nonce\",\"type\"],tme=new Map});async function lC(t,{serializedTransaction:e}){return t.request({method:\"eth_sendRawTransaction\",params:[e]},{retryCount:0})}var GB=ce(()=>{p()});async function Q0(t,e){let{account:n=t.account,chain:r=t.chain,accessList:o,authorizationList:i,blobs:a,data:c,gas:u,gasPrice:d,maxFeePerBlobGas:h,maxFeePerGas:m,maxPriorityFeePerGas:g,nonce:b,type:E,value:C,...T}=e;if(typeof n>\"u\")throw new su({docsPath:\"/docs/actions/wallet/sendTransaction\"});let R=n?Wn(n):null;try{gf(e);let L=await(async()=>{if(e.to)return e.to;if(e.to!==null&&i&&i.length>0)return await BB({authorization:i[0]}).catch(()=>{throw new Be(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(R?.type===\"json-rpc\"||R===null){let D;r!==null&&(D=await Lt(t,Zp,\"getChainId\")({}),BL({currentChainId:D,chain:r}));let G=t.chain?.formatters?.transactionRequest?.format,J=(G||Bp)({...Yw(T,{format:G}),accessList:o,authorizationList:i,blobs:a,chainId:D,data:c,from:R?.address,gas:u,gasPrice:d,maxFeePerBlobGas:h,maxFeePerGas:m,maxPriorityFeePerGas:g,nonce:b,to:L,type:E,value:C}),ne=lY.get(t.uid),ie=ne?\"wallet_sendTransaction\":\"eth_sendTransaction\";try{return await t.request({method:ie,params:[J]},{retryCount:0})}catch(Z){if(ne===!1)throw Z;let ae=Z;if(ae.name===\"InvalidInputRpcError\"||ae.name===\"InvalidParamsRpcError\"||ae.name===\"MethodNotFoundRpcError\"||ae.name===\"MethodNotSupportedRpcError\")return await t.request({method:\"wallet_sendTransaction\",params:[J]},{retryCount:0}).then(V=>(lY.set(t.uid,!0),V)).catch(V=>{let $=V;throw $.name===\"MethodNotFoundRpcError\"||$.name===\"MethodNotSupportedRpcError\"?(lY.set(t.uid,!1),ae):$});throw ae}}if(R?.type===\"local\"){let D=await Lt(t,mx,\"prepareTransactionRequest\")({account:R,accessList:o,authorizationList:i,blobs:a,chain:r,data:c,gas:u,gasPrice:d,maxFeePerBlobGas:h,maxFeePerGas:m,maxPriorityFeePerGas:g,nonce:b,nonceManager:R.nonceManager,parameters:[...cY,\"sidecars\"],type:E,value:C,...T,to:L}),G=r?.serializers?.transaction,W=await R.signTransaction(D,{serializer:G});return await Lt(t,lC,\"sendRawTransaction\")({serializedTransaction:W})}throw R?.type===\"smart\"?new zw({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:\"/docs/actions/bundler/sendUserOperation\",type:\"smart\"}):new zw({docsPath:\"/docs/actions/wallet/sendTransaction\",type:R?.type})}catch(L){throw L instanceof zw?L:DB(L,{...e,account:R,chain:e.chain||void 0})}}var lY,uC=ce(()=>{p();js();Hw();ir();nY();GG();rY();VR();b5();ki();dR();Qw();E6();d9();GB();lY=new Ay(128)});function nme(t,e){let{abi:n,args:r,bytecode:o,...i}=e,a=h6({abi:n,args:r,bytecode:o});return Q0(t,{...i,...i.authorizationList?{to:null}:{},data:a})}var rme=ce(()=>{p();kB();uC()});var dC,ZB,ome,YB,ime,uY,dY,QB,f9,bv=ce(()=>{p();dC=[{inputs:[{components:[{name:\"target\",type:\"address\"},{name:\"allowFailure\",type:\"bool\"},{name:\"callData\",type:\"bytes\"}],name:\"calls\",type:\"tuple[]\"}],name:\"aggregate3\",outputs:[{components:[{name:\"success\",type:\"bool\"},{name:\"returnData\",type:\"bytes\"}],name:\"returnData\",type:\"tuple[]\"}],stateMutability:\"view\",type:\"function\"}],ZB=[{name:\"query\",type:\"function\",stateMutability:\"view\",inputs:[{type:\"tuple[]\",name:\"queries\",components:[{type:\"address\",name:\"sender\"},{type:\"string[]\",name:\"urls\"},{type:\"bytes\",name:\"data\"}]}],outputs:[{type:\"bool[]\",name:\"failures\"},{type:\"bytes[]\",name:\"responses\"}]},{name:\"HttpError\",type:\"error\",inputs:[{type:\"uint16\",name:\"status\"},{type:\"string\",name:\"message\"}]}],ome=[{inputs:[],name:\"ResolverNotFound\",type:\"error\"},{inputs:[],name:\"ResolverWildcardNotSupported\",type:\"error\"},{inputs:[],name:\"ResolverNotContract\",type:\"error\"},{inputs:[{name:\"returnData\",type:\"bytes\"}],name:\"ResolverError\",type:\"error\"},{inputs:[{components:[{name:\"status\",type:\"uint16\"},{name:\"message\",type:\"string\"}],name:\"errors\",type:\"tuple[]\"}],name:\"HttpError\",type:\"error\"}],YB=[...ome,{name:\"resolve\",type:\"function\",stateMutability:\"view\",inputs:[{name:\"name\",type:\"bytes\"},{name:\"data\",type:\"bytes\"}],outputs:[{name:\"\",type:\"bytes\"},{name:\"address\",type:\"address\"}]},{name:\"resolve\",type:\"function\",stateMutability:\"view\",inputs:[{name:\"name\",type:\"bytes\"},{name:\"data\",type:\"bytes\"},{name:\"gateways\",type:\"string[]\"}],outputs:[{name:\"\",type:\"bytes\"},{name:\"address\",type:\"address\"}]}],ime=[...ome,{name:\"reverse\",type:\"function\",stateMutability:\"view\",inputs:[{type:\"bytes\",name:\"reverseName\"}],outputs:[{type:\"string\",name:\"resolvedName\"},{type:\"address\",name:\"resolvedAddress\"},{type:\"address\",name:\"reverseResolver\"},{type:\"address\",name:\"resolver\"}]},{name:\"reverse\",type:\"function\",stateMutability:\"view\",inputs:[{type:\"bytes\",name:\"reverseName\"},{type:\"string[]\",name:\"gateways\"}],outputs:[{type:\"string\",name:\"resolvedName\"},{type:\"address\",name:\"resolvedAddress\"},{type:\"address\",name:\"reverseResolver\"},{type:\"address\",name:\"resolver\"}]}],uY=[{name:\"text\",type:\"function\",stateMutability:\"view\",inputs:[{name:\"name\",type:\"bytes32\"},{name:\"key\",type:\"string\"}],outputs:[{name:\"\",type:\"string\"}]}],dY=[{name:\"addr\",type:\"function\",stateMutability:\"view\",inputs:[{name:\"name\",type:\"bytes32\"}],outputs:[{name:\"\",type:\"address\"}]},{name:\"addr\",type:\"function\",stateMutability:\"view\",inputs:[{name:\"name\",type:\"bytes32\"},{name:\"coinType\",type:\"uint256\"}],outputs:[{name:\"\",type:\"bytes\"}]}],QB=[{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\"}],f9=[{type:\"event\",name:\"Approval\",inputs:[{indexed:!0,name:\"owner\",type:\"address\"},{indexed:!0,name:\"spender\",type:\"address\"},{indexed:!1,name:\"value\",type:\"uint256\"}]},{type:\"event\",name:\"Transfer\",inputs:[{indexed:!0,name:\"from\",type:\"address\"},{indexed:!0,name:\"to\",type:\"address\"},{indexed:!1,name:\"value\",type:\"uint256\"}]},{type:\"function\",name:\"allowance\",stateMutability:\"view\",inputs:[{name:\"owner\",type:\"address\"},{name:\"spender\",type:\"address\"}],outputs:[{type:\"uint256\"}]},{type:\"function\",name:\"approve\",stateMutability:\"nonpayable\",inputs:[{name:\"spender\",type:\"address\"},{name:\"amount\",type:\"uint256\"}],outputs:[{type:\"bool\"}]},{type:\"function\",name:\"balanceOf\",stateMutability:\"view\",inputs:[{name:\"account\",type:\"address\"}],outputs:[{type:\"uint256\"}]},{type:\"function\",name:\"decimals\",stateMutability:\"view\",inputs:[],outputs:[{type:\"uint8\"}]},{type:\"function\",name:\"name\",stateMutability:\"view\",inputs:[],outputs:[{type:\"string\"}]},{type:\"function\",name:\"symbol\",stateMutability:\"view\",inputs:[],outputs:[{type:\"string\"}]},{type:\"function\",name:\"totalSupply\",stateMutability:\"view\",inputs:[],outputs:[{type:\"uint256\"}]},{type:\"function\",name:\"transfer\",stateMutability:\"nonpayable\",inputs:[{name:\"recipient\",type:\"address\"},{name:\"amount\",type:\"uint256\"}],outputs:[{type:\"bool\"}]},{type:\"function\",name:\"transferFrom\",stateMutability:\"nonpayable\",inputs:[{name:\"sender\",type:\"address\"},{name:\"recipient\",type:\"address\"},{name:\"amount\",type:\"uint256\"}],outputs:[{type:\"bool\"}]}]});function xf(t){let{abi:e,args:n,functionName:r,data:o}=t,i=e[0];if(r){let c=pf({abi:e,args:n,name:r});if(!c)throw new F0(r,{docsPath:fY});i=c}if(i.type!==\"function\")throw new F0(void 0,{docsPath:fY});if(!i.outputs)throw new _4(i.name,{docsPath:fY});let a=H0(i.outputs,o);if(a&&a.length>1)return a;if(a&&a.length===1)return a[0]}var fY,gx=ce(()=>{p();Es();N4();Vw();fY=\"/docs/contract/decodeFunctionResult\"});function ame(t){let{abi:e,args:n,functionName:r}=t,o=e[0];if(r){let i=pf({abi:e,args:n,name:r});if(!i)throw new F0(r,{docsPath:sme});o=i}if(o.type!==\"function\")throw new F0(void 0,{docsPath:sme});return{abi:[o],functionName:Iy(mc(o))}}var sme,cme=ce(()=>{p();Es();O4();rv();Vw();sme=\"/docs/contract/encodeFunctionData\"});function yo(t){let{args:e}=t,{abi:n,functionName:r}=t.abi.length===1&&t.functionName?.startsWith(\"0x\")?t:ame(t),o=n[0],i=r,a=\"inputs\"in o&&o.inputs?vl(o.inputs,e??[]):void 0;return fa([i,a??\"0x\"])}var Ef=ce(()=>{p();iu();Py();cme()});function fC(t,e){if(!(t instanceof Be))return!1;let n=t.walk(r=>r instanceof $w);return n instanceof $w?!!(n.data?.errorName===\"ResolverNotFound\"||n.data?.errorName===\"ResolverWildcardNotSupported\"||n.data?.errorName===\"ResolverNotContract\"||n.data?.errorName===\"ResolverError\"||n.data?.errorName===\"HttpError\"||n.reason?.includes(\"Wildcard on non-extended resolvers is not supported\")||e===\"reverse\"&&n.reason===DL[50]):!1}var JB=ce(()=>{p();yR();ir();ov()});function lme(t){let{abi:e,data:n}=t,r=Hp(n,0,4),o=e.find(i=>i.type===\"function\"&&r===Iy(mc(i)));if(!o)throw new VL(r,{docsPath:\"/docs/contract/decodeFunctionData\"});return{functionName:o.name,args:\"inputs\"in o&&o.inputs&&o.inputs.length>0?H0(o.inputs,Hp(n,4)):void 0}}var ume=ce(()=>{p();Es();nv();O4();N4();rv()});function pY(t){let{abi:e,errorName:n,args:r}=t,o=e[0];if(n){let u=pf({abi:e,args:r,name:n});if(!u)throw new wR(n,{docsPath:hY});o=u}if(o.type!==\"error\")throw new wR(void 0,{docsPath:hY});let i=mc(o),a=Iy(i),c=\"0x\";if(r&&r.length>0){if(!o.inputs)throw new qL(o.name,{docsPath:hY});c=vl(o.inputs,r)}return fa([a,c])}var hY,dme=ce(()=>{p();Es();iu();O4();Py();rv();Vw();hY=\"/docs/contract/encodeErrorResult\"});function fme(t){let{abi:e,functionName:n,result:r}=t,o=e[0];if(n){let a=pf({abi:e,name:n});if(!a)throw new F0(n,{docsPath:mY});o=a}if(o.type!==\"function\")throw new F0(void 0,{docsPath:mY});if(!o.outputs)throw new _4(o.name,{docsPath:mY});let i=(()=>{if(o.outputs.length===0)return[];if(o.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new A4(r)})();return vl(o.outputs,i)}var mY,hme=ce(()=>{p();Es();Py();Vw();mY=\"/docs/contract/encodeFunctionResult\"});async function pme(t){let{data:e,ccipRequest:n}=t,{args:[r]}=lme({abi:ZB,data:e}),o=[],i=[];return await Promise.all(r.map(async(a,c)=>{try{i[c]=await n(a),o[c]=!1}catch(u){o[c]=!0,i[c]=zze(u)}})),fme({abi:ZB,functionName:\"query\",result:[o,i]})}function zze(t){return t.name===\"HttpRequestError\"&&t.status?pY({abi:ZB,errorName:\"HttpError\",args:[t.status,t.shortMessage]}):pY({abi:[FL],errorName:\"Error\",args:[\"shortMessage\"in t?t.shortMessage:t.message]})}var hC,XB=ce(()=>{p();bv();yR();ume();dme();hme();hC=\"x-batch-gateway:true\"});function eD(t){if(t.length!==66||t.indexOf(\"[\")!==0||t.indexOf(\"]\")!==65)return null;let e=`0x${t.slice(1,65)}`;return da(e)?e:null}var gY=ce(()=>{p();P0()});function vv(t){let e=new Uint8Array(32).fill(0);if(!t)return Xr(e);let n=t.split(\".\");for(let r=n.length-1;r>=0;r-=1){let o=eD(n[r]),i=o?Lp(o):Po(M0(n[r]),\"bytes\");e=Po(Da([e,i]),\"bytes\")}return Xr(e)}var tD=ce(()=>{p();iu();hc();gn();zp();gY()});function mme(t){return`[${t.slice(2)}]`}var gme=ce(()=>{p()});function yme(t){let e=new Uint8Array(32).fill(0);return t?eD(t)||Po(M0(t)):Xr(e)}var bme=ce(()=>{p();hc();gn();zp();gY()});function yx(t){let e=t.replace(/^\\\\.|\\\\.$/gm,\"\");if(e.length===0)return new Uint8Array(1);let n=new Uint8Array(M0(e).byteLength+2),r=0,o=e.split(\".\");for(let i=0;i<o.length;i++){let a=M0(o[i]);a.byteLength>255&&(a=M0(mme(yme(o[i])))),n[r]=a.length,n.set(a,r+1),r+=a.length+1}return n.byteLength!==r+1?n.slice(0,r+1):n}var h9=ce(()=>{p();hc();gme();bme()});function wh(t,{abi:e,address:n,args:r,docsPath:o,functionName:i,sender:a}){let c=t instanceof q0?t:t instanceof Be?t.walk(E=>\"data\"in E)||t.walk():{},{code:u,data:d,details:h,message:m,shortMessage:g}=c,b=t instanceof Vp?new jR({functionName:i}):[Hze,My.code].includes(u)&&(d||h||m||g)?new $w({abi:e,data:typeof d==\"object\"?d.data:d,functionName:i,message:c instanceof Kw?h:g??m}):t;return new L5(b,{abi:e,args:r,contractAddress:n,docsPath:o,functionName:i,sender:a})}var Hze,_6=ce(()=>{p();Es();ir();ov();B5();X5();Hze=3});var vme,wme=ce(()=>{p();vme=\"0.1.1\"});function xme(){return vme}var Eme=ce(()=>{p();wme()});function Sme(t,e){return e?.(t)?t:t&&typeof t==\"object\"&&\"cause\"in t&&t.cause?Sme(t.cause,e):e?null:t}var qo,bx=ce(()=>{p();Eme();qo=class t extends Error{constructor(e,n={}){let r=(()=>{if(n.cause instanceof t){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&\"details\"in n.cause&&typeof n.cause.details==\"string\"?n.cause.details:n.cause?.message?n.cause.message:n.details})(),o=n.cause instanceof t&&n.cause.docsPath||n.docsPath,a=`https://oxlib.sh${o??\"\"}`,c=[e||\"An error occurred.\",...n.metaMessages?[\"\",...n.metaMessages]:[],...r||o?[\"\",r?`Details: ${r}`:void 0,o?`See: ${a}`:void 0]:[]].filter(u=>typeof u==\"string\").join(`\\n`);super(c,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,\"details\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"docs\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"docsPath\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"shortMessage\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"cause\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"BaseError\"}),Object.defineProperty(this,\"version\",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${xme()}`}),this.cause=n.cause,this.details=r,this.docs=a,this.docsPath=o,this.shortMessage=e}walk(e){return Sme(this,e)}}});function kme(t,e,n){return JSON.stringify(t,(r,o)=>typeof e==\"function\"?e(r,o):typeof o==\"bigint\"?o.toString()+qze:o,n)}var qze,_me=ce(()=>{p();qze=\"#__bigint\"});function Cme(t,e){if(yY(t)>e)throw new nD({givenSize:yY(t),maxSize:e})}function bY(t){if(t>=wv.zero&&t<=wv.nine)return t-wv.zero;if(t>=wv.A&&t<=wv.F)return t-(wv.A-10);if(t>=wv.a&&t<=wv.f)return t-(wv.a-10)}function Ame(t,e={}){let{dir:n,size:r=32}=e;if(r===0)return t;if(t.length>r)throw new rD({size:t.length,targetSize:r,type:\"Bytes\"});let o=new Uint8Array(r);for(let i=0;i<r;i++){let a=n===\"right\";o[a?i:r-i-1]=t[a?i:t.length-i-1]}return o}var wv,Tme=ce(()=>{p();oD();wv={zero:48,nine:57,A:65,F:70,a:97,f:102}});function p9(t,e){if(Nc(t)>e)throw new iD({givenSize:Nc(t),maxSize:e})}function Rme(t,e){if(typeof e==\"number\"&&e>0&&e>Nc(t)-1)throw new m9({offset:e,position:\"start\",size:Nc(t)})}function Ime(t,e,n){if(typeof e==\"number\"&&typeof n==\"number\"&&Nc(t)!==n-e)throw new m9({offset:n,position:\"end\",size:Nc(t)})}function wY(t,e={}){let{dir:n,size:r=32}=e;if(r===0)return t;let o=t.replace(\"0x\",\"\");if(o.length>r*2)throw new sD({size:Math.ceil(o.length/2),targetSize:r,type:\"Hex\"});return`0x${o[n===\"right\"?\"padEnd\":\"padStart\"](r*2,\"0\")}`}var xY=ce(()=>{p();J0()});function Pme(t){return t instanceof Uint8Array?t:typeof t==\"string\"?Gze(t):Kze(t)}function Kze(t){return t instanceof Uint8Array?t:new Uint8Array(t)}function Gze(t,e={}){let{size:n}=e,r=t;n&&(p9(t,n),r=zy(t,n));let o=r.slice(2);o.length%2&&(o=`0${o}`);let i=o.length/2,a=new Uint8Array(i);for(let c=0,u=0;c<i;c++){let d=bY(o.charCodeAt(u++)),h=bY(o.charCodeAt(u++));if(d===void 0||h===void 0)throw new qo(`Invalid byte sequence (\"${o[u-2]}${o[u-1]}\" in \"${o}\").`);a[c]=d*16+h}return a}function Mme(t,e={}){let{size:n}=e,r=$ze.encode(t);return typeof n==\"number\"?(Cme(r,n),Zze(r,n)):r}function Zze(t,e){return Ame(t,{dir:\"right\",size:e})}function yY(t){return t.length}var $ze,nD,rD,oD=ce(()=>{p();bx();J0();Tme();xY();$ze=new TextEncoder;nD=class extends qo{constructor({givenSize:e,maxSize:n}){super(`Size cannot exceed \\\\`${n}\\\\` bytes. Given size: \\\\`${e}\\\\` bytes.`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Bytes.SizeOverflowError\"})}},rD=class extends qo{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\\\\`${e}\\\\`) exceeds padding size (\\\\`${n}\\\\`).`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Bytes.SizeExceedsPaddingSizeError\"})}}});function Jze(t,e={}){let{strict:n=!1}=e;if(!t)throw new aD(t);if(typeof t!=\"string\")throw new aD(t);if(n&&!/^0x[0-9a-fA-F]*$/.test(t))throw new cD(t);if(!t.startsWith(\"0x\"))throw new cD(t)}function Sf(...t){return`0x${t.reduce((e,n)=>e+n.replace(\"0x\",\"\"),\"\")}`}function lD(t,e={}){let n=`0x${Number(t)}`;return typeof e.size==\"number\"?(p9(n,e.size),xv(n,e.size)):n}function pC(t,e={}){let n=\"\";for(let o=0;o<t.length;o++)n+=Qze[t[o]];let r=`0x${n}`;return typeof e.size==\"number\"?(p9(r,e.size),zy(r,e.size)):r}function Ua(t,e={}){let{signed:n,size:r}=e,o=BigInt(t),i;r?n?i=(1n<<BigInt(r)*8n-1n)-1n:i=2n**(BigInt(r)*8n)-1n:typeof t==\"number\"&&(i=BigInt(Number.MAX_SAFE_INTEGER));let a=typeof i==\"bigint\"&&n?-i-1n:0;if(i&&o>i||o<a){let d=typeof t==\"bigint\"?\"n\":\"\";throw new g9({max:i?`${i}${d}`:void 0,min:`${a}${d}`,signed:n,size:r,value:`${t}${d}`})}let u=`0x${(n&&o<0?(1n<<BigInt(r*8))+BigInt(o):o).toString(16)}`;return r?xv(u,r):u}function mC(t,e={}){return pC(Yze.encode(t),e)}function xv(t,e){return wY(t,{dir:\"left\",size:e})}function zy(t,e){return wY(t,{dir:\"right\",size:e})}function gC(t,e,n,r={}){let{strict:o}=r;Rme(t,e);let i=`0x${t.replace(\"0x\",\"\").slice((e??0)*2,(n??t.length)*2)}`;return o&&Ime(i,e,n),i}function Nc(t){return Math.ceil((t.length-2)/2)}function EY(t,e={}){let{strict:n=!1}=e;try{return Jze(t,{strict:n}),!0}catch{return!1}}var Yze,Qze,g9,aD,cD,iD,m9,sD,J0=ce(()=>{p();bx();_me();xY();Yze=new TextEncoder,Qze=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,\"0\"));g9=class extends qo{constructor({max:e,min:n,signed:r,size:o,value:i}){super(`Number \\\\`${i}\\\\` is not in safe${o?` ${o*8}-bit`:\"\"}${r?\" signed\":\" unsigned\"} integer range ${e?`(\\\\`${n}\\\\` to \\\\`${e}\\\\`)`:`(above \\\\`${n}\\\\`)`}`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Hex.IntegerOutOfRangeError\"})}},aD=class extends qo{constructor(e){super(`Value \\\\`${typeof e==\"object\"?kme(e):e}\\\\` of type \\\\`${typeof e}\\\\` is an invalid hex type.`,{metaMessages:[\\'Hex types must be represented as `\"0x${string}\"`.\\']}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Hex.InvalidHexTypeError\"})}},cD=class extends qo{constructor(e){super(`Value \\\\`${e}\\\\` is an invalid hex value.`,{metaMessages:[\\'Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).\\']}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Hex.InvalidHexValueError\"})}},iD=class extends qo{constructor({givenSize:e,maxSize:n}){super(`Size cannot exceed \\\\`${n}\\\\` bytes. Given size: \\\\`${e}\\\\` bytes.`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Hex.SizeOverflowError\"})}},m9=class extends qo{constructor({offset:e,position:n,size:r}){super(`Slice ${n===\"start\"?\"starting\":\"ending\"} at offset \\\\`${e}\\\\` is out-of-bounds (size: \\\\`${r}\\\\`).`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Hex.SliceOffsetOutOfBoundsError\"})}},sD=class extends qo{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\\\\`${e}\\\\`) exceeds padding size (\\\\`${n}\\\\`).`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Hex.SizeExceedsPaddingSizeError\"})}}});function Nme(t){return{address:t.address,amount:Ua(t.amount),index:Ua(t.index),validatorIndex:Ua(t.validatorIndex)}}var Lme=ce(()=>{p();J0()});function uD(t){return{...typeof t.baseFeePerGas==\"bigint\"&&{baseFeePerGas:Ua(t.baseFeePerGas)},...typeof t.blobBaseFee==\"bigint\"&&{blobBaseFee:Ua(t.blobBaseFee)},...typeof t.feeRecipient==\"string\"&&{feeRecipient:t.feeRecipient},...typeof t.gasLimit==\"bigint\"&&{gasLimit:Ua(t.gasLimit)},...typeof t.number==\"bigint\"&&{number:Ua(t.number)},...typeof t.prevRandao==\"bigint\"&&{prevRandao:Ua(t.prevRandao)},...typeof t.time==\"bigint\"&&{time:Ua(t.time)},...t.withdrawals&&{withdrawals:t.withdrawals.map(Nme)}}}var SY=ce(()=>{p();J0();Lme()});var Dme,Fme=ce(()=>{p();Dme=\"0x82ad56cb\"});var dD,Ume,jme,fD=ce(()=>{p();dD=\"0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe\",Ume=\"0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe\",jme=\"0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572\"});function yC(){let t=()=>{},e=()=>{};return{promise:new Promise((r,o)=>{t=r,e=o}),resolve:t,reject:e}}var hD=ce(()=>{p()});function pD({fn:t,id:e,shouldSplitBatch:n,wait:r=0,sort:o}){let i=async()=>{let h=u();a();let m=h.map(({args:g})=>g);m.length!==0&&t(m).then(g=>{o&&Array.isArray(g)&&g.sort(o);for(let b=0;b<h.length;b++){let{resolve:E}=h[b];E?.([g[b],g])}}).catch(g=>{for(let b=0;b<h.length;b++){let{reject:E}=h[b];E?.(g)}})},a=()=>kY.delete(e),c=()=>u().map(({args:h})=>h),u=()=>kY.get(e)||[],d=h=>kY.set(e,[...u(),h]);return{flush:a,async schedule(h){let{promise:m,resolve:g,reject:b}=yC();return n?.([...c(),h])&&i(),u().length>0?(d({args:h,resolve:g,reject:b}),m):(d({args:h,resolve:g,reject:b}),setTimeout(i,r),m)}}}var kY,_Y=ce(()=>{p();hD();kY=new Map});var mD,gD,yD,zme=ce(()=>{p();au();ir();dB();mD=class extends Be{constructor({callbackSelector:e,cause:n,data:r,extraData:o,sender:i,urls:a}){super(n.shortMessage||\"An error occurred while fetching for an offchain result.\",{cause:n,metaMessages:[...n.metaMessages||[],n.metaMessages?.length?\"\":[],\"Offchain Gateway Call:\",a&&[\"  Gateway URL(s):\",...a.map(c=>`    ${M5(c)}`)],`  Sender: ${i}`,`  Data: ${r}`,`  Callback selector: ${e}`,`  Extra data: ${o}`].flat(),name:\"OffchainLookupError\"})}},gD=class extends Be{constructor({result:e,url:n}){super(\"Offchain gateway response is malformed. Response data must be a hex value.\",{metaMessages:[`Gateway URL: ${M5(n)}`,`Response: ${qr(e)}`],name:\"OffchainLookupResponseMalformedError\"})}},yD=class extends Be{constructor({sender:e,to:n}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${n}`,`OffchainLookup sender address: ${e}`],name:\"OffchainLookupSenderMismatchError\"})}}});function Hy(t,e){if(!Kr(t,{strict:!1}))throw new ci({address:t});if(!Kr(e,{strict:!1}))throw new ci({address:e});return t.toLowerCase()===e.toLowerCase()}var bC=ce(()=>{p();D0();hf()});var Wme={};ld(Wme,{ccipRequest:()=>qme,offchainLookup:()=>tHe,offchainLookupAbiItem:()=>Hme,offchainLookupSignature:()=>eHe});async function tHe(t,{blockNumber:e,blockTag:n,data:r,to:o}){let{args:i}=cB({data:r,abi:[Hme]}),[a,c,u,d,h]=i,{ccipRead:m}=t,g=m&&typeof m?.request==\"function\"?m.request:qme;try{if(!Hy(o,a))throw new yD({sender:a,to:o});let b=c.includes(hC)?await pme({data:u,ccipRequest:g}):await g({data:u,sender:a,urls:c}),{data:E}=await xh(t,{blockNumber:e,blockTag:n,data:Da([d,vl([{type:\"bytes\"},{type:\"bytes\"}],[b,h])]),to:o});return E}catch(b){throw new mD({callbackSelector:d,cause:b,data:r,extraData:h,sender:a,urls:c})}}async function qme({data:t,sender:e,urls:n}){let r=new Error(\"An unknown error occurred.\");for(let o=0;o<n.length;o++){let i=n[o],a=i.includes(\"{data}\")?\"GET\":\"POST\",c=a===\"POST\"?{data:t,sender:e}:void 0,u=a===\"POST\"?{\"Content-Type\":\"application/json\"}:{};try{let d=await fetch(i.replace(\"{sender}\",e.toLowerCase()).replace(\"{data}\",t),{body:JSON.stringify(c),headers:u,method:a}),h;if(d.headers.get(\"Content-Type\")?.startsWith(\"application/json\")?h=(await d.json()).data:h=await d.text(),!d.ok){r=new $p({body:c,details:h?.error?qr(h.error):d.statusText,headers:d.headers,status:d.status,url:i});continue}if(!da(h)){r=new gD({result:h,url:i});continue}return h}catch(d){r=new $p({body:c,details:d.message,url:i})}}throw r}var eHe,Hme,Vme=ce(()=>{p();A6();zme();B5();iZ();Py();bC();iu();P0();XB();au();eHe=\"0x556f1830\",Hme={name:\"OffchainLookup\",type:\"error\",inputs:[{name:\"sender\",type:\"address\"},{name:\"urls\",type:\"string[]\"},{name:\"callData\",type:\"bytes\"},{name:\"callbackFunction\",type:\"bytes4\"},{name:\"extraData\",type:\"bytes\"}]}});async function xh(t,e){let{account:n=t.account,authorizationList:r,batch:o=!!t.batch?.multicall,blockNumber:i,blockTag:a=\"latest\",accessList:c,blobs:u,blockOverrides:d,code:h,data:m,factory:g,factoryData:b,gas:E,gasPrice:C,maxFeePerBlobGas:T,maxFeePerGas:R,maxPriorityFeePerGas:L,nonce:D,to:G,value:W,stateOverride:J,...ne}=e,ie=n?Wn(n):void 0;if(h&&(g||b))throw new Be(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(h&&G)throw new Be(\"Cannot provide both `code` & `to` as parameters.\");let Z=h&&m,ae=g&&b&&G&&m,V=Z||ae,$=Z?oHe({code:h,data:m}):ae?iHe({data:m,factory:g,factoryData:b,to:G}):m;try{gf(e);let _=(typeof i==\"bigint\"?Ye(i):void 0)||a,O=d?uD(d):void 0,z=sC(J),N=t.chain?.formatters?.transactionRequest?.format,j=(N||Bp)({...Yw(ne,{format:N}),from:ie?.address,accessList:c,authorizationList:r,blobs:u,data:$,gas:E,gasPrice:C,maxFeePerBlobGas:T,maxFeePerGas:R,maxPriorityFeePerGas:L,nonce:D,to:V?void 0:G,value:W});if(o&&nHe({request:j})&&!z&&!O)try{return await rHe(t,{...j,blockNumber:i,blockTag:a})}catch(I){if(!(I instanceof lR)&&!(I instanceof A5))throw I}let q=(()=>{let I=[j,_];return z&&O?[...I,z,O]:z?[...I,z]:O?[...I,{},O]:I})(),H=await t.request({method:\"eth_call\",params:q});return H===\"0x\"?{data:void 0}:{data:H}}catch(F){let _=sHe(F),{offchainLookup:O,offchainLookupSignature:z}=await Promise.resolve().then(()=>(Vme(),Wme));if(t.ccipRead!==!1&&_?.slice(0,10)===z&&G)return{data:await O(t,{data:_,to:G})};throw V&&_?.slice(0,10)===\"0x101bb98d\"?new zR({factory:g}):fB(F,{...e,account:ie,chain:t.chain})}}function nHe({request:t}){let{data:e,to:n,...r}=t;return!(!e||e.startsWith(Dme)||!n||Object.values(r).filter(o=>typeof o<\"u\").length>0)}async function rHe(t,e){let{batchSize:n=1024,wait:r=0}=typeof t.batch?.multicall==\"object\"?t.batch.multicall:{},{blockNumber:o,blockTag:i=\"latest\",data:a,multicallAddress:c,to:u}=e,d=c;if(!d){if(!t.chain)throw new lR;d=Wp({blockNumber:o,chain:t.chain,contract:\"multicall3\"})}let m=(typeof o==\"bigint\"?Ye(o):void 0)||i,{schedule:g}=pD({id:`${t.uid}.${m}`,wait:r,shouldSplitBatch(C){return C.reduce((R,{data:L})=>R+(L.length-2),0)>n*2},fn:async C=>{let T=C.map(D=>({allowFailure:!0,callData:D.data,target:D.to})),R=yo({abi:dC,args:[T],functionName:\"aggregate3\"}),L=await t.request({method:\"eth_call\",params:[{data:R,to:d},m]});return xf({abi:dC,args:[T],functionName:\"aggregate3\",data:L||\"0x\"})}}),[{returnData:b,success:E}]=await g({data:a,to:u});if(!E)throw new q0({data:b});return b===\"0x\"?{data:void 0}:{data:b}}function oHe(t){let{code:e,data:n}=t;return h6({abi:P5([\"constructor(bytes, bytes)\"]),bytecode:dD,args:[e,n]})}function iHe(t){let{data:e,factory:n,factoryData:r,to:o}=t;return h6({abi:P5([\"constructor(address, bytes, address, bytes)\"]),bytecode:Ume,args:[o,e,n,r]})}function sHe(t){if(!(t instanceof Be))return;let e=t.walk();return typeof e?.data==\"object\"?e.data?.data:e.data}var A6=ce(()=>{p();DR();SY();js();bv();Fme();fD();ir();uR();ov();gx();kB();Ef();I5();gn();lZ();VR();b5();_Y();WB();Qw()});async function ja(t,e){let{abi:n,address:r,args:o,functionName:i,...a}=e,c=yo({abi:n,args:o,functionName:i});try{let{data:u}=await Lt(t,xh,\"call\")({...a,data:c,to:r});return xf({abi:n,args:o,functionName:i,data:u||\"0x\"})}catch(u){throw wh(u,{abi:n,address:r,args:o,docsPath:\"/docs/contract/readContract\",functionName:i})}}var qy=ce(()=>{p();gx();Ef();_6();ki();A6()});async function $me(t,e){let{blockNumber:n,blockTag:r,coinType:o,name:i,gatewayUrls:a,strict:c}=e,{chain:u}=t,d=(()=>{if(e.universalResolverAddress)return e.universalResolverAddress;if(!u)throw new Error(\"client chain not configured. universalResolverAddress is required.\");return Wp({blockNumber:n,chain:u,contract:\"ensUniversalResolver\"})})(),h=u?.ensTlds;if(h&&!h.some(m=>i.endsWith(m)))return null;try{let m=yo({abi:dY,functionName:\"addr\",...o!=null?{args:[vv(i),BigInt(o)]}:{args:[vv(i)]}}),g={address:d,abi:YB,functionName:\"resolve\",args:[Uo(yx(i)),m,a??[hC]],blockNumber:n,blockTag:r},E=await Lt(t,ja,\"readContract\")(g);if(E[0]===\"0x\")return null;let C=xf({abi:dY,args:o!=null?[vv(i),BigInt(o)]:void 0,functionName:\"addr\",data:E[0]});return C===\"0x\"||Fs(C)===\"0x00\"?null:C}catch(m){if(c)throw m;if(fC(m,\"resolve\"))return null;throw m}}var Kme=ce(()=>{p();bv();gx();Ef();I5();Pw();gn();JB();XB();tD();h9();ki();qy()});var bD,vx,vC,vD,Gme=ce(()=>{p();ir();bD=class extends Be{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\"})}},vx=class extends Be{constructor({reason:e}){super(`ENS NFT avatar URI is invalid. ${e}`,{name:\"EnsAvatarInvalidNftUriError\"})}},vC=class extends Be{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\"})}},vD=class extends Be{constructor({namespace:e}){super(`ENS NFT avatar namespace \"${e}\" is not supported. Must be \"erc721\" or \"erc1155\".`,{name:\"EnsAvatarUnsupportedNamespaceError\"})}}});async function dHe(t){try{let e=await fetch(t,{method:\"HEAD\"});return e.status===200?e.headers.get(\"content-type\")?.startsWith(\"image/\"):!1}catch(e){return typeof e==\"object\"&&typeof e.response<\"u\"||!globalThis.hasOwnProperty(\"Image\")?!1:new Promise(n=>{let r=new Image;r.onload=()=>{n(!0)},r.onerror=()=>{n(!1)},r.src=t})}}function Zme(t,e){return t?t.endsWith(\"/\")?t.slice(0,-1):t:e}function CY({uri:t,gatewayUrls:e}){let n=lHe.test(t);if(n)return{uri:t,isOnChain:!0,isEncoded:n};let r=Zme(e?.ipfs,\"https://ipfs.io\"),o=Zme(e?.arweave,\"https://arweave.net\"),i=t.match(aHe),{protocol:a,subpath:c,target:u,subtarget:d=\"\"}=i?.groups||{},h=a===\"ipns:/\"||c===\"ipns/\",m=a===\"ipfs:/\"||c===\"ipfs/\"||cHe.test(t);if(t.startsWith(\"http\")&&!h&&!m){let b=t;return e?.arweave&&(b=t.replace(/https:\\\\/\\\\/arweave.net/g,e?.arweave)),{uri:b,isOnChain:!1,isEncoded:!1}}if((h||m)&&u)return{uri:`${r}/${h?\"ipns\":\"ipfs\"}/${u}${d}`,isOnChain:!1,isEncoded:!1};if(a===\"ar:/\"&&u)return{uri:`${o}/${u}${d||\"\"}`,isOnChain:!1,isEncoded:!1};let g=t.replace(uHe,\"\");if(g.startsWith(\"<svg\")&&(g=`data:image/svg+xml;base64,${btoa(g)}`),g.startsWith(\"data:\")||g.startsWith(\"{\"))return{uri:g,isOnChain:!0,isEncoded:!1};throw new vC({uri:t})}function AY(t){if(typeof t!=\"object\"||!(\"image\"in t)&&!(\"image_url\"in t)&&!(\"image_data\"in t))throw new bD({data:t});return t.image||t.image_url||t.image_data}async function Yme({gatewayUrls:t,uri:e}){try{let n=await fetch(e).then(o=>o.json());return await wD({gatewayUrls:t,uri:AY(n)})}catch{throw new vC({uri:e})}}async function wD({gatewayUrls:t,uri:e}){let{uri:n,isOnChain:r}=CY({uri:e,gatewayUrls:t});if(r||await dHe(n))return n;throw new vC({uri:e})}function Qme(t){let e=t;e.startsWith(\"did:nft:\")&&(e=e.replace(\"did:nft:\",\"\").replace(/_/g,\"/\"));let[n,r,o]=e.split(\"/\"),[i,a]=n.split(\":\"),[c,u]=r.split(\":\");if(!i||i.toLowerCase()!==\"eip155\")throw new vx({reason:\"Only EIP-155 supported\"});if(!a)throw new vx({reason:\"Chain ID not found\"});if(!u)throw new vx({reason:\"Contract address not found\"});if(!o)throw new vx({reason:\"Token ID not found\"});if(!c)throw new vx({reason:\"ERC namespace not found\"});return{chainID:Number.parseInt(a),namespace:c.toLowerCase(),contractAddress:u,tokenID:o}}async function Jme(t,{nft:e}){if(e.namespace===\"erc721\")return ja(t,{address:e.contractAddress,abi:[{name:\"tokenURI\",type:\"function\",stateMutability:\"view\",inputs:[{name:\"tokenId\",type:\"uint256\"}],outputs:[{name:\"\",type:\"string\"}]}],functionName:\"tokenURI\",args:[BigInt(e.tokenID)]});if(e.namespace===\"erc1155\")return ja(t,{address:e.contractAddress,abi:[{name:\"uri\",type:\"function\",stateMutability:\"view\",inputs:[{name:\"_id\",type:\"uint256\"}],outputs:[{name:\"\",type:\"string\"}]}],functionName:\"uri\",args:[BigInt(e.tokenID)]});throw new vD({namespace:e.namespace})}var aHe,cHe,lHe,uHe,Xme=ce(()=>{p();qy();Gme();aHe=/(?<protocol>https?:\\\\/\\\\/[^\\\\/]*|ipfs:\\\\/|ipns:\\\\/|ar:\\\\/)?(?<root>\\\\/)?(?<subpath>ipfs\\\\/|ipns\\\\/)?(?<target>[\\\\w\\\\-.]+)(?<subtarget>\\\\/.*)?/,cHe=/^(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>\\\\/.*)?$/,lHe=/^data:([a-zA-Z\\\\-/+]*);base64,([^\"].*)/,uHe=/^data:([a-zA-Z\\\\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/});async function e0e(t,{gatewayUrls:e,record:n}){return/eip155:/i.test(n)?fHe(t,{gatewayUrls:e,record:n}):wD({uri:n,gatewayUrls:e})}async function fHe(t,{gatewayUrls:e,record:n}){let r=Qme(n),o=await Jme(t,{nft:r}),{uri:i,isOnChain:a,isEncoded:c}=CY({uri:o,gatewayUrls:e});if(a&&(i.includes(\"data:application/json;base64,\")||i.startsWith(\"{\"))){let d=c?atob(i.replace(\"data:application/json;base64,\",\"\")):i,h=JSON.parse(d);return wD({uri:AY(h),gatewayUrls:e})}let u=r.tokenID;return r.namespace===\"erc1155\"&&(u=u.replace(\"0x\",\"\").padStart(64,\"0\")),Yme({gatewayUrls:e,uri:i.replace(/(?:0x)?{id}/,u)})}var t0e=ce(()=>{p();Xme()});async function xD(t,e){let{blockNumber:n,blockTag:r,key:o,name:i,gatewayUrls:a,strict:c}=e,{chain:u}=t,d=(()=>{if(e.universalResolverAddress)return e.universalResolverAddress;if(!u)throw new Error(\"client chain not configured. universalResolverAddress is required.\");return Wp({blockNumber:n,chain:u,contract:\"ensUniversalResolver\"})})(),h=u?.ensTlds;if(h&&!h.some(m=>i.endsWith(m)))return null;try{let m={address:d,abi:YB,functionName:\"resolve\",args:[Uo(yx(i)),yo({abi:uY,functionName:\"text\",args:[vv(i),o]}),a??[hC]],blockNumber:n,blockTag:r},b=await Lt(t,ja,\"readContract\")(m);if(b[0]===\"0x\")return null;let E=xf({abi:uY,functionName:\"text\",data:b[0]});return E===\"\"?null:E}catch(m){if(c)throw m;if(fC(m,\"resolve\"))return null;throw m}}var TY=ce(()=>{p();bv();gx();Ef();I5();gn();JB();XB();tD();h9();ki();qy()});async function n0e(t,{blockNumber:e,blockTag:n,assetGatewayUrls:r,name:o,gatewayUrls:i,strict:a,universalResolverAddress:c}){let u=await Lt(t,xD,\"getEnsText\")({blockNumber:e,blockTag:n,key:\"avatar\",name:o,universalResolverAddress:c,gatewayUrls:i,strict:a});if(!u)return null;try{return await e0e(t,{record:u,gatewayUrls:r})}catch{return null}}var r0e=ce(()=>{p();t0e();ki();TY()});async function o0e(t,{address:e,blockNumber:n,blockTag:r,gatewayUrls:o,strict:i,universalResolverAddress:a}){let c=a;if(!c){if(!t.chain)throw new Error(\"client chain not configured. universalResolverAddress is required.\");c=Wp({blockNumber:n,chain:t.chain,contract:\"ensUniversalResolver\"})}let u=`${e.toLowerCase().substring(2)}.addr.reverse`;try{let d={address:c,abi:ime,functionName:\"reverse\",args:[Uo(yx(u))],blockNumber:n,blockTag:r},h=Lt(t,ja,\"readContract\"),[m,g]=o?await h({...d,args:[...d.args,o]}):await h(d);return e.toLowerCase()!==g.toLowerCase()?null:m}catch(d){if(i)throw d;if(fC(d,\"reverse\"))return null;throw d}}var i0e=ce(()=>{p();bv();I5();gn();JB();h9();ki();qy()});async function s0e(t,e){let{blockNumber:n,blockTag:r,name:o}=e,{chain:i}=t,a=(()=>{if(e.universalResolverAddress)return e.universalResolverAddress;if(!i)throw new Error(\"client chain not configured. universalResolverAddress is required.\");return Wp({blockNumber:n,chain:i,contract:\"ensUniversalResolver\"})})(),c=i?.ensTlds;if(c&&!c.some(d=>o.endsWith(d)))throw new Error(`${o} is not a valid ENS TLD (${c?.join(\", \")}) for chain \"${i.name}\" (id: ${i.id}).`);let[u]=await Lt(t,ja,\"readContract\")({address:a,abi:[{inputs:[{type:\"bytes\"}],name:\"findResolver\",outputs:[{type:\"address\"},{type:\"bytes32\"}],stateMutability:\"view\",type:\"function\"}],functionName:\"findResolver\",args:[Uo(yx(o))],blockNumber:n,blockTag:r});return u}var a0e=ce(()=>{p();I5();gn();h9();ki();qy()});async function ED(t,e){let{account:n=t.account,blockNumber:r,blockTag:o=\"latest\",blobs:i,data:a,gas:c,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:h,maxPriorityFeePerGas:m,to:g,value:b,...E}=e,C=n?Wn(n):void 0;try{gf(e);let R=(typeof r==\"bigint\"?Ye(r):void 0)||o,L=t.chain?.formatters?.transactionRequest?.format,G=(L||Bp)({...Yw(E,{format:L}),from:C?.address,blobs:i,data:a,gas:c,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:h,maxPriorityFeePerGas:m,to:g,value:b}),W=await t.request({method:\"eth_createAccessList\",params:[G,R]});return{accessList:W.accessList,gasUsed:BigInt(W.gasUsed)}}catch(T){throw fB(T,{...e,account:C,chain:t.chain})}}var RY=ce(()=>{p();js();gn();lZ();VR();b5();Qw()});function wx(t,{method:e}){let n={};return t.transport.type===\"fallback\"&&t.transport.onResponse?.(({method:r,response:o,status:i,transport:a})=>{i===\"success\"&&e===r&&(n[o]=a.request)}),r=>n[r]||t.request}var y9=ce(()=>{p()});async function c0e(t){let e=wx(t,{method:\"eth_newBlockFilter\"}),n=await t.request({method:\"eth_newBlockFilter\"});return{id:n,request:e(n),type:\"block\"}}var l0e=ce(()=>{p();y9()});var SD,u0e=ce(()=>{p();ir();SD=class extends Be{constructor(e){super(`Filter type \"${e}\" is not supported.`,{name:\"FilterTypeNotSupportedError\"})}}});function Wy(t){let{abi:e,eventName:n,args:r}=t,o=e[0];if(n){let u=pf({abi:e,name:n});if(!u)throw new xR(n,{docsPath:d0e});o=u}if(o.type!==\"event\")throw new xR(void 0,{docsPath:d0e});let i=mc(o),a=Ww(i),c=[];if(r&&\"inputs\"in o){let u=o.inputs?.filter(h=>\"indexed\"in h&&h.indexed),d=Array.isArray(r)?r:Object.values(r).length>0?u?.map(h=>r[h.name])??[]:[];d.length>0&&(c=u?.map((h,m)=>Array.isArray(d[m])?d[m].map((g,b)=>f0e({param:h,value:d[m][b]})):typeof d[m]<\"u\"&&d[m]!==null?f0e({param:h,value:d[m]}):null)??[])}return[a,...c]}function f0e({param:t,value:e}){if(t.type===\"string\"||t.type===\"bytes\")return Po(Lp(e));if(t.type===\"tuple\"||t.type.match(/^(.*)\\\\[(\\\\d+)?\\\\]$/))throw new SD(t.type);return vl([t],[e])}var d0e,wC=ce(()=>{p();Es();u0e();hc();zp();UR();Py();rv();Vw();d0e=\"/docs/contract/encodeEventTopics\"});async function kD(t,e){let{address:n,abi:r,args:o,eventName:i,fromBlock:a,strict:c,toBlock:u}=e,d=wx(t,{method:\"eth_newFilter\"}),h=i?Wy({abi:r,args:o,eventName:i}):void 0,m=await t.request({method:\"eth_newFilter\",params:[{address:n,fromBlock:typeof a==\"bigint\"?Ye(a):a,toBlock:typeof u==\"bigint\"?Ye(u):u,topics:h}]});return{abi:r,args:o,eventName:i,id:m,request:d(m),strict:!!c,type:\"event\"}}var IY=ce(()=>{p();wC();gn();y9()});async function _D(t,{address:e,args:n,event:r,events:o,fromBlock:i,strict:a,toBlock:c}={}){let u=o??(r?[r]:void 0),d=wx(t,{method:\"eth_newFilter\"}),h=[];u&&(h=[u.flatMap(b=>Wy({abi:[b],eventName:b.name,args:n}))],r&&(h=h[0]));let m=await t.request({method:\"eth_newFilter\",params:[{address:e,fromBlock:typeof i==\"bigint\"?Ye(i):i,toBlock:typeof c==\"bigint\"?Ye(c):c,...h.length?{topics:h}:{}}]});return{abi:u,args:n,eventName:r?r.name:void 0,fromBlock:i,id:m,request:d(m),strict:!!a,toBlock:c,type:\"event\"}}var OY=ce(()=>{p();wC();gn();y9()});async function CD(t){let e=wx(t,{method:\"eth_newPendingTransactionFilter\"}),n=await t.request({method:\"eth_newPendingTransactionFilter\"});return{id:n,request:e(n),type:\"transaction\"}}var PY=ce(()=>{p();y9()});async function h0e(t,e){let{abi:n,address:r,args:o,functionName:i,dataSuffix:a,...c}=e,u=yo({abi:n,args:o,functionName:i});try{return await Lt(t,aC,\"estimateGas\")({data:`${u}${a?a.replace(\"0x\",\"\"):\"\"}`,to:r,...c})}catch(d){let h=c.account?Wn(c.account):void 0;throw wh(d,{abi:n,address:r,args:o,docsPath:\"/docs/contract/estimateContractGas\",functionName:i,sender:h?.address})}}var p0e=ce(()=>{p();js();Ef();_6();ki();$B()});async function m0e(t){let e=await t.request({method:\"eth_blobBaseFee\"});return BigInt(e)}var g0e=ce(()=>{p()});function y0e(t){let e=(o,i)=>({clear:()=>i.delete(o),get:()=>i.get(o),set:a=>i.set(o,a)}),n=e(t,hHe),r=e(t,pHe);return{clear:()=>{n.clear(),r.clear()},promise:n,response:r}}async function b0e(t,{cacheKey:e,cacheTime:n=Number.POSITIVE_INFINITY}){let r=y0e(e),o=r.response.get();if(o&&n>0&&new Date().getTime()-o.created.getTime()<n)return o.data;let i=r.promise.get();i||(i=t(),r.promise.set(i));try{let a=await i;return r.response.set({created:new Date,data:a}),a}finally{r.promise.clear()}}var hHe,pHe,v0e=ce(()=>{p();hHe=new Map,pHe=new Map});async function Vy(t,{cacheTime:e=t.cacheTime}={}){let n=await b0e(()=>t.request({method:\"eth_blockNumber\"}),{cacheKey:mHe(t.uid),cacheTime:e});return BigInt(n)}var mHe,xC=ce(()=>{p();v0e();mHe=t=>`blockNumber.${t}`});async function w0e(t,{blockHash:e,blockNumber:n,blockTag:r=\"latest\"}={}){let o=n!==void 0?Ye(n):void 0,i;return e?i=await t.request({method:\"eth_getBlockTransactionCountByHash\",params:[e]},{dedupe:!0}):i=await t.request({method:\"eth_getBlockTransactionCountByNumber\",params:[o||r]},{dedupe:!!o}),Ei(i)}var x0e=ce(()=>{p();fc();gn()});async function MY(t,{address:e,blockNumber:n,blockTag:r=\"latest\"}){let o=n!==void 0?Ye(n):void 0,i=await t.request({method:\"eth_getCode\",params:[e,o||r]},{dedupe:!!o});if(i!==\"0x\")return i}var E0e=ce(()=>{p();gn()});function EC(t){let{abi:e,data:n,strict:r,topics:o}=t,i=r??!0,[a,...c]=o;if(!a)throw new WL({docsPath:S0e});let u=e.find(C=>C.type===\"event\"&&a===Ww(mc(C)));if(!(u&&\"name\"in u)||u.type!==\"event\")throw new k4(a,{docsPath:S0e});let{name:d,inputs:h}=u,m=h?.some(C=>!(\"name\"in C&&C.name)),g=m?[]:{},b=h.map((C,T)=>[C,T]).filter(([C])=>\"indexed\"in C&&C.indexed);for(let C=0;C<b.length;C++){let[T,R]=b[C],L=c[C];if(!L)throw new Ry({abiItem:u,param:T});g[m?R:T.name||R]=gHe({param:T,value:L})}let E=h.filter(C=>!(\"indexed\"in C&&C.indexed));if(E.length>0){if(n&&n!==\"0x\")try{let C=H0(E,n);if(C)if(m)for(let T=0;T<h.length;T++)g[T]=g[T]??C.shift();else for(let T=0;T<E.length;T++)g[E[T].name]=C[T]}catch(C){if(i)throw C instanceof x4||C instanceof e4?new U0({abiItem:u,data:n,params:E,size:Jr(n)}):C}else if(i)throw new U0({abiItem:u,data:\"0x\",params:E,size:0})}return{eventName:d,args:Object.values(g).length>0?g:void 0}}function gHe({param:t,value:e}){return t.type===\"string\"||t.type===\"bytes\"||t.type===\"tuple\"||t.type.match(/^(.*)\\\\[(\\\\d+)?\\\\]$/)?e:(H0([t],e)||[])[0]}var S0e,AD=ce(()=>{p();Es();Mp();UR();AG();N4();rv();S0e=\"/docs/contract/decodeEventLog\"});function SC(t){let{abi:e,args:n,logs:r,strict:o=!0}=t,i=(()=>{if(t.eventName)return Array.isArray(t.eventName)?t.eventName:[t.eventName]})();return r.map(a=>{try{let c=e.find(d=>d.type===\"event\"&&a.topics[0]===Ww(d));if(!c)return null;let u=EC({...a,abi:[c],strict:o});return i&&!i.includes(u.eventName)||!yHe({args:u.args,inputs:c.inputs,matchArgs:n})?null:{...u,...a}}catch(c){let u,d;if(c instanceof k4)return null;if(c instanceof U0||c instanceof Ry){if(o)return null;u=c.abiItem.name,d=c.abiItem.inputs?.some(h=>!(\"name\"in h&&h.name))}return{...a,args:d?[]:{},eventName:u}}}).filter(Boolean)}function yHe(t){let{args:e,inputs:n,matchArgs:r}=t;if(!r)return!0;if(!e)return!1;function o(i,a,c){try{return i.type===\"address\"?Hy(a,c):i.type===\"string\"||i.type===\"bytes\"?Po(Lp(a))===c:a===c}catch{return!1}}return Array.isArray(e)&&Array.isArray(r)?r.every((i,a)=>{if(i==null)return!0;let c=n[a];return c?(Array.isArray(i)?i:[i]).some(d=>o(c,d,e[a])):!1}):typeof e==\"object\"&&!Array.isArray(e)&&typeof r==\"object\"&&!Array.isArray(r)?Object.entries(r).every(([i,a])=>{if(a==null)return!0;let c=n.find(d=>d.name===i);return c?(Array.isArray(a)?a:[a]).some(d=>o(c,d,e[i])):!1}):!1}var TD=ce(()=>{p();Es();bC();hc();zp();UR();AD()});async function kC(t,{address:e,blockHash:n,fromBlock:r,toBlock:o,event:i,events:a,args:c,strict:u}={}){let d=u??!1,h=a??(i?[i]:void 0),m=[];h&&(m=[h.flatMap(C=>Wy({abi:[C],eventName:C.name,args:a?void 0:c}))],i&&(m=m[0]));let g;n?g=await t.request({method:\"eth_getLogs\",params:[{address:e,topics:m,blockHash:n}]}):g=await t.request({method:\"eth_getLogs\",params:[{address:e,topics:m,fromBlock:typeof r==\"bigint\"?Ye(r):r,toBlock:typeof o==\"bigint\"?Ye(o):o}]});let b=g.map(E=>ou(E));return h?SC({abi:h,args:c,logs:b,strict:d}):b}var RD=ce(()=>{p();wC();TD();gn();Mw()});async function ID(t,e){let{abi:n,address:r,args:o,blockHash:i,eventName:a,fromBlock:c,toBlock:u,strict:d}=e,h=a?pf({abi:n,name:a}):void 0,m=h?void 0:n.filter(g=>g.type===\"event\");return Lt(t,kC,\"getLogs\")({address:r,args:o,blockHash:i,event:h,events:m,fromBlock:c,toBlock:u,strict:d})}var NY=ce(()=>{p();Vw();ki();RD()});var OD,k0e=ce(()=>{p();ir();OD=class extends Be{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\"})}}});async function _0e(t,e){let{address:n,factory:r,factoryData:o}=e;try{let[i,a,c,u,d,h,m]=await Lt(t,ja,\"readContract\")({abi:bHe,address:n,functionName:\"eip712Domain\",factory:r,factoryData:o});return{domain:{name:a,version:c,chainId:Number(u),verifyingContract:d,salt:h},extensions:m,fields:i}}catch(i){let a=i;throw a.name===\"ContractFunctionExecutionError\"&&a.cause.name===\"ContractFunctionZeroDataError\"?new OD({address:n}):a}}var bHe,C0e=ce(()=>{p();k0e();ki();qy();bHe=[{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\"}]});function A0e(t){return{baseFeePerGas:t.baseFeePerGas.map(e=>BigInt(e)),gasUsedRatio:t.gasUsedRatio,oldestBlock:BigInt(t.oldestBlock),reward:t.reward?.map(e=>e.map(n=>BigInt(n)))}}var T0e=ce(()=>{p()});async function R0e(t,{blockCount:e,blockNumber:n,blockTag:r=\"latest\",rewardPercentiles:o}){let i=typeof n==\"bigint\"?Ye(n):void 0,a=await t.request({method:\"eth_feeHistory\",params:[Ye(e),i||r,o]},{dedupe:!!i});return A0e(a)}var I0e=ce(()=>{p();gn();T0e()});async function xx(t,{filter:e}){let n=\"strict\"in e&&e.strict,r=await e.request({method:\"eth_getFilterChanges\",params:[e.id]});if(typeof r[0]==\"string\")return r;let o=r.map(i=>ou(i));return!(\"abi\"in e)||!e.abi?o:SC({abi:e.abi,logs:o,strict:n})}var b9=ce(()=>{p();TD();Mw()});async function O0e(t,{filter:e}){let n=e.strict??!1,o=(await e.request({method:\"eth_getFilterLogs\",params:[e.id]})).map(i=>ou(i));return e.abi?SC({abi:e.abi,logs:o,strict:n}):o}var P0e=ce(()=>{p();TD();Mw()});async function M0e(t,{address:e,blockNumber:n,blockTag:r=\"latest\",slot:o}){let i=n!==void 0?Ye(n):void 0;return await t.request({method:\"eth_getStorageAt\",params:[e,o,i||r]})}var N0e=ce(()=>{p();gn()});async function Ev(t,{blockHash:e,blockNumber:n,blockTag:r,hash:o,index:i}){let a=r||\"latest\",c=n!==void 0?Ye(n):void 0,u=null;if(o?u=await t.request({method:\"eth_getTransactionByHash\",params:[o]},{dedupe:!0}):e?u=await t.request({method:\"eth_getTransactionByBlockHashAndIndex\",params:[e,Ye(i)]},{dedupe:!0}):(c||a)&&(u=await t.request({method:\"eth_getTransactionByBlockNumberAndIndex\",params:[c||a,Ye(i)]},{dedupe:!!c})),!u)throw new o4({blockHash:e,blockNumber:n,blockTag:a,hash:o,index:i});return(t.chain?.formatters?.transaction?.format||y5)(u)}var v9=ce(()=>{p();L0();gn();tR()});async function L0e(t,{hash:e,transactionReceipt:n}){let[r,o]=await Promise.all([Lt(t,Vy,\"getBlockNumber\")({}),e?Lt(t,Ev,\"getTransaction\")({hash:e}):void 0]),i=n?.blockNumber||o?.blockNumber;return i?r-i+1n:0n}var B0e=ce(()=>{p();ki();xC();v9()});async function w9(t,{hash:e}){let n=await t.request({method:\"eth_getTransactionReceipt\",params:[e]},{dedupe:!0});if(!n)throw new i4({hash:e});return(t.chain?.formatters?.transactionReceipt?.format||_G)(n)}var LY=ce(()=>{p();L0();oL()});async function x9(t,e){let{account:n,allowFailure:r=!0,batchSize:o,blockNumber:i,blockTag:a,multicallAddress:c,stateOverride:u}=e,d=e.contracts,h=o??(typeof t.batch?.multicall==\"object\"&&t.batch.multicall.batchSize||1024),m=c;if(!m){if(!t.chain)throw new Error(\"client chain not configured. multicallAddress is required.\");m=Wp({blockNumber:i,chain:t.chain,contract:\"multicall3\"})}let g=[[]],b=0,E=0;for(let R=0;R<d.length;R++){let{abi:L,address:D,args:G,functionName:W}=d[R];try{let J=yo({abi:L,args:G,functionName:W});E+=(J.length-2)/2,h>0&&E>h&&g[b].length>0&&(b++,E=(J.length-2)/2,g[b]=[]),g[b]=[...g[b],{allowFailure:!0,callData:J,target:D}]}catch(J){let ne=wh(J,{abi:L,address:D,args:G,docsPath:\"/docs/contract/multicall\",functionName:W,sender:n});if(!r)throw ne;g[b]=[...g[b],{allowFailure:!0,callData:\"0x\",target:D}]}}let C=await Promise.allSettled(g.map(R=>Lt(t,ja,\"readContract\")({abi:dC,account:n,address:m,args:[R],blockNumber:i,blockTag:a,functionName:\"aggregate3\",stateOverride:u}))),T=[];for(let R=0;R<C.length;R++){let L=C[R];if(L.status===\"rejected\"){if(!r)throw L.reason;for(let G=0;G<g[R].length;G++)T.push({status:\"failure\",error:L.reason,result:void 0});continue}let D=L.value;for(let G=0;G<D.length;G++){let{returnData:W,success:J}=D[G],{callData:ne}=g[R][G],{abi:ie,address:Z,functionName:ae,args:V}=d[T.length];try{if(ne===\"0x\")throw new Vp;if(!J)throw new q0({data:W});let $=xf({abi:ie,args:V,data:W,functionName:ae});T.push(r?{result:$,status:\"success\"}:$)}catch($){let F=wh($,{abi:ie,address:Z,args:V,docsPath:\"/docs/contract/multicall\",functionName:ae});if(!r)throw F;T.push({error:F,result:void 0,status:\"failure\"})}}}if(T.length!==d.length)throw new Be(\"multicall results mismatch\");return T}var BY=ce(()=>{p();bv();Es();ir();ov();gx();Ef();I5();_6();ki();qy()});async function E9(t,e){let{blockNumber:n,blockTag:r=\"latest\",blocks:o,returnFullTransactions:i,traceTransfers:a,validation:c}=e;try{let u=[];for(let g of o){let b=g.blockOverrides?uD(g.blockOverrides):void 0,E=g.calls.map(T=>{let R=T,L=R.account?Wn(R.account):void 0,D=R.abi?yo(R):R.data,G={...R,data:R.dataSuffix?Da([D||\"0x\",R.dataSuffix]):D,from:R.from??L?.address};return gf(G),Bp(G)}),C=g.stateOverrides?sC(g.stateOverrides):void 0;u.push({blockOverrides:b,calls:E,stateOverrides:C})}let h=(typeof n==\"bigint\"?Ye(n):void 0)||r;return(await t.request({method:\"eth_simulateV1\",params:[{blockStateCalls:u,returnFullTransactions:i,traceTransfers:a,validation:c},h]})).map((g,b)=>({...nR(g),calls:g.calls.map((E,C)=>{let{abi:T,args:R,functionName:L,to:D}=o[b].calls[C],G=E.error?.data??E.returnData,W=BigInt(E.gasUsed),J=E.logs?.map(ae=>ou(ae)),ne=E.status===\"0x1\"?\"success\":\"failure\",ie=T&&ne===\"success\"&&G!==\"0x\"?xf({abi:T,data:G,functionName:L}):null,Z=(()=>{if(ne===\"success\")return;let ae;if(E.error?.data===\"0x\"?ae=new Vp:E.error&&(ae=new q0(E.error)),!!ae)return wh(ae,{abi:T??[],address:D??\"0x\",args:R,functionName:L??\"<unknown>\"})})();return{data:G,gasUsed:W,logs:J,status:ne,...ne===\"success\"?{result:ie}:{error:Z}}})}))}catch(u){let d=u,h=Zw(d,{});throw h instanceof jp?d:h}}var DY=ce(()=>{p();SY();js();Es();ov();jw();gx();Ef();iu();gn();_6();WR();rL();Mw();b5();WB();Qw()});function PD(t,e={}){let{as:n=typeof t==\"string\"?\"Hex\":\"Bytes\"}=e,r=R5(Pme(t));return n===\"Bytes\"?r:pC(r)}var FY=ce(()=>{p();ML();oD();J0()});var MD,F0e=ce(()=>{p();MD=class extends Map{constructor(e){super(),Object.defineProperty(this,\"maxSize\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let n=super.get(e);return super.has(e)&&n!==void 0&&(this.delete(e),super.set(e,n)),n}set(e,n){if(super.set(e,n),this.maxSize&&this.size>this.maxSize){let r=this.keys().next().value;r&&this.delete(r)}return this}}});var vHe,ND,U0e=ce(()=>{p();F0e();vHe={checksum:new MD(8192)},ND=vHe.checksum});function _C(t,e={}){let{strict:n=!0}=e;if(!xHe.test(t))throw new LD({address:t,cause:new UY});if(n){if(t.toLowerCase()===t)return;if(j0e(t)!==t)throw new LD({address:t,cause:new jY})}}function j0e(t){if(ND.has(t))return ND.get(t);_C(t,{strict:!1});let e=t.substring(2).toLowerCase(),n=PD(Mme(e),{as:\"Bytes\"}),r=e.split(\"\");for(let i=0;i<40;i+=2)n[i>>1]>>4>=8&&r[i]&&(r[i]=r[i].toUpperCase()),(n[i>>1]&15)>=8&&r[i+1]&&(r[i+1]=r[i+1].toUpperCase());let o=`0x${r.join(\"\")}`;return ND.set(t,o),o}function BD(t,e={}){let{strict:n=!0}=e??{};try{return _C(t,{strict:n}),!0}catch{return!1}}var xHe,LD,UY,jY,DD=ce(()=>{p();oD();U0e();bx();FY();xHe=/^0x[a-fA-F0-9]{40}$/;LD=class extends qo{constructor({address:e,cause:n}){super(`Address \"${e}\" is invalid.`,{cause:n}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Address.InvalidAddressError\"})}},UY=class extends qo{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\"})}},jY=class extends qo{constructor(){super(\"Address does not match its checksum counterpart.\"),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Address.InvalidChecksumError\"})}}});function UD(t){let e=!0,n=\"\",r=0,o=\"\",i=!1;for(let a=0;a<t.length;a++){let c=t[a];if([\"(\",\")\",\",\"].includes(c)&&(e=!0),c===\"(\"&&r++,c===\")\"&&r--,!!e){if(r===0){if(c===\" \"&&[\"event\",\"function\",\"error\",\"\"].includes(o))o=\"\";else if(o+=c,c===\")\"){i=!0;break}continue}if(c===\" \"){t[a-1]!==\",\"&&n!==\",\"&&n!==\",(\"&&(n=\"\",e=!1);continue}o+=c,n+=c}}if(!i)throw new qo(\"Unable to normalize signature.\");return o}function FD(t,e){let n=typeof t,r=e.type;switch(r){case\"address\":return BD(t,{strict:!1});case\"bool\":return n===\"boolean\";case\"function\":return n===\"string\";case\"string\":return n===\"string\";default:return r===\"tuple\"&&\"components\"in e?Object.values(e.components).every((o,i)=>FD(Object.values(t)[i],o)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===\"number\"||n===\"bigint\":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===\"string\"||t instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\\\[[0-9]{0,}\\\\])+$/.test(r)?Array.isArray(t)&&t.every(o=>FD(o,{...e,type:r.replace(/(\\\\[[0-9]{0,}\\\\])$/,\"\")})):!1}}function HY(t,e,n){for(let r in t){let o=t[r],i=e[r];if(o.type===\"tuple\"&&i.type===\"tuple\"&&\"components\"in o&&\"components\"in i)return HY(o.components,i.components,n[r]);let a=[o.type,i.type];if(a.includes(\"address\")&&a.includes(\"bytes20\")?!0:a.includes(\"address\")&&a.includes(\"string\")?BD(n[r],{strict:!1}):a.includes(\"address\")&&a.includes(\"bytes\")?BD(n[r],{strict:!1}):!1)return a}}var z0e=ce(()=>{p();DD();bx()});function jD(t,e={}){let{prepare:n=!0}=e,r=Array.isArray(t)?BR(t):typeof t==\"string\"?BR(t):t;return{...r,...n?{hash:CC(r)}:{}}}function H0e(t,e,n){let{args:r=[],prepare:o=!0}=n??{},i=EY(e,{strict:!1}),a=t.filter(d=>i?d.type===\"function\"||d.type===\"error\"?WY(d)===gC(e,0,4):d.type===\"event\"?CC(d)===e:!1:\"name\"in d&&d.name===e);if(a.length===0)throw new T6({name:e});if(a.length===1)return{...a[0],...o?{hash:CC(a[0])}:{}};let c;for(let d of a){if(!(\"inputs\"in d))continue;if(!r||r.length===0){if(!d.inputs||d.inputs.length===0)return{...d,...o?{hash:CC(d)}:{}};continue}if(!d.inputs||d.inputs.length===0||d.inputs.length!==r.length)continue;if(r.every((m,g)=>{let b=\"inputs\"in d&&d.inputs[g];return b?FD(m,b):!1})){if(c&&\"inputs\"in c&&c.inputs){let m=HY(d.inputs,c.inputs,r);if(m)throw new qY({abiItem:d,type:m[0]},{abiItem:c,type:m[1]})}c=d}}let u=(()=>{if(c)return c;let[d,...h]=a;return{...d,overloads:h}})();if(!u)throw new T6({name:e});return{...u,...o?{hash:CC(u)}:{}}}function WY(t){return gC(CC(t),0,4)}function SHe(t){let e=typeof t==\"string\"?t:O5(t);return UD(e)}function CC(t){return typeof t!=\"string\"&&\"hash\"in t&&t.hash?t.hash:PD(mC(SHe(t)))}var qY,T6,VY=ce(()=>{p();DR();bx();FY();J0();z0e();qY=class extends qo{constructor(e,n){super(\"Found ambiguous types in overloaded ABI Items.\",{metaMessages:[`\\\\`${e.type}\\\\` in \\\\`${UD(O5(e.abiItem))}\\\\`, and`,`\\\\`${n.type}\\\\` in \\\\`${UD(O5(n.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\"})}},T6=class extends qo{constructor({name:e,data:n,type:r=\"item\"}){let o=e?` with name \"${e}\"`:n?` with data \"${n}\"`:\"\";super(`ABI ${r}${o} not found.`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"AbiItem.NotFoundError\"})}}});var W0e,V0e,zD,XNt,eLt,tLt,nLt,rLt,oLt,iLt,sLt,aLt,cLt,lLt,uLt,dLt,fLt,hLt,pLt,mLt,gLt,yLt,bLt,vLt,wLt,xLt,ELt,SLt,kLt,_Lt,CLt,ALt,TLt,RLt,ILt,OLt,PLt,MLt,NLt,LLt,BLt,DLt,FLt,ULt,jLt,zLt,HLt,qLt,WLt,VLt,$Lt,KLt,GLt,ZLt,YLt,QLt,JLt,XLt,eBt,tBt,nBt,rBt,oBt,iBt,sBt,aBt,cBt,lBt,uBt,dBt,fBt,hBt,pBt,mBt,gBt,yBt,bBt,vBt,wBt,xBt,EBt,SBt,kBt,_Bt,CBt,ABt,TBt,RBt,IBt,OBt,PBt,MBt,NBt,LBt,BBt,DBt,FBt,UBt,jBt,$Y=ce(()=>{p();W0e=/^(.*)\\\\[([0-9]*)\\\\]$/,V0e=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,zD=/^(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)?$/,XNt=2n**(8n-1n)-1n,eLt=2n**(16n-1n)-1n,tLt=2n**(24n-1n)-1n,nLt=2n**(32n-1n)-1n,rLt=2n**(40n-1n)-1n,oLt=2n**(48n-1n)-1n,iLt=2n**(56n-1n)-1n,sLt=2n**(64n-1n)-1n,aLt=2n**(72n-1n)-1n,cLt=2n**(80n-1n)-1n,lLt=2n**(88n-1n)-1n,uLt=2n**(96n-1n)-1n,dLt=2n**(104n-1n)-1n,fLt=2n**(112n-1n)-1n,hLt=2n**(120n-1n)-1n,pLt=2n**(128n-1n)-1n,mLt=2n**(136n-1n)-1n,gLt=2n**(144n-1n)-1n,yLt=2n**(152n-1n)-1n,bLt=2n**(160n-1n)-1n,vLt=2n**(168n-1n)-1n,wLt=2n**(176n-1n)-1n,xLt=2n**(184n-1n)-1n,ELt=2n**(192n-1n)-1n,SLt=2n**(200n-1n)-1n,kLt=2n**(208n-1n)-1n,_Lt=2n**(216n-1n)-1n,CLt=2n**(224n-1n)-1n,ALt=2n**(232n-1n)-1n,TLt=2n**(240n-1n)-1n,RLt=2n**(248n-1n)-1n,ILt=2n**(256n-1n)-1n,OLt=-(2n**(8n-1n)),PLt=-(2n**(16n-1n)),MLt=-(2n**(24n-1n)),NLt=-(2n**(32n-1n)),LLt=-(2n**(40n-1n)),BLt=-(2n**(48n-1n)),DLt=-(2n**(56n-1n)),FLt=-(2n**(64n-1n)),ULt=-(2n**(72n-1n)),jLt=-(2n**(80n-1n)),zLt=-(2n**(88n-1n)),HLt=-(2n**(96n-1n)),qLt=-(2n**(104n-1n)),WLt=-(2n**(112n-1n)),VLt=-(2n**(120n-1n)),$Lt=-(2n**(128n-1n)),KLt=-(2n**(136n-1n)),GLt=-(2n**(144n-1n)),ZLt=-(2n**(152n-1n)),YLt=-(2n**(160n-1n)),QLt=-(2n**(168n-1n)),JLt=-(2n**(176n-1n)),XLt=-(2n**(184n-1n)),eBt=-(2n**(192n-1n)),tBt=-(2n**(200n-1n)),nBt=-(2n**(208n-1n)),rBt=-(2n**(216n-1n)),oBt=-(2n**(224n-1n)),iBt=-(2n**(232n-1n)),sBt=-(2n**(240n-1n)),aBt=-(2n**(248n-1n)),cBt=-(2n**(256n-1n)),lBt=2n**8n-1n,uBt=2n**16n-1n,dBt=2n**24n-1n,fBt=2n**32n-1n,hBt=2n**40n-1n,pBt=2n**48n-1n,mBt=2n**56n-1n,gBt=2n**64n-1n,yBt=2n**72n-1n,bBt=2n**80n-1n,vBt=2n**88n-1n,wBt=2n**96n-1n,xBt=2n**104n-1n,EBt=2n**112n-1n,SBt=2n**120n-1n,kBt=2n**128n-1n,_Bt=2n**136n-1n,CBt=2n**144n-1n,ABt=2n**152n-1n,TBt=2n**160n-1n,RBt=2n**168n-1n,IBt=2n**176n-1n,OBt=2n**184n-1n,PBt=2n**192n-1n,MBt=2n**200n-1n,NBt=2n**208n-1n,LBt=2n**216n-1n,BBt=2n**224n-1n,DBt=2n**232n-1n,FBt=2n**240n-1n,UBt=2n**248n-1n,jBt=2n**256n-1n});function $0e({checksumAddress:t,parameters:e,values:n}){let r=[];for(let o=0;o<e.length;o++)r.push(KY({checksumAddress:t,parameter:e[o],value:n[o]}));return r}function KY({checksumAddress:t=!1,parameter:e,value:n}){let r=e,o=PHe(r.type);if(o){let[i,a]=o;return CHe(n,{checksumAddress:t,length:i,parameter:{...r,type:a}})}if(r.type===\"tuple\")return OHe(n,{checksumAddress:t,parameter:r});if(r.type===\"address\")return _He(n,{checksum:t});if(r.type===\"bool\")return THe(n);if(r.type.startsWith(\"uint\")||r.type.startsWith(\"int\")){let i=r.type.startsWith(\"int\"),[,,a=\"256\"]=zD.exec(r.type)??[];return RHe(n,{signed:i,size:Number(a)})}if(r.type.startsWith(\"bytes\"))return AHe(n,{type:r.type});if(r.type===\"string\")return IHe(n);throw new k9(r.type)}function HD(t){let e=0;for(let i=0;i<t.length;i++){let{dynamic:a,encoded:c}=t[i];a?e+=32:e+=Nc(c)}let n=[],r=[],o=0;for(let i=0;i<t.length;i++){let{dynamic:a,encoded:c}=t[i];a?(n.push(Ua(e+o,{size:32})),r.push(c),o+=Nc(c)):n.push(c)}return Sf(...n,...r)}function _He(t,e){let{checksum:n=!1}=e;return _C(t,{strict:n}),{dynamic:!1,encoded:xv(t.toLowerCase())}}function CHe(t,e){let{checksumAddress:n,length:r,parameter:o}=e,i=r===null;if(!Array.isArray(t))throw new WD(t);if(!i&&t.length!==r)throw new qD({expectedLength:r,givenLength:t.length,type:`${o.type}[${r}]`});let a=!1,c=[];for(let u=0;u<t.length;u++){let d=KY({checksumAddress:n,parameter:o,value:t[u]});d.dynamic&&(a=!0),c.push(d)}if(i||a){let u=HD(c);if(i){let d=Ua(c.length,{size:32});return{dynamic:!0,encoded:c.length>0?Sf(d,u):d}}if(a)return{dynamic:!0,encoded:u}}return{dynamic:!1,encoded:Sf(...c.map(({encoded:u})=>u))}}function AHe(t,{type:e}){let[,n]=e.split(\"bytes\"),r=Nc(t);if(!n){let o=t;return r%32!==0&&(o=zy(o,Math.ceil((t.length-2)/2/32)*32)),{dynamic:!0,encoded:Sf(xv(Ua(r,{size:32})),o)}}if(r!==Number.parseInt(n))throw new S9({expectedSize:Number.parseInt(n),value:t});return{dynamic:!1,encoded:zy(t)}}function THe(t){if(typeof t!=\"boolean\")throw new qo(`Invalid boolean value: \"${t}\" (type: ${typeof t}). Expected: \\\\`true\\\\` or \\\\`false\\\\`.`);return{dynamic:!1,encoded:xv(lD(t))}}function RHe(t,{signed:e,size:n}){if(typeof n==\"number\"){let r=2n**(BigInt(n)-(e?1n:0n))-1n,o=e?-r-1n:0n;if(t>r||t<o)throw new g9({max:r.toString(),min:o.toString(),signed:e,size:n/8,value:t.toString()})}return{dynamic:!1,encoded:Ua(t,{size:32,signed:e})}}function IHe(t){let e=mC(t),n=Math.ceil(Nc(e)/32),r=[];for(let o=0;o<n;o++)r.push(zy(gC(e,o*32,(o+1)*32)));return{dynamic:!0,encoded:Sf(zy(Ua(Nc(e),{size:32})),...r)}}function OHe(t,e){let{checksumAddress:n,parameter:r}=e,o=!1,i=[];for(let a=0;a<r.components.length;a++){let c=r.components[a],u=Array.isArray(t)?a:c.name,d=KY({checksumAddress:n,parameter:c,value:t[u]});i.push(d),d.dynamic&&(o=!0)}return{dynamic:o,encoded:o?HD(i):Sf(...i.map(({encoded:a})=>a))}}function PHe(t){let e=t.match(/^(.*)\\\\[(\\\\d+)?\\\\]$/);return e?[e[2]?Number(e[2]):null,e[1]]:void 0}var K0e=ce(()=>{p();VD();DD();bx();J0();$Y()});function KD(t,e,n){let{checksumAddress:r=!1}=n??{};if(t.length!==e.length)throw new $D({expectedLength:t.length,givenLength:e.length});let o=$0e({checksumAddress:r,parameters:t,values:e}),i=HD(o);return i.length===0?\"0x\":i}function ZY(t,e){if(t.length!==e.length)throw new $D({expectedLength:t.length,givenLength:e.length});let n=[];for(let r=0;r<t.length;r++){let o=t[r],i=e[r];n.push(ZY.encode(o,i))}return Sf(...n)}var qD,S9,$D,WD,k9,VD=ce(()=>{p();DD();bx();J0();$Y();K0e();(function(t){function e(n,r,o=!1){if(n===\"address\"){let u=r;return _C(u),xv(u.toLowerCase(),o?32:0)}if(n===\"string\")return mC(r);if(n===\"bytes\")return r;if(n===\"bool\")return xv(lD(r),o?32:1);let i=n.match(zD);if(i){let[u,d,h=\"256\"]=i,m=Number.parseInt(h)/8;return Ua(r,{size:o?32:m,signed:d===\"int\"})}let a=n.match(V0e);if(a){let[u,d]=a;if(Number.parseInt(d)!==(r.length-2)/2)throw new S9({expectedSize:Number.parseInt(d),value:r});return zy(r,o?32:0)}let c=n.match(W0e);if(c&&Array.isArray(r)){let[u,d]=c,h=[];for(let m=0;m<r.length;m++)h.push(e(d,r[m],!0));return h.length===0?\"0x\":Sf(...h)}throw new k9(n)}t.encode=e})(ZY||(ZY={}));qD=class extends qo{constructor({expectedLength:e,givenLength:n,type:r}){super(`Array length mismatch for type \\\\`${r}\\\\`. Expected: \\\\`${e}\\\\`. Given: \\\\`${n}\\\\`.`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"AbiParameters.ArrayLengthMismatchError\"})}},S9=class extends qo{constructor({expectedSize:e,value:n}){super(`Size of bytes \"${n}\" (bytes${Nc(n)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"AbiParameters.BytesSizeMismatchError\"})}},$D=class extends qo{constructor({expectedLength:e,givenLength:n}){super([\"ABI encoding parameters/values length mismatch.\",`Expected length (parameters): ${e}`,`Given length (values): ${n}`].join(`\\n`)),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"AbiParameters.LengthMismatchError\"})}},WD=class extends qo{constructor(e){super(`Value \\\\`${e}\\\\` is not a valid array.`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"AbiParameters.InvalidArrayError\"})}},k9=class extends qo{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 G0e(t,e){let{bytecode:n,args:r}=e;return Sf(n,t.inputs?.length&&r?.length?KD(t.inputs,r):\"0x\")}function Z0e(t){return jD(t)}var Y0e=ce(()=>{p();VY();VD();J0()});function Q0e(t,...e){let{overloads:n}=t,r=n?BHe([t,...n],t.name,{args:e[0]}):t,o=DHe(r),i=e.length>0?KD(r.inputs,e[0]):void 0;return i?Sf(o,i):o}function R6(t,e={}){return jD(t,e)}function BHe(t,e,n){let r=H0e(t,e,n);if(r.type!==\"function\")throw new T6({name:e,type:\"function\"});return r}function DHe(t){return WY(t)}var J0e=ce(()=>{p();VY();VD();J0()});var X0e,X0,ege=ce(()=>{p();X0e=\"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee\",X0=\"0x0000000000000000000000000000000000000000\"});function tge(t,{enabled:e=!0,id:n}){if(!e||!n)return t();if(GD.get(n))return GD.get(n);let r=t().finally(()=>GD.delete(n));return GD.set(n,r),r}var GD,nge=ce(()=>{p();dR();GD=new Ay(8192)});async function _9(t){return new Promise(e=>setTimeout(e,t))}var YY=ce(()=>{p()});function eg(t,{delay:e=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((o,i)=>{let a=async({count:c=0}={})=>{let u=async({error:d})=>{let h=typeof e==\"function\"?e({count:c,error:d}):e;h&&await _9(h),a({count:c+1})};try{let d=await t();o(d)}catch(d){if(c<n&&await r({count:c,error:d}))return u({error:d});i(d)}};a()})}var ZD=ce(()=>{p();YY()});function rge(t,e={}){return async(n,r={})=>{let{dedupe:o=!1,methods:i,retryDelay:a=150,retryCount:c=3,uid:u}={...e,...r},{method:d}=n;if(i?.exclude?.includes(d))throw new iv(new Error(\"method not supported\"),{method:d});if(i?.include&&!i.include.includes(d))throw new iv(new Error(\"method not supported\"),{method:d});let h=o?gh(`${u}.${qr(n)}`):void 0;return tge(()=>eg(async()=>{try{return await t(n)}catch(m){let g=m;switch(g.code){case D5.code:throw new D5(g);case F5.code:throw new F5(g);case U5.code:throw new U5(g,{method:n.method});case j5.code:throw new j5(g);case My.code:throw new My(g);case W0.code:throw new W0(g);case z5.code:throw new z5(g);case mf.code:throw new mf(g);case H5.code:throw new H5(g);case iv.code:throw new iv(g,{method:n.method});case Gw.code:throw new Gw(g);case q5.code:throw new q5(g);case oo.code:throw new oo(g);case W5.code:throw new W5(g);case V5.code:throw new V5(g);case $5.code:throw new $5(g);case K5.code:throw new K5(g);case ha.code:throw new ha(g);case sv.code:throw new sv(g);case G5.code:throw new G5(g);case Z5.code:throw new Z5(g);case Y5.code:throw new Y5(g);case Q5.code:throw new Q5(g);case J5.code:throw new J5(g);case av.code:throw new av(g);case 5e3:throw new oo(g);default:throw m instanceof Be?m:new qR(g)}}},{delay:({count:m,error:g})=>{if(g&&g instanceof $p){let b=g?.headers?.get(\"Retry-After\");if(b?.match(/\\\\d/))return Number.parseInt(b)*1e3}return~~(1<<m)*a},retryCount:c,shouldRetry:({error:m})=>UHe(m)}),{enabled:o,id:h})}}function UHe(t){return\"code\"in t&&typeof t.code==\"number\"?t.code===-1||t.code===Gw.code||t.code===My.code:t instanceof $p&&t.status?t.status===403||t.status===408||t.status===413||t.status===429||t.status===500||t.status===502||t.status===503||t.status===504:!0}var oge=ce(()=>{p();ir();B5();X5();gn();nge();ZD();au()});function I6(t,{errorInstance:e=new Error(\"timed out\"),timeout:n,signal:r}){return new Promise((o,i)=>{(async()=>{let a;try{let c=new AbortController;n>0&&(a=setTimeout(()=>{r?c.abort():i(e)},n)),o(await t({signal:c?.signal||null}))}catch(c){c?.name===\"AbortError\"&&i(e),i(c)}finally{clearTimeout(a)}})()})}var QY=ce(()=>{p()});function jHe(){return{current:0,take(){return this.current++},reset(){this.current=0}}}var JY,ige=ce(()=>{p();JY=jHe()});function sge(t,e={}){return{async request(n){let{body:r,onRequest:o=e.onRequest,onResponse:i=e.onResponse,timeout:a=e.timeout??1e4}=n,c={...e.fetchOptions??{},...n.fetchOptions??{}},{headers:u,method:d,signal:h}=c;try{let m=await I6(async({signal:b})=>{let E={...c,body:Array.isArray(r)?qr(r.map(L=>({jsonrpc:\"2.0\",id:L.id??JY.take(),...L}))):qr({jsonrpc:\"2.0\",id:r.id??JY.take(),...r}),headers:{\"Content-Type\":\"application/json\",...u},method:d||\"POST\",signal:h||(a>0?b:null)},C=new Request(t,E),T=await o?.(C,E)??{...E,url:t};return await fetch(T.url??t,T)},{errorInstance:new HR({body:r,url:t}),timeout:a,signal:!0});i&&await i(m);let g;if(m.headers.get(\"Content-Type\")?.startsWith(\"application/json\"))g=await m.json();else{g=await m.text();try{g=JSON.parse(g||\"{}\")}catch(b){if(m.ok)throw b;g={error:g}}}if(!m.ok)throw new $p({body:r,details:qr(g.error)||m.statusText,headers:m.headers,status:m.status,url:t});return g}catch(m){throw m instanceof $p||m instanceof HR?m:new $p({body:r,cause:m,url:t})}}}}var age=ce(()=>{p();B5();QY();au();ige()});var YD,QD,JD,cge=ce(()=>{p();au();ir();YD=class extends Be{constructor({domain:e}){super(`Invalid domain \"${qr(e)}\".`,{metaMessages:[\"Must be a valid EIP-712 domain.\"]})}},QD=class extends Be{constructor({primaryType:e,types:n}){super(`Invalid primary type \\\\`${e}\\\\` must be one of \\\\`${JSON.stringify(Object.keys(n))}\\\\`.`,{docsPath:\"/api/glossary/Errors#typeddatainvalidprimarytypeerror\",metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},JD=class extends Be{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[\"Struct type must not be a Solidity type.\"],name:\"InvalidStructTypeError\"})}}});function lge(t){let{domain:e={},message:n,primaryType:r}=t,o={EIP712Domain:eF({domain:e}),...t.types};XD({domain:e,message:n,primaryType:r,types:o});let i=[\"0x1901\"];return e&&i.push(zHe({domain:e,types:o})),r!==\"EIP712Domain\"&&i.push(uge({data:n,primaryType:r,types:o})),Po(Da(i))}function zHe({domain:t,types:e}){return uge({data:t,primaryType:\"EIP712Domain\",types:e})}function uge({data:t,primaryType:e,types:n}){let r=dge({data:t,primaryType:e,types:n});return Po(r)}function dge({data:t,primaryType:e,types:n}){let r=[{type:\"bytes32\"}],o=[HHe({primaryType:e,types:n})];for(let i of n[e]){let[a,c]=hge({types:n,name:i.name,type:i.type,value:t[i.name]});r.push(a),o.push(c)}return vl(r,o)}function HHe({primaryType:t,types:e}){let n=Uo(qHe({primaryType:t,types:e}));return Po(n)}function qHe({primaryType:t,types:e}){let n=\"\",r=fge({primaryType:t,types:e});r.delete(t);let o=[t,...Array.from(r).sort()];for(let i of o)n+=`${i}(${e[i].map(({name:a,type:c})=>`${c} ${a}`).join(\",\")})`;return n}function fge({primaryType:t,types:e},n=new Set){let o=t.match(/^\\\\w*/u)?.[0];if(n.has(o)||e[o]===void 0)return n;n.add(o);for(let i of e[o])fge({primaryType:i.type,types:e},n);return n}function hge({types:t,name:e,type:n,value:r}){if(t[n]!==void 0)return[{type:\"bytes32\"},Po(dge({data:r,primaryType:n,types:t}))];if(n===\"bytes\")return r=`0x${(r.length%2?\"0\":\"\")+r.slice(2)}`,[{type:\"bytes32\"},Po(r)];if(n===\"string\")return[{type:\"bytes32\"},Po(Uo(r))];if(n.lastIndexOf(\"]\")===n.length-1){let o=n.slice(0,n.lastIndexOf(\"[\")),i=r.map(a=>hge({name:e,type:o,types:t,value:a}));return[{type:\"bytes32\"},Po(vl(i.map(([a])=>a),i.map(([,a])=>a)))]}return[{type:n},r]}var pge=ce(()=>{p();Py();iu();gn();zp();XY()});function mge(t){let{domain:e,message:n,primaryType:r,types:o}=t,i=(u,d)=>{let h={...d};for(let m of u){let{name:g,type:b}=m;b===\"address\"&&(h[g]=h[g].toLowerCase())}return h},a=o.EIP712Domain?e?i(o.EIP712Domain,e):{}:{},c=(()=>{if(r!==\"EIP712Domain\")return i(o[r],n)})();return qr({domain:a,message:c,primaryType:r,types:o})}function XD(t){let{domain:e,message:n,primaryType:r,types:o}=t,i=(a,c)=>{for(let u of a){let{name:d,type:h}=u,m=c[d],g=h.match(P4);if(g&&(typeof m==\"number\"||typeof m==\"bigint\")){let[C,T,R]=g;Ye(m,{signed:T===\"int\",size:Number.parseInt(R)/8})}if(h===\"address\"&&typeof m==\"string\"&&!Kr(m))throw new ci({address:m});let b=h.match(iB);if(b){let[C,T]=b;if(T&&Jr(m)!==Number.parseInt(T))throw new C4({expectedSize:Number.parseInt(T),givenSize:Jr(m)})}let E=o[h];E&&(WHe(h),i(E,m))}};if(o.EIP712Domain&&e){if(typeof e!=\"object\")throw new YD({domain:e});i(o.EIP712Domain,e)}if(r!==\"EIP712Domain\")if(o[r])i(o[r],n);else throw new QD({primaryType:r,types:o})}function eF({domain:t}){return[typeof t?.name==\"string\"&&{name:\"name\",type:\"string\"},t?.version&&{name:\"version\",type:\"string\"},(typeof t?.chainId==\"number\"||typeof t?.chainId==\"bigint\")&&{name:\"chainId\",type:\"uint256\"},t?.verifyingContract&&{name:\"verifyingContract\",type:\"address\"},t?.salt&&{name:\"salt\",type:\"bytes32\"}].filter(Boolean)}function WHe(t){if(t===\"address\"||t===\"bool\"||t===\"string\"||t.startsWith(\"bytes\")||t.startsWith(\"uint\")||t.startsWith(\"int\"))throw new JD({type:t})}var XY=ce(()=>{p();Es();D0();cge();hf();Mp();gn();sB();au()});function eQ(t,e){if(t.length!==e.length)throw new E4({expectedLength:t.length,givenLength:e.length});let n=[];for(let r=0;r<t.length;r++){let o=t[r],i=e[r];n.push(gge(o,i))}return fa(n)}function gge(t,e,n=!1){if(t===\"address\"){let a=e;if(!Kr(a))throw new ci({address:a});return Np(a.toLowerCase(),{size:n?32:null})}if(t===\"string\")return gh(e);if(t===\"bytes\")return e;if(t===\"bool\")return Np(Q_(e),{size:n?32:1});let r=t.match(P4);if(r){let[a,c,u=\"256\"]=r,d=Number.parseInt(u)/8;return Ye(e,{size:n?32:d,signed:c===\"int\"})}let o=t.match(iB);if(o){let[a,c]=o;if(Number.parseInt(c)!==(e.length-2)/2)throw new C4({expectedSize:Number.parseInt(c),givenSize:(e.length-2)/2});return Np(e,{dir:\"right\",size:n?32:null})}let i=t.match(the);if(i&&Array.isArray(e)){let[a,c]=i,u=[];for(let d=0;d<e.length;d++)u.push(gge(c,e[d],!0));return u.length===0?\"0x\":fa(u)}throw new ZL(t)}var yge=ce(()=>{p();Es();D0();hf();iu();X7();gn();sB()});var bge,vge=ce(()=>{p();bge=`\\u0019Ethereum Signed Message:\\n`});function wge(t){let e=typeof t==\"string\"?gh(t):typeof t.raw==\"string\"?t.raw:Xr(t.raw),n=gh(`${bge}${Jr(e)}`);return Da([n,e])}var xge=ce(()=>{p();vge();iu();Mp();gn()});function tF(t,e){return Po(wge(t),e)}var tQ=ce(()=>{p();zp();xge()});var nF,nQ=ce(()=>{p();nF=\"0x6492649264926492649264926492649264926492649264926492649264926492\"});function rF(t){return w4(t,-32)===nF}var rQ=ce(()=>{p();nQ();nv()});function oQ(t){if(!rF(t))return{signature:t};let[e,n,r]=H0([{type:\"address\"},{type:\"bytes\"},{type:\"bytes\"}],t);return{address:e,data:n,signature:r}}var Ege=ce(()=>{p();N4();rQ()});function Sge(t){let{address:e,data:n,signature:r,to:o=\"hex\"}=t,i=fa([vl([{type:\"address\"},{type:\"bytes\"},{type:\"bytes\"}],[e,n,r]),nF]);return o===\"hex\"?i:Us(i)}var kge=ce(()=>{p();nQ();Py();iu();hc()});var oF,_ge=ce(()=>{p();ir();oF=class extends Be{constructor({value:e}){super(`Number \\\\`${e}\\\\` is not a valid decimal number.`,{name:\"InvalidDecimalNumberError\"})}}});function AC(t,e){if(!/^(-?)([0-9]*)\\\\.?([0-9]*)$/.test(t))throw new oF({value:t});let[n,r=\"0\"]=t.split(\".\"),o=n.startsWith(\"-\");if(o&&(n=n.slice(1)),r=r.replace(/(0+)$/,\"\"),e===0)Math.round(+`.${r}`)===1&&(n=`${BigInt(n)+1n}`),r=\"\";else if(r.length>e){let[i,a,c]=[r.slice(0,e-1),r.slice(e-1,e),r.slice(e)],u=Math.round(+`${a}.${c}`);u>9?r=`${BigInt(i)+BigInt(1)}0`.padStart(i.length+1,\"0\"):r=`${i}${u}`,r.length>e&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,e)}else r=r.padEnd(e,\"0\");return BigInt(`${o?\"-\":\"\"}${n}${r}`)}var Cge=ce(()=>{p();_ge()});var C9=ce(()=>{p();Ef();js();tv();fc()});async function Age(t,e){let{blockNumber:n,blockTag:r,calls:o,stateOverrides:i,traceAssetChanges:a,traceTransfers:c,validation:u}=e,d=e.account?Wn(e.account):void 0;if(a&&!d)throw new Be(\"`account` is required when `traceAssetChanges` is true\");let h=d?G0e(Z0e(\"constructor(bytes, bytes)\"),{bytecode:dD,args:[VHe,Q0e(R6(\"function getBalance(address)\"),[d.address])]}):void 0,m=a?await Promise.all(e.calls.map(async B=>{if(!B.data&&!B.abi)return;let{accessList:j}=await ED(t,{account:d.address,...B,data:B.abi?yo(B):B.data});return j.map(({address:q,storageKeys:H})=>H.length>0?q:null)})).then(B=>B.flat().filter(Boolean)):[],g=await E9(t,{blockNumber:n,blockTag:r,blocks:[...a?[{calls:[{data:h}],stateOverrides:i},{calls:m.map((B,j)=>({abi:[R6(\"function balanceOf(address) returns (uint256)\")],functionName:\"balanceOf\",args:[d.address],to:B,from:X0,nonce:j})),stateOverrides:[{address:X0,nonce:0}]}]:[],{calls:[...o,{}].map(B=>({...B,from:d?.address})),stateOverrides:i},...a?[{calls:[{data:h}]},{calls:m.map((B,j)=>({abi:[R6(\"function balanceOf(address) returns (uint256)\")],functionName:\"balanceOf\",args:[d.address],to:B,from:X0,nonce:j})),stateOverrides:[{address:X0,nonce:0}]},{calls:m.map((B,j)=>({to:B,abi:[R6(\"function decimals() returns (uint256)\")],functionName:\"decimals\",from:X0,nonce:j})),stateOverrides:[{address:X0,nonce:0}]},{calls:m.map((B,j)=>({to:B,abi:[R6(\"function tokenURI(uint256) returns (string)\")],functionName:\"tokenURI\",args:[0n],from:X0,nonce:j})),stateOverrides:[{address:X0,nonce:0}]},{calls:m.map((B,j)=>({to:B,abi:[R6(\"function symbol() returns (string)\")],functionName:\"symbol\",from:X0,nonce:j})),stateOverrides:[{address:X0,nonce:0}]}]:[]],traceTransfers:c,validation:u}),b=a?g[2]:g[0],[E,C,,T,R,L,D,G]=a?g:[],{calls:W,...J}=b,ne=W.slice(0,-1)??[],ie=E?.calls??[],Z=C?.calls??[],ae=[...ie,...Z].map(B=>B.status===\"success\"?jo(B.data):null),V=T?.calls??[],$=R?.calls??[],F=[...V,...$].map(B=>B.status===\"success\"?jo(B.data):null),_=(L?.calls??[]).map(B=>B.status===\"success\"?B.result:null),O=(G?.calls??[]).map(B=>B.status===\"success\"?B.result:null),z=(D?.calls??[]).map(B=>B.status===\"success\"?B.result:null),N=[];for(let[B,j]of F.entries()){let q=ae[B];if(typeof j!=\"bigint\"||typeof q!=\"bigint\")continue;let H=_[B-1],I=O[B-1],U=z[B-1],X=B===0?{address:X0e,decimals:18,symbol:\"ETH\"}:{address:m[B-1],decimals:U||H?Number(H??1):void 0,symbol:I??void 0};N.some(ee=>ee.token.address===X.address)||N.push({token:X,value:{pre:q,post:j,diff:j-q}})}return{assetChanges:N,block:J,results:ne}}var VHe,Tge=ce(()=>{p();Y0e();J0e();js();ege();fD();ir();Ef();C9();RY();DY();VHe=\"0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033\"});function du(t,e,n){let r=++$He,o=()=>iQ.get(t)||[],i=()=>{let h=o();iQ.set(t,h.filter(m=>m.id!==r))},a=()=>{let h=o();if(!h.some(g=>g.id===r))return;let m=Rge.get(t);if(h.length===1&&m){let g=m();g instanceof Promise&&g.catch(()=>{})}i()},c=o();if(iQ.set(t,[...c,{id:r,fns:e}]),c&&c.length>0)return a;let u={};for(let h in e)u[h]=(...m)=>{let g=o();if(g.length!==0)for(let b of g)b.fns[h]?.(...m)};let d=n(u);return typeof d==\"function\"&&Rge.set(t,d),a}var iQ,Rge,$He,Ex=ce(()=>{p();iQ=new Map,Rge=new Map,$He=0});function Yp(t,{emitOnBegin:e,initialWaitTime:n,interval:r}){let o=!0,i=()=>o=!1;return(async()=>{let c;e&&(c=await t({unpoll:i}));let u=await n?.(c)??r;await _9(u);let d=async()=>{o&&(await t({unpoll:i}),await _9(r),d())};d()})(),i}var O6=ce(()=>{p();YY()});function Ige(t,{blockTag:e=\"latest\",emitMissed:n=!1,emitOnBegin:r=!1,onBlock:o,onError:i,includeTransactions:a,poll:c,pollingInterval:u=t.pollingInterval}){let d=typeof c<\"u\"?c:!(t.transport.type===\"webSocket\"||t.transport.type===\"ipc\"||t.transport.type===\"fallback\"&&(t.transport.transports[0].config.type===\"webSocket\"||t.transport.transports[0].config.type===\"ipc\")),h=a??!1,m;return d?(()=>{let E=qr([\"watchBlocks\",t.uid,e,n,r,h,u]);return du(E,{onBlock:o,onError:i},C=>Yp(async()=>{try{let T=await Lt(t,uu,\"getBlock\")({blockTag:e,includeTransactions:h});if(T.number!==null&&m?.number!=null){if(T.number===m.number)return;if(T.number-m.number>1&&n)for(let R=m?.number+1n;R<T.number;R++){let L=await Lt(t,uu,\"getBlock\")({blockNumber:R,includeTransactions:h});C.onBlock(L,m),m=L}}(m?.number==null||e===\"pending\"&&T?.number==null||T.number!==null&&T.number>m.number)&&(C.onBlock(T,m),m=T)}catch(T){C.onError?.(T)}},{emitOnBegin:r,interval:u}))})():(()=>{let E=!0,C=!0,T=()=>E=!1;return(async()=>{try{r&&Lt(t,uu,\"getBlock\")({blockTag:e,includeTransactions:h}).then(D=>{E&&C&&(o(D,void 0),C=!1)}).catch(i);let R=(()=>{if(t.transport.type===\"fallback\"){let D=t.transport.transports.find(G=>G.config.type===\"webSocket\"||G.config.type===\"ipc\");return D?D.value:t.transport}return t.transport})(),{unsubscribe:L}=await R.subscribe({params:[\"newHeads\"],async onData(D){if(!E)return;let G=await Lt(t,uu,\"getBlock\")({blockNumber:D.result?.number,includeTransactions:h}).catch(()=>{});E&&(o(G,m),C=!1,m=G)},onError(D){i?.(D)}});T=L,E||T()}catch(R){i?.(R)}})(),()=>T()})()}var Oge=ce(()=>{p();ki();Ex();O6();au();S6()});function iF(t,{emitOnBegin:e=!1,emitMissed:n=!1,onBlockNumber:r,onError:o,poll:i,pollingInterval:a=t.pollingInterval}){let c=typeof i<\"u\"?i:!(t.transport.type===\"webSocket\"||t.transport.type===\"ipc\"||t.transport.type===\"fallback\"&&(t.transport.transports[0].config.type===\"webSocket\"||t.transport.transports[0].config.type===\"ipc\")),u;return c?(()=>{let m=qr([\"watchBlockNumber\",t.uid,e,n,a]);return du(m,{onBlockNumber:r,onError:o},g=>Yp(async()=>{try{let b=await Lt(t,Vy,\"getBlockNumber\")({cacheTime:0});if(u){if(b===u)return;if(b-u>1&&n)for(let E=u+1n;E<b;E++)g.onBlockNumber(E,u),u=E}(!u||b>u)&&(g.onBlockNumber(b,u),u=b)}catch(b){g.onError?.(b)}},{emitOnBegin:e,interval:a}))})():(()=>{let m=qr([\"watchBlockNumber\",t.uid,e,n]);return du(m,{onBlockNumber:r,onError:o},g=>{let b=!0,E=()=>b=!1;return(async()=>{try{let C=(()=>{if(t.transport.type===\"fallback\"){let R=t.transport.transports.find(L=>L.config.type===\"webSocket\"||L.config.type===\"ipc\");return R?R.value:t.transport}return t.transport})(),{unsubscribe:T}=await C.subscribe({params:[\"newHeads\"],onData(R){if(!b)return;let L=jo(R.result?.number);g.onBlockNumber(L,u),u=L},onError(R){g.onError?.(R)}});E=T,b||E()}catch(C){o?.(C)}})(),()=>E()})})()}var sQ=ce(()=>{p();fc();ki();Ex();O6();au();xC()});async function Sx(t,{filter:e}){return e.request({method:\"eth_uninstallFilter\",params:[e.id]})}var A9=ce(()=>{p()});function Pge(t,{address:e,args:n,batch:r=!0,event:o,events:i,fromBlock:a,onError:c,onLogs:u,poll:d,pollingInterval:h=t.pollingInterval,strict:m}){let g=typeof d<\"u\"?d:typeof a==\"bigint\"?!0:!(t.transport.type===\"webSocket\"||t.transport.type===\"ipc\"||t.transport.type===\"fallback\"&&(t.transport.transports[0].config.type===\"webSocket\"||t.transport.transports[0].config.type===\"ipc\")),b=m??!1;return g?(()=>{let T=qr([\"watchEvent\",e,n,r,t.uid,o,h,a]);return du(T,{onLogs:u,onError:c},R=>{let L;a!==void 0&&(L=a-1n);let D,G=!1,W=Yp(async()=>{if(!G){try{D=await Lt(t,_D,\"createEventFilter\")({address:e,args:n,event:o,events:i,strict:b,fromBlock:a})}catch{}G=!0;return}try{let J;if(D)J=await Lt(t,xx,\"getFilterChanges\")({filter:D});else{let ne=await Lt(t,Vy,\"getBlockNumber\")({});L&&L!==ne?J=await Lt(t,kC,\"getLogs\")({address:e,args:n,event:o,events:i,fromBlock:L+1n,toBlock:ne}):J=[],L=ne}if(J.length===0)return;if(r)R.onLogs(J);else for(let ne of J)R.onLogs([ne])}catch(J){D&&J instanceof W0&&(G=!1),R.onError?.(J)}},{emitOnBegin:!0,interval:h});return async()=>{D&&await Lt(t,Sx,\"uninstallFilter\")({filter:D}),W()}})})():(()=>{let T=!0,R=()=>T=!1;return(async()=>{try{let L=(()=>{if(t.transport.type===\"fallback\"){let J=t.transport.transports.find(ne=>ne.config.type===\"webSocket\"||ne.config.type===\"ipc\");return J?J.value:t.transport}return t.transport})(),D=i??(o?[o]:void 0),G=[];D&&(G=[D.flatMap(ne=>Wy({abi:[ne],eventName:ne.name,args:n}))],o&&(G=G[0]));let{unsubscribe:W}=await L.subscribe({params:[\"logs\",{address:e,topics:G}],onData(J){if(!T)return;let ne=J.result;try{let{eventName:ie,args:Z}=EC({abi:D??[],data:ne.data,topics:ne.topics,strict:b}),ae=ou(ne,{args:Z,eventName:ie});u([ae])}catch(ie){let Z,ae;if(ie instanceof U0||ie instanceof Ry){if(m)return;Z=ie.abiItem.name,ae=ie.abiItem.inputs?.some($=>!(\"name\"in $&&$.name))}let V=ou(ne,{args:ae?[]:{},eventName:Z});u([V])}},onError(J){c?.(J)}});R=W,T||R()}catch(L){c?.(L)}})(),()=>R()})()}var Mge=ce(()=>{p();wC();Ex();O6();au();Es();X5();AD();Mw();ki();OY();xC();b9();RD();A9()});function Nge(t,{batch:e=!0,onError:n,onTransactions:r,poll:o,pollingInterval:i=t.pollingInterval}){return(typeof o<\"u\"?o:t.transport.type!==\"webSocket\"&&t.transport.type!==\"ipc\")?(()=>{let d=qr([\"watchPendingTransactions\",t.uid,e,i]);return du(d,{onTransactions:r,onError:n},h=>{let m,g=Yp(async()=>{try{if(!m)try{m=await Lt(t,CD,\"createPendingTransactionFilter\")({});return}catch(E){throw g(),E}let b=await Lt(t,xx,\"getFilterChanges\")({filter:m});if(b.length===0)return;if(e)h.onTransactions(b);else for(let E of b)h.onTransactions([E])}catch(b){h.onError?.(b)}},{emitOnBegin:!0,interval:i});return async()=>{m&&await Lt(t,Sx,\"uninstallFilter\")({filter:m}),g()}})})():(()=>{let d=!0,h=()=>d=!1;return(async()=>{try{let{unsubscribe:m}=await t.transport.subscribe({params:[\"newPendingTransactions\"],onData(g){if(!d)return;let b=g.result;r([b])},onError(g){n?.(g)}});h=m,d||h()}catch(m){n?.(m)}})(),()=>h()})()}var Lge=ce(()=>{p();ki();Ex();O6();au();PY();b9();A9()});async function Bge(t){return t.account?.type===\"local\"?[t.account.address]:(await t.request({method:\"eth_accounts\"},{dedupe:!0})).map(n=>Ty(n))}var Dge=ce(()=>{p();tv()});async function Fge(t){return await t.request({method:\"wallet_getPermissions\"},{dedupe:!0})}var Uge=ce(()=>{p()});async function T9(t,e={}){let{account:n=t.account,chainId:r}=e,o=n?Wn(n):void 0,i=r?[o?.address,[Ye(r)]]:[o?.address],a=await t.request({method:\"wallet_getCapabilities\",params:i}),c={};for(let[u,d]of Object.entries(a)){c[Number(u)]={};for(let[h,m]of Object.entries(d))h===\"addSubAccount\"&&(h=\"unstable_addSubAccount\"),c[Number(u)][h]=m}return typeof r==\"number\"?c[r]:c}var aQ=ce(()=>{p();js();gn()});async function R9(t,e){let{account:n=t.account,capabilities:r,chain:o=t.chain,experimental_fallback:i,experimental_fallbackDelay:a=32,forceAtomic:c=!1,id:u,version:d=\"2.0.0\"}=e,h=n?Wn(n):null,m=e.calls.map(g=>{let b=g,E=b.abi?yo({abi:b.abi,functionName:b.functionName,args:b.args}):b.data;return{data:b.dataSuffix&&E?Da([E,b.dataSuffix]):E,to:b.to,value:b.value?Ye(b.value):void 0}});try{let g=await t.request({method:\"wallet_sendCalls\",params:[{atomicRequired:c,calls:m,capabilities:r,chainId:Ye(o.id),from:h?.address,id:u,version:d}]},{retryCount:0});return typeof g==\"string\"?{id:g}:g}catch(g){let b=g;if(i&&(b.name===\"MethodNotFoundRpcError\"||b.name===\"MethodNotSupportedRpcError\"||b.name===\"UnknownRpcError\"||b.details.toLowerCase().includes(\"does not exist / is not available\")||b.details.toLowerCase().includes(\"missing or invalid. request()\")||b.details.toLowerCase().includes(\"did not match any variant of untagged enum\")||b.details.toLowerCase().includes(\"account upgraded to unsupported contract\")||b.details.toLowerCase().includes(\"eip-7702 not supported\")||b.details.toLowerCase().includes(\"unsupported wc_ method\"))){if(r&&Object.values(r).some(L=>!L.optional)){let L=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new sv(new Be(L,{details:L}))}if(c&&m.length>1){let R=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new av(new Be(R,{details:R}))}let E=[];for(let R of m){let L=Q0(t,{account:h,chain:o,data:R.data,to:R.to,value:R.value?jo(R.value):void 0});E.push(L),a>0&&await new Promise(D=>setTimeout(D,a))}let C=await Promise.allSettled(E);if(C.every(R=>R.status===\"rejected\"))throw C[0].reason;let T=C.map(R=>R.status===\"fulfilled\"?R.value:lQ);return{id:Da([...T,Ye(o.id,{size:32}),cQ])}}throw DB(g,{...e,account:h,chain:e.chain})}}var cQ,lQ,sF=ce(()=>{p();js();ir();X5();Ef();iu();fc();gn();rY();uC();cQ=\"0x5792579257925792579257925792579257925792579257925792579257925792\",lQ=Ye(0,{size:32})});async function P6(t,e){async function n(h){if(h.endsWith(cQ.slice(2))){let g=Fs(w4(h,-64,-32)),b=w4(h,0,-64).slice(2).match(/.{1,64}/g),E=await Promise.all(b.map(T=>lQ.slice(2)!==T?t.request({method:\"eth_getTransactionReceipt\",params:[`0x${T}`]},{dedupe:!0}):void 0)),C=E.some(T=>T===null)?100:E.every(T=>T?.status===\"0x1\")?200:E.every(T=>T?.status===\"0x0\")?500:600;return{atomic:!1,chainId:Ei(g),receipts:E.filter(Boolean),status:C,version:\"2.0.0\"}}return t.request({method:\"wallet_getCallsStatus\",params:[h]})}let{atomic:r=!1,chainId:o,receipts:i,version:a=\"2.0.0\",...c}=await n(e.id),[u,d]=(()=>{let h=c.status;return h>=100&&h<200?[\"pending\",h]:h>=200&&h<300?[\"success\",h]:h>=300&&h<700?[\"failure\",h]:h===\"CONFIRMED\"?[\"success\",200]:h===\"PENDING\"?[\"pending\",100]:[void 0,h]})();return{...c,atomic:r,chainId:o?Ei(o):void 0,receipts:i?.map(h=>({...h,blockNumber:jo(h.blockNumber),gasUsed:jo(h.gasUsed),status:kG[h.status]}))??[],statusCode:d,status:u,version:a}}var aF=ce(()=>{p();nv();Pw();fc();oL();sF()});async function I9(t,e){let{id:n}=e;await t.request({method:\"wallet_showCallsStatus\",params:[n]})}var uQ=ce(()=>{p()});async function jge(t,e){let{id:n,pollingInterval:r=t.pollingInterval,status:o=({statusCode:g})=>g>=200,timeout:i=6e4}=e,a=qr([\"waitForCallsStatus\",t.uid,n]),{promise:c,resolve:u,reject:d}=yC(),h,m=du(a,{resolve:u,reject:d},g=>{let b=Yp(async()=>{let E=C=>{clearTimeout(h),b(),C(),m()};try{let C=await P6(t,{id:n});if(!o(C))return;E(()=>g.resolve(C))}catch(C){E(()=>g.reject(C))}},{interval:r,emitOnBegin:!0});return b});return h=i?setTimeout(()=>{m(),clearTimeout(h),d(new dQ({id:n}))},i):void 0,await c}var dQ,zge=ce(()=>{p();ir();Ex();O6();hD();au();aF();dQ=class extends Be{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:\"WaitForCallsStatusTimeoutError\"})}}});function KHe(t){return t.map(e=>({...e,value:BigInt(e.value)}))}function Hge(t){return{...t,balance:t.balance?BigInt(t.balance):void 0,nonce:t.nonce?Ei(t.nonce):void 0,storageProof:t.storageProof?KHe(t.storageProof):void 0}}var qge=ce(()=>{p();C9()});async function Wge(t,{address:e,blockNumber:n,blockTag:r,storageKeys:o}){let i=r??\"latest\",a=n!==void 0?Ye(n):void 0,c=await t.request({method:\"eth_getProof\",params:[e,o,a||i]});return Hge(c)}var Vge=ce(()=>{p();gn();qge()});async function O9(t,{confirmations:e=1,hash:n,onReplaced:r,pollingInterval:o=t.pollingInterval,retryCount:i=6,retryDelay:a=({count:u})=>~~(1<<u)*200,timeout:c=18e4}){let u=qr([\"waitForTransactionReceipt\",t.uid,n]),d,h,m,g=!1,b,E,{promise:C,resolve:T,reject:R}=yC(),L=c?setTimeout(()=>{E(),b(),R(new gL({hash:n}))},c):void 0;return b=du(u,{onReplaced:r,resolve:T,reject:R},D=>{E=Lt(t,iF,\"watchBlockNumber\")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:o,async onBlockNumber(G){let W=ne=>{clearTimeout(L),E(),ne(),b()},J=G;if(!g)try{if(m){if(e>1&&(!m.blockNumber||J-m.blockNumber+1n<e))return;W(()=>D.resolve(m));return}if(d||(g=!0,await eg(async()=>{d=await Lt(t,Ev,\"getTransaction\")({hash:n}),d.blockNumber&&(J=d.blockNumber)},{delay:a,retryCount:i}),g=!1),m=await Lt(t,w9,\"getTransactionReceipt\")({hash:n}),e>1&&(!m.blockNumber||J-m.blockNumber+1n<e))return;W(()=>D.resolve(m))}catch(ne){if(ne instanceof o4||ne instanceof i4){if(!d){g=!1;return}try{h=d,g=!0;let ie=await eg(()=>Lt(t,uu,\"getBlock\")({blockNumber:J,includeTransactions:!0}),{delay:a,retryCount:i,shouldRetry:({error:V})=>V instanceof oC});g=!1;let Z=ie.transactions.find(({from:V,nonce:$})=>V===h.from&&$===h.nonce);if(!Z||(m=await Lt(t,w9,\"getTransactionReceipt\")({hash:Z.hash}),e>1&&(!m.blockNumber||J-m.blockNumber+1n<e)))return;let ae=\"replaced\";Z.to===h.to&&Z.value===h.value&&Z.input===h.input?ae=\"repriced\":Z.from===Z.to&&Z.value===0n&&(ae=\"cancelled\"),W(()=>{D.onReplaced?.({reason:ae,replacedTransaction:h,transaction:Z,transactionReceipt:m}),D.resolve(m)})}catch(ie){W(()=>D.reject(ie))}}else W(()=>D.reject(ne))}}})}),C}var fQ=ce(()=>{p();oY();L0();ki();Ex();hD();ZD();au();S6();v9();LY();sQ()});async function $ge(t){return(await t.request({method:\"eth_requestAccounts\"},{dedupe:!0,retryCount:0})).map(n=>Fr(n))}var Kge=ce(()=>{p();tv()});async function Gge(t,e){return t.request({method:\"wallet_requestPermissions\",params:[e]},{retryCount:0})}var Zge=ce(()=>{p()});async function cF(t,e){let{account:n=t.account,chainId:r,nonce:o}=e;if(!n)throw new su({docsPath:\"/docs/eip7702/prepareAuthorization\"});let i=Wn(n),a=(()=>{if(e.executor)return e.executor===\"self\"?e.executor:Wn(e.executor)})(),c={address:e.contractAddress??e.address,chainId:r,nonce:o};return typeof c.chainId>\"u\"&&(c.chainId=t.chain?.id??await Lt(t,Zp,\"getChainId\")({})),typeof c.nonce>\"u\"&&(c.nonce=await Lt(t,cC,\"getTransactionCount\")({address:i.address,blockTag:\"pending\"}),(a===\"self\"||a?.address&&Hy(a.address,i.address))&&(c.nonce+=1)),c}var hQ=ce(()=>{p();js();Hw();bC();ki();E6();KB()});async function Yge(t,e){let{account:n=t.account}=e;if(!n)throw new su({docsPath:\"/docs/eip7702/signAuthorization\"});let r=Wn(n);if(!r.signAuthorization)throw new zw({docsPath:\"/docs/eip7702/signAuthorization\",metaMessages:[\"The `signAuthorization` Action does not support JSON-RPC Accounts.\"],type:r.type});let o=await cF(t,e);return r.signAuthorization(o)}var Qge=ce(()=>{p();js();Hw();hQ()});async function Jge(t,e){let{account:n=t.account,chain:r=t.chain,...o}=e;if(!n)throw new su({docsPath:\"/docs/actions/wallet/signTransaction\"});let i=Wn(n);gf({account:i,...e});let a=await Lt(t,Zp,\"getChainId\")({});r!==null&&BL({currentChainId:a,chain:r});let u=(r?.formatters||t.chain?.formatters)?.transactionRequest?.format||Bp;return i.signTransaction?i.signTransaction({...o,chainId:a},{serializer:t.chain?.serializers?.transaction}):await t.request({method:\"eth_signTransaction\",params:[{...u(o),chainId:Ye(a),from:i.address}]},{retryCount:0})}var Xge=ce(()=>{p();js();Hw();GG();gn();b5();ki();Qw();E6()});async function eye(t,{account:e=t.account,message:n}){if(!e)throw new su({docsPath:\"/docs/actions/wallet/signMessage\"});let r=Wn(e);if(r.signMessage)return r.signMessage({message:n});let o=typeof n==\"string\"?gh(n):n.raw instanceof Uint8Array?Uo(n.raw):n.raw;return t.request({method:\"personal_sign\",params:[o,r.address]},{retryCount:0})}var tye=ce(()=>{p();js();Hw();gn()});async function nye(t,e){let{account:n=t.account,domain:r,message:o,primaryType:i}=e;if(!n)throw new su({docsPath:\"/docs/actions/wallet/signTypedData\"});let a=Wn(n),c={EIP712Domain:eF({domain:r}),...e.types};if(XD({domain:r,message:o,primaryType:i,types:c}),a.signTypedData)return a.signTypedData({domain:r,message:o,primaryType:i,types:c});let u=mge({domain:r,message:o,primaryType:i,types:c});return t.request({method:\"eth_signTypedData_v4\",params:[a.address,u]},{retryCount:0})}var rye=ce(()=>{p();js();Hw();XY()});async function oye(t,e){let{abi:n,address:r,args:o,dataSuffix:i,functionName:a,...c}=e,u=c.account?Wn(c.account):t.account,d=yo({abi:n,args:o,functionName:a});try{let{data:h}=await Lt(t,xh,\"call\")({batch:!1,data:`${d}${i?i.replace(\"0x\",\"\"):\"\"}`,to:r,...c,account:u}),m=xf({abi:n,args:o,functionName:a,data:h||\"0x\"}),g=n.filter(b=>\"name\"in b&&b.name===e.functionName);return{result:m,request:{abi:g,address:r,args:o,dataSuffix:i,functionName:a,...c,account:u}}}catch(h){throw wh(h,{abi:n,address:r,args:o,docsPath:\"/docs/contract/simulateContract\",functionName:a,sender:u?.address})}}var iye=ce(()=>{p();js();gx();Ef();_6();ki();A6()});async function sye(t,{id:e}){await t.request({method:\"wallet_switchEthereumChain\",params:[{chainId:Ye(e)}]},{retryCount:0})}var aye=ce(()=>{p();gn()});function cye({r:t,s:e,to:n=\"hex\",v:r,yParity:o}){let i=(()=>{if(o===0||o===1)return o;if(r&&(r===27n||r===28n||r>=35n))return r%2n===0n?1:0;throw new Error(\"Invalid `v` or `yParity` value\")})(),a=`0x${new Y0.Signature(jo(t),jo(e)).toCompactHex()}${i===0?\"1b\":\"1c\"}`;return n===\"hex\"?a:Us(a)}var lye=ce(()=>{p();NB();fc();hc()});async function TC(t,e){let{address:n,factory:r,factoryData:o,hash:i,signature:a,universalSignatureVerifierAddress:c=t.chain?.contracts?.universalSignatureVerifier?.address,...u}=e,d=da(a)?a:typeof a==\"object\"&&\"r\"in a&&\"s\"in a?cye(a):Xr(a),h=await(async()=>!r&&!o||rF(d)?d:Sge({address:r,data:o,signature:d}))();try{let m=c?{to:c,data:yo({abi:QB,functionName:\"isValidSig\",args:[n,i,h]}),...u}:{data:h6({abi:QB,args:[n,i,h],bytecode:jme}),...u},{data:g}=await Lt(t,xh,\"call\")(m);return eR(g??\"0x0\")}catch(m){try{if(Hy(Fr(n),await LB({hash:i,signature:a})))return!0}catch{}if(m instanceof N5)return!1;throw m}}var lF=ce(()=>{p();bv();fD();ov();kB();tv();bC();P0();gn();ki();C9();rQ();tY();kge();lye();A6()});async function uye(t,{address:e,message:n,factory:r,factoryData:o,signature:i,...a}){let c=tF(n);return TC(t,{address:e,factory:r,factoryData:o,hash:c,signature:i,...a})}var dye=ce(()=>{p();tQ();lF()});async function fye(t,e){let{address:n,factory:r,factoryData:o,signature:i,message:a,primaryType:c,types:u,domain:d,...h}=e,m=lge({message:a,primaryType:c,types:u,domain:d});return TC(t,{address:n,factory:r,factoryData:o,hash:m,signature:i,...h})}var hye=ce(()=>{p();pge();lF()});async function pye(t,e){return await t.request({method:\"wallet_watchAsset\",params:e},{retryCount:0})}var mye=ce(()=>{p()});function gye(t,e){let{abi:n,address:r,args:o,batch:i=!0,eventName:a,fromBlock:c,onError:u,onLogs:d,poll:h,pollingInterval:m=t.pollingInterval,strict:g}=e;return(typeof h<\"u\"?h:typeof c==\"bigint\"?!0:!(t.transport.type===\"webSocket\"||t.transport.type===\"ipc\"||t.transport.type===\"fallback\"&&(t.transport.transports[0].config.type===\"webSocket\"||t.transport.transports[0].config.type===\"ipc\")))?(()=>{let T=g??!1,R=qr([\"watchContractEvent\",r,o,i,t.uid,a,m,T,c]);return du(R,{onLogs:d,onError:u},L=>{let D;c!==void 0&&(D=c-1n);let G,W=!1,J=Yp(async()=>{if(!W){try{G=await Lt(t,kD,\"createContractEventFilter\")({abi:n,address:r,args:o,eventName:a,strict:T,fromBlock:c})}catch{}W=!0;return}try{let ne;if(G)ne=await Lt(t,xx,\"getFilterChanges\")({filter:G});else{let ie=await Lt(t,Vy,\"getBlockNumber\")({});D&&D<ie?ne=await Lt(t,ID,\"getContractEvents\")({abi:n,address:r,args:o,eventName:a,fromBlock:D+1n,toBlock:ie,strict:T}):ne=[],D=ie}if(ne.length===0)return;if(i)L.onLogs(ne);else for(let ie of ne)L.onLogs([ie])}catch(ne){G&&ne instanceof W0&&(W=!1),L.onError?.(ne)}},{emitOnBegin:!0,interval:m});return async()=>{G&&await Lt(t,Sx,\"uninstallFilter\")({filter:G}),J()}})})():(()=>{let T=g??!1,R=qr([\"watchContractEvent\",r,o,i,t.uid,a,m,T]),L=!0,D=()=>L=!1;return du(R,{onLogs:d,onError:u},G=>((async()=>{try{let W=(()=>{if(t.transport.type===\"fallback\"){let ie=t.transport.transports.find(Z=>Z.config.type===\"webSocket\"||Z.config.type===\"ipc\");return ie?ie.value:t.transport}return t.transport})(),J=a?Wy({abi:n,eventName:a,args:o}):[],{unsubscribe:ne}=await W.subscribe({params:[\"logs\",{address:r,topics:J}],onData(ie){if(!L)return;let Z=ie.result;try{let{eventName:ae,args:V}=EC({abi:n,data:Z.data,topics:Z.topics,strict:g}),$=ou(Z,{args:V,eventName:ae});G.onLogs([$])}catch(ae){let V,$;if(ae instanceof U0||ae instanceof Ry){if(g)return;V=ae.abiItem.name,$=ae.abiItem.inputs?.some(_=>!(\"name\"in _&&_.name))}let F=ou(Z,{args:$?[]:{},eventName:V});G.onLogs([F])}},onError(ie){G.onError?.(ie)}});D=ne,L||D()}catch(W){u?.(W)}})(),()=>D()))})()}var yye=ce(()=>{p();Es();X5();AD();wC();Mw();ki();Ex();O6();au();IY();xC();NY();b9();A9()});async function bye(t,e){let{abi:n,account:r=t.account,address:o,args:i,dataSuffix:a,functionName:c,...u}=e;if(typeof r>\"u\")throw new su({docsPath:\"/docs/contract/writeContract\"});let d=r?Wn(r):null,h=yo({abi:n,args:i,functionName:c});try{return await Lt(t,Q0,\"sendTransaction\")({data:`${h}${a?a.replace(\"0x\",\"\"):\"\"}`,to:o,account:d,...u})}catch(m){throw wh(m,{abi:n,address:o,args:i,docsPath:\"/docs/contract/writeContract\",functionName:c,sender:d?.address})}}var vye=ce(()=>{p();js();Hw();Ef();_6();ki();uC()});function hF(t=11){if(!fF||dF+t>256*2){fF=\"\",dF=0;for(let e=0;e<256;e++)fF+=(256+Math.random()*256|0).toString(16).substring(1)}return fF.substring(dF,dF+++t)}var dF,fF,pQ=ce(()=>{p();dF=256});function M6(t){let{batch:e,chain:n,ccipRead:r,key:o=\"base\",name:i=\"Base Client\",type:a=\"base\"}=t,c=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(c/2),500),4e3),d=t.pollingInterval??u,h=t.cacheTime??d,m=t.account?Wn(t.account):void 0,{config:g,request:b,value:E}=t.transport({chain:n,pollingInterval:d}),C={...g,...E},T={account:m,batch:e,cacheTime:h,ccipRead:r,chain:n,key:o,name:i,pollingInterval:d,request:b,transport:C,type:a,uid:hF()};function R(L){return D=>{let G=D(L);for(let J in T)delete G[J];let W={...L,...G};return Object.assign(W,{extend:R(W)})}}return Object.assign(T,{extend:R(T)})}var mQ=ce(()=>{p();js();pQ()});function pF({key:t,methods:e,name:n,request:r,retryCount:o=3,retryDelay:i=150,timeout:a,type:c},u){let d=hF();return{config:{key:t,methods:e,name:n,request:r,retryCount:o,retryDelay:i,timeout:a,type:c},request:rge(r,{methods:e,retryCount:o,retryDelay:i,uid:d}),value:u}}var gQ=ce(()=>{p();oge();pQ()});function P9(t,e={}){let{key:n=\"custom\",methods:r,name:o=\"Custom Provider\",retryDelay:i}=e;return({retryCount:a})=>pF({key:n,methods:r,name:o,request:t.request.bind(t),retryCount:e.retryCount??a,retryDelay:i,type:\"custom\"})}var kye=ce(()=>{p();gQ()});var mF,_ye=ce(()=>{p();ir();mF=class extends Be{constructor(){super(\"No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.\",{docsPath:\"/docs/clients/intro\",name:\"UrlRequiredError\"})}}});function Eh(t,e={}){let{batch:n,fetchOptions:r,key:o=\"http\",methods:i,name:a=\"HTTP JSON-RPC\",onFetchRequest:c,onFetchResponse:u,retryDelay:d,raw:h}=e;return({chain:m,retryCount:g,timeout:b})=>{let{batchSize:E=1e3,wait:C=0}=typeof n==\"object\"?n:{},T=e.retryCount??g,R=b??e.timeout??1e4,L=t||m?.rpcUrls.default.http[0];if(!L)throw new mF;let D=sge(L,{fetchOptions:r,onRequest:c,onResponse:u,timeout:R});return pF({key:o,methods:i,name:a,async request({method:G,params:W}){let J={method:G,params:W},{schedule:ne}=pD({id:L,wait:C,shouldSplitBatch(V){return V.length>E},fn:V=>D.request({body:V}),sort:(V,$)=>V.id-$.id}),ie=async V=>n?ne(V):[await D.request({body:V})],[{error:Z,result:ae}]=await ie(J);if(h)return{error:Z,result:ae};if(Z)throw new Kw({body:J,error:Z,url:L});return ae},retryCount:T,retryDelay:d,timeout:R,type:\"http\"},{fetchOptions:r,url:L})}}var Cye=ce(()=>{p();B5();_ye();_Y();age();gQ()});function Aye(t){let{scheme:e,statement:n,...r}=t.match(GHe)?.groups??{},{chainId:o,expirationTime:i,issuedAt:a,notBefore:c,requestId:u,...d}=t.match(ZHe)?.groups??{},h=t.split(\"Resources:\")[1]?.split(`\\n- `).slice(1);return{...r,...d,...o?{chainId:Number(o)}:{},...i?{expirationTime:new Date(i)}:{},...a?{issuedAt:new Date(a)}:{},...c?{notBefore:new Date(c)}:{},...u?{requestId:u}:{},...h?{resources:h}:{},...e?{scheme:e}:{},...n?{statement:n}:{}}}var GHe,ZHe,Tye=ce(()=>{p();GHe=/^(?:(?<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)?/,ZHe=/(?: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>.+))?/});function Rye(t){let{address:e,domain:n,message:r,nonce:o,scheme:i,time:a=new Date}=t;if(n&&r.domain!==n||o&&r.nonce!==o||i&&r.scheme!==i||r.expirationTime&&a>=r.expirationTime||r.notBefore&&a<r.notBefore)return!1;try{if(!r.address||!Kr(r.address,{strict:!1})||e&&!Hy(r.address,e))return!1}catch{return!1}return!0}var Iye=ce(()=>{p();hf();bC()});async function Oye(t,e){let{address:n,domain:r,message:o,nonce:i,scheme:a,signature:c,time:u=new Date,...d}=e,h=Aye(o);if(!h.address||!Rye({address:n,domain:r,message:h,nonce:i,scheme:a,time:u}))return!1;let g=tF(o);return TC(t,{address:h.address,hash:g,signature:c,...d})}var Pye=ce(()=>{p();tQ();Tye();Iye();lF()});function NC(t){return{call:e=>xh(t,e),createAccessList:e=>ED(t,e),createBlockFilter:()=>c0e(t),createContractEventFilter:e=>kD(t,e),createEventFilter:e=>_D(t,e),createPendingTransactionFilter:()=>CD(t),estimateContractGas:e=>h0e(t,e),estimateGas:e=>aC(t,e),getBalance:e=>k6(t,e),getBlobBaseFee:()=>m0e(t),getBlock:e=>uu(t,e),getBlockNumber:e=>Vy(t,e),getBlockTransactionCount:e=>w0e(t,e),getBytecode:e=>MY(t,e),getChainId:()=>Zp(t),getCode:e=>MY(t,e),getContractEvents:e=>ID(t,e),getEip712Domain:e=>_0e(t,e),getEnsAddress:e=>$me(t,e),getEnsAvatar:e=>n0e(t,e),getEnsName:e=>o0e(t,e),getEnsResolver:e=>s0e(t,e),getEnsText:e=>xD(t,e),getFeeHistory:e=>R0e(t,e),estimateFeesPerGas:e=>Ype(t,e),getFilterChanges:e=>xx(t,e),getFilterLogs:e=>O0e(t,e),getGasPrice:()=>iC(t),getLogs:e=>kC(t,e),getProof:e=>Wge(t,e),estimateMaxPriorityFeePerGas:e=>Zpe(t,e),getStorageAt:e=>M0e(t,e),getTransaction:e=>Ev(t,e),getTransactionConfirmations:e=>L0e(t,e),getTransactionCount:e=>cC(t,e),getTransactionReceipt:e=>w9(t,e),multicall:e=>x9(t,e),prepareTransactionRequest:e=>mx(t,e),readContract:e=>ja(t,e),sendRawTransaction:e=>lC(t,e),simulate:e=>E9(t,e),simulateBlocks:e=>E9(t,e),simulateCalls:e=>Age(t,e),simulateContract:e=>oye(t,e),verifyMessage:e=>uye(t,e),verifySiweMessage:e=>Oye(t,e),verifyTypedData:e=>fye(t,e),uninstallFilter:e=>Sx(t,e),waitForTransactionReceipt:e=>O9(t,e),watchBlocks:e=>Ige(t,e),watchBlockNumber:e=>iF(t,e),watchContractEvent:e=>gye(t,e),watchEvent:e=>Pge(t,e),watchPendingTransactions:e=>Nge(t,e)}}var yQ=ce(()=>{p();Kme();r0e();i0e();a0e();TY();A6();RY();l0e();IY();OY();PY();p0e();aY();$B();sY();VB();g0e();S6();xC();x0e();E6();E0e();NY();C0e();I0e();b9();P0e();zB();RD();Vge();N0e();v9();B0e();KB();LY();BY();qy();DY();Tge();iye();A9();dye();hye();fQ();sQ();Oge();yye();Mge();Lge();Pye();d9();GB()});function M9(t){let{key:e=\"public\",name:n=\"Public Client\"}=t;return M6({...t,key:e,name:n,type:\"publicClient\"}).extend(NC)}var Mye=ce(()=>{p();mQ();yQ()});function bQ(t){return{addChain:e=>epe(t,e),deployContract:e=>nme(t,e),getAddresses:()=>Bge(t),getCallsStatus:e=>P6(t,e),getCapabilities:e=>T9(t,e),getChainId:()=>Zp(t),getPermissions:()=>Fge(t),prepareAuthorization:e=>cF(t,e),prepareTransactionRequest:e=>mx(t,e),requestAddresses:()=>$ge(t),requestPermissions:e=>Gge(t,e),sendCalls:e=>R9(t,e),sendRawTransaction:e=>lC(t,e),sendTransaction:e=>Q0(t,e),showCallsStatus:e=>I9(t,e),signAuthorization:e=>Yge(t,e),signMessage:e=>eye(t,e),signTransaction:e=>Jge(t,e),signTypedData:e=>nye(t,e),switchChain:e=>sye(t,e),waitForCallsStatus:e=>jge(t,e),watchAsset:e=>pye(t,e),writeContract:e=>bye(t,e)}}var Nye=ce(()=>{p();E6();tpe();rme();Dge();aF();aQ();Uge();hQ();d9();Kge();Zge();sF();GB();uC();uQ();Qge();tye();Xge();rye();aye();zge();mye();vye()});var bo=ce(()=>{p();DR();mQ();kye();Cye();Mye();yQ();Nye();bv();cL();ov();X5();tD();Ef();Ege();gn();yge();ZD();QY();lL();fc();tv();hf();zp();DG();Cge();Pw()});var IQ=be((gGt,RQ)=>{\"use strict\";p();var eqe=Object.prototype.hasOwnProperty,bd=\"~\";function L9(){}Object.create&&(L9.prototype=Object.create(null),new L9().__proto__||(bd=!1));function tqe(t,e,n){this.fn=t,this.context=e,this.once=n||!1}function Jye(t,e,n,r,o){if(typeof n!=\"function\")throw new TypeError(\"The listener must be a function\");var i=new tqe(n,r||t,o),a=bd?bd+e:e;return t._events[a]?t._events[a].fn?t._events[a]=[t._events[a],i]:t._events[a].push(i):(t._events[a]=i,t._eventsCount++),t}function SF(t,e){--t._eventsCount===0?t._events=new L9:delete t._events[e]}function hu(){this._events=new L9,this._eventsCount=0}hu.prototype.eventNames=function(){var e=[],n,r;if(this._eventsCount===0)return e;for(r in n=this._events)eqe.call(n,r)&&e.push(bd?r.slice(1):r);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(n)):e};hu.prototype.listeners=function(e){var n=bd?bd+e:e,r=this._events[n];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,i=r.length,a=new Array(i);o<i;o++)a[o]=r[o].fn;return a};hu.prototype.listenerCount=function(e){var n=bd?bd+e:e,r=this._events[n];return r?r.fn?1:r.length:0};hu.prototype.emit=function(e,n,r,o,i,a){var c=bd?bd+e:e;if(!this._events[c])return!1;var u=this._events[c],d=arguments.length,h,m;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),d){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,n),!0;case 3:return u.fn.call(u.context,n,r),!0;case 4:return u.fn.call(u.context,n,r,o),!0;case 5:return u.fn.call(u.context,n,r,o,i),!0;case 6:return u.fn.call(u.context,n,r,o,i,a),!0}for(m=1,h=new Array(d-1);m<d;m++)h[m-1]=arguments[m];u.fn.apply(u.context,h)}else{var g=u.length,b;for(m=0;m<g;m++)switch(u[m].once&&this.removeListener(e,u[m].fn,void 0,!0),d){case 1:u[m].fn.call(u[m].context);break;case 2:u[m].fn.call(u[m].context,n);break;case 3:u[m].fn.call(u[m].context,n,r);break;case 4:u[m].fn.call(u[m].context,n,r,o);break;default:if(!h)for(b=1,h=new Array(d-1);b<d;b++)h[b-1]=arguments[b];u[m].fn.apply(u[m].context,h)}}return!0};hu.prototype.on=function(e,n,r){return Jye(this,e,n,r,!1)};hu.prototype.once=function(e,n,r){return Jye(this,e,n,r,!0)};hu.prototype.removeListener=function(e,n,r,o){var i=bd?bd+e:e;if(!this._events[i])return this;if(!n)return SF(this,i),this;var a=this._events[i];if(a.fn)a.fn===n&&(!o||a.once)&&(!r||a.context===r)&&SF(this,i);else{for(var c=0,u=[],d=a.length;c<d;c++)(a[c].fn!==n||o&&!a[c].once||r&&a[c].context!==r)&&u.push(a[c]);u.length?this._events[i]=u.length===1?u[0]:u:SF(this,i)}return this};hu.prototype.removeAllListeners=function(e){var n;return e?(n=bd?bd+e:e,this._events[n]&&SF(this,n)):(this._events=new L9,this._eventsCount=0),this};hu.prototype.off=hu.prototype.removeListener;hu.prototype.addListener=hu.prototype.on;hu.prefixed=bd;hu.EventEmitter=hu;typeof RQ<\"u\"&&(RQ.exports=hu)});var kv,Xye,DC=ce(()=>{p();kv=he(IQ(),1),Xye=kv.default});var u1e=be(l1e=>{\"use strict\";p();(function(){function t(b,E){return b===E&&(b!==0||1/b===1/E)||b!==b&&E!==E}function e(b,E){h||o.startTransition===void 0||(h=!0,console.error(\"You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release.\"));var C=E();if(!m){var T=E();i(C,T)||(console.error(\"The result of getSnapshot should be cached to avoid an infinite loop\"),m=!0)}T=a({inst:{value:C,getSnapshot:E}});var R=T[0].inst,L=T[1];return u(function(){R.value=C,R.getSnapshot=E,n(R)&&L({inst:R})},[b,C,E]),c(function(){return n(R)&&L({inst:R}),b(function(){n(R)&&L({inst:R})})},[b]),d(C),C}function n(b){var E=b.getSnapshot;b=b.value;try{var C=E();return!i(b,C)}catch{return!0}}function r(b,E){return E()}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var o=et(),i=typeof Object.is==\"function\"?Object.is:t,a=o.useState,c=o.useEffect,u=o.useLayoutEffect,d=o.useDebugValue,h=!1,m=!1,g=typeof window>\"u\"||typeof window.document>\"u\"||typeof window.document.createElement>\"u\"?r:e;l1e.useSyncExternalStore=o.useSyncExternalStore!==void 0?o.useSyncExternalStore:g,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var f1e=be((ZZt,d1e)=>{\"use strict\";p();d1e.exports=u1e()});var p1e=be(h1e=>{\"use strict\";p();(function(){function t(d,h){return d===h&&(d!==0||1/d===1/h)||d!==d&&h!==h}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var e=et(),n=f1e(),r=typeof Object.is==\"function\"?Object.is:t,o=n.useSyncExternalStore,i=e.useRef,a=e.useEffect,c=e.useMemo,u=e.useDebugValue;h1e.useSyncExternalStoreWithSelector=function(d,h,m,g,b){var E=i(null);if(E.current===null){var C={hasValue:!1,value:null};E.current=C}else C=E.current;E=c(function(){function R(J){if(!L){if(L=!0,D=J,J=g(J),b!==void 0&&C.hasValue){var ne=C.value;if(b(ne,J))return G=ne}return G=J}if(ne=G,r(D,J))return ne;var ie=g(J);return b!==void 0&&b(ne,ie)?(D=J,ne):(D=J,G=ie)}var L=!1,D,G,W=m===void 0?null:m;return[function(){return R(h())},W===null?void 0:function(){return R(W())}]},[h,m,g,b]);var T=o(d,E[0],E[1]);return a(function(){C.hasValue=!0,C.value=T},[T]),u(T),T},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<\"u\"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==\"function\"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var g1e=be((XZt,m1e)=>{\"use strict\";p();m1e.exports=p1e()});var N1e,L1e=ce(()=>{p();N1e=(t,e)=>{let n;switch(t){case\"standard\":return n=e,`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' viewBox=\\'0 0 1024 1024\\' fill=\\'none\\' xmlns=\\'http://www.w3.org/2000/svg\\'%3E %3Crect width=\\'1024\\' height=\\'1024\\' fill=\\'%230052FF\\'/%3E %3Cpath fill-rule=\\'evenodd\\' clip-rule=\\'evenodd\\' d=\\'M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z\\' fill=\\'white\\'/%3E %3C/svg%3E `;case\"circle\":return n=e,`data:image/svg+xml,%3Csvg xmlns=\\'http://www.w3.org/2000/svg\\' width=\\'${e}\\' height=\\'${n}\\' viewBox=\\'0 0 999.81 999.81\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052fe;%7D.cls-2%7Bfill:%23fefefe;%7D.cls-3%7Bfill:%230152fe;%7D%3C/style%3E%3C/defs%3E%3Cpath class=\\'cls-1\\' d=\\'M655-115.9h56c.83,1.59,2.36.88,3.56,1a478,478,0,0,1,75.06,10.42C891.4-81.76,978.33-32.58,1049.19,44q116.7,126,131.94,297.61c.38,4.14-.34,8.53,1.78,12.45v59c-1.58.84-.91,2.35-1,3.56a482.05,482.05,0,0,1-10.38,74.05c-24,106.72-76.64,196.76-158.83,268.93s-178.18,112.82-287.2,122.6c-4.83.43-9.86-.25-14.51,1.77H654c-1-1.68-2.69-.91-4.06-1a496.89,496.89,0,0,1-105.9-18.59c-93.54-27.42-172.78-77.59-236.91-150.94Q199.34,590.1,184.87,426.58c-.47-5.19.25-10.56-1.77-15.59V355c1.68-1,.91-2.7,1-4.06a498.12,498.12,0,0,1,18.58-105.9c26-88.75,72.64-164.9,140.6-227.57q126-116.27,297.21-131.61C645.32-114.57,650.35-113.88,655-115.9Zm377.92,500c0-192.44-156.31-349.49-347.56-350.15-194.13-.68-350.94,155.13-352.29,347.42-1.37,194.55,155.51,352.1,348.56,352.47C876.15,734.23,1032.93,577.84,1032.93,384.11Z\\' transform=\\'translate(-183.1 115.9)\\'/%3E%3Cpath class=\\'cls-2\\' d=\\'M1032.93,384.11c0,193.73-156.78,350.12-351.29,349.74-193-.37-349.93-157.92-348.56-352.47C334.43,189.09,491.24,33.28,685.37,34,876.62,34.62,1032.94,191.67,1032.93,384.11ZM683,496.81q43.74,0,87.48,0c15.55,0,25.32-9.72,25.33-25.21q0-87.48,0-175c0-15.83-9.68-25.46-25.59-25.46H595.77c-15.88,0-25.57,9.64-25.58,25.46q0,87.23,0,174.45c0,16.18,9.59,25.7,25.84,25.71Z\\' transform=\\'translate(-183.1 115.9)\\'/%3E%3Cpath class=\\'cls-3\\' d=\\'M683,496.81H596c-16.25,0-25.84-9.53-25.84-25.71q0-87.23,0-174.45c0-15.82,9.7-25.46,25.58-25.46H770.22c15.91,0,25.59,9.63,25.59,25.46q0,87.47,0,175c0,15.49-9.78,25.2-25.33,25.21Q726.74,496.84,683,496.81Z\\' transform=\\'translate(-183.1 115.9)\\'/%3E%3C/svg%3E`;case\"text\":return n=(.1*e).toFixed(2),`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' xmlns=\\'http://www.w3.org/2000/svg\\' viewBox=\\'0 0 528.15 53.64\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052ff;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3ECoinbase_Wordmark_SubBrands_ALL%3C/title%3E%3Cpath class=\\'cls-1\\' d=\\'M164.45,15a15,15,0,0,0-11.74,5.4V0h-8.64V52.92h8.5V48a15,15,0,0,0,11.88,5.62c10.37,0,18.21-8.21,18.21-19.3S174.67,15,164.45,15Zm-1.3,30.67c-6.19,0-10.73-4.83-10.73-11.31S157,23,163.22,23s10.66,4.82,10.66,11.37S169.34,45.65,163.15,45.65Zm83.31-14.91-6.34-.93c-3-.43-5.18-1.44-5.18-3.82,0-2.59,2.8-3.89,6.62-3.89,4.18,0,6.84,1.8,7.42,4.76h8.35c-.94-7.49-6.7-11.88-15.55-11.88-9.15,0-15.2,4.68-15.2,11.3,0,6.34,4,10,12,11.16l6.33.94c3.1.43,4.83,1.65,4.83,4,0,2.95-3,4.17-7.2,4.17-5.12,0-8-2.09-8.43-5.25h-8.49c.79,7.27,6.48,12.38,16.84,12.38,9.44,0,15.7-4.32,15.7-11.74C258.12,35.28,253.58,31.82,246.46,30.74Zm-27.65-2.3c0-8.06-4.9-13.46-15.27-13.46-9.79,0-15.26,5-16.34,12.6h8.57c.43-3,2.73-5.4,7.63-5.4,4.39,0,6.55,1.94,6.55,4.32,0,3.09-4,3.88-8.85,4.39-6.63.72-14.84,3-14.84,11.66,0,6.7,5,11,12.89,11,6.19,0,10.08-2.59,12-6.7.28,3.67,3,6.05,6.84,6.05h5v-7.7h-4.25Zm-8.5,9.36c0,5-4.32,8.64-9.57,8.64-3.24,0-6-1.37-6-4.25,0-3.67,4.39-4.68,8.42-5.11s6-1.22,7.13-2.88ZM281.09,15c-11.09,0-19.23,8.35-19.23,19.36,0,11.6,8.72,19.3,19.37,19.3,9,0,16.06-5.33,17.86-12.89h-9c-1.3,3.31-4.47,5.19-8.71,5.19-5.55,0-9.72-3.46-10.66-9.51H299.3V33.12C299.3,22.46,291.53,15,281.09,15Zm-9.87,15.26c1.37-5.18,5.26-7.7,9.72-7.7,4.9,0,8.64,2.8,9.51,7.7ZM19.3,23a9.84,9.84,0,0,1,9.5,7h9.14c-1.65-8.93-9-15-18.57-15A19,19,0,0,0,0,34.34c0,11.09,8.28,19.3,19.37,19.3,9.36,0,16.85-6,18.5-15H28.8a9.75,9.75,0,0,1-9.43,7.06c-6.27,0-10.66-4.83-10.66-11.31S13,23,19.3,23Zm41.11-8A19,19,0,0,0,41,34.34c0,11.09,8.28,19.3,19.37,19.3A19,19,0,0,0,79.92,34.27C79.92,23.33,71.64,15,60.41,15Zm.07,30.67c-6.19,0-10.73-4.83-10.73-11.31S54.22,23,60.41,23s10.8,4.89,10.8,11.37S66.67,45.65,60.48,45.65ZM123.41,15c-5.62,0-9.29,2.3-11.45,5.54V15.7h-8.57V52.92H112V32.69C112,27,115.63,23,121,23c5,0,8.06,3.53,8.06,8.64V52.92h8.64V31C137.66,21.6,132.84,15,123.41,15ZM92,.36a5.36,5.36,0,0,0-5.55,5.47,5.55,5.55,0,0,0,11.09,0A5.35,5.35,0,0,0,92,.36Zm-9.72,23h5.4V52.92h8.64V15.7h-14Zm298.17-7.7L366.2,52.92H372L375.29,44H392l3.33,8.88h6L386.87,15.7ZM377,39.23l6.45-17.56h.1l6.56,17.56ZM362.66,15.7l-7.88,29h-.11l-8.14-29H341l-8,28.93h-.1l-8-28.87H319L329.82,53h5.45l8.19-29.24h.11L352,53h5.66L368.1,15.7Zm135.25,0v4.86h12.32V52.92h5.6V20.56h12.32V15.7ZM467.82,52.92h25.54V48.06H473.43v-12h18.35V31.35H473.43V20.56h19.93V15.7H467.82ZM443,15.7h-5.6V52.92h24.32V48.06H443Zm-30.45,0h-5.61V52.92h24.32V48.06H412.52Z\\'/%3E%3C/svg%3E`;case\"textWithLogo\":return n=(.25*e).toFixed(2),`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' xmlns=\\'http://www.w3.org/2000/svg\\' viewBox=\\'0 0 308.44 77.61\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052ff;%7D%3C/style%3E%3C/defs%3E%3Cpath class=\\'cls-1\\' d=\\'M142.94,20.2l-7.88,29H135l-8.15-29h-5.55l-8,28.93h-.11l-8-28.87H99.27l10.84,37.27h5.44l8.2-29.24h.1l8.41,29.24h5.66L148.39,20.2Zm17.82,0L146.48,57.42h5.82l3.28-8.88h16.65l3.34,8.88h6L167.16,20.2Zm-3.44,23.52,6.45-17.55h.11l6.56,17.55ZM278.2,20.2v4.86h12.32V57.42h5.6V25.06h12.32V20.2ZM248.11,57.42h25.54V52.55H253.71V40.61h18.35V35.85H253.71V25.06h19.94V20.2H248.11ZM223.26,20.2h-5.61V57.42H242V52.55H223.26Zm-30.46,0h-5.6V57.42h24.32V52.55H192.8Zm-154,38A19.41,19.41,0,1,1,57.92,35.57H77.47a38.81,38.81,0,1,0,0,6.47H57.92A19.39,19.39,0,0,1,38.81,58.21Z\\'/%3E%3C/svg%3E`;case\"textLight\":return n=(.1*e).toFixed(2),`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' xmlns=\\'http://www.w3.org/2000/svg\\' viewBox=\\'0 0 528.15 53.64\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fefefe;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3ECoinbase_Wordmark_SubBrands_ALL%3C/title%3E%3Cpath class=\\'cls-1\\' d=\\'M164.45,15a15,15,0,0,0-11.74,5.4V0h-8.64V52.92h8.5V48a15,15,0,0,0,11.88,5.62c10.37,0,18.21-8.21,18.21-19.3S174.67,15,164.45,15Zm-1.3,30.67c-6.19,0-10.73-4.83-10.73-11.31S157,23,163.22,23s10.66,4.82,10.66,11.37S169.34,45.65,163.15,45.65Zm83.31-14.91-6.34-.93c-3-.43-5.18-1.44-5.18-3.82,0-2.59,2.8-3.89,6.62-3.89,4.18,0,6.84,1.8,7.42,4.76h8.35c-.94-7.49-6.7-11.88-15.55-11.88-9.15,0-15.2,4.68-15.2,11.3,0,6.34,4,10,12,11.16l6.33.94c3.1.43,4.83,1.65,4.83,4,0,2.95-3,4.17-7.2,4.17-5.12,0-8-2.09-8.43-5.25h-8.49c.79,7.27,6.48,12.38,16.84,12.38,9.44,0,15.7-4.32,15.7-11.74C258.12,35.28,253.58,31.82,246.46,30.74Zm-27.65-2.3c0-8.06-4.9-13.46-15.27-13.46-9.79,0-15.26,5-16.34,12.6h8.57c.43-3,2.73-5.4,7.63-5.4,4.39,0,6.55,1.94,6.55,4.32,0,3.09-4,3.88-8.85,4.39-6.63.72-14.84,3-14.84,11.66,0,6.7,5,11,12.89,11,6.19,0,10.08-2.59,12-6.7.28,3.67,3,6.05,6.84,6.05h5v-7.7h-4.25Zm-8.5,9.36c0,5-4.32,8.64-9.57,8.64-3.24,0-6-1.37-6-4.25,0-3.67,4.39-4.68,8.42-5.11s6-1.22,7.13-2.88ZM281.09,15c-11.09,0-19.23,8.35-19.23,19.36,0,11.6,8.72,19.3,19.37,19.3,9,0,16.06-5.33,17.86-12.89h-9c-1.3,3.31-4.47,5.19-8.71,5.19-5.55,0-9.72-3.46-10.66-9.51H299.3V33.12C299.3,22.46,291.53,15,281.09,15Zm-9.87,15.26c1.37-5.18,5.26-7.7,9.72-7.7,4.9,0,8.64,2.8,9.51,7.7ZM19.3,23a9.84,9.84,0,0,1,9.5,7h9.14c-1.65-8.93-9-15-18.57-15A19,19,0,0,0,0,34.34c0,11.09,8.28,19.3,19.37,19.3,9.36,0,16.85-6,18.5-15H28.8a9.75,9.75,0,0,1-9.43,7.06c-6.27,0-10.66-4.83-10.66-11.31S13,23,19.3,23Zm41.11-8A19,19,0,0,0,41,34.34c0,11.09,8.28,19.3,19.37,19.3A19,19,0,0,0,79.92,34.27C79.92,23.33,71.64,15,60.41,15Zm.07,30.67c-6.19,0-10.73-4.83-10.73-11.31S54.22,23,60.41,23s10.8,4.89,10.8,11.37S66.67,45.65,60.48,45.65ZM123.41,15c-5.62,0-9.29,2.3-11.45,5.54V15.7h-8.57V52.92H112V32.69C112,27,115.63,23,121,23c5,0,8.06,3.53,8.06,8.64V52.92h8.64V31C137.66,21.6,132.84,15,123.41,15ZM92,.36a5.36,5.36,0,0,0-5.55,5.47,5.55,5.55,0,0,0,11.09,0A5.35,5.35,0,0,0,92,.36Zm-9.72,23h5.4V52.92h8.64V15.7h-14Zm298.17-7.7L366.2,52.92H372L375.29,44H392l3.33,8.88h6L386.87,15.7ZM377,39.23l6.45-17.56h.1l6.56,17.56ZM362.66,15.7l-7.88,29h-.11l-8.14-29H341l-8,28.93h-.1l-8-28.87H319L329.82,53h5.45l8.19-29.24h.11L352,53h5.66L368.1,15.7Zm135.25,0v4.86h12.32V52.92h5.6V20.56h12.32V15.7ZM467.82,52.92h25.54V48.06H473.43v-12h18.35V31.35H473.43V20.56h19.93V15.7H467.82ZM443,15.7h-5.6V52.92h24.32V48.06H443Zm-30.45,0h-5.61V52.92h24.32V48.06H412.52Z\\'/%3E%3C/svg%3E`;case\"textWithLogoLight\":return n=(.25*e).toFixed(2),`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' xmlns=\\'http://www.w3.org/2000/svg\\' viewBox=\\'0 0 308.44 77.61\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fefefe;%7D%3C/style%3E%3C/defs%3E%3Cpath class=\\'cls-1\\' d=\\'M142.94,20.2l-7.88,29H135l-8.15-29h-5.55l-8,28.93h-.11l-8-28.87H99.27l10.84,37.27h5.44l8.2-29.24h.1l8.41,29.24h5.66L148.39,20.2Zm17.82,0L146.48,57.42h5.82l3.28-8.88h16.65l3.34,8.88h6L167.16,20.2Zm-3.44,23.52,6.45-17.55h.11l6.56,17.55ZM278.2,20.2v4.86h12.32V57.42h5.6V25.06h12.32V20.2ZM248.11,57.42h25.54V52.55H253.71V40.61h18.35V35.85H253.71V25.06h19.94V20.2H248.11ZM223.26,20.2h-5.61V57.42H242V52.55H223.26Zm-30.46,0h-5.6V57.42h24.32V52.55H192.8Zm-154,38A19.41,19.41,0,1,1,57.92,35.57H77.47a38.81,38.81,0,1,0,0,6.47H57.92A19.39,19.39,0,0,1,38.81,58.21Z\\'/%3E%3C/svg%3E`;default:return n=e,`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' viewBox=\\'0 0 1024 1024\\' fill=\\'none\\' xmlns=\\'http://www.w3.org/2000/svg\\'%3E %3Crect width=\\'1024\\' height=\\'1024\\' fill=\\'%230052FF\\'/%3E %3Cpath fill-rule=\\'evenodd\\' clip-rule=\\'evenodd\\' d=\\'M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z\\' fill=\\'white\\'/%3E %3C/svg%3E `}}});var Bc,_v=ce(()=>{p();Bc=class t{constructor(e,n){this.scope=e,this.module=n}storeObject(e,n){this.setItem(e,JSON.stringify(n))}loadObject(e){let n=this.getItem(e);return n?JSON.parse(n):void 0}setItem(e,n){localStorage.setItem(this.scopedKey(e),n)}getItem(e){return localStorage.getItem(this.scopedKey(e))}removeItem(e){localStorage.removeItem(this.scopedKey(e))}clear(){let e=this.scopedKey(\"\"),n=[];for(let r=0;r<localStorage.length;r++){let o=localStorage.key(r);typeof o==\"string\"&&o.startsWith(e)&&n.push(o)}n.forEach(r=>localStorage.removeItem(r))}scopedKey(e){return`-${this.scope}${this.module?`:${this.module}`:\"\"}:${e}`}static clearAll(){new t(\"CBWSDK\").clear(),new t(\"walletlink\").clear()}}});var Yi,LF,W9=ce(()=>{p();Yi={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901,unsupportedChain:4902}},LF={\"-32700\":{standard:\"JSON RPC 2.0\",message:\"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"},\"-32600\":{standard:\"JSON RPC 2.0\",message:\"The JSON sent is not a valid Request object.\"},\"-32601\":{standard:\"JSON RPC 2.0\",message:\"The method does not exist / is not available.\"},\"-32602\":{standard:\"JSON RPC 2.0\",message:\"Invalid method parameter(s).\"},\"-32603\":{standard:\"JSON RPC 2.0\",message:\"Internal JSON-RPC error.\"},\"-32000\":{standard:\"EIP-1474\",message:\"Invalid input.\"},\"-32001\":{standard:\"EIP-1474\",message:\"Resource not found.\"},\"-32002\":{standard:\"EIP-1474\",message:\"Resource unavailable.\"},\"-32003\":{standard:\"EIP-1474\",message:\"Transaction rejected.\"},\"-32004\":{standard:\"EIP-1474\",message:\"Method not supported.\"},\"-32005\":{standard:\"EIP-1474\",message:\"Request limit exceeded.\"},4001:{standard:\"EIP-1193\",message:\"User rejected the request.\"},4100:{standard:\"EIP-1193\",message:\"The requested account and/or method has not been authorized by the user.\"},4200:{standard:\"EIP-1193\",message:\"The requested method is not supported by this Ethereum provider.\"},4900:{standard:\"EIP-1193\",message:\"The provider is disconnected from all chains.\"},4901:{standard:\"EIP-1193\",message:\"The provider is disconnected from the specified chain.\"},4902:{standard:\"EIP-3085\",message:\"Unrecognized chain ID.\"}}});function BF(t,e=F1e){if(t&&Number.isInteger(t)){let n=t.toString();if(oJ(LF,n))return LF[n].message;if(j1e(t))return cqe}return e}function lqe(t){if(!Number.isInteger(t))return!1;let e=t.toString();return!!(LF[e]||j1e(t))}function U1e(t,{shouldIncludeStack:e=!1}={}){let n={};if(t&&typeof t==\"object\"&&!Array.isArray(t)&&oJ(t,\"code\")&&lqe(t.code)){let r=t;n.code=r.code,r.message&&typeof r.message==\"string\"?(n.message=r.message,oJ(r,\"data\")&&(n.data=r.data)):(n.message=BF(n.code),n.data={originalError:B1e(t)})}else n.code=Yi.rpc.internal,n.message=D1e(t,\"message\")?t.message:F1e,n.data={originalError:B1e(t)};return e&&(n.stack=D1e(t,\"stack\")?t.stack:void 0),n}function j1e(t){return t>=-32099&&t<=-32e3}function B1e(t){return t&&typeof t==\"object\"&&!Array.isArray(t)?Object.assign({},t):t}function oJ(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function D1e(t,e){return typeof t==\"object\"&&t!==null&&e in t&&typeof t[e]==\"string\"}var F1e,cqe,iJ=ce(()=>{p();W9();F1e=\"Unspecified error message.\",cqe=\"Unspecified server error.\"});function rm(t,e){let[n,r]=z1e(e);return new DF(t,n||BF(t),r)}function UC(t,e){let[n,r]=z1e(e);return new FF(t,n||BF(t),r)}function z1e(t){if(t){if(typeof t==\"string\")return[t];if(typeof t==\"object\"&&!Array.isArray(t)){let{message:e,data:n}=t;if(e&&typeof e!=\"string\")throw new Error(\"Must specify string message.\");return[e||void 0,n]}}return[]}function uqe(t){return Number.isInteger(t)&&t>=1e3&&t<=4999}var sr,DF,FF,Cv=ce(()=>{p();W9();iJ();sr={rpc:{parse:t=>rm(Yi.rpc.parse,t),invalidRequest:t=>rm(Yi.rpc.invalidRequest,t),invalidParams:t=>rm(Yi.rpc.invalidParams,t),methodNotFound:t=>rm(Yi.rpc.methodNotFound,t),internal:t=>rm(Yi.rpc.internal,t),server:t=>{if(!t||typeof t!=\"object\"||Array.isArray(t))throw new Error(\"Ethereum RPC Server errors must provide single object argument.\");let{code:e}=t;if(!Number.isInteger(e)||e>-32005||e<-32099)throw new Error(\\'\"code\" must be an integer such that: -32099 <= code <= -32005\\');return rm(e,t)},invalidInput:t=>rm(Yi.rpc.invalidInput,t),resourceNotFound:t=>rm(Yi.rpc.resourceNotFound,t),resourceUnavailable:t=>rm(Yi.rpc.resourceUnavailable,t),transactionRejected:t=>rm(Yi.rpc.transactionRejected,t),methodNotSupported:t=>rm(Yi.rpc.methodNotSupported,t),limitExceeded:t=>rm(Yi.rpc.limitExceeded,t)},provider:{userRejectedRequest:t=>UC(Yi.provider.userRejectedRequest,t),unauthorized:t=>UC(Yi.provider.unauthorized,t),unsupportedMethod:t=>UC(Yi.provider.unsupportedMethod,t),disconnected:t=>UC(Yi.provider.disconnected,t),chainDisconnected:t=>UC(Yi.provider.chainDisconnected,t),unsupportedChain:t=>UC(Yi.provider.unsupportedChain,t),custom:t=>{if(!t||typeof t!=\"object\"||Array.isArray(t))throw new Error(\"Ethereum Provider custom errors must provide single object argument.\");let{code:e,message:n,data:r}=t;if(!n||typeof n!=\"string\")throw new Error(\\'\"message\" must be a nonempty string\\');return new FF(e,n,r)}}};DF=class extends Error{constructor(e,n,r){if(!Number.isInteger(e))throw new Error(\\'\"code\" must be an integer.\\');if(!n||typeof n!=\"string\")throw new Error(\\'\"message\" must be a nonempty string.\\');super(n),this.code=e,r!==void 0&&(this.data=r)}},FF=class extends DF{constructor(e,n,r){if(!uqe(e))throw new Error(\\'\"code\" must be an integer such that: 1000 <= code <= 4999\\');super(e,n,r)}}});function UF(){return t=>t}function tg(t){return Math.floor(t)}var jC,H1e,q1e,dqe,sJ=ce(()=>{p();jC=UF(),H1e=UF(),q1e=UF();dqe=UF()});function Av(t){return V9(crypto.getRandomValues(new Uint8Array(t)))}function V9(t){return[...t].map(e=>e.toString(16).padStart(2,\"0\")).join(\"\")}function zC(t){return new Uint8Array(t.match(/.{1,2}/g).map(e=>Number.parseInt(e,16)))}function B6(t,e=!1){let n=t.toString(\"hex\");return jC(e?`0x${n}`:n)}function jF(t){return B6(HF(t),!0)}function ng(t){return q1e(t.toString(10))}function rg(t){return jC(`0x${BigInt(t).toString(16)}`)}function $1e(t){return t.startsWith(\"0x\")||t.startsWith(\"0X\")}function aJ(t){return $1e(t)?t.slice(2):t}function cJ(t){return $1e(t)?`0x${t.slice(2)}`:`0x${t}`}function zF(t){if(typeof t!=\"string\")return!1;let e=aJ(t).toLowerCase();return V1e.test(e)}function fqe(t,e=!1){if(typeof t==\"string\"){let n=aJ(t).toLowerCase();if(V1e.test(n))return jC(e?`0x${n}`:n)}throw sr.rpc.invalidParams(`\"${String(t)}\" is not a hexadecimal string`)}function lJ(t,e=!1){let n=fqe(t,!1);return n.length%2===1&&(n=jC(`0${n}`)),e?jC(`0x${n}`):n}function Tv(t){if(typeof t==\"string\"){let e=aJ(t).toLowerCase();if(zF(e)&&e.length===40)return H1e(cJ(e))}throw sr.rpc.invalidParams(`Invalid Ethereum address: ${String(t)}`)}function HF(t){if(globalThis.Buffer.isBuffer(t))return t;if(typeof t==\"string\"){if(zF(t)){let e=lJ(t,!1);return globalThis.Buffer.from(e,\"hex\")}return globalThis.Buffer.from(t,\"utf8\")}throw sr.rpc.invalidParams(`Not binary data: ${String(t)}`)}function D6(t){if(typeof t==\"number\"&&Number.isInteger(t))return tg(t);if(typeof t==\"string\"){if(W1e.test(t))return tg(Number(t));if(zF(t))return tg(Number(BigInt(lJ(t,!0))))}throw sr.rpc.invalidParams(`Not an integer: ${String(t)}`)}function HC(t){if(t!==null&&(typeof t==\"bigint\"||hqe(t)))return BigInt(t.toString(10));if(typeof t==\"number\")return BigInt(D6(t));if(typeof t==\"string\"){if(W1e.test(t))return BigInt(t);if(zF(t))return BigInt(lJ(t,!0))}throw sr.rpc.invalidParams(`Not an integer: ${String(t)}`)}function K1e(t){if(typeof t==\"string\")return JSON.parse(t);if(typeof t==\"object\")return t;throw sr.rpc.invalidParams(`Not a JSON string or an object: ${String(t)}`)}function hqe(t){if(t==null||typeof t.constructor!=\"function\")return!1;let{constructor:e}=t;return typeof e.config==\"function\"&&typeof e.EUCLID==\"number\"}function G1e(){let t=document.querySelector(\\'link[sizes=\"192x192\"]\\')||document.querySelector(\\'link[sizes=\"180x180\"]\\')||document.querySelector(\\'link[rel=\"icon\"]\\')||document.querySelector(\\'link[rel=\"shortcut icon\"]\\'),{protocol:e,host:n}=document.location,r=t?t.getAttribute(\"href\"):null;return!r||r.startsWith(\"javascript:\")||r.startsWith(\"vbscript:\")?`${e}//${n}/favicon.ico`:r.startsWith(\"http://\")||r.startsWith(\"https://\")||r.startsWith(\"data:\")?r:r.startsWith(\"//\")?e+r:`${e}//${n}${r}`}var W1e,V1e,$y=ce(()=>{p();Cv();sJ();W1e=/^[0-9]*$/,V1e=/^[a-f0-9]*$/});async function Z1e(){return crypto.subtle.generateKey({name:\"ECDH\",namedCurve:\"P-256\"},!0,[\"deriveKey\"])}async function Y1e(t,e){return crypto.subtle.deriveKey({name:\"ECDH\",public:e},t,{name:\"AES-GCM\",length:256},!1,[\"encrypt\",\"decrypt\"])}async function pqe(t,e){let n=crypto.getRandomValues(new Uint8Array(12)),r=await crypto.subtle.encrypt({name:\"AES-GCM\",iv:n},t,new TextEncoder().encode(e));return{iv:n,cipherText:r}}async function mqe(t,{iv:e,cipherText:n}){let r=await crypto.subtle.decrypt({name:\"AES-GCM\",iv:e},t,n);return new TextDecoder().decode(r)}function Q1e(t){switch(t){case\"public\":return\"spki\";case\"private\":return\"pkcs8\"}}async function qF(t,e){let n=Q1e(t),r=await crypto.subtle.exportKey(n,e);return V9(new Uint8Array(r))}async function WF(t,e){let n=Q1e(t),r=zC(e).buffer;return await crypto.subtle.importKey(n,new Uint8Array(r),{name:\"ECDH\",namedCurve:\"P-256\"},!0,t===\"private\"?[\"deriveKey\"]:[])}async function J1e(t,e){let n=JSON.stringify(t,(r,o)=>{if(!(o instanceof Error))return o;let i=o;return Object.assign(Object.assign({},i.code?{code:i.code}:{}),{message:i.message})});return pqe(e,n)}async function X1e(t,e){return JSON.parse(await mqe(e,t))}var uJ=ce(()=>{p();$y()});var dJ,fJ,hJ,VF,ebe=ce(()=>{p();_v();uJ();dJ={storageKey:\"ownPrivateKey\",keyType:\"private\"},fJ={storageKey:\"ownPublicKey\",keyType:\"public\"},hJ={storageKey:\"peerPublicKey\",keyType:\"public\"},VF=class{constructor(){this.storage=new Bc(\"CBWSDK\",\"SCWKeyManager\"),this.ownPrivateKey=null,this.ownPublicKey=null,this.peerPublicKey=null,this.sharedSecret=null}async getOwnPublicKey(){return await this.loadKeysIfNeeded(),this.ownPublicKey}async getSharedSecret(){return await this.loadKeysIfNeeded(),this.sharedSecret}async setPeerPublicKey(e){this.sharedSecret=null,this.peerPublicKey=e,await this.storeKey(hJ,e),await this.loadKeysIfNeeded()}async clear(){this.ownPrivateKey=null,this.ownPublicKey=null,this.peerPublicKey=null,this.sharedSecret=null,this.storage.removeItem(fJ.storageKey),this.storage.removeItem(dJ.storageKey),this.storage.removeItem(hJ.storageKey)}async generateKeyPair(){let e=await Z1e();this.ownPrivateKey=e.privateKey,this.ownPublicKey=e.publicKey,await this.storeKey(dJ,e.privateKey),await this.storeKey(fJ,e.publicKey)}async loadKeysIfNeeded(){if(this.ownPrivateKey===null&&(this.ownPrivateKey=await this.loadKey(dJ)),this.ownPublicKey===null&&(this.ownPublicKey=await this.loadKey(fJ)),(this.ownPrivateKey===null||this.ownPublicKey===null)&&await this.generateKeyPair(),this.peerPublicKey===null&&(this.peerPublicKey=await this.loadKey(hJ)),this.sharedSecret===null){if(this.ownPrivateKey===null||this.peerPublicKey===null)return;this.sharedSecret=await Y1e(this.ownPrivateKey,this.peerPublicKey)}}async loadKey(e){let n=this.storage.getItem(e.storageKey);return n?WF(e.keyType,n):null}async storeKey(e,n){let r=await qF(e.keyType,n);this.storage.setItem(e.storageKey,r)}}});var om,$F,F6=ce(()=>{p();om=\"4.3.3\",$F=\"@coinbase/wallet-sdk\"});async function qC(t,e){let n=Object.assign(Object.assign({},t),{jsonrpc:\"2.0\",id:crypto.randomUUID()}),r=await window.fetch(e,{method:\"POST\",body:JSON.stringify(n),mode:\"cors\",headers:{\"Content-Type\":\"application/json\",\"X-Cbw-Sdk-Version\":om,\"X-Cbw-Sdk-Platform\":$F}}),{result:o,error:i}=await r.json();if(i)throw i;return o}function gqe(){return globalThis.coinbaseWalletExtension}function yqe(){var t,e;try{let n=globalThis;return(t=n.ethereum)!==null&&t!==void 0?t:(e=n.top)===null||e===void 0?void 0:e.ethereum}catch{return}}function KF({metadata:t,preference:e}){var n,r;let{appName:o,appLogoUrl:i,appChainIds:a}=t;if(e.options!==\"smartWalletOnly\"){let u=gqe();if(u)return(n=u.setAppInfo)===null||n===void 0||n.call(u,o,i,a,e),u}let c=yqe();if(c?.isCoinbaseBrowser)return(r=c.setAppInfo)===null||r===void 0||r.call(c,o,i,a,e),c}function tbe(t){if(!t||typeof t!=\"object\"||Array.isArray(t))throw sr.rpc.invalidParams({message:\"Expected a single, non-array, object argument.\",data:t});let{method:e,params:n}=t;if(typeof e!=\"string\"||e.length===0)throw sr.rpc.invalidParams({message:\"\\'args.method\\' must be a non-empty string.\",data:t});if(n!==void 0&&!Array.isArray(n)&&(typeof n!=\"object\"||n===null))throw sr.rpc.invalidParams({message:\"\\'args.params\\' must be an object or array if provided.\",data:t});switch(e){case\"eth_sign\":case\"eth_signTypedData_v2\":case\"eth_subscribe\":case\"eth_unsubscribe\":throw sr.provider.unsupportedMethod()}}var WC=ce(()=>{p();F6();Cv()});var nbe,rbe,obe,ibe,GF,sbe=ce(()=>{p();ebe();Cv();_v();$y();uJ();WC();nbe=\"accounts\",rbe=\"activeChain\",obe=\"availableChains\",ibe=\"walletCapabilities\",GF=class{constructor(e){var n,r,o;this.metadata=e.metadata,this.communicator=e.communicator,this.callback=e.callback,this.keyManager=new VF,this.storage=new Bc(\"CBWSDK\",\"SCWStateManager\"),this.accounts=(n=this.storage.loadObject(nbe))!==null&&n!==void 0?n:[],this.chain=this.storage.loadObject(rbe)||{id:(o=(r=e.metadata.appChainIds)===null||r===void 0?void 0:r[0])!==null&&o!==void 0?o:1},this.handshake=this.handshake.bind(this),this.request=this.request.bind(this),this.createRequestMessage=this.createRequestMessage.bind(this),this.decryptResponseMessage=this.decryptResponseMessage.bind(this)}async handshake(e){var n,r,o,i;await((r=(n=this.communicator).waitForPopupLoaded)===null||r===void 0?void 0:r.call(n));let a=await this.createRequestMessage({handshake:{method:e.method,params:Object.assign({},this.metadata,(o=e.params)!==null&&o!==void 0?o:{})}}),c=await this.communicator.postRequestAndWaitForResponse(a);if(\"failure\"in c.content)throw c.content.failure;let u=await WF(\"public\",c.sender);await this.keyManager.setPeerPublicKey(u);let h=(await this.decryptResponseMessage(c)).result;if(\"error\"in h)throw h.error;switch(e.method){case\"eth_requestAccounts\":{let m=h.value;this.accounts=m,this.storage.storeObject(nbe,m),(i=this.callback)===null||i===void 0||i.call(this,\"accountsChanged\",m);break}}}async request(e){var n;if(this.accounts.length===0)switch(e.method){case\"wallet_sendCalls\":return this.sendRequestToPopup(e);default:throw sr.provider.unauthorized()}switch(e.method){case\"eth_requestAccounts\":return(n=this.callback)===null||n===void 0||n.call(this,\"connect\",{chainId:rg(this.chain.id)}),this.accounts;case\"eth_accounts\":return this.accounts;case\"eth_coinbase\":return this.accounts[0];case\"net_version\":return this.chain.id;case\"eth_chainId\":return rg(this.chain.id);case\"wallet_getCapabilities\":return this.storage.loadObject(ibe);case\"wallet_switchEthereumChain\":return this.handleSwitchChainRequest(e);case\"eth_ecRecover\":case\"personal_sign\":case\"wallet_sign\":case\"personal_ecRecover\":case\"eth_signTransaction\":case\"eth_sendTransaction\":case\"eth_signTypedData_v1\":case\"eth_signTypedData_v3\":case\"eth_signTypedData_v4\":case\"eth_signTypedData\":case\"wallet_addEthereumChain\":case\"wallet_watchAsset\":case\"wallet_sendCalls\":case\"wallet_showCallsStatus\":case\"wallet_grantPermissions\":return this.sendRequestToPopup(e);default:if(!this.chain.rpcUrl)throw sr.rpc.internal(\"No RPC URL set for chain\");return qC(e,this.chain.rpcUrl)}}async sendRequestToPopup(e){var n,r;await((r=(n=this.communicator).waitForPopupLoaded)===null||r===void 0?void 0:r.call(n));let o=await this.sendEncryptedRequest(e),a=(await this.decryptResponseMessage(o)).result;if(\"error\"in a)throw a.error;return a.value}async cleanup(){var e,n;this.storage.clear(),await this.keyManager.clear(),this.accounts=[],this.chain={id:(n=(e=this.metadata.appChainIds)===null||e===void 0?void 0:e[0])!==null&&n!==void 0?n:1}}async handleSwitchChainRequest(e){var n;let r=e.params;if(!r||!(!((n=r[0])===null||n===void 0)&&n.chainId))throw sr.rpc.invalidParams();let o=D6(r[0].chainId);if(this.updateChain(o))return null;let a=await this.sendRequestToPopup(e);return a===null&&this.updateChain(o),a}async sendEncryptedRequest(e){let n=await this.keyManager.getSharedSecret();if(!n)throw sr.provider.unauthorized(\"No valid session found, try requestAccounts before other methods\");let r=await J1e({action:e,chainId:this.chain.id},n),o=await this.createRequestMessage({encrypted:r});return this.communicator.postRequestAndWaitForResponse(o)}async createRequestMessage(e){let n=await qF(\"public\",await this.keyManager.getOwnPublicKey());return{id:crypto.randomUUID(),sender:n,content:e,timestamp:new Date}}async decryptResponseMessage(e){var n,r;let o=e.content;if(\"failure\"in o)throw o.failure;let i=await this.keyManager.getSharedSecret();if(!i)throw sr.provider.unauthorized(\"Invalid session\");let a=await X1e(o.encrypted,i),c=(n=a.data)===null||n===void 0?void 0:n.chains;if(c){let d=Object.entries(c).map(([h,m])=>({id:Number(h),rpcUrl:m}));this.storage.storeObject(obe,d),this.updateChain(this.chain.id,d)}let u=(r=a.data)===null||r===void 0?void 0:r.capabilities;return u&&this.storage.storeObject(ibe,u),a}updateChain(e,n){var r;let o=n??this.storage.loadObject(obe),i=o?.find(a=>a.id===e);return i?(i!==this.chain&&(this.chain=i,this.storage.storeObject(rbe,i),(r=this.callback)===null||r===void 0||r.call(this,\"chainChanged\",rg(i.id))),!0):!1}}});var Tbe=be(Vn=>{\"use strict\";p();Object.defineProperty(Vn,\"__esModule\",{value:!0});Vn.toBig=Vn.shrSL=Vn.shrSH=Vn.rotrSL=Vn.rotrSH=Vn.rotrBL=Vn.rotrBH=Vn.rotr32L=Vn.rotr32H=Vn.rotlSL=Vn.rotlSH=Vn.rotlBL=Vn.rotlBH=Vn.add5L=Vn.add5H=Vn.add4L=Vn.add4H=Vn.add3L=Vn.add3H=void 0;Vn.add=xbe;Vn.fromBig=mJ;Vn.split=abe;var ZF=BigInt(2**32-1),pJ=BigInt(32);function mJ(t,e=!1){return e?{h:Number(t&ZF),l:Number(t>>pJ&ZF)}:{h:Number(t>>pJ&ZF)|0,l:Number(t&ZF)|0}}function abe(t,e=!1){let n=t.length,r=new Uint32Array(n),o=new Uint32Array(n);for(let i=0;i<n;i++){let{h:a,l:c}=mJ(t[i],e);[r[i],o[i]]=[a,c]}return[r,o]}var cbe=(t,e)=>BigInt(t>>>0)<<pJ|BigInt(e>>>0);Vn.toBig=cbe;var lbe=(t,e,n)=>t>>>n;Vn.shrSH=lbe;var ube=(t,e,n)=>t<<32-n|e>>>n;Vn.shrSL=ube;var dbe=(t,e,n)=>t>>>n|e<<32-n;Vn.rotrSH=dbe;var fbe=(t,e,n)=>t<<32-n|e>>>n;Vn.rotrSL=fbe;var hbe=(t,e,n)=>t<<64-n|e>>>n-32;Vn.rotrBH=hbe;var pbe=(t,e,n)=>t>>>n-32|e<<64-n;Vn.rotrBL=pbe;var mbe=(t,e)=>e;Vn.rotr32H=mbe;var gbe=(t,e)=>t;Vn.rotr32L=gbe;var ybe=(t,e,n)=>t<<n|e>>>32-n;Vn.rotlSH=ybe;var bbe=(t,e,n)=>e<<n|t>>>32-n;Vn.rotlSL=bbe;var vbe=(t,e,n)=>e<<n-32|t>>>64-n;Vn.rotlBH=vbe;var wbe=(t,e,n)=>t<<n-32|e>>>64-n;Vn.rotlBL=wbe;function xbe(t,e,n,r){let o=(e>>>0)+(r>>>0);return{h:t+n+(o/2**32|0)|0,l:o|0}}var Ebe=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0);Vn.add3L=Ebe;var Sbe=(t,e,n,r)=>e+n+r+(t/2**32|0)|0;Vn.add3H=Sbe;var kbe=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0);Vn.add4L=kbe;var _be=(t,e,n,r,o)=>e+n+r+o+(t/2**32|0)|0;Vn.add4H=_be;var Cbe=(t,e,n,r,o)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(o>>>0);Vn.add5L=Cbe;var Abe=(t,e,n,r,o,i)=>e+n+r+o+i+(t/2**32|0)|0;Vn.add5H=Abe;var bqe={fromBig:mJ,split:abe,toBig:cbe,shrSH:lbe,shrSL:ube,rotrSH:dbe,rotrSL:fbe,rotrBH:hbe,rotrBL:pbe,rotr32H:mbe,rotr32L:gbe,rotlSH:ybe,rotlSL:bbe,rotlBH:vbe,rotlBL:wbe,add:xbe,add3L:Ebe,add3H:Sbe,add4L:kbe,add4H:_be,add5H:Abe,add5L:Cbe};Vn.default=bqe});var Rbe=be(YF=>{\"use strict\";p();Object.defineProperty(YF,\"__esModule\",{value:!0});YF.crypto=void 0;YF.crypto=typeof globalThis==\"object\"&&\"crypto\"in globalThis?globalThis.crypto:void 0});var Dbe=be(Cn=>{\"use strict\";p();Object.defineProperty(Cn,\"__esModule\",{value:!0});Cn.wrapXOFConstructorWithOpts=Cn.wrapConstructorWithOpts=Cn.wrapConstructor=Cn.Hash=Cn.nextTick=Cn.swap32IfBE=Cn.byteSwapIfBE=Cn.swap8IfBE=Cn.isLE=void 0;Cn.isBytes=Obe;Cn.anumber=gJ;Cn.abytes=$C;Cn.ahash=vqe;Cn.aexists=wqe;Cn.aoutput=xqe;Cn.u8=Eqe;Cn.u32=Sqe;Cn.clean=kqe;Cn.createView=_qe;Cn.rotr=Cqe;Cn.rotl=Aqe;Cn.byteSwap=bJ;Cn.byteSwap32=Pbe;Cn.bytesToHex=Rqe;Cn.hexToBytes=Iqe;Cn.asyncLoop=Pqe;Cn.utf8ToBytes=vJ;Cn.bytesToUtf8=Mqe;Cn.toBytes=QF;Cn.kdfInputToBytes=Nqe;Cn.concatBytes=Lqe;Cn.checkOpts=Bqe;Cn.createHasher=Nbe;Cn.createOptHasher=Lbe;Cn.createXOFer=Bbe;Cn.randomBytes=Dqe;var VC=Rbe();function Obe(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name===\"Uint8Array\"}function gJ(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(\"positive integer expected, got \"+t)}function $C(t,...e){if(!Obe(t))throw new Error(\"Uint8Array expected\");if(e.length>0&&!e.includes(t.length))throw new Error(\"Uint8Array expected of length \"+e+\", got length=\"+t.length)}function vqe(t){if(typeof t!=\"function\"||typeof t.create!=\"function\")throw new Error(\"Hash should be wrapped by utils.createHasher\");gJ(t.outputLen),gJ(t.blockLen)}function wqe(t,e=!0){if(t.destroyed)throw new Error(\"Hash instance has been destroyed\");if(e&&t.finished)throw new Error(\"Hash#digest() has already been called\")}function xqe(t,e){$C(t);let n=e.outputLen;if(t.length<n)throw new Error(\"digestInto() expects output buffer of length at least \"+n)}function Eqe(t){return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}function Sqe(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function kqe(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function _qe(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Cqe(t,e){return t<<32-e|t>>>e}function Aqe(t,e){return t<<e|t>>>32-e>>>0}Cn.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function bJ(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}Cn.swap8IfBE=Cn.isLE?t=>t:t=>bJ(t);Cn.byteSwapIfBE=Cn.swap8IfBE;function Pbe(t){for(let e=0;e<t.length;e++)t[e]=bJ(t[e]);return t}Cn.swap32IfBE=Cn.isLE?t=>t:Pbe;var Mbe=typeof Uint8Array.from([]).toHex==\"function\"&&typeof Uint8Array.fromHex==\"function\",Tqe=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,\"0\"));function Rqe(t){if($C(t),Mbe)return t.toHex();let e=\"\";for(let n=0;n<t.length;n++)e+=Tqe[t[n]];return e}var Rv={_0:48,_9:57,A:65,F:70,a:97,f:102};function Ibe(t){if(t>=Rv._0&&t<=Rv._9)return t-Rv._0;if(t>=Rv.A&&t<=Rv.F)return t-(Rv.A-10);if(t>=Rv.a&&t<=Rv.f)return t-(Rv.a-10)}function Iqe(t){if(typeof t!=\"string\")throw new Error(\"hex string expected, got \"+typeof t);if(Mbe)return Uint8Array.fromHex(t);let e=t.length,n=e/2;if(e%2)throw new Error(\"hex string expected, got unpadded hex of length \"+e);let r=new Uint8Array(n);for(let o=0,i=0;o<n;o++,i+=2){let a=Ibe(t.charCodeAt(i)),c=Ibe(t.charCodeAt(i+1));if(a===void 0||c===void 0){let u=t[i]+t[i+1];throw new Error(\\'hex string expected, got non-hex character \"\\'+u+\\'\" at index \\'+i)}r[o]=a*16+c}return r}var Oqe=async()=>{};Cn.nextTick=Oqe;async function Pqe(t,e,n){let r=Date.now();for(let o=0;o<t;o++){n(o);let i=Date.now()-r;i>=0&&i<e||(await(0,Cn.nextTick)(),r+=i)}}function vJ(t){if(typeof t!=\"string\")throw new Error(\"string expected\");return new Uint8Array(new TextEncoder().encode(t))}function Mqe(t){return new TextDecoder().decode(t)}function QF(t){return typeof t==\"string\"&&(t=vJ(t)),$C(t),t}function Nqe(t){return typeof t==\"string\"&&(t=vJ(t)),$C(t),t}function Lqe(...t){let e=0;for(let r=0;r<t.length;r++){let o=t[r];$C(o),e+=o.length}let n=new Uint8Array(e);for(let r=0,o=0;r<t.length;r++){let i=t[r];n.set(i,o),o+=i.length}return n}function Bqe(t,e){if(e!==void 0&&{}.toString.call(e)!==\"[object Object]\")throw new Error(\"options should be object or undefined\");return Object.assign(t,e)}var yJ=class{};Cn.Hash=yJ;function Nbe(t){let e=r=>t().update(QF(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function Lbe(t){let e=(r,o)=>t(o).update(QF(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}function Bbe(t){let e=(r,o)=>t(o).update(QF(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}Cn.wrapConstructor=Nbe;Cn.wrapConstructorWithOpts=Lbe;Cn.wrapXOFConstructorWithOpts=Bbe;function Dqe(t=32){if(VC.crypto&&typeof VC.crypto.getRandomValues==\"function\")return VC.crypto.getRandomValues(new Uint8Array(t));if(VC.crypto&&typeof VC.crypto.randomBytes==\"function\")return Uint8Array.from(VC.crypto.randomBytes(t));throw new Error(\"crypto.getRandomValues must be defined\")}});var $be=be(Qi=>{\"use strict\";p();Object.defineProperty(Qi,\"__esModule\",{value:!0});Qi.shake256=Qi.shake128=Qi.keccak_512=Qi.keccak_384=Qi.keccak_256=Qi.keccak_224=Qi.sha3_512=Qi.sha3_384=Qi.sha3_256=Qi.sha3_224=Qi.Keccak=void 0;Qi.keccakP=Wbe;var K9=Tbe(),pu=Dbe(),Fqe=BigInt(0),$9=BigInt(1),Uqe=BigInt(2),jqe=BigInt(7),zqe=BigInt(256),Hqe=BigInt(113),jbe=[],zbe=[],Hbe=[];for(let t=0,e=$9,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],jbe.push(2*(5*r+n)),zbe.push((t+1)*(t+2)/2%64);let o=Fqe;for(let i=0;i<7;i++)e=(e<<$9^(e>>jqe)*Hqe)%zqe,e&Uqe&&(o^=$9<<($9<<BigInt(i))-$9);Hbe.push(o)}var qbe=(0,K9.split)(Hbe,!0),qqe=qbe[0],Wqe=qbe[1],Fbe=(t,e,n)=>n>32?(0,K9.rotlBH)(t,e,n):(0,K9.rotlSH)(t,e,n),Ube=(t,e,n)=>n>32?(0,K9.rotlBL)(t,e,n):(0,K9.rotlSL)(t,e,n);function Wbe(t,e=24){let n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let a=0;a<10;a++)n[a]=t[a]^t[a+10]^t[a+20]^t[a+30]^t[a+40];for(let a=0;a<10;a+=2){let c=(a+8)%10,u=(a+2)%10,d=n[u],h=n[u+1],m=Fbe(d,h,1)^n[c],g=Ube(d,h,1)^n[c+1];for(let b=0;b<50;b+=10)t[a+b]^=m,t[a+b+1]^=g}let o=t[2],i=t[3];for(let a=0;a<24;a++){let c=zbe[a],u=Fbe(o,i,c),d=Ube(o,i,c),h=jbe[a];o=t[h],i=t[h+1],t[h]=u,t[h+1]=d}for(let a=0;a<50;a+=10){for(let c=0;c<10;c++)n[c]=t[a+c];for(let c=0;c<10;c++)t[a+c]^=~n[(c+2)%10]&n[(c+4)%10]}t[0]^=qqe[r],t[1]^=Wqe[r]}(0,pu.clean)(n)}var G9=class t extends pu.Hash{constructor(e,n,r,o=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=o,this.rounds=i,(0,pu.anumber)(r),!(0<e&&e<200))throw new Error(\"only keccak-f1600 function is supported\");this.state=new Uint8Array(200),this.state32=(0,pu.u32)(this.state)}clone(){return this._cloneInto()}keccak(){(0,pu.swap32IfBE)(this.state32),Wbe(this.state32,this.rounds),(0,pu.swap32IfBE)(this.state32),this.posOut=0,this.pos=0}update(e){(0,pu.aexists)(this),e=(0,pu.toBytes)(e),(0,pu.abytes)(e);let{blockLen:n,state:r}=this,o=e.length;for(let i=0;i<o;){let a=Math.min(n-this.pos,o-i);for(let c=0;c<a;c++)r[this.pos++]^=e[i++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:n,pos:r,blockLen:o}=this;e[r]^=n,(n&128)!==0&&r===o-1&&this.keccak(),e[o-1]^=128,this.keccak()}writeInto(e){(0,pu.aexists)(this,!1),(0,pu.abytes)(e),this.finish();let n=this.state,{blockLen:r}=this;for(let o=0,i=e.length;o<i;){this.posOut>=r&&this.keccak();let a=Math.min(r-this.posOut,i-o);e.set(n.subarray(this.posOut,this.posOut+a),o),this.posOut+=a,o+=a}return e}xofInto(e){if(!this.enableXOF)throw new Error(\"XOF is not possible for this instance\");return this.writeInto(e)}xof(e){return(0,pu.anumber)(e),this.xofInto(new Uint8Array(e))}digestInto(e){if((0,pu.aoutput)(e,this),this.finished)throw new Error(\"digest() was already called\");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,(0,pu.clean)(this.state)}_cloneInto(e){let{blockLen:n,suffix:r,outputLen:o,rounds:i,enableXOF:a}=this;return e||(e=new t(n,r,o,a,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=o,e.enableXOF=a,e.destroyed=this.destroyed,e}};Qi.Keccak=G9;var kx=(t,e,n)=>(0,pu.createHasher)(()=>new G9(e,t,n));Qi.sha3_224=kx(6,144,224/8);Qi.sha3_256=kx(6,136,256/8);Qi.sha3_384=kx(6,104,384/8);Qi.sha3_512=kx(6,72,512/8);Qi.keccak_224=kx(1,144,224/8);Qi.keccak_256=kx(1,136,256/8);Qi.keccak_384=kx(1,104,384/8);Qi.keccak_512=kx(1,72,512/8);var Vbe=(t,e,n)=>(0,pu.createXOFer)((r={})=>new G9(e,t,r.dkLen===void 0?n:r.dkLen,!0));Qi.shake128=Vbe(31,168,128/8);Qi.shake256=Vbe(31,136,256/8)});var wJ=be((pen,Jbe)=>{p();var{keccak_256:Vqe}=$be();function Kbe(t){return globalThis.Buffer.allocUnsafe(t).fill(0)}function $qe(t){return t.toString(2).length}function Gbe(t,e){let n=t.toString(16);n.length%2!==0&&(n=\"0\"+n);let r=n.match(/.{1,2}/g).map(o=>parseInt(o,16));for(;r.length<e;)r.unshift(0);return globalThis.Buffer.from(r)}function Kqe(t,e){let n=t<0n,r;if(n){let o=(1n<<BigInt(e))-1n;r=(~t&o)+1n}else r=t;return r&=(1n<<BigInt(e))-1n,r}function Zbe(t,e,n){let r=Kbe(e);return t=JF(t),n?t.length<e?(t.copy(r),r):t.slice(0,e):t.length<e?(t.copy(r,e-t.length),r):t.slice(-e)}function Gqe(t,e){return Zbe(t,e,!0)}function JF(t){if(!globalThis.Buffer.isBuffer(t))if(Array.isArray(t))t=globalThis.Buffer.from(t);else if(typeof t==\"string\")Ybe(t)?t=globalThis.Buffer.from(Qqe(Qbe(t)),\"hex\"):t=globalThis.Buffer.from(t);else if(typeof t==\"number\")t=intToBuffer(t);else if(t==null)t=globalThis.Buffer.allocUnsafe(0);else if(typeof t==\"bigint\")t=Gbe(t);else if(t.toArray)t=globalThis.Buffer.from(t.toArray());else throw new Error(\"invalid type\");return t}function Zqe(t){return t=JF(t),\"0x\"+t.toString(\"hex\")}function Yqe(t,e){if(t=JF(t),e||(e=256),e!==256)throw new Error(\"unsupported\");return globalThis.Buffer.from(Vqe(new Uint8Array(t)))}function Qqe(t){return t.length%2?\"0\"+t:t}function Ybe(t){return typeof t==\"string\"&&t.match(/^0x[0-9A-Fa-f]*$/)}function Qbe(t){return typeof t==\"string\"&&t.startsWith(\"0x\")?t.slice(2):t}Jbe.exports={zeros:Kbe,setLength:Zbe,setLengthRight:Gqe,isHexString:Ybe,stripHexPrefix:Qbe,toBuffer:JF,bufferToHex:Zqe,keccak:Yqe,bitLengthFromBigInt:$qe,bufferBEFromBigInt:Gbe,twosFromBigInt:Kqe}});var ove=be((gen,rve)=>{p();var vd=wJ();function eve(t){return t.startsWith(\"int[\")?\"int256\"+t.slice(3):t===\"int\"?\"int256\":t.startsWith(\"uint[\")?\"uint256\"+t.slice(4):t===\"uint\"?\"uint256\":t.startsWith(\"fixed[\")?\"fixed128x128\"+t.slice(5):t===\"fixed\"?\"fixed128x128\":t.startsWith(\"ufixed[\")?\"ufixed128x128\"+t.slice(6):t===\"ufixed\"?\"ufixed128x128\":t}function KC(t){return Number.parseInt(/^\\\\D+(\\\\d+)$/.exec(t)[1],10)}function Xbe(t){var e=/^\\\\D+(\\\\d+)x(\\\\d+)$/.exec(t);return[Number.parseInt(e[1],10),Number.parseInt(e[2],10)]}function tve(t){var e=t.match(/(.*)\\\\[(.*?)\\\\]$/);return e?e[2]===\"\"?\"dynamic\":Number.parseInt(e[2],10):null}function U6(t){var e=typeof t;if(e===\"string\"||e===\"number\")return BigInt(t);if(e===\"bigint\")return t;throw new Error(\"Argument is not a number\")}function Ky(t,e){var n,r,o,i;if(t===\"address\")return Ky(\"uint160\",U6(e));if(t===\"bool\")return Ky(\"uint8\",e?1:0);if(t===\"string\")return Ky(\"bytes\",new globalThis.Buffer(e,\"utf8\"));if(Xqe(t)){if(typeof e.length>\"u\")throw new Error(\"Not an array?\");if(n=tve(t),n!==\"dynamic\"&&n!==0&&e.length>n)throw new Error(\"Elements exceed array size: \"+n);o=[],t=t.slice(0,t.lastIndexOf(\"[\")),typeof e==\"string\"&&(e=JSON.parse(e));for(i in e)o.push(Ky(t,e[i]));if(n===\"dynamic\"){var a=Ky(\"uint256\",e.length);o.unshift(a)}return globalThis.Buffer.concat(o)}else{if(t===\"bytes\")return e=new globalThis.Buffer(e),o=globalThis.Buffer.concat([Ky(\"uint256\",e.length),e]),e.length%32!==0&&(o=globalThis.Buffer.concat([o,vd.zeros(32-e.length%32)])),o;if(t.startsWith(\"bytes\")){if(n=KC(t),n<1||n>32)throw new Error(\"Invalid bytes<N> width: \"+n);return vd.setLengthRight(e,32)}else if(t.startsWith(\"uint\")){if(n=KC(t),n%8||n<8||n>256)throw new Error(\"Invalid uint<N> width: \"+n);r=U6(e);let c=vd.bitLengthFromBigInt(r);if(c>n)throw new Error(\"Supplied uint exceeds width: \"+n+\" vs \"+c);if(r<0)throw new Error(\"Supplied uint is negative\");return vd.bufferBEFromBigInt(r,32)}else if(t.startsWith(\"int\")){if(n=KC(t),n%8||n<8||n>256)throw new Error(\"Invalid int<N> width: \"+n);r=U6(e);let c=vd.bitLengthFromBigInt(r);if(c>n)throw new Error(\"Supplied int exceeds width: \"+n+\" vs \"+c);let u=vd.twosFromBigInt(r,256);return vd.bufferBEFromBigInt(u,32)}else if(t.startsWith(\"ufixed\")){if(n=Xbe(t),r=U6(e),r<0)throw new Error(\"Supplied ufixed is negative\");return Ky(\"uint256\",r*BigInt(2)**BigInt(n[1]))}else if(t.startsWith(\"fixed\"))return n=Xbe(t),Ky(\"int256\",U6(e)*BigInt(2)**BigInt(n[1]))}throw new Error(\"Unsupported or invalid type: \"+t)}function Jqe(t){return t===\"string\"||t===\"bytes\"||tve(t)===\"dynamic\"}function Xqe(t){return t.lastIndexOf(\"]\")===t.length-1}function eWe(t,e){var n=[],r=[],o=32*t.length;for(var i in t){var a=eve(t[i]),c=e[i],u=Ky(a,c);Jqe(a)?(n.push(Ky(\"uint256\",o)),r.push(u),o+=u.length):n.push(u)}return globalThis.Buffer.concat(n.concat(r))}function nve(t,e){if(t.length!==e.length)throw new Error(\"Number of types are not matching the values\");for(var n,r,o=[],i=0;i<t.length;i++){var a=eve(t[i]),c=e[i];if(a===\"bytes\")o.push(c);else if(a===\"string\")o.push(new globalThis.Buffer(c,\"utf8\"));else if(a===\"bool\")o.push(new globalThis.Buffer(c?\"01\":\"00\",\"hex\"));else if(a===\"address\")o.push(vd.setLength(c,20));else if(a.startsWith(\"bytes\")){if(n=KC(a),n<1||n>32)throw new Error(\"Invalid bytes<N> width: \"+n);o.push(vd.setLengthRight(c,n))}else if(a.startsWith(\"uint\")){if(n=KC(a),n%8||n<8||n>256)throw new Error(\"Invalid uint<N> width: \"+n);r=U6(c);let u=vd.bitLengthFromBigInt(r);if(u>n)throw new Error(\"Supplied uint exceeds width: \"+n+\" vs \"+u);o.push(vd.bufferBEFromBigInt(r,n/8))}else if(a.startsWith(\"int\")){if(n=KC(a),n%8||n<8||n>256)throw new Error(\"Invalid int<N> width: \"+n);r=U6(c);let u=vd.bitLengthFromBigInt(r);if(u>n)throw new Error(\"Supplied int exceeds width: \"+n+\" vs \"+u);let d=vd.twosFromBigInt(r,n);o.push(vd.bufferBEFromBigInt(d,n/8))}else throw new Error(\"Unsupported or invalid type: \"+a)}return globalThis.Buffer.concat(o)}function tWe(t,e){return vd.keccak(nve(t,e))}rve.exports={rawEncode:eWe,solidityPack:nve,soliditySHA3:tWe}});var ave=be((ben,sve)=>{p();var og=wJ(),Z9=ove(),ive={type:\"object\",properties:{types:{type:\"object\",additionalProperties:{type:\"array\",items:{type:\"object\",properties:{name:{type:\"string\"},type:{type:\"string\"}},required:[\"name\",\"type\"]}}},primaryType:{type:\"string\"},domain:{type:\"object\"},message:{type:\"object\"}},required:[\"types\",\"primaryType\",\"domain\",\"message\"]},xJ={encodeData(t,e,n,r=!0){let o=[\"bytes32\"],i=[this.hashType(t,n)];if(r){let a=(c,u,d)=>{if(n[u]!==void 0)return[\"bytes32\",d==null?\"0x0000000000000000000000000000000000000000000000000000000000000000\":og.keccak(this.encodeData(u,d,n,r))];if(d===void 0)throw new Error(`missing value for field ${c} of type ${u}`);if(u===\"bytes\")return[\"bytes32\",og.keccak(d)];if(u===\"string\")return typeof d==\"string\"&&(d=globalThis.Buffer.from(d,\"utf8\")),[\"bytes32\",og.keccak(d)];if(u.lastIndexOf(\"]\")===u.length-1){let h=u.slice(0,u.lastIndexOf(\"[\")),m=d.map(g=>a(c,h,g));return[\"bytes32\",og.keccak(Z9.rawEncode(m.map(([g])=>g),m.map(([,g])=>g)))]}return[u,d]};for(let c of n[t]){let[u,d]=a(c.name,c.type,e[c.name]);o.push(u),i.push(d)}}else for(let a of n[t]){let c=e[a.name];if(c!==void 0)if(a.type===\"bytes\")o.push(\"bytes32\"),c=og.keccak(c),i.push(c);else if(a.type===\"string\")o.push(\"bytes32\"),typeof c==\"string\"&&(c=globalThis.Buffer.from(c,\"utf8\")),c=og.keccak(c),i.push(c);else if(n[a.type]!==void 0)o.push(\"bytes32\"),c=og.keccak(this.encodeData(a.type,c,n,r)),i.push(c);else{if(a.type.lastIndexOf(\"]\")===a.type.length-1)throw new Error(\"Arrays currently unimplemented in encodeData\");o.push(a.type),i.push(c)}}return Z9.rawEncode(o,i)},encodeType(t,e){let n=\"\",r=this.findTypeDependencies(t,e).filter(o=>o!==t);r=[t].concat(r.sort());for(let o of r){if(!e[o])throw new Error(\"No type definition specified: \"+o);n+=o+\"(\"+e[o].map(({name:a,type:c})=>c+\" \"+a).join(\",\")+\")\"}return n},findTypeDependencies(t,e,n=[]){if(t=t.match(/^\\\\w*/)[0],n.includes(t)||e[t]===void 0)return n;n.push(t);for(let r of e[t])for(let o of this.findTypeDependencies(r.type,e,n))!n.includes(o)&&n.push(o);return n},hashStruct(t,e,n,r=!0){return og.keccak(this.encodeData(t,e,n,r))},hashType(t,e){return og.keccak(this.encodeType(t,e))},sanitizeData(t){let e={};for(let n in ive.properties)t[n]&&(e[n]=t[n]);return e.types&&(e.types=Object.assign({EIP712Domain:[]},e.types)),e},hash(t,e=!0){let n=this.sanitizeData(t),r=[globalThis.Buffer.from(\"1901\",\"hex\")];return r.push(this.hashStruct(\"EIP712Domain\",n.domain,n.types,e)),n.primaryType!==\"EIP712Domain\"&&r.push(this.hashStruct(n.primaryType,n.message,n.types,e)),og.keccak(globalThis.Buffer.concat(r))}};sve.exports={TYPED_MESSAGE_SCHEMA:ive,TypedDataUtils:xJ,hashForSignTypedDataLegacy:function(t){return nWe(t.data)},hashForSignTypedData_v3:function(t){return xJ.hash(t.data,!1)},hashForSignTypedData_v4:function(t){return xJ.hash(t.data)}};function nWe(t){let e=new Error(\"Expect argument to be non-empty array\");if(typeof t!=\"object\"||!t.length)throw e;let n=t.map(function(i){return i.type===\"bytes\"?og.toBuffer(i.value):i.value}),r=t.map(function(i){return i.type}),o=t.map(function(i){if(!i.name)throw e;return i.type+\" \"+i.name});return Z9.soliditySHA3([\"bytes32\",\"bytes32\"],[Z9.soliditySHA3(new Array(t.length).fill(\"string\"),o),Z9.soliditySHA3(r,n)])}});var cve,Y9,lve,XF=ce(()=>{p();cve=\"walletUsername\",Y9=\"Addresses\",lve=\"AppVersion\"});function za(t){return t.errorMessage!==void 0}var eU=ce(()=>{p()});var tU,uve=ce(()=>{p();$y();tU=class{constructor(e){this.secret=e}async encrypt(e){let n=this.secret;if(n.length!==64)throw Error(\"secret must be 256 bits\");let r=crypto.getRandomValues(new Uint8Array(12)),o=await crypto.subtle.importKey(\"raw\",zC(n),{name:\"aes-gcm\"},!1,[\"encrypt\",\"decrypt\"]),i=new TextEncoder,a=await window.crypto.subtle.encrypt({name:\"AES-GCM\",iv:r},o,i.encode(e)),c=16,u=a.slice(a.byteLength-c),d=a.slice(0,a.byteLength-c),h=new Uint8Array(u),m=new Uint8Array(d),g=new Uint8Array([...r,...h,...m]);return V9(g)}async decrypt(e){let n=this.secret;if(n.length!==64)throw Error(\"secret must be 256 bits\");return new Promise((r,o)=>{(async function(){let i=await crypto.subtle.importKey(\"raw\",zC(n),{name:\"aes-gcm\"},!1,[\"encrypt\",\"decrypt\"]),a=zC(e),c=a.slice(0,12),u=a.slice(12,28),d=a.slice(28),h=new Uint8Array([...d,...u]),m={name:\"AES-GCM\",iv:new Uint8Array(c)};try{let g=await window.crypto.subtle.decrypt(m,i,h),b=new TextDecoder;r(b.decode(g))}catch(g){o(g)}})()})}}});var nU,dve=ce(()=>{p();nU=class{constructor(e,n,r){this.linkAPIUrl=e,this.sessionId=n;let o=`${n}:${r}`;this.auth=`Basic ${btoa(o)}`}async markUnseenEventsAsSeen(e){return Promise.all(e.map(n=>fetch(`${this.linkAPIUrl}/events/${n.eventId}/seen`,{method:\"POST\",headers:{Authorization:this.auth}}))).catch(n=>console.error(\"Unabled to mark event as failed:\",n))}async fetchUnseenEvents(){var e;let n=await fetch(`${this.linkAPIUrl}/events?unseen=true`,{headers:{Authorization:this.auth}});if(n.ok){let{events:r,error:o}=await n.json();if(o)throw new Error(`Check unseen events failed: ${o}`);let i=(e=r?.filter(a=>a.event===\"Web3Response\").map(a=>({type:\"Event\",sessionId:this.sessionId,eventId:a.id,event:a.event,data:a.data})))!==null&&e!==void 0?e:[];return this.markUnseenEventsAsSeen(i),i}throw new Error(`Check unseen events failed: ${n.status}`)}}});var Gy,rU,fve=ce(()=>{p();(function(t){t[t.DISCONNECTED=0]=\"DISCONNECTED\",t[t.CONNECTING=1]=\"CONNECTING\",t[t.CONNECTED=2]=\"CONNECTED\"})(Gy||(Gy={}));rU=class{setConnectionStateListener(e){this.connectionStateListener=e}setIncomingDataListener(e){this.incomingDataListener=e}constructor(e,n=WebSocket){this.WebSocketClass=n,this.webSocket=null,this.pendingData=[],this.url=e.replace(/^http/,\"ws\")}async connect(){if(this.webSocket)throw new Error(\"webSocket object is not null\");return new Promise((e,n)=>{var r;let o;try{this.webSocket=o=new this.WebSocketClass(this.url)}catch(i){n(i);return}(r=this.connectionStateListener)===null||r===void 0||r.call(this,Gy.CONNECTING),o.onclose=i=>{var a;this.clearWebSocket(),n(new Error(`websocket error ${i.code}: ${i.reason}`)),(a=this.connectionStateListener)===null||a===void 0||a.call(this,Gy.DISCONNECTED)},o.onopen=i=>{var a;e(),(a=this.connectionStateListener)===null||a===void 0||a.call(this,Gy.CONNECTED),this.pendingData.length>0&&([...this.pendingData].forEach(u=>this.sendData(u)),this.pendingData=[])},o.onmessage=i=>{var a,c;if(i.data===\"h\")(a=this.incomingDataListener)===null||a===void 0||a.call(this,{type:\"Heartbeat\"});else try{let u=JSON.parse(i.data);(c=this.incomingDataListener)===null||c===void 0||c.call(this,u)}catch{}}})}disconnect(){var e;let{webSocket:n}=this;if(n){this.clearWebSocket(),(e=this.connectionStateListener)===null||e===void 0||e.call(this,Gy.DISCONNECTED),this.connectionStateListener=void 0,this.incomingDataListener=void 0;try{n.close()}catch{}}}sendData(e){let{webSocket:n}=this;if(!n){this.pendingData.push(e),this.connect();return}n.send(e)}clearWebSocket(){let{webSocket:e}=this;e&&(this.webSocket=null,e.onclose=null,e.onerror=null,e.onmessage=null,e.onopen=null)}}});var iWe,rWe,oWe,oU,hve=ce(()=>{p();sJ();XF();uve();dve();fve();iWe={},rWe=1e4,oWe=6e4,oU=class{constructor({session:e,linkAPIUrl:n,listener:r}){this.destroyed=!1,this.lastHeartbeatResponse=0,this.nextReqId=tg(1),this._connected=!1,this._linked=!1,this.shouldFetchUnseenEventsOnConnect=!1,this.requestResolutions=new Map,this.handleSessionMetadataUpdated=i=>{if(!i)return;new Map([[\"__destroyed\",this.handleDestroyed],[\"EthereumAddress\",this.handleAccountUpdated],[\"WalletUsername\",this.handleWalletUsernameUpdated],[\"AppVersion\",this.handleAppVersionUpdated],[\"ChainId\",c=>i.JsonRpcUrl&&this.handleChainUpdated(c,i.JsonRpcUrl)]]).forEach((c,u)=>{let d=i[u];d!==void 0&&c(d)})},this.handleDestroyed=i=>{var a;i===\"1\"&&((a=this.listener)===null||a===void 0||a.resetAndReload())},this.handleAccountUpdated=async i=>{var a;let c=await this.cipher.decrypt(i);(a=this.listener)===null||a===void 0||a.accountUpdated(c)},this.handleMetadataUpdated=async(i,a)=>{var c;let u=await this.cipher.decrypt(a);(c=this.listener)===null||c===void 0||c.metadataUpdated(i,u)},this.handleWalletUsernameUpdated=async i=>{this.handleMetadataUpdated(cve,i)},this.handleAppVersionUpdated=async i=>{this.handleMetadataUpdated(lve,i)},this.handleChainUpdated=async(i,a)=>{var c;let u=await this.cipher.decrypt(i),d=await this.cipher.decrypt(a);(c=this.listener)===null||c===void 0||c.chainUpdated(u,d)},this.session=e,this.cipher=new tU(e.secret),this.listener=r;let o=new rU(`${n}/rpc`,WebSocket);o.setConnectionStateListener(async i=>{let a=!1;switch(i){case Gy.DISCONNECTED:if(this.stopHeartbeat(),!this.destroyed){let c=async()=>{await new Promise(u=>setTimeout(u,5e3)),this.destroyed||o.connect().catch(()=>{c()})};c()}break;case Gy.CONNECTED:a=await this.handleConnected(),this.updateLastHeartbeat(),this.startHeartbeat(),this.shouldFetchUnseenEventsOnConnect&&this.fetchUnseenEventsAPI();break;case Gy.CONNECTING:break}this.connected!==a&&(this.connected=a)}),o.setIncomingDataListener(i=>{var a;switch(i.type){case\"Heartbeat\":this.updateLastHeartbeat();return;case\"IsLinkedOK\":case\"Linked\":{let c=i.type===\"IsLinkedOK\"?i.linked:void 0;this.linked=c||i.onlineGuests>0;break}case\"GetSessionConfigOK\":case\"SessionConfigUpdated\":{this.handleSessionMetadataUpdated(i.metadata);break}case\"Event\":{this.handleIncomingEvent(i);break}}i.id!==void 0&&((a=this.requestResolutions.get(i.id))===null||a===void 0||a(i))}),this.ws=o,this.http=new nU(n,e.id,e.key)}connect(){if(this.destroyed)throw new Error(\"instance is destroyed\");this.ws.connect()}async destroy(){this.destroyed||(await this.makeRequest({type:\"SetSessionConfig\",id:tg(this.nextReqId++),sessionId:this.session.id,metadata:{__destroyed:\"1\"}},{timeout:1e3}),this.destroyed=!0,this.stopHeartbeat(),this.ws.disconnect(),this.listener=void 0)}get connected(){return this._connected}set connected(e){this._connected=e}get linked(){return this._linked}set linked(e){var n,r;this._linked=e,e&&((n=this.onceLinked)===null||n===void 0||n.call(this)),(r=this.listener)===null||r===void 0||r.linkedUpdated(e)}setOnceLinked(e){return new Promise(n=>{this.linked?e().then(n):this.onceLinked=()=>{e().then(n),this.onceLinked=void 0}})}async handleIncomingEvent(e){var n;if(e.type!==\"Event\"||e.event!==\"Web3Response\")return;let r=await this.cipher.decrypt(e.data),o=JSON.parse(r);if(o.type!==\"WEB3_RESPONSE\")return;let{id:i,response:a}=o;(n=this.listener)===null||n===void 0||n.handleWeb3ResponseMessage(i,a)}async checkUnseenEvents(){if(!this.connected){this.shouldFetchUnseenEventsOnConnect=!0;return}await new Promise(e=>setTimeout(e,250));try{await this.fetchUnseenEventsAPI()}catch(e){console.error(\"Unable to check for unseen events\",e)}}async fetchUnseenEventsAPI(){this.shouldFetchUnseenEventsOnConnect=!1,(await this.http.fetchUnseenEvents()).forEach(n=>this.handleIncomingEvent(n))}async publishEvent(e,n,r=!1){let o=await this.cipher.encrypt(JSON.stringify(Object.assign(Object.assign({},n),{origin:location.origin,location:location.href,relaySource:\"coinbaseWalletExtension\"in window&&window.coinbaseWalletExtension?\"injected_sdk\":\"sdk\"}))),i={type:\"PublishEvent\",id:tg(this.nextReqId++),sessionId:this.session.id,event:e,data:o,callWebhook:r};return this.setOnceLinked(async()=>{let a=await this.makeRequest(i);if(a.type===\"Fail\")throw new Error(a.error||\"failed to publish event\");return a.eventId})}sendData(e){this.ws.sendData(JSON.stringify(e))}updateLastHeartbeat(){this.lastHeartbeatResponse=Date.now()}startHeartbeat(){this.heartbeatWorker&&this.heartbeatWorker.terminate();try{let e=new URL(\"./HeartbeatWorker.js\",iWe.url);this.heartbeatWorker=new Worker(e,{type:\"module\"}),this.setupWorkerListeners(),this.heartbeatWorker.postMessage({type:\"start\"})}catch(e){console.warn(\"Failed to create external heartbeat worker\",e)}}setupWorkerListeners(){this.heartbeatWorker&&(this.heartbeatWorker.addEventListener(\"message\",e=>{let{type:n}=e.data;switch(n){case\"heartbeat\":this.heartbeat();break;case\"started\":case\"stopped\":break}}),this.heartbeatWorker.addEventListener(\"error\",e=>{console.error(\"Heartbeat worker error:\",e)}))}stopHeartbeat(){this.heartbeatWorker&&(this.heartbeatWorker.postMessage({type:\"stop\"}),this.heartbeatWorker.terminate(),this.heartbeatWorker=void 0)}heartbeat(){if(Date.now()-this.lastHeartbeatResponse>rWe*2){this.ws.disconnect();return}try{this.ws.sendData(\"h\")}catch{}}async makeRequest(e,n={timeout:oWe}){let r=e.id;this.sendData(e);let o;return Promise.race([new Promise((i,a)=>{o=window.setTimeout(()=>{a(new Error(`request ${r} timed out`))},n.timeout)}),new Promise(i=>{this.requestResolutions.set(r,a=>{clearTimeout(o),i(a),this.requestResolutions.delete(r)})})])}async handleConnected(){return(await this.makeRequest({type:\"HostSession\",id:tg(this.nextReqId++),sessionId:this.session.id,sessionKey:this.session.key})).type===\"Fail\"?!1:(this.sendData({type:\"IsLinked\",id:tg(this.nextReqId++),sessionId:this.session.id}),this.sendData({type:\"GetSessionConfig\",id:tg(this.nextReqId++),sessionId:this.session.id}),!0)}}});var iU,pve=ce(()=>{p();$y();iU=class{constructor(){this._nextRequestId=0,this.callbacks=new Map}makeRequestId(){this._nextRequestId=(this._nextRequestId+1)%2147483647;let e=this._nextRequestId,n=cJ(e.toString(16));return this.callbacks.get(n)&&this.callbacks.delete(n),e}}});var mve,gve,yve,GC,bve=ce(()=>{p();_L();Jb();$y();mve=\"session:id\",gve=\"session:secret\",yve=\"session:linked\",GC=class t{constructor(e,n,r,o=!1){this.storage=e,this.id=n,this.secret=r,this.key=Fp(C5(`${n}, ${r} WalletLink`)),this._linked=!!o}static create(e){let n=Av(16),r=Av(32);return new t(e,n,r).save()}static load(e){let n=e.getItem(mve),r=e.getItem(yve),o=e.getItem(gve);return n&&o?new t(e,n,o,r===\"1\"):null}get linked(){return this._linked}set linked(e){this._linked=e,this.persistLinked()}save(){return this.storage.setItem(mve,this.id),this.storage.setItem(gve,this.secret),this.persistLinked(),this}persistLinked(){this.storage.setItem(yve,this._linked?\"1\":\"0\")}}});function sWe(){try{return window.frameElement!==null}catch{return!1}}function vve(){try{return sWe()&&window.top?window.top.location:window.location}catch{return window.location}}function wve(){var t;return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test((t=window?.navigator)===null||t===void 0?void 0:t.userAgent)}function sU(){var t,e;return(e=(t=window?.matchMedia)===null||t===void 0?void 0:t.call(window,\"(prefers-color-scheme: dark)\").matches)!==null&&e!==void 0?e:!1}var Q9=ce(()=>{p()});var xve,Eve=ce(()=>{p();xve=\\'@namespace svg \"http://www.w3.org/2000/svg\";.-cbwsdk-css-reset,.-cbwsdk-css-reset *{animation:none;animation-delay:0;animation-direction:normal;animation-duration:0;animation-fill-mode:none;animation-iteration-count:1;animation-name:none;animation-play-state:running;animation-timing-function:ease;backface-visibility:visible;background:0;background-attachment:scroll;background-clip:border-box;background-color:rgba(0,0,0,0);background-image:none;background-origin:padding-box;background-position:0 0;background-position-x:0;background-position-y:0;background-repeat:repeat;background-size:auto auto;border:0;border-style:none;border-width:medium;border-color:inherit;border-bottom:0;border-bottom-color:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-style:none;border-bottom-width:medium;border-collapse:separate;border-image:none;border-left:0;border-left-color:inherit;border-left-style:none;border-left-width:medium;border-radius:0;border-right:0;border-right-color:inherit;border-right-style:none;border-right-width:medium;border-spacing:0;border-top:0;border-top-color:inherit;border-top-left-radius:0;border-top-right-radius:0;border-top-style:none;border-top-width:medium;box-shadow:none;box-sizing:border-box;caption-side:top;clear:none;clip:auto;color:inherit;columns:auto;column-count:auto;column-fill:balance;column-gap:normal;column-rule:medium none currentColor;column-rule-color:currentColor;column-rule-style:none;column-rule-width:none;column-span:1;column-width:auto;counter-increment:none;counter-reset:none;direction:ltr;empty-cells:show;float:none;font:normal;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Helvetica Neue\",Arial,sans-serif;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;height:auto;hyphens:none;letter-spacing:normal;line-height:normal;list-style:none;list-style-image:none;list-style-position:outside;list-style-type:disc;margin:0;margin-bottom:0;margin-left:0;margin-right:0;margin-top:0;opacity:1;orphans:0;outline:0;outline-color:invert;outline-style:none;outline-width:medium;overflow:visible;overflow-x:visible;overflow-y:visible;padding:0;padding-bottom:0;padding-left:0;padding-right:0;padding-top:0;page-break-after:auto;page-break-before:auto;page-break-inside:auto;perspective:none;perspective-origin:50% 50%;pointer-events:auto;position:static;quotes:\"\\\\\\\\201C\" \"\\\\\\\\201D\" \"\\\\\\\\2018\" \"\\\\\\\\2019\";tab-size:8;table-layout:auto;text-align:inherit;text-align-last:auto;text-decoration:none;text-decoration-color:inherit;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-shadow:none;text-transform:none;transform:none;transform-style:flat;transition:none;transition-delay:0s;transition-duration:0s;transition-property:none;transition-timing-function:ease;unicode-bidi:normal;vertical-align:baseline;visibility:visible;white-space:normal;widows:0;word-spacing:normal;z-index:auto}.-cbwsdk-css-reset strong{font-weight:bold}.-cbwsdk-css-reset *{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Helvetica Neue\",Arial,sans-serif;line-height:1}.-cbwsdk-css-reset [class*=container]{margin:0;padding:0}.-cbwsdk-css-reset style{display:none}\\'});function aU(){let t=document.createElement(\"style\");t.type=\"text/css\",t.appendChild(document.createTextNode(xve)),document.documentElement.appendChild(t)}var EJ=ce(()=>{p();Eve()});var ZC={};ld(ZC,{clsx:()=>Iv,default:()=>aWe});function Sve(t){var e,n,r=\"\";if(typeof t==\"string\"||typeof t==\"number\")r+=t;else if(typeof t==\"object\")if(Array.isArray(t))for(e=0;e<t.length;e++)t[e]&&(n=Sve(t[e]))&&(r&&(r+=\" \"),r+=n);else for(e in t)t[e]&&(r&&(r+=\" \"),r+=e);return r}function Iv(){for(var t,e,n=0,r=\"\";n<arguments.length;)(t=arguments[n++])&&(e=Sve(t))&&(r&&(r+=\" \"),r+=e);return r}var aWe,_x=ce(()=>{p();aWe=Iv});var wd={};ld(wd,{Component:()=>X9,Fragment:()=>rI,cloneElement:()=>pWe,createContext:()=>mWe,createElement:()=>Mo,createRef:()=>lWe,h:()=>Mo,hydrate:()=>zve,isValidElement:()=>Tve,options:()=>_i,render:()=>z6,toChildArray:()=>Dve});function Zy(t,e){for(var n in e)t[n]=e[n];return t}function AJ(t){t&&t.parentNode&&t.parentNode.removeChild(t)}function Mo(t,e,n){var r,o,i,a={};for(i in e)i==\"key\"?r=e[i]:i==\"ref\"?o=e[i]:a[i]=e[i];if(arguments.length>2&&(a.children=arguments.length>3?tI.call(arguments,2):n),typeof t==\"function\"&&t.defaultProps!=null)for(i in t.defaultProps)a[i]===void 0&&(a[i]=t.defaultProps[i]);return J9(t,a,r,o,null)}function J9(t,e,n,r,o){var i={type:t,props:e,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:o??++Ave,__i:-1,__u:0};return o==null&&_i.vnode!=null&&_i.vnode(i),i}function lWe(){return{current:null}}function rI(t){return t.children}function X9(t,e){this.props=t,this.context=e}function YC(t,e){if(e==null)return t.__?YC(t.__,t.__i+1):null;for(var n;e<t.__k.length;e++)if((n=t.__k[e])!=null&&n.__e!=null)return n.__e;return typeof t.type==\"function\"?YC(t):null}function Nve(t){var e,n;if((t=t.__)!=null&&t.__c!=null){for(t.__e=t.__c.base=null,e=0;e<t.__k.length;e++)if((n=t.__k[e])!=null&&n.__e!=null){t.__e=t.__c.base=n.__e;break}return Nve(t)}}function _J(t){(!t.__d&&(t.__d=!0)&&j6.push(t)&&!lU.__r++||kve!=_i.debounceRendering)&&((kve=_i.debounceRendering)||Rve)(lU)}function lU(){for(var t,e,n,r,o,i,a,c=1;j6.length;)j6.length>c&&j6.sort(Ive),t=j6.shift(),c=j6.length,t.__d&&(n=void 0,o=(r=(e=t).__v).__e,i=[],a=[],e.__P&&((n=Zy({},r)).__v=r.__v+1,_i.vnode&&_i.vnode(n),TJ(e.__P,n,r,e.__n,e.__P.namespaceURI,32&r.__u?[o]:null,i,o??YC(r),!!(32&r.__u),a),n.__v=r.__v,n.__.__k[n.__i]=n,Fve(i,n,a),n.__e!=o&&Nve(n)));lU.__r=0}function Lve(t,e,n,r,o,i,a,c,u,d,h){var m,g,b,E,C,T,R=r&&r.__k||Mve,L=e.length;for(u=uWe(n,e,R,u,L),m=0;m<L;m++)(b=n.__k[m])!=null&&(g=b.__i==-1?eI:R[b.__i]||eI,b.__i=m,T=TJ(t,b,g,o,i,a,c,u,d,h),E=b.__e,b.ref&&g.ref!=b.ref&&(g.ref&&RJ(g.ref,null,b),h.push(b.ref,b.__c||E,b)),C==null&&E!=null&&(C=E),4&b.__u||g.__k===b.__k?u=Bve(b,u,t):typeof b.type==\"function\"&&T!==void 0?u=T:E&&(u=E.nextSibling),b.__u&=-7);return n.__e=C,u}function uWe(t,e,n,r,o){var i,a,c,u,d,h=n.length,m=h,g=0;for(t.__k=new Array(o),i=0;i<o;i++)(a=e[i])!=null&&typeof a!=\"boolean\"&&typeof a!=\"function\"?(u=i+g,(a=t.__k[i]=typeof a==\"string\"||typeof a==\"number\"||typeof a==\"bigint\"||a.constructor==String?J9(null,a,null,null,null):nI(a)?J9(rI,{children:a},null,null,null):a.constructor==null&&a.__b>0?J9(a.type,a.props,a.key,a.ref?a.ref:null,a.__v):a).__=t,a.__b=t.__b+1,c=null,(d=a.__i=dWe(a,n,u,m))!=-1&&(m--,(c=n[d])&&(c.__u|=2)),c==null||c.__v==null?(d==-1&&(o>h?g--:o<h&&g++),typeof a.type!=\"function\"&&(a.__u|=4)):d!=u&&(d==u-1?g--:d==u+1?g++:(d>u?g--:g++,a.__u|=4))):t.__k[i]=null;if(m)for(i=0;i<h;i++)(c=n[i])!=null&&(2&c.__u)==0&&(c.__e==r&&(r=YC(c)),jve(c,c));return r}function Bve(t,e,n){var r,o;if(typeof t.type==\"function\"){for(r=t.__k,o=0;r&&o<r.length;o++)r[o]&&(r[o].__=t,e=Bve(r[o],e,n));return e}t.__e!=e&&(e&&t.type&&!n.contains(e)&&(e=YC(t)),n.insertBefore(t.__e,e||null),e=t.__e);do e=e&&e.nextSibling;while(e!=null&&e.nodeType==8);return e}function Dve(t,e){return e=e||[],t==null||typeof t==\"boolean\"||(nI(t)?t.some(function(n){Dve(n,e)}):e.push(t)),e}function dWe(t,e,n,r){var o,i,a=t.key,c=t.type,u=e[n];if(u===null&&t.key==null||u&&a==u.key&&c==u.type&&(2&u.__u)==0)return n;if(r>(u!=null&&(2&u.__u)==0?1:0))for(o=n-1,i=n+1;o>=0||i<e.length;){if(o>=0){if((u=e[o])&&(2&u.__u)==0&&a==u.key&&c==u.type)return o;o--}if(i<e.length){if((u=e[i])&&(2&u.__u)==0&&a==u.key&&c==u.type)return i;i++}}return-1}function _ve(t,e,n){e[0]==\"-\"?t.setProperty(e,n??\"\"):t[e]=n==null?\"\":typeof n!=\"number\"||cWe.test(e)?n:n+\"px\"}function cU(t,e,n,r,o){var i,a;e:if(e==\"style\")if(typeof n==\"string\")t.style.cssText=n;else{if(typeof r==\"string\"&&(t.style.cssText=r=\"\"),r)for(e in r)n&&e in n||_ve(t.style,e,\"\");if(n)for(e in n)r&&n[e]==r[e]||_ve(t.style,e,n[e])}else if(e[0]==\"o\"&&e[1]==\"n\")i=e!=(e=e.replace(Ove,\"$1\")),a=e.toLowerCase(),e=a in t||e==\"onFocusOut\"||e==\"onFocusIn\"?a.slice(2):e.slice(2),t.l||(t.l={}),t.l[e+i]=n,n?r?n.u=r.u:(n.u=CJ,t.addEventListener(e,i?kJ:SJ,i)):t.removeEventListener(e,i?kJ:SJ,i);else{if(o==\"http://www.w3.org/2000/svg\")e=e.replace(/xlink(H|:h)/,\"h\").replace(/sName$/,\"s\");else if(e!=\"width\"&&e!=\"height\"&&e!=\"href\"&&e!=\"list\"&&e!=\"form\"&&e!=\"tabIndex\"&&e!=\"download\"&&e!=\"rowSpan\"&&e!=\"colSpan\"&&e!=\"role\"&&e!=\"popover\"&&e in t)try{t[e]=n??\"\";break e}catch{}typeof n==\"function\"||(n==null||n===!1&&e[4]!=\"-\"?t.removeAttribute(e):t.setAttribute(e,e==\"popover\"&&n==1?\"\":n))}}function Cve(t){return function(e){if(this.l){var n=this.l[e.type+t];if(e.t==null)e.t=CJ++;else if(e.t<n.u)return;return n(_i.event?_i.event(e):e)}}}function TJ(t,e,n,r,o,i,a,c,u,d){var h,m,g,b,E,C,T,R,L,D,G,W,J,ne,ie,Z,ae,V=e.type;if(e.constructor!=null)return null;128&n.__u&&(u=!!(32&n.__u),i=[c=e.__e=n.__e]),(h=_i.__b)&&h(e);e:if(typeof V==\"function\")try{if(R=e.props,L=\"prototype\"in V&&V.prototype.render,D=(h=V.contextType)&&r[h.__c],G=h?D?D.props.value:h.__:r,n.__c?T=(m=e.__c=n.__c).__=m.__E:(L?e.__c=m=new V(R,G):(e.__c=m=new X9(R,G),m.constructor=V,m.render=hWe),D&&D.sub(m),m.props=R,m.state||(m.state={}),m.context=G,m.__n=r,g=m.__d=!0,m.__h=[],m._sb=[]),L&&m.__s==null&&(m.__s=m.state),L&&V.getDerivedStateFromProps!=null&&(m.__s==m.state&&(m.__s=Zy({},m.__s)),Zy(m.__s,V.getDerivedStateFromProps(R,m.__s))),b=m.props,E=m.state,m.__v=e,g)L&&V.getDerivedStateFromProps==null&&m.componentWillMount!=null&&m.componentWillMount(),L&&m.componentDidMount!=null&&m.__h.push(m.componentDidMount);else{if(L&&V.getDerivedStateFromProps==null&&R!==b&&m.componentWillReceiveProps!=null&&m.componentWillReceiveProps(R,G),!m.__e&&m.shouldComponentUpdate!=null&&m.shouldComponentUpdate(R,m.__s,G)===!1||e.__v==n.__v){for(e.__v!=n.__v&&(m.props=R,m.state=m.__s,m.__d=!1),e.__e=n.__e,e.__k=n.__k,e.__k.some(function($){$&&($.__=e)}),W=0;W<m._sb.length;W++)m.__h.push(m._sb[W]);m._sb=[],m.__h.length&&a.push(m);break e}m.componentWillUpdate!=null&&m.componentWillUpdate(R,m.__s,G),L&&m.componentDidUpdate!=null&&m.__h.push(function(){m.componentDidUpdate(b,E,C)})}if(m.context=G,m.props=R,m.__P=t,m.__e=!1,J=_i.__r,ne=0,L){for(m.state=m.__s,m.__d=!1,J&&J(e),h=m.render(m.props,m.state,m.context),ie=0;ie<m._sb.length;ie++)m.__h.push(m._sb[ie]);m._sb=[]}else do m.__d=!1,J&&J(e),h=m.render(m.props,m.state,m.context),m.state=m.__s;while(m.__d&&++ne<25);m.state=m.__s,m.getChildContext!=null&&(r=Zy(Zy({},r),m.getChildContext())),L&&!g&&m.getSnapshotBeforeUpdate!=null&&(C=m.getSnapshotBeforeUpdate(b,E)),Z=h,h!=null&&h.type===rI&&h.key==null&&(Z=Uve(h.props.children)),c=Lve(t,nI(Z)?Z:[Z],e,n,r,o,i,a,c,u,d),m.base=e.__e,e.__u&=-161,m.__h.length&&a.push(m),T&&(m.__E=m.__=null)}catch($){if(e.__v=null,u||i!=null)if($.then){for(e.__u|=u?160:128;c&&c.nodeType==8&&c.nextSibling;)c=c.nextSibling;i[i.indexOf(c)]=null,e.__e=c}else for(ae=i.length;ae--;)AJ(i[ae]);else e.__e=n.__e,e.__k=n.__k;_i.__e($,e,n)}else i==null&&e.__v==n.__v?(e.__k=n.__k,e.__e=n.__e):c=e.__e=fWe(n.__e,e,n,r,o,i,a,u,d);return(h=_i.diffed)&&h(e),128&e.__u?void 0:c}function Fve(t,e,n){for(var r=0;r<n.length;r++)RJ(n[r],n[++r],n[++r]);_i.__c&&_i.__c(e,t),t.some(function(o){try{t=o.__h,o.__h=[],t.some(function(i){i.call(o)})}catch(i){_i.__e(i,o.__v)}})}function Uve(t){return typeof t!=\"object\"||t==null||t.__b&&t.__b>0?t:nI(t)?t.map(Uve):Zy({},t)}function fWe(t,e,n,r,o,i,a,c,u){var d,h,m,g,b,E,C,T=n.props,R=e.props,L=e.type;if(L==\"svg\"?o=\"http://www.w3.org/2000/svg\":L==\"math\"?o=\"http://www.w3.org/1998/Math/MathML\":o||(o=\"http://www.w3.org/1999/xhtml\"),i!=null){for(d=0;d<i.length;d++)if((b=i[d])&&\"setAttribute\"in b==!!L&&(L?b.localName==L:b.nodeType==3)){t=b,i[d]=null;break}}if(t==null){if(L==null)return document.createTextNode(R);t=document.createElementNS(o,L,R.is&&R),c&&(_i.__m&&_i.__m(e,i),c=!1),i=null}if(L==null)T===R||c&&t.data==R||(t.data=R);else{if(i=i&&tI.call(t.childNodes),T=n.props||eI,!c&&i!=null)for(T={},d=0;d<t.attributes.length;d++)T[(b=t.attributes[d]).name]=b.value;for(d in T)if(b=T[d],d!=\"children\"){if(d==\"dangerouslySetInnerHTML\")m=b;else if(!(d in R)){if(d==\"value\"&&\"defaultValue\"in R||d==\"checked\"&&\"defaultChecked\"in R)continue;cU(t,d,null,b,o)}}for(d in R)b=R[d],d==\"children\"?g=b:d==\"dangerouslySetInnerHTML\"?h=b:d==\"value\"?E=b:d==\"checked\"?C=b:c&&typeof b!=\"function\"||T[d]===b||cU(t,d,b,T[d],o);if(h)c||m&&(h.__html==m.__html||h.__html==t.innerHTML)||(t.innerHTML=h.__html),e.__k=[];else if(m&&(t.innerHTML=\"\"),Lve(e.type==\"template\"?t.content:t,nI(g)?g:[g],e,n,r,L==\"foreignObject\"?\"http://www.w3.org/1999/xhtml\":o,i,a,i?i[0]:n.__k&&YC(n,0),c,u),i!=null)for(d=i.length;d--;)AJ(i[d]);c||(d=\"value\",L==\"progress\"&&E==null?t.removeAttribute(\"value\"):E!=null&&(E!==t[d]||L==\"progress\"&&!E||L==\"option\"&&E!=T[d])&&cU(t,d,E,T[d],o),d=\"checked\",C!=null&&C!=t[d]&&cU(t,d,C,T[d],o))}return t}function RJ(t,e,n){try{if(typeof t==\"function\"){var r=typeof t.__u==\"function\";r&&t.__u(),r&&e==null||(t.__u=t(e))}else t.current=e}catch(o){_i.__e(o,n)}}function jve(t,e,n){var r,o;if(_i.unmount&&_i.unmount(t),(r=t.ref)&&(r.current&&r.current!=t.__e||RJ(r,null,e)),(r=t.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(i){_i.__e(i,e)}r.base=r.__P=null}if(r=t.__k)for(o=0;o<r.length;o++)r[o]&&jve(r[o],e,n||typeof t.type!=\"function\");n||AJ(t.__e),t.__c=t.__=t.__e=void 0}function hWe(t,e,n){return this.constructor(t,n)}function z6(t,e,n){var r,o,i,a;e==document&&(e=document.documentElement),_i.__&&_i.__(t,e),o=(r=typeof n==\"function\")?null:n&&n.__k||e.__k,i=[],a=[],TJ(e,t=(!r&&n||e).__k=Mo(rI,null,[t]),o||eI,eI,e.namespaceURI,!r&&n?[n]:o?null:e.firstChild?tI.call(e.childNodes):null,i,!r&&n?n:o?o.__e:e.firstChild,r,a),Fve(i,t,a)}function zve(t,e){z6(t,e,zve)}function pWe(t,e,n){var r,o,i,a,c=Zy({},t.props);for(i in t.type&&t.type.defaultProps&&(a=t.type.defaultProps),e)i==\"key\"?r=e[i]:i==\"ref\"?o=e[i]:c[i]=e[i]===void 0&&a!=null?a[i]:e[i];return arguments.length>2&&(c.children=arguments.length>3?tI.call(arguments,2):n),J9(t.type,c,r||t.key,o||t.ref,null)}function mWe(t){function e(n){var r,o;return this.getChildContext||(r=new Set,(o={})[e.__c]=this,this.getChildContext=function(){return o},this.componentWillUnmount=function(){r=null},this.shouldComponentUpdate=function(i){this.props.value!=i.value&&r.forEach(function(a){a.__e=!0,_J(a)})},this.sub=function(i){r.add(i);var a=i.componentWillUnmount;i.componentWillUnmount=function(){r&&r.delete(i),a&&a.call(i)}}),n.children}return e.__c=\"__cC\"+Pve++,e.__=t,e.Provider=e.__l=(e.Consumer=function(n,r){return n.children(r)}).contextType=e,e}var tI,_i,Ave,Tve,j6,kve,Rve,Ive,Ove,CJ,SJ,kJ,Pve,eI,Mve,cWe,nI,Dc=ce(()=>{p();eI={},Mve=[],cWe=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,nI=Array.isArray;tI=Mve.slice,_i={__e:function(t,e,n,r){for(var o,i,a;e=e.__;)if((o=e.__c)&&!o.__)try{if((i=o.constructor)&&i.getDerivedStateFromError!=null&&(o.setState(i.getDerivedStateFromError(t)),a=o.__d),o.componentDidCatch!=null&&(o.componentDidCatch(t,r||{}),a=o.__d),a)return o.__E=o}catch(c){t=c}throw t}},Ave=0,Tve=function(t){return t!=null&&t.constructor==null},X9.prototype.setState=function(t,e){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=Zy({},this.state),typeof t==\"function\"&&(t=t(Zy({},n),this.props)),t&&Zy(n,t),t!=null&&this.__v&&(e&&this._sb.push(e),_J(this))},X9.prototype.forceUpdate=function(t){this.__v&&(this.__e=!0,t&&this.__h.push(t),_J(this))},X9.prototype.render=rI,j6=[],Rve=typeof Promise==\"function\"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Ive=function(t,e){return t.__v.__b-e.__v.__b},lU.__r=0,Ove=/(PointerCapture)$|Capture$/i,CJ=0,SJ=Cve(!1),kJ=Cve(!0),Pve=0});var iI={};ld(iI,{useCallback:()=>bWe,useContext:()=>vWe,useDebugValue:()=>wWe,useEffect:()=>PJ,useErrorBoundary:()=>xWe,useId:()=>EWe,useImperativeHandle:()=>yWe,useLayoutEffect:()=>Jve,useMemo:()=>MJ,useReducer:()=>Qve,useRef:()=>gWe,useState:()=>oI});function H6(t,e){Ss.__h&&Ss.__h(Ci,t,QC||e),QC=0;var n=Ci.__H||(Ci.__H={__:[],__h:[]});return t>=n.__.length&&n.__.push({}),n.__[t]}function oI(t){return QC=1,Qve(Xve,t)}function Qve(t,e,n){var r=H6(Ov++,2);if(r.t=t,!r.__c&&(r.__=[n?n(e):Xve(void 0,e),function(c){var u=r.__N?r.__N[0]:r.__[0],d=r.t(u,c);u!==d&&(r.__N=[d,r.__[1]],r.__c.setState({}))}],r.__c=Ci,!Ci.__f)){var o=function(c,u,d){if(!r.__c.__H)return!0;var h=r.__c.__H.__.filter(function(g){return!!g.__c});if(h.every(function(g){return!g.__N}))return!i||i.call(this,c,u,d);var m=r.__c.props!==c;return h.forEach(function(g){if(g.__N){var b=g.__[0];g.__=g.__N,g.__N=void 0,b!==g.__[0]&&(m=!0)}}),i&&i.call(this,c,u,d)||m};Ci.__f=!0;var i=Ci.shouldComponentUpdate,a=Ci.componentWillUpdate;Ci.componentWillUpdate=function(c,u,d){if(this.__e){var h=i;i=void 0,o(c,u,d),i=h}a&&a.call(this,c,u,d)},Ci.shouldComponentUpdate=o}return r.__N||r.__}function PJ(t,e){var n=H6(Ov++,3);!Ss.__s&&NJ(n.__H,e)&&(n.__=t,n.u=e,Ci.__H.__h.push(n))}function Jve(t,e){var n=H6(Ov++,4);!Ss.__s&&NJ(n.__H,e)&&(n.__=t,n.u=e,Ci.__h.push(n))}function gWe(t){return QC=5,MJ(function(){return{current:t}},[])}function yWe(t,e,n){QC=6,Jve(function(){if(typeof t==\"function\"){var r=t(e());return function(){t(null),r&&typeof r==\"function\"&&r()}}if(t)return t.current=e(),function(){return t.current=null}},n==null?n:n.concat(t))}function MJ(t,e){var n=H6(Ov++,7);return NJ(n.__H,e)&&(n.__=t(),n.__H=e,n.__h=t),n.__}function bWe(t,e){return QC=8,MJ(function(){return t},e)}function vWe(t){var e=Ci.context[t.__c],n=H6(Ov++,9);return n.c=t,e?(n.__==null&&(n.__=!0,e.sub(Ci)),e.props.value):t.__}function wWe(t,e){Ss.useDebugValue&&Ss.useDebugValue(e?e(t):t)}function xWe(t){var e=H6(Ov++,10),n=oI();return e.__=t,Ci.componentDidCatch||(Ci.componentDidCatch=function(r,o){e.__&&e.__(r,o),n[1](r)}),[n[0],function(){n[1](void 0)}]}function EWe(){var t=H6(Ov++,11);if(!t.__){for(var e=Ci.__v;e!==null&&!e.__m&&e.__!==null;)e=e.__;var n=e.__m||(e.__m=[0,0]);t.__=\"P\"+n[0]+\"-\"+n[1]++}return t.__}function SWe(){for(var t;t=Yve.shift();)if(t.__P&&t.__H)try{t.__H.__h.forEach(uU),t.__H.__h.forEach(OJ),t.__H.__h=[]}catch(e){t.__H.__h=[],Ss.__e(e,t.__v)}}function kWe(t){var e,n=function(){clearTimeout(r),Zve&&cancelAnimationFrame(e),setTimeout(t)},r=setTimeout(n,35);Zve&&(e=requestAnimationFrame(n))}function uU(t){var e=Ci,n=t.__c;typeof n==\"function\"&&(t.__c=void 0,n()),Ci=e}function OJ(t){var e=Ci;t.__c=t.__(),Ci=e}function NJ(t,e){return!t||t.length!==e.length||e.some(function(n,r){return n!==t[r]})}function Xve(t,e){return typeof e==\"function\"?e(t):e}var Ov,Ci,IJ,Hve,QC,Yve,Ss,qve,Wve,Vve,$ve,Kve,Gve,Zve,JC=ce(()=>{p();Dc();QC=0,Yve=[],Ss=_i,qve=Ss.__b,Wve=Ss.__r,Vve=Ss.diffed,$ve=Ss.__c,Kve=Ss.unmount,Gve=Ss.__;Ss.__b=function(t){Ci=null,qve&&qve(t)},Ss.__=function(t,e){t&&e.__k&&e.__k.__m&&(t.__m=e.__k.__m),Gve&&Gve(t,e)},Ss.__r=function(t){Wve&&Wve(t),Ov=0;var e=(Ci=t.__c).__H;e&&(IJ===Ci?(e.__h=[],Ci.__h=[],e.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(e.__h.forEach(uU),e.__h.forEach(OJ),e.__h=[],Ov=0)),IJ=Ci},Ss.diffed=function(t){Vve&&Vve(t);var e=t.__c;e&&e.__H&&(e.__H.__h.length&&(Yve.push(e)!==1&&Hve===Ss.requestAnimationFrame||((Hve=Ss.requestAnimationFrame)||kWe)(SWe)),e.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),IJ=Ci=null},Ss.__c=function(t,e){e.some(function(n){try{n.__h.forEach(uU),n.__h=n.__h.filter(function(r){return!r.__||OJ(r)})}catch(r){e.some(function(o){o.__h&&(o.__h=[])}),e=[],Ss.__e(r,n.__v)}}),$ve&&$ve(t,e)},Ss.unmount=function(t){Kve&&Kve(t);var e,n=t.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{uU(r)}catch(o){e=o}}),n.__H=void 0,e&&Ss.__e(e,n.__v))};Zve=typeof requestAnimationFrame==\"function\"});var e2e,t2e=ce(()=>{p();e2e=\".-cbwsdk-css-reset .-gear-container{margin-left:16px !important;margin-right:9px !important;display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:opacity .25s}.-cbwsdk-css-reset .-gear-container *{user-select:none}.-cbwsdk-css-reset .-gear-container svg{opacity:0;position:absolute}.-cbwsdk-css-reset .-gear-icon{height:12px;width:12px;z-index:10000}.-cbwsdk-css-reset .-cbwsdk-snackbar{align-items:flex-end;display:flex;flex-direction:column;position:fixed;right:0;top:0;z-index:2147483647}.-cbwsdk-css-reset .-cbwsdk-snackbar *{user-select:none}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance{display:flex;flex-direction:column;margin:8px 16px 0 16px;overflow:visible;text-align:left;transform:translateX(0);transition:opacity .25s,transform .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header:hover .-gear-container svg{opacity:1}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header{display:flex;align-items:center;background:#fff;overflow:hidden;border:1px solid #e7ebee;box-sizing:border-box;border-radius:8px;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header-cblogo{margin:8px 8px 8px 8px}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header *{cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header-message{color:#000;font-size:13px;line-height:1.5;user-select:none}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu{background:#fff;transition:opacity .25s ease-in-out,transform .25s linear,visibility 0s;visibility:hidden;border:1px solid #e7ebee;box-sizing:border-box;border-radius:8px;opacity:0;flex-direction:column;padding-left:8px;padding-right:8px}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:last-child{margin-bottom:8px !important}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover{background:#f5f7f8;border-radius:6px;transition:background .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover span{color:#050f19;transition:color .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover svg path{fill:#000;transition:fill .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item{visibility:inherit;height:35px;margin-top:8px;margin-bottom:0;display:flex;flex-direction:row;align-items:center;padding:8px;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item *{visibility:inherit;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover{background:rgba(223,95,103,.2);transition:background .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover *{cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover svg path{fill:#df5f67;transition:fill .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover span{color:#df5f67;transition:color .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-info{color:#aaa;font-size:13px;margin:0 8px 0 32px;position:absolute}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-hidden{opacity:0;text-align:left;transform:translateX(25%);transition:opacity .5s linear}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-expanded .-cbwsdk-snackbar-instance-menu{opacity:1;display:flex;transform:translateY(8px);visibility:visible}\"});var _We,CWe,XC,LJ,AWe,dU=ce(()=>{p();_x();Dc();JC();Q9();t2e();_We=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuNDkyIDEwLjQxOWE4LjkzIDguOTMgMCAwMTguOTMtOC45M2gxMS4xNjNhOC45MyA4LjkzIDAgMDE4LjkzIDguOTN2MTEuMTYzYTguOTMgOC45MyAwIDAxLTguOTMgOC45M0gxMC40MjJhOC45MyA4LjkzIDAgMDEtOC45My04LjkzVjEwLjQxOXoiIGZpbGw9IiMxNjUyRjAiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwLjQxOSAwSDIxLjU4QzI3LjMzNSAwIDMyIDQuNjY1IDMyIDEwLjQxOVYyMS41OEMzMiAyNy4zMzUgMjcuMzM1IDMyIDIxLjU4MSAzMkgxMC40MkM0LjY2NSAzMiAwIDI3LjMzNSAwIDIxLjU4MVYxMC40MkMwIDQuNjY1IDQuNjY1IDAgMTAuNDE5IDB6bTAgMS40ODhhOC45MyA4LjkzIDAgMDAtOC45MyA4LjkzdjExLjE2M2E4LjkzIDguOTMgMCAwMDguOTMgOC45M0gyMS41OGE4LjkzIDguOTMgMCAwMDguOTMtOC45M1YxMC40MmE4LjkzIDguOTMgMCAwMC04LjkzLTguOTNIMTAuNDJ6IiBmaWxsPSIjZmZmIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNS45OTggMjYuMDQ5Yy01LjU0OSAwLTEwLjA0Ny00LjQ5OC0xMC4wNDctMTAuMDQ3IDAtNS41NDggNC40OTgtMTAuMDQ2IDEwLjA0Ny0xMC4wNDYgNS41NDggMCAxMC4wNDYgNC40OTggMTAuMDQ2IDEwLjA0NiAwIDUuNTQ5LTQuNDk4IDEwLjA0Ny0xMC4wNDYgMTAuMDQ3eiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0xMi43NjIgMTQuMjU0YzAtLjgyMi42NjctMS40ODkgMS40ODktMS40ODloMy40OTdjLjgyMiAwIDEuNDg4LjY2NiAxLjQ4OCAxLjQ4OXYzLjQ5N2MwIC44MjItLjY2NiAxLjQ4OC0xLjQ4OCAxLjQ4OGgtMy40OTdhMS40ODggMS40ODggMCAwMS0xLjQ4OS0xLjQ4OHYtMy40OTh6IiBmaWxsPSIjMTY1MkYwIi8+PC9zdmc+\",CWe=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDYuNzV2LTEuNWwtMS43Mi0uNTdjLS4wOC0uMjctLjE5LS41Mi0uMzItLjc3bC44MS0xLjYyLTEuMDYtMS4wNi0xLjYyLjgxYy0uMjQtLjEzLS41LS4yNC0uNzctLjMyTDYuNzUgMGgtMS41bC0uNTcgMS43MmMtLjI3LjA4LS41My4xOS0uNzcuMzJsLTEuNjItLjgxLTEuMDYgMS4wNi44MSAxLjYyYy0uMTMuMjQtLjI0LjUtLjMyLjc3TDAgNS4yNXYxLjVsMS43Mi41N2MuMDguMjcuMTkuNTMuMzIuNzdsLS44MSAxLjYyIDEuMDYgMS4wNiAxLjYyLS44MWMuMjQuMTMuNS4yMy43Ny4zMkw1LjI1IDEyaDEuNWwuNTctMS43MmMuMjctLjA4LjUyLS4xOS43Ny0uMzJsMS42Mi44MSAxLjA2LTEuMDYtLjgxLTEuNjJjLjEzLS4yNC4yMy0uNS4zMi0uNzdMMTIgNi43NXpNNiA4LjVhMi41IDIuNSAwIDAxMC01IDIuNSAyLjUgMCAwMTAgNXoiIGZpbGw9IiMwNTBGMTkiLz48L3N2Zz4=\",XC=class{constructor(){this.items=new Map,this.nextItemKey=0,this.root=null,this.darkMode=sU()}attach(e){this.root=document.createElement(\"div\"),this.root.className=\"-cbwsdk-snackbar-root\",e.appendChild(this.root),this.render()}presentItem(e){let n=this.nextItemKey++;return this.items.set(n,e),this.render(),()=>{this.items.delete(n),this.render()}}clear(){this.items.clear(),this.render()}render(){this.root&&z6(Mo(\"div\",null,Mo(LJ,{darkMode:this.darkMode},Array.from(this.items.entries()).map(([e,n])=>Mo(AWe,Object.assign({},n,{key:e}))))),this.root)}},LJ=t=>Mo(\"div\",{class:Iv(\"-cbwsdk-snackbar-container\")},Mo(\"style\",null,e2e),Mo(\"div\",{class:\"-cbwsdk-snackbar\"},t.children)),AWe=({autoExpand:t,message:e,menuItems:n})=>{let[r,o]=oI(!0),[i,a]=oI(t??!1);PJ(()=>{let u=[window.setTimeout(()=>{o(!1)},1),window.setTimeout(()=>{a(!0)},1e4)];return()=>{u.forEach(window.clearTimeout)}});let c=()=>{a(!i)};return Mo(\"div\",{class:Iv(\"-cbwsdk-snackbar-instance\",r&&\"-cbwsdk-snackbar-instance-hidden\",i&&\"-cbwsdk-snackbar-instance-expanded\")},Mo(\"div\",{class:\"-cbwsdk-snackbar-instance-header\",onClick:c},Mo(\"img\",{src:_We,class:\"-cbwsdk-snackbar-instance-header-cblogo\"}),\" \",Mo(\"div\",{class:\"-cbwsdk-snackbar-instance-header-message\"},e),Mo(\"div\",{class:\"-gear-container\"},!i&&Mo(\"svg\",{width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Mo(\"circle\",{cx:\"12\",cy:\"12\",r:\"12\",fill:\"#F5F7F8\"})),Mo(\"img\",{src:CWe,class:\"-gear-icon\",title:\"Expand\"}))),n&&n.length>0&&Mo(\"div\",{class:\"-cbwsdk-snackbar-instance-menu\"},n.map((u,d)=>Mo(\"div\",{class:Iv(\"-cbwsdk-snackbar-instance-menu-item\",u.isRed&&\"-cbwsdk-snackbar-instance-menu-item-is-red\"),onClick:u.onClick,key:d},Mo(\"svg\",{width:u.svgWidth,height:u.svgHeight,viewBox:\"0 0 10 11\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},Mo(\"path\",{\"fill-rule\":u.defaultFillRule,\"clip-rule\":u.defaultClipRule,d:u.path,fill:\"#AAAAAA\"})),Mo(\"span\",{class:Iv(\"-cbwsdk-snackbar-instance-menu-item-info\",u.isRed&&\"-cbwsdk-snackbar-instance-menu-item-info-is-red\")},u.info)))))}});var BJ,fU,DJ=ce(()=>{p();EJ();dU();BJ=\"M5.00008 0.96875C6.73133 0.96875 8.23758 1.94375 9.00008 3.375L10.0001 2.375V5.5H9.53133H7.96883H6.87508L7.80633 4.56875C7.41258 3.3875 6.31258 2.53125 5.00008 2.53125C3.76258 2.53125 2.70633 3.2875 2.25633 4.36875L0.812576 3.76875C1.50008 2.125 3.11258 0.96875 5.00008 0.96875ZM2.19375 6.43125C2.5875 7.6125 3.6875 8.46875 5 8.46875C6.2375 8.46875 7.29375 7.7125 7.74375 6.63125L9.1875 7.23125C8.5 8.875 6.8875 10.0312 5 10.0312C3.26875 10.0312 1.7625 9.05625 1 7.625L0 8.625V5.5H0.46875H2.03125H3.125L2.19375 6.43125Z\",fU=class{constructor(){this.attached=!1,this.snackbar=new XC}attach(){if(this.attached)throw new Error(\"Coinbase Wallet SDK UI is already attached\");let e=document.documentElement,n=document.createElement(\"div\");n.className=\"-cbwsdk-css-reset\",e.appendChild(n),this.snackbar.attach(n),this.attached=!0,aU()}showConnecting(e){let n;return e.isUnlinkedErrorState?n={autoExpand:!0,message:\"Connection lost\",menuItems:[{isRed:!1,info:\"Reset connection\",svgWidth:\"10\",svgHeight:\"11\",path:\"M5.00008 0.96875C6.73133 0.96875 8.23758 1.94375 9.00008 3.375L10.0001 2.375V5.5H9.53133H7.96883H6.87508L7.80633 4.56875C7.41258 3.3875 6.31258 2.53125 5.00008 2.53125C3.76258 2.53125 2.70633 3.2875 2.25633 4.36875L0.812576 3.76875C1.50008 2.125 3.11258 0.96875 5.00008 0.96875ZM2.19375 6.43125C2.5875 7.6125 3.6875 8.46875 5 8.46875C6.2375 8.46875 7.29375 7.7125 7.74375 6.63125L9.1875 7.23125C8.5 8.875 6.8875 10.0312 5 10.0312C3.26875 10.0312 1.7625 9.05625 1 7.625L0 8.625V5.5H0.46875H2.03125H3.125L2.19375 6.43125Z\",defaultFillRule:\"evenodd\",defaultClipRule:\"evenodd\",onClick:e.onResetConnection}]}:n={message:\"Confirm on phone\",menuItems:[{isRed:!0,info:\"Cancel transaction\",svgWidth:\"11\",svgHeight:\"11\",path:\"M10.3711 1.52346L9.21775 0.370117L5.37109 4.21022L1.52444 0.370117L0.371094 1.52346L4.2112 5.37012L0.371094 9.21677L1.52444 10.3701L5.37109 6.53001L9.21775 10.3701L10.3711 9.21677L6.53099 5.37012L10.3711 1.52346Z\",defaultFillRule:\"inherit\",defaultClipRule:\"inherit\",onClick:e.onCancel},{isRed:!1,info:\"Reset connection\",svgWidth:\"10\",svgHeight:\"11\",path:BJ,defaultFillRule:\"evenodd\",defaultClipRule:\"evenodd\",onClick:e.onResetConnection}]},this.snackbar.presentItem(n)}}});var n2e,r2e=ce(()=>{p();n2e=\".-cbwsdk-css-reset .-cbwsdk-redirect-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;transition:opacity .25s;background-color:rgba(10,11,13,.5)}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-backdrop-hidden{opacity:0}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box{display:block;position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);padding:20px;border-radius:8px;background-color:#fff;color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box p{display:block;font-weight:400;font-size:14px;line-height:20px;padding-bottom:12px;color:#5b636e}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box button{appearance:none;border:none;background:none;color:#0052ff;padding:0;text-decoration:none;display:block;font-weight:600;font-size:16px;line-height:24px}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.dark{background-color:#0a0b0d;color:#fff}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.dark button{color:#0052ff}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.light{background-color:#fff;color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.light button{color:#0052ff}\"});var hU,TWe,o2e=ce(()=>{p();_x();Dc();EJ();dU();Q9();r2e();hU=class{constructor(){this.root=null,this.darkMode=sU()}attach(){let e=document.documentElement;this.root=document.createElement(\"div\"),this.root.className=\"-cbwsdk-css-reset\",e.appendChild(this.root),aU()}present(e){this.render(e)}clear(){this.render(null)}render(e){this.root&&(z6(null,this.root),e&&z6(Mo(TWe,Object.assign({},e,{onDismiss:()=>{this.clear()},darkMode:this.darkMode})),this.root))}},TWe=({title:t,buttonText:e,darkMode:n,onButtonClick:r,onDismiss:o})=>{let i=n?\"dark\":\"light\";return Mo(LJ,{darkMode:n},Mo(\"div\",{class:\"-cbwsdk-redirect-dialog\"},Mo(\"style\",null,n2e),Mo(\"div\",{class:\"-cbwsdk-redirect-dialog-backdrop\",onClick:o}),Mo(\"div\",{class:Iv(\"-cbwsdk-redirect-dialog-box\",i)},Mo(\"p\",null,t),Mo(\"button\",{onClick:r},e))))}});var i2e,s2e,FJ,a2e,sI=ce(()=>{p();i2e=\"https://keys.coinbase.com/connect\",s2e=\"https://rpc.wallet.coinbase.com\",FJ=\"https://www.walletlink.org\",a2e=\"https://go.cb-w.com/walletlink\"});var aI,c2e=ce(()=>{p();o2e();Q9();sI();aI=class{constructor(){this.attached=!1,this.redirectDialog=new hU}attach(){if(this.attached)throw new Error(\"Coinbase Wallet SDK UI is already attached\");this.redirectDialog.attach(),this.attached=!0}redirectToCoinbaseWallet(e){let n=new URL(a2e);n.searchParams.append(\"redirect_url\",vve().href),e&&n.searchParams.append(\"wl_url\",e);let r=document.createElement(\"a\");r.target=\"cbw-opener\",r.href=n.href,r.rel=\"noreferrer noopener\",r.click()}openCoinbaseWalletDeeplink(e){this.redirectDialog.present({title:\"Redirecting to Coinbase Wallet...\",buttonText:\"Open\",onButtonClick:()=>{this.redirectToCoinbaseWallet(e)}}),setTimeout(()=>{this.redirectToCoinbaseWallet(e)},99)}showConnecting(e){return()=>{this.redirectDialog.clear()}}}});var cI,l2e=ce(()=>{p();hve();XF();pve();bve();eU();Q9();DJ();c2e();Cv();_v();$y();cI=class t{constructor(e){this.chainCallbackParams={chainId:\"\",jsonRpcUrl:\"\"},this.isMobileWeb=wve(),this.linkedUpdated=i=>{this.isLinked=i;let a=this.storage.getItem(Y9);if(i&&(this._session.linked=i),this.isUnlinkedErrorState=!1,a){let c=a.split(\" \"),u=this.storage.getItem(\"IsStandaloneSigning\")===\"true\";c[0]!==\"\"&&!i&&this._session.linked&&!u&&(this.isUnlinkedErrorState=!0)}},this.metadataUpdated=(i,a)=>{this.storage.setItem(i,a)},this.chainUpdated=(i,a)=>{this.chainCallbackParams.chainId===i&&this.chainCallbackParams.jsonRpcUrl===a||(this.chainCallbackParams={chainId:i,jsonRpcUrl:a},this.chainCallback&&this.chainCallback(a,Number.parseInt(i,10)))},this.accountUpdated=i=>{this.accountsCallback&&this.accountsCallback([i]),t.accountRequestCallbackIds.size>0&&(Array.from(t.accountRequestCallbackIds.values()).forEach(a=>{this.invokeCallback(a,{method:\"requestEthereumAccounts\",result:[i]})}),t.accountRequestCallbackIds.clear())},this.resetAndReload=this.resetAndReload.bind(this),this.linkAPIUrl=e.linkAPIUrl,this.storage=e.storage,this.metadata=e.metadata,this.accountsCallback=e.accountsCallback,this.chainCallback=e.chainCallback;let{session:n,ui:r,connection:o}=this.subscribe();this._session=n,this.connection=o,this.relayEventManager=new iU,this.ui=r,this.ui.attach()}subscribe(){let e=GC.load(this.storage)||GC.create(this.storage),{linkAPIUrl:n}=this,r=new oU({session:e,linkAPIUrl:n,listener:this}),o=this.isMobileWeb?new aI:new fU;return r.connect(),{session:e,ui:o,connection:r}}resetAndReload(){this.connection.destroy().then(()=>{let e=GC.load(this.storage);e?.id===this._session.id&&Bc.clearAll(),document.location.reload()}).catch(e=>{})}signEthereumTransaction(e){return this.sendRequest({method:\"signEthereumTransaction\",params:{fromAddress:e.fromAddress,toAddress:e.toAddress,weiValue:ng(e.weiValue),data:B6(e.data,!0),nonce:e.nonce,gasPriceInWei:e.gasPriceInWei?ng(e.gasPriceInWei):null,maxFeePerGas:e.gasPriceInWei?ng(e.gasPriceInWei):null,maxPriorityFeePerGas:e.gasPriceInWei?ng(e.gasPriceInWei):null,gasLimit:e.gasLimit?ng(e.gasLimit):null,chainId:e.chainId,shouldSubmit:!1}})}signAndSubmitEthereumTransaction(e){return this.sendRequest({method:\"signEthereumTransaction\",params:{fromAddress:e.fromAddress,toAddress:e.toAddress,weiValue:ng(e.weiValue),data:B6(e.data,!0),nonce:e.nonce,gasPriceInWei:e.gasPriceInWei?ng(e.gasPriceInWei):null,maxFeePerGas:e.maxFeePerGas?ng(e.maxFeePerGas):null,maxPriorityFeePerGas:e.maxPriorityFeePerGas?ng(e.maxPriorityFeePerGas):null,gasLimit:e.gasLimit?ng(e.gasLimit):null,chainId:e.chainId,shouldSubmit:!0}})}submitEthereumTransaction(e,n){return this.sendRequest({method:\"submitEthereumTransaction\",params:{signedTransaction:B6(e,!0),chainId:n}})}getWalletLinkSession(){return this._session}sendRequest(e){let n=null,r=Av(8),o=i=>{this.publishWeb3RequestCanceledEvent(r),this.handleErrorResponse(r,e.method,i),n?.()};return new Promise((i,a)=>{n=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:o,onResetConnection:this.resetAndReload}),this.relayEventManager.callbacks.set(r,c=>{if(n?.(),za(c))return a(new Error(c.errorMessage));i(c)}),this.publishWeb3RequestEvent(r,e)})}publishWeb3RequestEvent(e,n){let r={type:\"WEB3_REQUEST\",id:e,request:n};this.publishEvent(\"Web3Request\",r,!0).then(o=>{}).catch(o=>{this.handleWeb3ResponseMessage(r.id,{method:n.method,errorMessage:o.message})}),this.isMobileWeb&&this.openCoinbaseWalletDeeplink(n.method)}openCoinbaseWalletDeeplink(e){if(this.ui instanceof aI)switch(e){case\"requestEthereumAccounts\":case\"switchEthereumChain\":return;default:window.addEventListener(\"blur\",()=>{window.addEventListener(\"focus\",()=>{this.connection.checkUnseenEvents()},{once:!0})},{once:!0}),this.ui.openCoinbaseWalletDeeplink();break}}publishWeb3RequestCanceledEvent(e){let n={type:\"WEB3_REQUEST_CANCELED\",id:e};this.publishEvent(\"Web3RequestCanceled\",n,!1).then()}publishEvent(e,n,r){return this.connection.publishEvent(e,n,r)}handleWeb3ResponseMessage(e,n){if(n.method===\"requestEthereumAccounts\"){t.accountRequestCallbackIds.forEach(r=>this.invokeCallback(r,n)),t.accountRequestCallbackIds.clear();return}this.invokeCallback(e,n)}handleErrorResponse(e,n,r){var o;let i=(o=r?.message)!==null&&o!==void 0?o:\"Unspecified error message.\";this.handleWeb3ResponseMessage(e,{method:n,errorMessage:i})}invokeCallback(e,n){let r=this.relayEventManager.callbacks.get(e);r&&(r(n),this.relayEventManager.callbacks.delete(e))}requestEthereumAccounts(){let{appName:e,appLogoUrl:n}=this.metadata,r={method:\"requestEthereumAccounts\",params:{appName:e,appLogoUrl:n}},o=null,i=Av(8);return new Promise((a,c)=>{this.relayEventManager.callbacks.set(i,u=>{if(o?.(),za(u))return c(new Error(u.errorMessage));a(u)}),t.accountRequestCallbackIds.add(i),this.publishWeb3RequestEvent(i,r)})}watchAsset(e,n,r,o,i,a){let c={method:\"watchAsset\",params:{type:e,options:{address:n,symbol:r,decimals:o,image:i},chainId:a}},u=null,d=Av(8),h=m=>{this.publishWeb3RequestCanceledEvent(d),this.handleErrorResponse(d,c.method,m),u?.()};return u=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:h,onResetConnection:this.resetAndReload}),new Promise((m,g)=>{this.relayEventManager.callbacks.set(d,b=>{if(u?.(),za(b))return g(new Error(b.errorMessage));m(b)}),this.publishWeb3RequestEvent(d,c)})}addEthereumChain(e,n,r,o,i,a){let c={method:\"addEthereumChain\",params:{chainId:e,rpcUrls:n,blockExplorerUrls:o,chainName:i,iconUrls:r,nativeCurrency:a}},u=null,d=Av(8),h=m=>{this.publishWeb3RequestCanceledEvent(d),this.handleErrorResponse(d,c.method,m),u?.()};return u=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:h,onResetConnection:this.resetAndReload}),new Promise((m,g)=>{this.relayEventManager.callbacks.set(d,b=>{if(u?.(),za(b))return g(new Error(b.errorMessage));m(b)}),this.publishWeb3RequestEvent(d,c)})}switchEthereumChain(e,n){let r={method:\"switchEthereumChain\",params:Object.assign({chainId:e},{address:n})},o=null,i=Av(8),a=c=>{this.publishWeb3RequestCanceledEvent(i),this.handleErrorResponse(i,r.method,c),o?.()};return o=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:a,onResetConnection:this.resetAndReload}),new Promise((c,u)=>{this.relayEventManager.callbacks.set(i,d=>{if(o?.(),za(d)&&d.errorCode)return u(sr.provider.custom({code:d.errorCode,message:\"Unrecognized chain ID. Try adding the chain using addEthereumChain first.\"}));if(za(d))return u(new Error(d.errorMessage));c(d)}),this.publishWeb3RequestEvent(i,r)})}};cI.accountRequestCallbackIds=new Set});var lI,u2e,d2e,uI,f2e=ce(()=>{p();lI=he(ave(),1);XF();eU();l2e();sI();Cv();_v();$y();WC();u2e=\"DefaultChainId\",d2e=\"DefaultJsonRpcUrl\",uI=class{constructor(e){this._relay=null,this._addresses=[],this.metadata=e.metadata,this._storage=new Bc(\"walletlink\",FJ),this.callback=e.callback||null;let n=this._storage.getItem(Y9);if(n){let r=n.split(\" \");r[0]!==\"\"&&(this._addresses=r.map(o=>Tv(o)))}this.initializeRelay()}getSession(){let e=this.initializeRelay(),{id:n,secret:r}=e.getWalletLinkSession();return{id:n,secret:r}}async handshake(){await this._eth_requestAccounts()}get selectedAddress(){return this._addresses[0]||void 0}get jsonRpcUrl(){var e;return(e=this._storage.getItem(d2e))!==null&&e!==void 0?e:void 0}set jsonRpcUrl(e){this._storage.setItem(d2e,e)}updateProviderInfo(e,n){var r;this.jsonRpcUrl=e;let o=this.getChainId();this._storage.setItem(u2e,n.toString(10)),D6(n)!==o&&((r=this.callback)===null||r===void 0||r.call(this,\"chainChanged\",rg(n)))}async watchAsset(e){let n=Array.isArray(e)?e[0]:e;if(!n.type)throw sr.rpc.invalidParams(\"Type is required\");if(n?.type!==\"ERC20\")throw sr.rpc.invalidParams(`Asset of type \\'${n.type}\\' is not supported`);if(!n?.options)throw sr.rpc.invalidParams(\"Options are required\");if(!n?.options.address)throw sr.rpc.invalidParams(\"Address is required\");let r=this.getChainId(),{address:o,symbol:i,image:a,decimals:c}=n.options,d=await this.initializeRelay().watchAsset(n.type,o,i,c,a,r?.toString());return za(d)?!1:!!d.result}async addEthereumChain(e){var n,r;let o=e[0];if(((n=o.rpcUrls)===null||n===void 0?void 0:n.length)===0)throw sr.rpc.invalidParams(\"please pass in at least 1 rpcUrl\");if(!o.chainName||o.chainName.trim()===\"\")throw sr.rpc.invalidParams(\"chainName is a required field\");if(!o.nativeCurrency)throw sr.rpc.invalidParams(\"nativeCurrency is a required field\");let i=Number.parseInt(o.chainId,16);if(i===this.getChainId())return!1;let a=this.initializeRelay(),{rpcUrls:c=[],blockExplorerUrls:u=[],chainName:d,iconUrls:h=[],nativeCurrency:m}=o,g=await a.addEthereumChain(i.toString(),c,h,u,d,m);if(za(g))return!1;if(((r=g.result)===null||r===void 0?void 0:r.isApproved)===!0)return this.updateProviderInfo(c[0],i),null;throw sr.rpc.internal(\"unable to add ethereum chain\")}async switchEthereumChain(e){let n=e[0],r=Number.parseInt(n.chainId,16),i=await this.initializeRelay().switchEthereumChain(r.toString(10),this.selectedAddress||void 0);if(za(i))throw i;let a=i.result;return a.isApproved&&a.rpcUrl.length>0&&this.updateProviderInfo(a.rpcUrl,r),null}async cleanup(){this.callback=null,this._relay&&this._relay.resetAndReload(),this._storage.clear()}_setAddresses(e,n){var r;if(!Array.isArray(e))throw new Error(\"addresses is not an array\");let o=e.map(i=>Tv(i));JSON.stringify(o)!==JSON.stringify(this._addresses)&&(this._addresses=o,(r=this.callback)===null||r===void 0||r.call(this,\"accountsChanged\",o),this._storage.setItem(Y9,o.join(\" \")))}async request(e){let n=e.params||[];switch(e.method){case\"eth_accounts\":return[...this._addresses];case\"eth_coinbase\":return this.selectedAddress||null;case\"net_version\":return this.getChainId().toString(10);case\"eth_chainId\":return rg(this.getChainId());case\"eth_requestAccounts\":return this._eth_requestAccounts();case\"eth_ecRecover\":case\"personal_ecRecover\":return this.ecRecover(e);case\"personal_sign\":return this.personalSign(e);case\"eth_signTransaction\":return this._eth_signTransaction(n);case\"eth_sendRawTransaction\":return this._eth_sendRawTransaction(n);case\"eth_sendTransaction\":return this._eth_sendTransaction(n);case\"eth_signTypedData_v1\":case\"eth_signTypedData_v3\":case\"eth_signTypedData_v4\":case\"eth_signTypedData\":return this.signTypedData(e);case\"wallet_addEthereumChain\":return this.addEthereumChain(n);case\"wallet_switchEthereumChain\":return this.switchEthereumChain(n);case\"wallet_watchAsset\":return this.watchAsset(n);default:if(!this.jsonRpcUrl)throw sr.rpc.internal(\"No RPC URL set for chain\");return qC(e,this.jsonRpcUrl)}}_ensureKnownAddress(e){let n=Tv(e);if(!this._addresses.map(o=>Tv(o)).includes(n))throw new Error(\"Unknown Ethereum address\")}_prepareTransactionParams(e){let n=e.from?Tv(e.from):this.selectedAddress;if(!n)throw new Error(\"Ethereum address is unavailable\");this._ensureKnownAddress(n);let r=e.to?Tv(e.to):null,o=e.value!=null?HC(e.value):BigInt(0),i=e.data?HF(e.data):globalThis.Buffer.alloc(0),a=e.nonce!=null?D6(e.nonce):null,c=e.gasPrice!=null?HC(e.gasPrice):null,u=e.maxFeePerGas!=null?HC(e.maxFeePerGas):null,d=e.maxPriorityFeePerGas!=null?HC(e.maxPriorityFeePerGas):null,h=e.gas!=null?HC(e.gas):null,m=e.chainId?D6(e.chainId):this.getChainId();return{fromAddress:n,toAddress:r,weiValue:o,data:i,nonce:a,gasPriceInWei:c,maxFeePerGas:u,maxPriorityFeePerGas:d,gasLimit:h,chainId:m}}async ecRecover(e){let{method:n,params:r}=e;if(!Array.isArray(r))throw sr.rpc.invalidParams();let i=await this.initializeRelay().sendRequest({method:\"ethereumAddressFromSignedMessage\",params:{message:jF(r[0]),signature:jF(r[1]),addPrefix:n===\"personal_ecRecover\"}});if(za(i))throw i;return i.result}getChainId(){var e;return Number.parseInt((e=this._storage.getItem(u2e))!==null&&e!==void 0?e:\"1\",10)}async _eth_requestAccounts(){var e,n;if(this._addresses.length>0)return(e=this.callback)===null||e===void 0||e.call(this,\"connect\",{chainId:rg(this.getChainId())}),this._addresses;let o=await this.initializeRelay().requestEthereumAccounts();if(za(o))throw o;if(!o.result)throw new Error(\"accounts received is empty\");return this._setAddresses(o.result),(n=this.callback)===null||n===void 0||n.call(this,\"connect\",{chainId:rg(this.getChainId())}),this._addresses}async personalSign({params:e}){if(!Array.isArray(e))throw sr.rpc.invalidParams();let n=e[1],r=e[0];this._ensureKnownAddress(n);let i=await this.initializeRelay().sendRequest({method:\"signEthereumMessage\",params:{address:Tv(n),message:jF(r),addPrefix:!0,typedDataJson:null}});if(za(i))throw i;return i.result}async _eth_signTransaction(e){let n=this._prepareTransactionParams(e[0]||{}),o=await this.initializeRelay().signEthereumTransaction(n);if(za(o))throw o;return o.result}async _eth_sendRawTransaction(e){let n=HF(e[0]),o=await this.initializeRelay().submitEthereumTransaction(n,this.getChainId());if(za(o))throw o;return o.result}async _eth_sendTransaction(e){let n=this._prepareTransactionParams(e[0]||{}),o=await this.initializeRelay().signAndSubmitEthereumTransaction(n);if(za(o))throw o;return o.result}async signTypedData(e){let{method:n,params:r}=e;if(!Array.isArray(r))throw sr.rpc.invalidParams();let o=d=>{let h={eth_signTypedData_v1:lI.default.hashForSignTypedDataLegacy,eth_signTypedData_v3:lI.default.hashForSignTypedData_v3,eth_signTypedData_v4:lI.default.hashForSignTypedData_v4,eth_signTypedData:lI.default.hashForSignTypedData_v4};return B6(h[n]({data:K1e(d)}),!0)},i=r[n===\"eth_signTypedData_v1\"?1:0],a=r[n===\"eth_signTypedData_v1\"?0:1];this._ensureKnownAddress(i);let u=await this.initializeRelay().sendRequest({method:\"signEthereumMessage\",params:{address:Tv(i),message:o(a),typedDataJson:JSON.stringify(a,null,2),addPrefix:!1}});if(za(u))throw u;return u.result}initializeRelay(){return this._relay||(this._relay=new cI({linkAPIUrl:FJ,storage:this._storage,metadata:this.metadata,accountsCallback:this._setAddresses.bind(this),chainCallback:this.updateProviderInfo.bind(this)})),this._relay}}});function m2e(){return p2e.getItem(h2e)}function g2e(t){p2e.setItem(h2e,t)}async function y2e(t){let{communicator:e,metadata:n,handshakeRequest:r,callback:o}=t;RWe(e,n,o).catch(()=>{});let i={id:crypto.randomUUID(),event:\"selectSignerType\",data:Object.assign(Object.assign({},t.preference),{handshakeRequest:r})},{data:a}=await e.postRequestAndWaitForResponse(i);return a}function b2e(t){let{signerType:e,metadata:n,communicator:r,callback:o}=t;switch(e){case\"scw\":return new GF({metadata:n,callback:o,communicator:r});case\"walletlink\":return new uI({metadata:n,callback:o})}}async function RWe(t,e,n){await t.onMessage(({event:o})=>o===\"WalletLinkSessionRequest\");let r=new uI({metadata:e,callback:n});t.postMessage({event:\"WalletLinkUpdate\",data:{session:r.getSession()}}),await r.handshake(),t.postMessage({event:\"WalletLinkUpdate\",data:{connected:!0}})}var h2e,p2e,v2e=ce(()=>{p();sbe();f2e();_v();h2e=\"SignerType\",p2e=new Bc(\"CBWSDK\",\"SignerConfigurator\")});var IWe,OWe,pU,w2e,mU=ce(()=>{p();IWe=`Coinbase Wallet SDK requires the Cross-Origin-Opener-Policy header to not be set to \\'same-origin\\'. This is to ensure that the SDK can communicate with the Coinbase Smart Wallet app.\\n\\nPlease see https://www.smartwallet.dev/guides/tips/popup-tips#cross-origin-opener-policy for more information.`,OWe=()=>{let t;return{getCrossOriginOpenerPolicy:()=>t===void 0?\"undefined\":t,checkCrossOriginOpenerPolicy:async()=>{if(typeof window>\"u\"){t=\"non-browser-env\";return}try{let e=`${window.location.origin}${window.location.pathname}`,n=await fetch(e,{method:\"HEAD\"});if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);let r=n.headers.get(\"Cross-Origin-Opener-Policy\");t=r??\"null\",t===\"same-origin\"&&console.error(IWe)}catch(e){console.error(\"Error checking Cross-Origin-Opener-Policy:\",e.message),t=\"error\"}}}},{checkCrossOriginOpenerPolicy:pU,getCrossOriginOpenerPolicy:w2e}=OWe()});function S2e(t){let e=(window.innerWidth-x2e)/2+window.screenX,n=(window.innerHeight-E2e)/2+window.screenY;NWe(t);function r(){let i=`wallet_${crypto.randomUUID()}`,a=window.open(t,i,`width=${x2e}, height=${E2e}, left=${e}, top=${n}`);return a?.focus(),a||null}let o=r();if(!o){let i=LWe();return new Promise((a,c)=>{i.presentItem({autoExpand:!0,message:MWe,menuItems:[Object.assign(Object.assign({},PWe),{onClick:()=>{o=r(),o?a(o):c(sr.rpc.internal(\"Popup window was blocked\")),i.clear()}})]})})}return Promise.resolve(o)}function k2e(t){t&&!t.closed&&t.close()}function NWe(t){let e={sdkName:$F,sdkVersion:om,origin:window.location.origin,coop:w2e()};for(let[n,r]of Object.entries(e))t.searchParams.append(n,r.toString())}function LWe(){if(!gU){let t=document.createElement(\"div\");t.className=\"-cbwsdk-css-reset\",document.body.appendChild(t),gU=new XC,gU.attach(t)}return gU}var x2e,E2e,PWe,MWe,gU,_2e=ce(()=>{p();F6();mU();Cv();dU();DJ();x2e=420,E2e=540,PWe={isRed:!1,info:\"Retry\",svgWidth:\"10\",svgHeight:\"11\",path:BJ,defaultFillRule:\"evenodd\",defaultClipRule:\"evenodd\"},MWe=\"Popup was blocked. Try again.\",gU=null});var yU,C2e=ce(()=>{p();F6();sI();Cv();_2e();yU=class{constructor({url:e=i2e,metadata:n,preference:r}){this.popup=null,this.listeners=new Map,this.postMessage=async o=>{(await this.waitForPopupLoaded()).postMessage(o,this.url.origin)},this.postRequestAndWaitForResponse=async o=>{let i=this.onMessage(({requestId:a})=>a===o.id);return this.postMessage(o),await i},this.onMessage=async o=>new Promise((i,a)=>{let c=u=>{if(u.origin!==this.url.origin)return;let d=u.data;o(d)&&(i(d),window.removeEventListener(\"message\",c),this.listeners.delete(c))};window.addEventListener(\"message\",c),this.listeners.set(c,{reject:a})}),this.disconnect=()=>{k2e(this.popup),this.popup=null,this.listeners.forEach(({reject:o},i)=>{o(sr.provider.userRejectedRequest(\"Request rejected\")),window.removeEventListener(\"message\",i)}),this.listeners.clear()},this.waitForPopupLoaded=async()=>this.popup&&!this.popup.closed?(this.popup.focus(),this.popup):(this.popup=await S2e(this.url),this.onMessage(({event:o})=>o===\"PopupUnload\").then(this.disconnect).catch(()=>{}),this.onMessage(({event:o})=>o===\"PopupLoaded\").then(o=>{this.postMessage({requestId:o.id,data:{version:om,metadata:this.metadata,preference:this.preference,location:window.location.toString()}})}).then(()=>{if(!this.popup)throw sr.rpc.internal();return this.popup})),this.url=new URL(e),this.metadata=n,this.preference=r}}});function A2e(t){let e=U1e(BWe(t),{shouldIncludeStack:!0}),n=new URL(\"https://docs.cloud.coinbase.com/wallet-sdk/docs/errors\");return n.searchParams.set(\"version\",om),n.searchParams.set(\"code\",e.code.toString()),n.searchParams.set(\"message\",e.message),Object.assign(Object.assign({},e),{docUrl:n.href})}function BWe(t){var e;if(typeof t==\"string\")return{message:t,code:Yi.rpc.internal};if(za(t)){let n=t.errorMessage,r=(e=t.errorCode)!==null&&e!==void 0?e:n.match(/(denied|rejected)/i)?Yi.provider.userRejectedRequest:void 0;return Object.assign(Object.assign({},t),{message:n,code:r,data:{method:t.method}})}return t}var T2e=ce(()=>{p();F6();eU();W9();iJ()});var bU,R2e=ce(()=>{p();DC();bU=class extends kv.default{}});var DWe,e8,UJ=ce(()=>{p();v2e();C2e();sI();W9();Cv();T2e();R2e();_v();$y();WC();DWe=function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols==\"function\")for(var o=0,r=Object.getOwnPropertySymbols(t);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(t,r[o])&&(n[r[o]]=t[r[o]]);return n},e8=class extends bU{constructor(e){var{metadata:n}=e,r=e.preference,{keysUrl:o}=r,i=DWe(r,[\"keysUrl\"]);super(),this.signer=null,this.isCoinbaseWallet=!0,this.metadata=n,this.preference=i,this.communicator=new yU({url:o,metadata:n,preference:i});let a=m2e();a&&(this.signer=this.initSigner(a))}async request(e){try{if(tbe(e),!this.signer)switch(e.method){case\"eth_requestAccounts\":{let n=await this.requestSignerSelection(e),r=this.initSigner(n);await r.handshake(e),this.signer=r,g2e(n);break}case\"wallet_sendCalls\":{let n=this.initSigner(\"scw\");await n.handshake({method:\"handshake\"});let r=await n.request(e);return await n.cleanup(),r}case\"wallet_getCallsStatus\":return qC(e,s2e);case\"net_version\":return 1;case\"eth_chainId\":return rg(1);default:throw sr.provider.unauthorized(\"Must call \\'eth_requestAccounts\\' before other methods\")}return await this.signer.request(e)}catch(n){let{code:r}=n;return r===Yi.provider.unauthorized&&this.disconnect(),Promise.reject(A2e(n))}}async enable(){return console.warn(\\'.enable() has been deprecated. Please use .request({ method: \"eth_requestAccounts\" }) instead.\\'),await this.request({method:\"eth_requestAccounts\"})}async disconnect(){var e;await((e=this.signer)===null||e===void 0?void 0:e.cleanup()),this.signer=null,Bc.clearAll(),this.emit(\"disconnect\",sr.provider.disconnected(\"User initiated disconnection\"))}requestSignerSelection(e){return y2e({communicator:this.communicator,preference:this.preference,metadata:this.metadata,handshakeRequest:e,callback:this.emit.bind(this)})}initSigner(e){return b2e({signerType:e,metadata:this.metadata,communicator:this.communicator,callback:this.emit.bind(this)})}}});function vU(t){if(t){if(![\"all\",\"smartWalletOnly\",\"eoaOnly\"].includes(t.options))throw new Error(`Invalid options: ${t.options}`);if(t.attribution&&t.attribution.auto!==void 0&&t.attribution.dataSuffix!==void 0)throw new Error(\"Attribution cannot contain both auto and dataSuffix properties\")}}var jJ=ce(()=>{p()});var t8,zJ=ce(()=>{p();L1e();UJ();F6();_v();$y();mU();WC();jJ();t8=class{constructor(e){this.metadata={appName:e.appName||\"Dapp\",appLogoUrl:e.appLogoUrl||G1e(),appChainIds:e.appChainIds||[]},this.storeLatestVersion(),pU()}makeWeb3Provider(e={options:\"all\"}){var n;vU(e);let r={metadata:this.metadata,preference:e};return(n=KF(r))!==null&&n!==void 0?n:new e8(r)}getCoinbaseWalletLogo(e,n=240){return N1e(e,n)}storeLatestVersion(){new Bc(\"CBWSDK\").setItem(\"VERSION\",om)}}});function I2e(t){var e;let n={metadata:t.metadata,preference:t.preference};return(e=KF(n))!==null&&e!==void 0?e:new e8(n)}var O2e=ce(()=>{p();UJ();WC()});function P2e(t){var e;new Bc(\"CBWSDK\").setItem(\"VERSION\",om),pU();let r={metadata:{appName:t.appName||\"Dapp\",appLogoUrl:t.appLogoUrl||\"\",appChainIds:t.appChainIds||[]},preference:Object.assign(FWe,(e=t.preference)!==null&&e!==void 0?e:{})};vU(r.preference);let o=null;return{getProvider:()=>(o||(o=I2e(r)),o)}}var FWe,M2e=ce(()=>{p();O2e();F6();_v();mU();jJ();FWe={options:\"all\"}});var N2e={};ld(N2e,{CoinbaseWalletSDK:()=>t8,createCoinbaseWalletSDK:()=>P2e,default:()=>UWe});var UWe,L2e=ce(()=>{p();zJ();zJ();M2e();UWe=t8});var B2e=be(wU=>{\"use strict\";p();Object.defineProperty(wU,\"__esModule\",{value:!0});wU.walletLogo=void 0;var jWe=(t,e)=>{let n;switch(t){case\"standard\":return n=e,`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' viewBox=\\'0 0 1024 1024\\' fill=\\'none\\' xmlns=\\'http://www.w3.org/2000/svg\\'%3E %3Crect width=\\'1024\\' height=\\'1024\\' fill=\\'%230052FF\\'/%3E %3Cpath fill-rule=\\'evenodd\\' clip-rule=\\'evenodd\\' d=\\'M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z\\' fill=\\'white\\'/%3E %3C/svg%3E `;case\"circle\":return n=e,`data:image/svg+xml,%3Csvg xmlns=\\'http://www.w3.org/2000/svg\\' width=\\'${e}\\' height=\\'${n}\\' viewBox=\\'0 0 999.81 999.81\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052fe;%7D.cls-2%7Bfill:%23fefefe;%7D.cls-3%7Bfill:%230152fe;%7D%3C/style%3E%3C/defs%3E%3Cpath class=\\'cls-1\\' d=\\'M655-115.9h56c.83,1.59,2.36.88,3.56,1a478,478,0,0,1,75.06,10.42C891.4-81.76,978.33-32.58,1049.19,44q116.7,126,131.94,297.61c.38,4.14-.34,8.53,1.78,12.45v59c-1.58.84-.91,2.35-1,3.56a482.05,482.05,0,0,1-10.38,74.05c-24,106.72-76.64,196.76-158.83,268.93s-178.18,112.82-287.2,122.6c-4.83.43-9.86-.25-14.51,1.77H654c-1-1.68-2.69-.91-4.06-1a496.89,496.89,0,0,1-105.9-18.59c-93.54-27.42-172.78-77.59-236.91-150.94Q199.34,590.1,184.87,426.58c-.47-5.19.25-10.56-1.77-15.59V355c1.68-1,.91-2.7,1-4.06a498.12,498.12,0,0,1,18.58-105.9c26-88.75,72.64-164.9,140.6-227.57q126-116.27,297.21-131.61C645.32-114.57,650.35-113.88,655-115.9Zm377.92,500c0-192.44-156.31-349.49-347.56-350.15-194.13-.68-350.94,155.13-352.29,347.42-1.37,194.55,155.51,352.1,348.56,352.47C876.15,734.23,1032.93,577.84,1032.93,384.11Z\\' transform=\\'translate(-183.1 115.9)\\'/%3E%3Cpath class=\\'cls-2\\' d=\\'M1032.93,384.11c0,193.73-156.78,350.12-351.29,349.74-193-.37-349.93-157.92-348.56-352.47C334.43,189.09,491.24,33.28,685.37,34,876.62,34.62,1032.94,191.67,1032.93,384.11ZM683,496.81q43.74,0,87.48,0c15.55,0,25.32-9.72,25.33-25.21q0-87.48,0-175c0-15.83-9.68-25.46-25.59-25.46H595.77c-15.88,0-25.57,9.64-25.58,25.46q0,87.23,0,174.45c0,16.18,9.59,25.7,25.84,25.71Z\\' transform=\\'translate(-183.1 115.9)\\'/%3E%3Cpath class=\\'cls-3\\' d=\\'M683,496.81H596c-16.25,0-25.84-9.53-25.84-25.71q0-87.23,0-174.45c0-15.82,9.7-25.46,25.58-25.46H770.22c15.91,0,25.59,9.63,25.59,25.46q0,87.47,0,175c0,15.49-9.78,25.2-25.33,25.21Q726.74,496.84,683,496.81Z\\' transform=\\'translate(-183.1 115.9)\\'/%3E%3C/svg%3E`;case\"text\":return n=(.1*e).toFixed(2),`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' xmlns=\\'http://www.w3.org/2000/svg\\' viewBox=\\'0 0 528.15 53.64\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052ff;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3ECoinbase_Wordmark_SubBrands_ALL%3C/title%3E%3Cpath class=\\'cls-1\\' d=\\'M164.45,15a15,15,0,0,0-11.74,5.4V0h-8.64V52.92h8.5V48a15,15,0,0,0,11.88,5.62c10.37,0,18.21-8.21,18.21-19.3S174.67,15,164.45,15Zm-1.3,30.67c-6.19,0-10.73-4.83-10.73-11.31S157,23,163.22,23s10.66,4.82,10.66,11.37S169.34,45.65,163.15,45.65Zm83.31-14.91-6.34-.93c-3-.43-5.18-1.44-5.18-3.82,0-2.59,2.8-3.89,6.62-3.89,4.18,0,6.84,1.8,7.42,4.76h8.35c-.94-7.49-6.7-11.88-15.55-11.88-9.15,0-15.2,4.68-15.2,11.3,0,6.34,4,10,12,11.16l6.33.94c3.1.43,4.83,1.65,4.83,4,0,2.95-3,4.17-7.2,4.17-5.12,0-8-2.09-8.43-5.25h-8.49c.79,7.27,6.48,12.38,16.84,12.38,9.44,0,15.7-4.32,15.7-11.74C258.12,35.28,253.58,31.82,246.46,30.74Zm-27.65-2.3c0-8.06-4.9-13.46-15.27-13.46-9.79,0-15.26,5-16.34,12.6h8.57c.43-3,2.73-5.4,7.63-5.4,4.39,0,6.55,1.94,6.55,4.32,0,3.09-4,3.88-8.85,4.39-6.63.72-14.84,3-14.84,11.66,0,6.7,5,11,12.89,11,6.19,0,10.08-2.59,12-6.7.28,3.67,3,6.05,6.84,6.05h5v-7.7h-4.25Zm-8.5,9.36c0,5-4.32,8.64-9.57,8.64-3.24,0-6-1.37-6-4.25,0-3.67,4.39-4.68,8.42-5.11s6-1.22,7.13-2.88ZM281.09,15c-11.09,0-19.23,8.35-19.23,19.36,0,11.6,8.72,19.3,19.37,19.3,9,0,16.06-5.33,17.86-12.89h-9c-1.3,3.31-4.47,5.19-8.71,5.19-5.55,0-9.72-3.46-10.66-9.51H299.3V33.12C299.3,22.46,291.53,15,281.09,15Zm-9.87,15.26c1.37-5.18,5.26-7.7,9.72-7.7,4.9,0,8.64,2.8,9.51,7.7ZM19.3,23a9.84,9.84,0,0,1,9.5,7h9.14c-1.65-8.93-9-15-18.57-15A19,19,0,0,0,0,34.34c0,11.09,8.28,19.3,19.37,19.3,9.36,0,16.85-6,18.5-15H28.8a9.75,9.75,0,0,1-9.43,7.06c-6.27,0-10.66-4.83-10.66-11.31S13,23,19.3,23Zm41.11-8A19,19,0,0,0,41,34.34c0,11.09,8.28,19.3,19.37,19.3A19,19,0,0,0,79.92,34.27C79.92,23.33,71.64,15,60.41,15Zm.07,30.67c-6.19,0-10.73-4.83-10.73-11.31S54.22,23,60.41,23s10.8,4.89,10.8,11.37S66.67,45.65,60.48,45.65ZM123.41,15c-5.62,0-9.29,2.3-11.45,5.54V15.7h-8.57V52.92H112V32.69C112,27,115.63,23,121,23c5,0,8.06,3.53,8.06,8.64V52.92h8.64V31C137.66,21.6,132.84,15,123.41,15ZM92,.36a5.36,5.36,0,0,0-5.55,5.47,5.55,5.55,0,0,0,11.09,0A5.35,5.35,0,0,0,92,.36Zm-9.72,23h5.4V52.92h8.64V15.7h-14Zm298.17-7.7L366.2,52.92H372L375.29,44H392l3.33,8.88h6L386.87,15.7ZM377,39.23l6.45-17.56h.1l6.56,17.56ZM362.66,15.7l-7.88,29h-.11l-8.14-29H341l-8,28.93h-.1l-8-28.87H319L329.82,53h5.45l8.19-29.24h.11L352,53h5.66L368.1,15.7Zm135.25,0v4.86h12.32V52.92h5.6V20.56h12.32V15.7ZM467.82,52.92h25.54V48.06H473.43v-12h18.35V31.35H473.43V20.56h19.93V15.7H467.82ZM443,15.7h-5.6V52.92h24.32V48.06H443Zm-30.45,0h-5.61V52.92h24.32V48.06H412.52Z\\'/%3E%3C/svg%3E`;case\"textWithLogo\":return n=(.25*e).toFixed(2),`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' xmlns=\\'http://www.w3.org/2000/svg\\' viewBox=\\'0 0 308.44 77.61\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052ff;%7D%3C/style%3E%3C/defs%3E%3Cpath class=\\'cls-1\\' d=\\'M142.94,20.2l-7.88,29H135l-8.15-29h-5.55l-8,28.93h-.11l-8-28.87H99.27l10.84,37.27h5.44l8.2-29.24h.1l8.41,29.24h5.66L148.39,20.2Zm17.82,0L146.48,57.42h5.82l3.28-8.88h16.65l3.34,8.88h6L167.16,20.2Zm-3.44,23.52,6.45-17.55h.11l6.56,17.55ZM278.2,20.2v4.86h12.32V57.42h5.6V25.06h12.32V20.2ZM248.11,57.42h25.54V52.55H253.71V40.61h18.35V35.85H253.71V25.06h19.94V20.2H248.11ZM223.26,20.2h-5.61V57.42H242V52.55H223.26Zm-30.46,0h-5.6V57.42h24.32V52.55H192.8Zm-154,38A19.41,19.41,0,1,1,57.92,35.57H77.47a38.81,38.81,0,1,0,0,6.47H57.92A19.39,19.39,0,0,1,38.81,58.21Z\\'/%3E%3C/svg%3E`;case\"textLight\":return n=(.1*e).toFixed(2),`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' xmlns=\\'http://www.w3.org/2000/svg\\' viewBox=\\'0 0 528.15 53.64\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fefefe;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3ECoinbase_Wordmark_SubBrands_ALL%3C/title%3E%3Cpath class=\\'cls-1\\' d=\\'M164.45,15a15,15,0,0,0-11.74,5.4V0h-8.64V52.92h8.5V48a15,15,0,0,0,11.88,5.62c10.37,0,18.21-8.21,18.21-19.3S174.67,15,164.45,15Zm-1.3,30.67c-6.19,0-10.73-4.83-10.73-11.31S157,23,163.22,23s10.66,4.82,10.66,11.37S169.34,45.65,163.15,45.65Zm83.31-14.91-6.34-.93c-3-.43-5.18-1.44-5.18-3.82,0-2.59,2.8-3.89,6.62-3.89,4.18,0,6.84,1.8,7.42,4.76h8.35c-.94-7.49-6.7-11.88-15.55-11.88-9.15,0-15.2,4.68-15.2,11.3,0,6.34,4,10,12,11.16l6.33.94c3.1.43,4.83,1.65,4.83,4,0,2.95-3,4.17-7.2,4.17-5.12,0-8-2.09-8.43-5.25h-8.49c.79,7.27,6.48,12.38,16.84,12.38,9.44,0,15.7-4.32,15.7-11.74C258.12,35.28,253.58,31.82,246.46,30.74Zm-27.65-2.3c0-8.06-4.9-13.46-15.27-13.46-9.79,0-15.26,5-16.34,12.6h8.57c.43-3,2.73-5.4,7.63-5.4,4.39,0,6.55,1.94,6.55,4.32,0,3.09-4,3.88-8.85,4.39-6.63.72-14.84,3-14.84,11.66,0,6.7,5,11,12.89,11,6.19,0,10.08-2.59,12-6.7.28,3.67,3,6.05,6.84,6.05h5v-7.7h-4.25Zm-8.5,9.36c0,5-4.32,8.64-9.57,8.64-3.24,0-6-1.37-6-4.25,0-3.67,4.39-4.68,8.42-5.11s6-1.22,7.13-2.88ZM281.09,15c-11.09,0-19.23,8.35-19.23,19.36,0,11.6,8.72,19.3,19.37,19.3,9,0,16.06-5.33,17.86-12.89h-9c-1.3,3.31-4.47,5.19-8.71,5.19-5.55,0-9.72-3.46-10.66-9.51H299.3V33.12C299.3,22.46,291.53,15,281.09,15Zm-9.87,15.26c1.37-5.18,5.26-7.7,9.72-7.7,4.9,0,8.64,2.8,9.51,7.7ZM19.3,23a9.84,9.84,0,0,1,9.5,7h9.14c-1.65-8.93-9-15-18.57-15A19,19,0,0,0,0,34.34c0,11.09,8.28,19.3,19.37,19.3,9.36,0,16.85-6,18.5-15H28.8a9.75,9.75,0,0,1-9.43,7.06c-6.27,0-10.66-4.83-10.66-11.31S13,23,19.3,23Zm41.11-8A19,19,0,0,0,41,34.34c0,11.09,8.28,19.3,19.37,19.3A19,19,0,0,0,79.92,34.27C79.92,23.33,71.64,15,60.41,15Zm.07,30.67c-6.19,0-10.73-4.83-10.73-11.31S54.22,23,60.41,23s10.8,4.89,10.8,11.37S66.67,45.65,60.48,45.65ZM123.41,15c-5.62,0-9.29,2.3-11.45,5.54V15.7h-8.57V52.92H112V32.69C112,27,115.63,23,121,23c5,0,8.06,3.53,8.06,8.64V52.92h8.64V31C137.66,21.6,132.84,15,123.41,15ZM92,.36a5.36,5.36,0,0,0-5.55,5.47,5.55,5.55,0,0,0,11.09,0A5.35,5.35,0,0,0,92,.36Zm-9.72,23h5.4V52.92h8.64V15.7h-14Zm298.17-7.7L366.2,52.92H372L375.29,44H392l3.33,8.88h6L386.87,15.7ZM377,39.23l6.45-17.56h.1l6.56,17.56ZM362.66,15.7l-7.88,29h-.11l-8.14-29H341l-8,28.93h-.1l-8-28.87H319L329.82,53h5.45l8.19-29.24h.11L352,53h5.66L368.1,15.7Zm135.25,0v4.86h12.32V52.92h5.6V20.56h12.32V15.7ZM467.82,52.92h25.54V48.06H473.43v-12h18.35V31.35H473.43V20.56h19.93V15.7H467.82ZM443,15.7h-5.6V52.92h24.32V48.06H443Zm-30.45,0h-5.61V52.92h24.32V48.06H412.52Z\\'/%3E%3C/svg%3E`;case\"textWithLogoLight\":return n=(.25*e).toFixed(2),`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' xmlns=\\'http://www.w3.org/2000/svg\\' viewBox=\\'0 0 308.44 77.61\\'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fefefe;%7D%3C/style%3E%3C/defs%3E%3Cpath class=\\'cls-1\\' d=\\'M142.94,20.2l-7.88,29H135l-8.15-29h-5.55l-8,28.93h-.11l-8-28.87H99.27l10.84,37.27h5.44l8.2-29.24h.1l8.41,29.24h5.66L148.39,20.2Zm17.82,0L146.48,57.42h5.82l3.28-8.88h16.65l3.34,8.88h6L167.16,20.2Zm-3.44,23.52,6.45-17.55h.11l6.56,17.55ZM278.2,20.2v4.86h12.32V57.42h5.6V25.06h12.32V20.2ZM248.11,57.42h25.54V52.55H253.71V40.61h18.35V35.85H253.71V25.06h19.94V20.2H248.11ZM223.26,20.2h-5.61V57.42H242V52.55H223.26Zm-30.46,0h-5.6V57.42h24.32V52.55H192.8Zm-154,38A19.41,19.41,0,1,1,57.92,35.57H77.47a38.81,38.81,0,1,0,0,6.47H57.92A19.39,19.39,0,0,1,38.81,58.21Z\\'/%3E%3C/svg%3E`;default:return n=e,`data:image/svg+xml,%3Csvg width=\\'${e}\\' height=\\'${n}\\' viewBox=\\'0 0 1024 1024\\' fill=\\'none\\' xmlns=\\'http://www.w3.org/2000/svg\\'%3E %3Crect width=\\'1024\\' height=\\'1024\\' fill=\\'%230052FF\\'/%3E %3Cpath fill-rule=\\'evenodd\\' clip-rule=\\'evenodd\\' d=\\'M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z\\' fill=\\'white\\'/%3E %3C/svg%3E `}};wU.walletLogo=jWe});var D2e=be(xU=>{\"use strict\";p();Object.defineProperty(xU,\"__esModule\",{value:!0});xU.LINK_API_URL=void 0;xU.LINK_API_URL=\"https://www.walletlink.org\"});var F2e=be(()=>{p()});var q6=be((U2e,HJ)=>{p();(function(t,e){\"use strict\";function n(F,_){if(!F)throw new Error(_||\"Assertion failed\")}function r(F,_){F.super_=_;var O=function(){};O.prototype=_.prototype,F.prototype=new O,F.prototype.constructor=F}function o(F,_,O){if(o.isBN(F))return F;this.negative=0,this.words=null,this.length=0,this.red=null,F!==null&&((_===\"le\"||_===\"be\")&&(O=_,_=10),this._init(F||0,_||10,O||\"be\"))}typeof t==\"object\"?t.exports=o:e.BN=o,o.BN=o,o.wordSize=26;var i;try{typeof window<\"u\"&&typeof window.Buffer<\"u\"?i=window.Buffer:i=F2e().Buffer}catch{}o.isBN=function(_){return _ instanceof o?!0:_!==null&&typeof _==\"object\"&&_.constructor.wordSize===o.wordSize&&Array.isArray(_.words)},o.max=function(_,O){return _.cmp(O)>0?_:O},o.min=function(_,O){return _.cmp(O)<0?_:O},o.prototype._init=function(_,O,z){if(typeof _==\"number\")return this._initNumber(_,O,z);if(typeof _==\"object\")return this._initArray(_,O,z);O===\"hex\"&&(O=16),n(O===(O|0)&&O>=2&&O<=36),_=_.toString().replace(/\\\\s+/g,\"\");var N=0;_[0]===\"-\"&&(N++,this.negative=1),N<_.length&&(O===16?this._parseHex(_,N,z):(this._parseBase(_,O,N),z===\"le\"&&this._initArray(this.toArray(),O,z)))},o.prototype._initNumber=function(_,O,z){_<0&&(this.negative=1,_=-_),_<67108864?(this.words=[_&67108863],this.length=1):_<4503599627370496?(this.words=[_&67108863,_/67108864&67108863],this.length=2):(n(_<9007199254740992),this.words=[_&67108863,_/67108864&67108863,1],this.length=3),z===\"le\"&&this._initArray(this.toArray(),O,z)},o.prototype._initArray=function(_,O,z){if(n(typeof _.length==\"number\"),_.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(_.length/3),this.words=new Array(this.length);for(var N=0;N<this.length;N++)this.words[N]=0;var B,j,q=0;if(z===\"be\")for(N=_.length-1,B=0;N>=0;N-=3)j=_[N]|_[N-1]<<8|_[N-2]<<16,this.words[B]|=j<<q&67108863,this.words[B+1]=j>>>26-q&67108863,q+=24,q>=26&&(q-=26,B++);else if(z===\"le\")for(N=0,B=0;N<_.length;N+=3)j=_[N]|_[N+1]<<8|_[N+2]<<16,this.words[B]|=j<<q&67108863,this.words[B+1]=j>>>26-q&67108863,q+=24,q>=26&&(q-=26,B++);return this._strip()};function a(F,_){var O=F.charCodeAt(_);if(O>=48&&O<=57)return O-48;if(O>=65&&O<=70)return O-55;if(O>=97&&O<=102)return O-87;n(!1,\"Invalid character in \"+F)}function c(F,_,O){var z=a(F,O);return O-1>=_&&(z|=a(F,O-1)<<4),z}o.prototype._parseHex=function(_,O,z){this.length=Math.ceil((_.length-O)/6),this.words=new Array(this.length);for(var N=0;N<this.length;N++)this.words[N]=0;var B=0,j=0,q;if(z===\"be\")for(N=_.length-1;N>=O;N-=2)q=c(_,O,N)<<B,this.words[j]|=q&67108863,B>=18?(B-=18,j+=1,this.words[j]|=q>>>26):B+=8;else{var H=_.length-O;for(N=H%2===0?O+1:O;N<_.length;N+=2)q=c(_,O,N)<<B,this.words[j]|=q&67108863,B>=18?(B-=18,j+=1,this.words[j]|=q>>>26):B+=8}this._strip()};function u(F,_,O,z){for(var N=0,B=0,j=Math.min(F.length,O),q=_;q<j;q++){var H=F.charCodeAt(q)-48;N*=z,H>=49?B=H-49+10:H>=17?B=H-17+10:B=H,n(H>=0&&B<z,\"Invalid character\"),N+=B}return N}o.prototype._parseBase=function(_,O,z){this.words=[0],this.length=1;for(var N=0,B=1;B<=67108863;B*=O)N++;N--,B=B/O|0;for(var j=_.length-z,q=j%N,H=Math.min(j,j-q)+z,I=0,U=z;U<H;U+=N)I=u(_,U,U+N,O),this.imuln(B),this.words[0]+I<67108864?this.words[0]+=I:this._iaddn(I);if(q!==0){var X=1;for(I=u(_,U,_.length,O),U=0;U<q;U++)X*=O;this.imuln(X),this.words[0]+I<67108864?this.words[0]+=I:this._iaddn(I)}this._strip()},o.prototype.copy=function(_){_.words=new Array(this.length);for(var O=0;O<this.length;O++)_.words[O]=this.words[O];_.length=this.length,_.negative=this.negative,_.red=this.red};function d(F,_){F.words=_.words,F.length=_.length,F.negative=_.negative,F.red=_.red}if(o.prototype._move=function(_){d(_,this)},o.prototype.clone=function(){var _=new o(null);return this.copy(_),_},o.prototype._expand=function(_){for(;this.length<_;)this.words[this.length++]=0;return this},o.prototype._strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},o.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<\"u\"&&typeof Symbol.for==\"function\")try{o.prototype[Symbol.for(\"nodejs.util.inspect.custom\")]=h}catch{o.prototype.inspect=h}else o.prototype.inspect=h;function h(){return(this.red?\"<BN-R: \":\"<BN: \")+this.toString(16)+\">\"}var m=[\"\",\"0\",\"00\",\"000\",\"0000\",\"00000\",\"000000\",\"0000000\",\"00000000\",\"000000000\",\"0000000000\",\"00000000000\",\"000000000000\",\"0000000000000\",\"00000000000000\",\"000000000000000\",\"0000000000000000\",\"00000000000000000\",\"000000000000000000\",\"0000000000000000000\",\"00000000000000000000\",\"000000000000000000000\",\"0000000000000000000000\",\"00000000000000000000000\",\"000000000000000000000000\",\"0000000000000000000000000\"],g=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],b=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];o.prototype.toString=function(_,O){_=_||10,O=O|0||1;var z;if(_===16||_===\"hex\"){z=\"\";for(var N=0,B=0,j=0;j<this.length;j++){var q=this.words[j],H=((q<<N|B)&16777215).toString(16);B=q>>>24-N&16777215,N+=2,N>=26&&(N-=26,j--),B!==0||j!==this.length-1?z=m[6-H.length]+H+z:z=H+z}for(B!==0&&(z=B.toString(16)+z);z.length%O!==0;)z=\"0\"+z;return this.negative!==0&&(z=\"-\"+z),z}if(_===(_|0)&&_>=2&&_<=36){var I=g[_],U=b[_];z=\"\";var X=this.clone();for(X.negative=0;!X.isZero();){var ee=X.modrn(U).toString(_);X=X.idivn(U),X.isZero()?z=ee+z:z=m[I-ee.length]+ee+z}for(this.isZero()&&(z=\"0\"+z);z.length%O!==0;)z=\"0\"+z;return this.negative!==0&&(z=\"-\"+z),z}n(!1,\"Base should be between 2 and 36\")},o.prototype.toNumber=function(){var _=this.words[0];return this.length===2?_+=this.words[1]*67108864:this.length===3&&this.words[2]===1?_+=4503599627370496+this.words[1]*67108864:this.length>2&&n(!1,\"Number can only safely store up to 53 bits\"),this.negative!==0?-_:_},o.prototype.toJSON=function(){return this.toString(16,2)},i&&(o.prototype.toBuffer=function(_,O){return this.toArrayLike(i,_,O)}),o.prototype.toArray=function(_,O){return this.toArrayLike(Array,_,O)};var E=function(_,O){return _.allocUnsafe?_.allocUnsafe(O):new _(O)};o.prototype.toArrayLike=function(_,O,z){this._strip();var N=this.byteLength(),B=z||Math.max(1,N);n(N<=B,\"byte array longer than desired length\"),n(B>0,\"Requested array length <= 0\");var j=E(_,B),q=O===\"le\"?\"LE\":\"BE\";return this[\"_toArrayLike\"+q](j,N),j},o.prototype._toArrayLikeLE=function(_,O){for(var z=0,N=0,B=0,j=0;B<this.length;B++){var q=this.words[B]<<j|N;_[z++]=q&255,z<_.length&&(_[z++]=q>>8&255),z<_.length&&(_[z++]=q>>16&255),j===6?(z<_.length&&(_[z++]=q>>24&255),N=0,j=0):(N=q>>>24,j+=2)}if(z<_.length)for(_[z++]=N;z<_.length;)_[z++]=0},o.prototype._toArrayLikeBE=function(_,O){for(var z=_.length-1,N=0,B=0,j=0;B<this.length;B++){var q=this.words[B]<<j|N;_[z--]=q&255,z>=0&&(_[z--]=q>>8&255),z>=0&&(_[z--]=q>>16&255),j===6?(z>=0&&(_[z--]=q>>24&255),N=0,j=0):(N=q>>>24,j+=2)}if(z>=0)for(_[z--]=N;z>=0;)_[z--]=0},Math.clz32?o.prototype._countBits=function(_){return 32-Math.clz32(_)}:o.prototype._countBits=function(_){var O=_,z=0;return O>=4096&&(z+=13,O>>>=13),O>=64&&(z+=7,O>>>=7),O>=8&&(z+=4,O>>>=4),O>=2&&(z+=2,O>>>=2),z+O},o.prototype._zeroBits=function(_){if(_===0)return 26;var O=_,z=0;return(O&8191)===0&&(z+=13,O>>>=13),(O&127)===0&&(z+=7,O>>>=7),(O&15)===0&&(z+=4,O>>>=4),(O&3)===0&&(z+=2,O>>>=2),(O&1)===0&&z++,z},o.prototype.bitLength=function(){var _=this.words[this.length-1],O=this._countBits(_);return(this.length-1)*26+O};function C(F){for(var _=new Array(F.bitLength()),O=0;O<_.length;O++){var z=O/26|0,N=O%26;_[O]=F.words[z]>>>N&1}return _}o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var _=0,O=0;O<this.length;O++){var z=this._zeroBits(this.words[O]);if(_+=z,z!==26)break}return _},o.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},o.prototype.toTwos=function(_){return this.negative!==0?this.abs().inotn(_).iaddn(1):this.clone()},o.prototype.fromTwos=function(_){return this.testn(_-1)?this.notn(_).iaddn(1).ineg():this.clone()},o.prototype.isNeg=function(){return this.negative!==0},o.prototype.neg=function(){return this.clone().ineg()},o.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},o.prototype.iuor=function(_){for(;this.length<_.length;)this.words[this.length++]=0;for(var O=0;O<_.length;O++)this.words[O]=this.words[O]|_.words[O];return this._strip()},o.prototype.ior=function(_){return n((this.negative|_.negative)===0),this.iuor(_)},o.prototype.or=function(_){return this.length>_.length?this.clone().ior(_):_.clone().ior(this)},o.prototype.uor=function(_){return this.length>_.length?this.clone().iuor(_):_.clone().iuor(this)},o.prototype.iuand=function(_){var O;this.length>_.length?O=_:O=this;for(var z=0;z<O.length;z++)this.words[z]=this.words[z]&_.words[z];return this.length=O.length,this._strip()},o.prototype.iand=function(_){return n((this.negative|_.negative)===0),this.iuand(_)},o.prototype.and=function(_){return this.length>_.length?this.clone().iand(_):_.clone().iand(this)},o.prototype.uand=function(_){return this.length>_.length?this.clone().iuand(_):_.clone().iuand(this)},o.prototype.iuxor=function(_){var O,z;this.length>_.length?(O=this,z=_):(O=_,z=this);for(var N=0;N<z.length;N++)this.words[N]=O.words[N]^z.words[N];if(this!==O)for(;N<O.length;N++)this.words[N]=O.words[N];return this.length=O.length,this._strip()},o.prototype.ixor=function(_){return n((this.negative|_.negative)===0),this.iuxor(_)},o.prototype.xor=function(_){return this.length>_.length?this.clone().ixor(_):_.clone().ixor(this)},o.prototype.uxor=function(_){return this.length>_.length?this.clone().iuxor(_):_.clone().iuxor(this)},o.prototype.inotn=function(_){n(typeof _==\"number\"&&_>=0);var O=Math.ceil(_/26)|0,z=_%26;this._expand(O),z>0&&O--;for(var N=0;N<O;N++)this.words[N]=~this.words[N]&67108863;return z>0&&(this.words[N]=~this.words[N]&67108863>>26-z),this._strip()},o.prototype.notn=function(_){return this.clone().inotn(_)},o.prototype.setn=function(_,O){n(typeof _==\"number\"&&_>=0);var z=_/26|0,N=_%26;return this._expand(z+1),O?this.words[z]=this.words[z]|1<<N:this.words[z]=this.words[z]&~(1<<N),this._strip()},o.prototype.iadd=function(_){var O;if(this.negative!==0&&_.negative===0)return this.negative=0,O=this.isub(_),this.negative^=1,this._normSign();if(this.negative===0&&_.negative!==0)return _.negative=0,O=this.isub(_),_.negative=1,O._normSign();var z,N;this.length>_.length?(z=this,N=_):(z=_,N=this);for(var B=0,j=0;j<N.length;j++)O=(z.words[j]|0)+(N.words[j]|0)+B,this.words[j]=O&67108863,B=O>>>26;for(;B!==0&&j<z.length;j++)O=(z.words[j]|0)+B,this.words[j]=O&67108863,B=O>>>26;if(this.length=z.length,B!==0)this.words[this.length]=B,this.length++;else if(z!==this)for(;j<z.length;j++)this.words[j]=z.words[j];return this},o.prototype.add=function(_){var O;return _.negative!==0&&this.negative===0?(_.negative=0,O=this.sub(_),_.negative^=1,O):_.negative===0&&this.negative!==0?(this.negative=0,O=_.sub(this),this.negative=1,O):this.length>_.length?this.clone().iadd(_):_.clone().iadd(this)},o.prototype.isub=function(_){if(_.negative!==0){_.negative=0;var O=this.iadd(_);return _.negative=1,O._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(_),this.negative=1,this._normSign();var z=this.cmp(_);if(z===0)return this.negative=0,this.length=1,this.words[0]=0,this;var N,B;z>0?(N=this,B=_):(N=_,B=this);for(var j=0,q=0;q<B.length;q++)O=(N.words[q]|0)-(B.words[q]|0)+j,j=O>>26,this.words[q]=O&67108863;for(;j!==0&&q<N.length;q++)O=(N.words[q]|0)+j,j=O>>26,this.words[q]=O&67108863;if(j===0&&q<N.length&&N!==this)for(;q<N.length;q++)this.words[q]=N.words[q];return this.length=Math.max(this.length,q),N!==this&&(this.negative=1),this._strip()},o.prototype.sub=function(_){return this.clone().isub(_)};function T(F,_,O){O.negative=_.negative^F.negative;var z=F.length+_.length|0;O.length=z,z=z-1|0;var N=F.words[0]|0,B=_.words[0]|0,j=N*B,q=j&67108863,H=j/67108864|0;O.words[0]=q;for(var I=1;I<z;I++){for(var U=H>>>26,X=H&67108863,ee=Math.min(I,_.length-1),se=Math.max(0,I-F.length+1);se<=ee;se++){var pe=I-se|0;N=F.words[pe]|0,B=_.words[se]|0,j=N*B+X,U+=j/67108864|0,X=j&67108863}O.words[I]=X|0,H=U|0}return H!==0?O.words[I]=H|0:O.length--,O._strip()}var R=function(_,O,z){var N=_.words,B=O.words,j=z.words,q=0,H,I,U,X=N[0]|0,ee=X&8191,se=X>>>13,pe=N[1]|0,ye=pe&8191,xe=pe>>>13,_e=N[2]|0,Me=_e&8191,qe=_e>>>13,wt=N[3]|0,Ge=wt&8191,ht=wt>>>13,Ct=N[4]|0,dt=Ct&8191,Ze=Ct>>>13,rn=N[5]|0,zt=rn&8191,Bt=rn>>>13,Mt=N[6]|0,qt=Mt&8191,Wt=Mt>>>13,zn=N[7]|0,Mn=zn&8191,br=zn>>>13,Zs=N[8]|0,Pr=Zs&8191,vr=Zs>>>13,hi=N[9]|0,er=hi&8191,wr=hi>>>13,Ri=B[0]|0,le=Ri&8191,Te=Ri>>>13,xt=B[1]|0,tt=xt&8191,It=xt>>>13,hn=B[2]|0,Dt=hn&8191,sn=hn>>>13,bn=B[3]|0,Fn=bn&8191,en=bn>>>13,ni=B[4]|0,jr=ni&8191,Eo=ni>>>13,zu=B[5]|0,tr=zu&8191,dr=zu>>>13,Bl=B[6]|0,vn=Bl&8191,zr=Bl>>>13,Dd=B[7]|0,Mr=Dd&8191,So=Dd>>>13,jt=B[8]|0,xr=jt&8191,En=jt>>>13,Hu=B[9]|0,Zr=Hu&8191,Cr=Hu>>>13;z.negative=_.negative^O.negative,z.length=19,H=Math.imul(ee,le),I=Math.imul(ee,Te),I=I+Math.imul(se,le)|0,U=Math.imul(se,Te);var Ys=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Ys>>>26)|0,Ys&=67108863,H=Math.imul(ye,le),I=Math.imul(ye,Te),I=I+Math.imul(xe,le)|0,U=Math.imul(xe,Te),H=H+Math.imul(ee,tt)|0,I=I+Math.imul(ee,It)|0,I=I+Math.imul(se,tt)|0,U=U+Math.imul(se,It)|0;var Zc=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Zc>>>26)|0,Zc&=67108863,H=Math.imul(Me,le),I=Math.imul(Me,Te),I=I+Math.imul(qe,le)|0,U=Math.imul(qe,Te),H=H+Math.imul(ye,tt)|0,I=I+Math.imul(ye,It)|0,I=I+Math.imul(xe,tt)|0,U=U+Math.imul(xe,It)|0,H=H+Math.imul(ee,Dt)|0,I=I+Math.imul(ee,sn)|0,I=I+Math.imul(se,Dt)|0,U=U+Math.imul(se,sn)|0;var Zo=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Zo>>>26)|0,Zo&=67108863,H=Math.imul(Ge,le),I=Math.imul(Ge,Te),I=I+Math.imul(ht,le)|0,U=Math.imul(ht,Te),H=H+Math.imul(Me,tt)|0,I=I+Math.imul(Me,It)|0,I=I+Math.imul(qe,tt)|0,U=U+Math.imul(qe,It)|0,H=H+Math.imul(ye,Dt)|0,I=I+Math.imul(ye,sn)|0,I=I+Math.imul(xe,Dt)|0,U=U+Math.imul(xe,sn)|0,H=H+Math.imul(ee,Fn)|0,I=I+Math.imul(ee,en)|0,I=I+Math.imul(se,Fn)|0,U=U+Math.imul(se,en)|0;var qu=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(qu>>>26)|0,qu&=67108863,H=Math.imul(dt,le),I=Math.imul(dt,Te),I=I+Math.imul(Ze,le)|0,U=Math.imul(Ze,Te),H=H+Math.imul(Ge,tt)|0,I=I+Math.imul(Ge,It)|0,I=I+Math.imul(ht,tt)|0,U=U+Math.imul(ht,It)|0,H=H+Math.imul(Me,Dt)|0,I=I+Math.imul(Me,sn)|0,I=I+Math.imul(qe,Dt)|0,U=U+Math.imul(qe,sn)|0,H=H+Math.imul(ye,Fn)|0,I=I+Math.imul(ye,en)|0,I=I+Math.imul(xe,Fn)|0,U=U+Math.imul(xe,en)|0,H=H+Math.imul(ee,jr)|0,I=I+Math.imul(ee,Eo)|0,I=I+Math.imul(se,jr)|0,U=U+Math.imul(se,Eo)|0;var ts=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(ts>>>26)|0,ts&=67108863,H=Math.imul(zt,le),I=Math.imul(zt,Te),I=I+Math.imul(Bt,le)|0,U=Math.imul(Bt,Te),H=H+Math.imul(dt,tt)|0,I=I+Math.imul(dt,It)|0,I=I+Math.imul(Ze,tt)|0,U=U+Math.imul(Ze,It)|0,H=H+Math.imul(Ge,Dt)|0,I=I+Math.imul(Ge,sn)|0,I=I+Math.imul(ht,Dt)|0,U=U+Math.imul(ht,sn)|0,H=H+Math.imul(Me,Fn)|0,I=I+Math.imul(Me,en)|0,I=I+Math.imul(qe,Fn)|0,U=U+Math.imul(qe,en)|0,H=H+Math.imul(ye,jr)|0,I=I+Math.imul(ye,Eo)|0,I=I+Math.imul(xe,jr)|0,U=U+Math.imul(xe,Eo)|0,H=H+Math.imul(ee,tr)|0,I=I+Math.imul(ee,dr)|0,I=I+Math.imul(se,tr)|0,U=U+Math.imul(se,dr)|0;var Wu=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Wu>>>26)|0,Wu&=67108863,H=Math.imul(qt,le),I=Math.imul(qt,Te),I=I+Math.imul(Wt,le)|0,U=Math.imul(Wt,Te),H=H+Math.imul(zt,tt)|0,I=I+Math.imul(zt,It)|0,I=I+Math.imul(Bt,tt)|0,U=U+Math.imul(Bt,It)|0,H=H+Math.imul(dt,Dt)|0,I=I+Math.imul(dt,sn)|0,I=I+Math.imul(Ze,Dt)|0,U=U+Math.imul(Ze,sn)|0,H=H+Math.imul(Ge,Fn)|0,I=I+Math.imul(Ge,en)|0,I=I+Math.imul(ht,Fn)|0,U=U+Math.imul(ht,en)|0,H=H+Math.imul(Me,jr)|0,I=I+Math.imul(Me,Eo)|0,I=I+Math.imul(qe,jr)|0,U=U+Math.imul(qe,Eo)|0,H=H+Math.imul(ye,tr)|0,I=I+Math.imul(ye,dr)|0,I=I+Math.imul(xe,tr)|0,U=U+Math.imul(xe,dr)|0,H=H+Math.imul(ee,vn)|0,I=I+Math.imul(ee,zr)|0,I=I+Math.imul(se,vn)|0,U=U+Math.imul(se,zr)|0;var Yc=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Yc>>>26)|0,Yc&=67108863,H=Math.imul(Mn,le),I=Math.imul(Mn,Te),I=I+Math.imul(br,le)|0,U=Math.imul(br,Te),H=H+Math.imul(qt,tt)|0,I=I+Math.imul(qt,It)|0,I=I+Math.imul(Wt,tt)|0,U=U+Math.imul(Wt,It)|0,H=H+Math.imul(zt,Dt)|0,I=I+Math.imul(zt,sn)|0,I=I+Math.imul(Bt,Dt)|0,U=U+Math.imul(Bt,sn)|0,H=H+Math.imul(dt,Fn)|0,I=I+Math.imul(dt,en)|0,I=I+Math.imul(Ze,Fn)|0,U=U+Math.imul(Ze,en)|0,H=H+Math.imul(Ge,jr)|0,I=I+Math.imul(Ge,Eo)|0,I=I+Math.imul(ht,jr)|0,U=U+Math.imul(ht,Eo)|0,H=H+Math.imul(Me,tr)|0,I=I+Math.imul(Me,dr)|0,I=I+Math.imul(qe,tr)|0,U=U+Math.imul(qe,dr)|0,H=H+Math.imul(ye,vn)|0,I=I+Math.imul(ye,zr)|0,I=I+Math.imul(xe,vn)|0,U=U+Math.imul(xe,zr)|0,H=H+Math.imul(ee,Mr)|0,I=I+Math.imul(ee,So)|0,I=I+Math.imul(se,Mr)|0,U=U+Math.imul(se,So)|0;var Ya=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Ya>>>26)|0,Ya&=67108863,H=Math.imul(Pr,le),I=Math.imul(Pr,Te),I=I+Math.imul(vr,le)|0,U=Math.imul(vr,Te),H=H+Math.imul(Mn,tt)|0,I=I+Math.imul(Mn,It)|0,I=I+Math.imul(br,tt)|0,U=U+Math.imul(br,It)|0,H=H+Math.imul(qt,Dt)|0,I=I+Math.imul(qt,sn)|0,I=I+Math.imul(Wt,Dt)|0,U=U+Math.imul(Wt,sn)|0,H=H+Math.imul(zt,Fn)|0,I=I+Math.imul(zt,en)|0,I=I+Math.imul(Bt,Fn)|0,U=U+Math.imul(Bt,en)|0,H=H+Math.imul(dt,jr)|0,I=I+Math.imul(dt,Eo)|0,I=I+Math.imul(Ze,jr)|0,U=U+Math.imul(Ze,Eo)|0,H=H+Math.imul(Ge,tr)|0,I=I+Math.imul(Ge,dr)|0,I=I+Math.imul(ht,tr)|0,U=U+Math.imul(ht,dr)|0,H=H+Math.imul(Me,vn)|0,I=I+Math.imul(Me,zr)|0,I=I+Math.imul(qe,vn)|0,U=U+Math.imul(qe,zr)|0,H=H+Math.imul(ye,Mr)|0,I=I+Math.imul(ye,So)|0,I=I+Math.imul(xe,Mr)|0,U=U+Math.imul(xe,So)|0,H=H+Math.imul(ee,xr)|0,I=I+Math.imul(ee,En)|0,I=I+Math.imul(se,xr)|0,U=U+Math.imul(se,En)|0;var Qa=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Qa>>>26)|0,Qa&=67108863,H=Math.imul(er,le),I=Math.imul(er,Te),I=I+Math.imul(wr,le)|0,U=Math.imul(wr,Te),H=H+Math.imul(Pr,tt)|0,I=I+Math.imul(Pr,It)|0,I=I+Math.imul(vr,tt)|0,U=U+Math.imul(vr,It)|0,H=H+Math.imul(Mn,Dt)|0,I=I+Math.imul(Mn,sn)|0,I=I+Math.imul(br,Dt)|0,U=U+Math.imul(br,sn)|0,H=H+Math.imul(qt,Fn)|0,I=I+Math.imul(qt,en)|0,I=I+Math.imul(Wt,Fn)|0,U=U+Math.imul(Wt,en)|0,H=H+Math.imul(zt,jr)|0,I=I+Math.imul(zt,Eo)|0,I=I+Math.imul(Bt,jr)|0,U=U+Math.imul(Bt,Eo)|0,H=H+Math.imul(dt,tr)|0,I=I+Math.imul(dt,dr)|0,I=I+Math.imul(Ze,tr)|0,U=U+Math.imul(Ze,dr)|0,H=H+Math.imul(Ge,vn)|0,I=I+Math.imul(Ge,zr)|0,I=I+Math.imul(ht,vn)|0,U=U+Math.imul(ht,zr)|0,H=H+Math.imul(Me,Mr)|0,I=I+Math.imul(Me,So)|0,I=I+Math.imul(qe,Mr)|0,U=U+Math.imul(qe,So)|0,H=H+Math.imul(ye,xr)|0,I=I+Math.imul(ye,En)|0,I=I+Math.imul(xe,xr)|0,U=U+Math.imul(xe,En)|0,H=H+Math.imul(ee,Zr)|0,I=I+Math.imul(ee,Cr)|0,I=I+Math.imul(se,Zr)|0,U=U+Math.imul(se,Cr)|0;var ya=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(ya>>>26)|0,ya&=67108863,H=Math.imul(er,tt),I=Math.imul(er,It),I=I+Math.imul(wr,tt)|0,U=Math.imul(wr,It),H=H+Math.imul(Pr,Dt)|0,I=I+Math.imul(Pr,sn)|0,I=I+Math.imul(vr,Dt)|0,U=U+Math.imul(vr,sn)|0,H=H+Math.imul(Mn,Fn)|0,I=I+Math.imul(Mn,en)|0,I=I+Math.imul(br,Fn)|0,U=U+Math.imul(br,en)|0,H=H+Math.imul(qt,jr)|0,I=I+Math.imul(qt,Eo)|0,I=I+Math.imul(Wt,jr)|0,U=U+Math.imul(Wt,Eo)|0,H=H+Math.imul(zt,tr)|0,I=I+Math.imul(zt,dr)|0,I=I+Math.imul(Bt,tr)|0,U=U+Math.imul(Bt,dr)|0,H=H+Math.imul(dt,vn)|0,I=I+Math.imul(dt,zr)|0,I=I+Math.imul(Ze,vn)|0,U=U+Math.imul(Ze,zr)|0,H=H+Math.imul(Ge,Mr)|0,I=I+Math.imul(Ge,So)|0,I=I+Math.imul(ht,Mr)|0,U=U+Math.imul(ht,So)|0,H=H+Math.imul(Me,xr)|0,I=I+Math.imul(Me,En)|0,I=I+Math.imul(qe,xr)|0,U=U+Math.imul(qe,En)|0,H=H+Math.imul(ye,Zr)|0,I=I+Math.imul(ye,Cr)|0,I=I+Math.imul(xe,Zr)|0,U=U+Math.imul(xe,Cr)|0;var Dl=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Dl>>>26)|0,Dl&=67108863,H=Math.imul(er,Dt),I=Math.imul(er,sn),I=I+Math.imul(wr,Dt)|0,U=Math.imul(wr,sn),H=H+Math.imul(Pr,Fn)|0,I=I+Math.imul(Pr,en)|0,I=I+Math.imul(vr,Fn)|0,U=U+Math.imul(vr,en)|0,H=H+Math.imul(Mn,jr)|0,I=I+Math.imul(Mn,Eo)|0,I=I+Math.imul(br,jr)|0,U=U+Math.imul(br,Eo)|0,H=H+Math.imul(qt,tr)|0,I=I+Math.imul(qt,dr)|0,I=I+Math.imul(Wt,tr)|0,U=U+Math.imul(Wt,dr)|0,H=H+Math.imul(zt,vn)|0,I=I+Math.imul(zt,zr)|0,I=I+Math.imul(Bt,vn)|0,U=U+Math.imul(Bt,zr)|0,H=H+Math.imul(dt,Mr)|0,I=I+Math.imul(dt,So)|0,I=I+Math.imul(Ze,Mr)|0,U=U+Math.imul(Ze,So)|0,H=H+Math.imul(Ge,xr)|0,I=I+Math.imul(Ge,En)|0,I=I+Math.imul(ht,xr)|0,U=U+Math.imul(ht,En)|0,H=H+Math.imul(Me,Zr)|0,I=I+Math.imul(Me,Cr)|0,I=I+Math.imul(qe,Zr)|0,U=U+Math.imul(qe,Cr)|0;var Ja=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Ja>>>26)|0,Ja&=67108863,H=Math.imul(er,Fn),I=Math.imul(er,en),I=I+Math.imul(wr,Fn)|0,U=Math.imul(wr,en),H=H+Math.imul(Pr,jr)|0,I=I+Math.imul(Pr,Eo)|0,I=I+Math.imul(vr,jr)|0,U=U+Math.imul(vr,Eo)|0,H=H+Math.imul(Mn,tr)|0,I=I+Math.imul(Mn,dr)|0,I=I+Math.imul(br,tr)|0,U=U+Math.imul(br,dr)|0,H=H+Math.imul(qt,vn)|0,I=I+Math.imul(qt,zr)|0,I=I+Math.imul(Wt,vn)|0,U=U+Math.imul(Wt,zr)|0,H=H+Math.imul(zt,Mr)|0,I=I+Math.imul(zt,So)|0,I=I+Math.imul(Bt,Mr)|0,U=U+Math.imul(Bt,So)|0,H=H+Math.imul(dt,xr)|0,I=I+Math.imul(dt,En)|0,I=I+Math.imul(Ze,xr)|0,U=U+Math.imul(Ze,En)|0,H=H+Math.imul(Ge,Zr)|0,I=I+Math.imul(Ge,Cr)|0,I=I+Math.imul(ht,Zr)|0,U=U+Math.imul(ht,Cr)|0;var Fl=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Fl>>>26)|0,Fl&=67108863,H=Math.imul(er,jr),I=Math.imul(er,Eo),I=I+Math.imul(wr,jr)|0,U=Math.imul(wr,Eo),H=H+Math.imul(Pr,tr)|0,I=I+Math.imul(Pr,dr)|0,I=I+Math.imul(vr,tr)|0,U=U+Math.imul(vr,dr)|0,H=H+Math.imul(Mn,vn)|0,I=I+Math.imul(Mn,zr)|0,I=I+Math.imul(br,vn)|0,U=U+Math.imul(br,zr)|0,H=H+Math.imul(qt,Mr)|0,I=I+Math.imul(qt,So)|0,I=I+Math.imul(Wt,Mr)|0,U=U+Math.imul(Wt,So)|0,H=H+Math.imul(zt,xr)|0,I=I+Math.imul(zt,En)|0,I=I+Math.imul(Bt,xr)|0,U=U+Math.imul(Bt,En)|0,H=H+Math.imul(dt,Zr)|0,I=I+Math.imul(dt,Cr)|0,I=I+Math.imul(Ze,Zr)|0,U=U+Math.imul(Ze,Cr)|0;var Fd=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Fd>>>26)|0,Fd&=67108863,H=Math.imul(er,tr),I=Math.imul(er,dr),I=I+Math.imul(wr,tr)|0,U=Math.imul(wr,dr),H=H+Math.imul(Pr,vn)|0,I=I+Math.imul(Pr,zr)|0,I=I+Math.imul(vr,vn)|0,U=U+Math.imul(vr,zr)|0,H=H+Math.imul(Mn,Mr)|0,I=I+Math.imul(Mn,So)|0,I=I+Math.imul(br,Mr)|0,U=U+Math.imul(br,So)|0,H=H+Math.imul(qt,xr)|0,I=I+Math.imul(qt,En)|0,I=I+Math.imul(Wt,xr)|0,U=U+Math.imul(Wt,En)|0,H=H+Math.imul(zt,Zr)|0,I=I+Math.imul(zt,Cr)|0,I=I+Math.imul(Bt,Zr)|0,U=U+Math.imul(Bt,Cr)|0;var Cg=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Cg>>>26)|0,Cg&=67108863,H=Math.imul(er,vn),I=Math.imul(er,zr),I=I+Math.imul(wr,vn)|0,U=Math.imul(wr,zr),H=H+Math.imul(Pr,Mr)|0,I=I+Math.imul(Pr,So)|0,I=I+Math.imul(vr,Mr)|0,U=U+Math.imul(vr,So)|0,H=H+Math.imul(Mn,xr)|0,I=I+Math.imul(Mn,En)|0,I=I+Math.imul(br,xr)|0,U=U+Math.imul(br,En)|0,H=H+Math.imul(qt,Zr)|0,I=I+Math.imul(qt,Cr)|0,I=I+Math.imul(Wt,Zr)|0,U=U+Math.imul(Wt,Cr)|0;var ri=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(ri>>>26)|0,ri&=67108863,H=Math.imul(er,Mr),I=Math.imul(er,So),I=I+Math.imul(wr,Mr)|0,U=Math.imul(wr,So),H=H+Math.imul(Pr,xr)|0,I=I+Math.imul(Pr,En)|0,I=I+Math.imul(vr,xr)|0,U=U+Math.imul(vr,En)|0,H=H+Math.imul(Mn,Zr)|0,I=I+Math.imul(Mn,Cr)|0,I=I+Math.imul(br,Zr)|0,U=U+Math.imul(br,Cr)|0;var bc=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(bc>>>26)|0,bc&=67108863,H=Math.imul(er,xr),I=Math.imul(er,En),I=I+Math.imul(wr,xr)|0,U=Math.imul(wr,En),H=H+Math.imul(Pr,Zr)|0,I=I+Math.imul(Pr,Cr)|0,I=I+Math.imul(vr,Zr)|0,U=U+Math.imul(vr,Cr)|0;var Qc=(q+H|0)+((I&8191)<<13)|0;q=(U+(I>>>13)|0)+(Qc>>>26)|0,Qc&=67108863,H=Math.imul(er,Zr),I=Math.imul(er,Cr),I=I+Math.imul(wr,Zr)|0,U=Math.imul(wr,Cr);var Vh=(q+H|0)+((I&8191)<<13)|0;return q=(U+(I>>>13)|0)+(Vh>>>26)|0,Vh&=67108863,j[0]=Ys,j[1]=Zc,j[2]=Zo,j[3]=qu,j[4]=ts,j[5]=Wu,j[6]=Yc,j[7]=Ya,j[8]=Qa,j[9]=ya,j[10]=Dl,j[11]=Ja,j[12]=Fl,j[13]=Fd,j[14]=Cg,j[15]=ri,j[16]=bc,j[17]=Qc,j[18]=Vh,q!==0&&(j[19]=q,z.length++),z};Math.imul||(R=T);function L(F,_,O){O.negative=_.negative^F.negative,O.length=F.length+_.length;for(var z=0,N=0,B=0;B<O.length-1;B++){var j=N;N=0;for(var q=z&67108863,H=Math.min(B,_.length-1),I=Math.max(0,B-F.length+1);I<=H;I++){var U=B-I,X=F.words[U]|0,ee=_.words[I]|0,se=X*ee,pe=se&67108863;j=j+(se/67108864|0)|0,pe=pe+q|0,q=pe&67108863,j=j+(pe>>>26)|0,N+=j>>>26,j&=67108863}O.words[B]=q,z=j,j=N}return z!==0?O.words[B]=z:O.length--,O._strip()}function D(F,_,O){return L(F,_,O)}o.prototype.mulTo=function(_,O){var z,N=this.length+_.length;return this.length===10&&_.length===10?z=R(this,_,O):N<63?z=T(this,_,O):N<1024?z=L(this,_,O):z=D(this,_,O),z};function G(F,_){this.x=F,this.y=_}G.prototype.makeRBT=function(_){for(var O=new Array(_),z=o.prototype._countBits(_)-1,N=0;N<_;N++)O[N]=this.revBin(N,z,_);return O},G.prototype.revBin=function(_,O,z){if(_===0||_===z-1)return _;for(var N=0,B=0;B<O;B++)N|=(_&1)<<O-B-1,_>>=1;return N},G.prototype.permute=function(_,O,z,N,B,j){for(var q=0;q<j;q++)N[q]=O[_[q]],B[q]=z[_[q]]},G.prototype.transform=function(_,O,z,N,B,j){this.permute(j,_,O,z,N,B);for(var q=1;q<B;q<<=1)for(var H=q<<1,I=Math.cos(2*Math.PI/H),U=Math.sin(2*Math.PI/H),X=0;X<B;X+=H)for(var ee=I,se=U,pe=0;pe<q;pe++){var ye=z[X+pe],xe=N[X+pe],_e=z[X+pe+q],Me=N[X+pe+q],qe=ee*_e-se*Me;Me=ee*Me+se*_e,_e=qe,z[X+pe]=ye+_e,N[X+pe]=xe+Me,z[X+pe+q]=ye-_e,N[X+pe+q]=xe-Me,pe!==H&&(qe=I*ee-U*se,se=I*se+U*ee,ee=qe)}},G.prototype.guessLen13b=function(_,O){var z=Math.max(O,_)|1,N=z&1,B=0;for(z=z/2|0;z;z=z>>>1)B++;return 1<<B+1+N},G.prototype.conjugate=function(_,O,z){if(!(z<=1))for(var N=0;N<z/2;N++){var B=_[N];_[N]=_[z-N-1],_[z-N-1]=B,B=O[N],O[N]=-O[z-N-1],O[z-N-1]=-B}},G.prototype.normalize13b=function(_,O){for(var z=0,N=0;N<O/2;N++){var B=Math.round(_[2*N+1]/O)*8192+Math.round(_[2*N]/O)+z;_[N]=B&67108863,B<67108864?z=0:z=B/67108864|0}return _},G.prototype.convert13b=function(_,O,z,N){for(var B=0,j=0;j<O;j++)B=B+(_[j]|0),z[2*j]=B&8191,B=B>>>13,z[2*j+1]=B&8191,B=B>>>13;for(j=2*O;j<N;++j)z[j]=0;n(B===0),n((B&-8192)===0)},G.prototype.stub=function(_){for(var O=new Array(_),z=0;z<_;z++)O[z]=0;return O},G.prototype.mulp=function(_,O,z){var N=2*this.guessLen13b(_.length,O.length),B=this.makeRBT(N),j=this.stub(N),q=new Array(N),H=new Array(N),I=new Array(N),U=new Array(N),X=new Array(N),ee=new Array(N),se=z.words;se.length=N,this.convert13b(_.words,_.length,q,N),this.convert13b(O.words,O.length,U,N),this.transform(q,j,H,I,N,B),this.transform(U,j,X,ee,N,B);for(var pe=0;pe<N;pe++){var ye=H[pe]*X[pe]-I[pe]*ee[pe];I[pe]=H[pe]*ee[pe]+I[pe]*X[pe],H[pe]=ye}return this.conjugate(H,I,N),this.transform(H,I,se,j,N,B),this.conjugate(se,j,N),this.normalize13b(se,N),z.negative=_.negative^O.negative,z.length=_.length+O.length,z._strip()},o.prototype.mul=function(_){var O=new o(null);return O.words=new Array(this.length+_.length),this.mulTo(_,O)},o.prototype.mulf=function(_){var O=new o(null);return O.words=new Array(this.length+_.length),D(this,_,O)},o.prototype.imul=function(_){return this.clone().mulTo(_,this)},o.prototype.imuln=function(_){var O=_<0;O&&(_=-_),n(typeof _==\"number\"),n(_<67108864);for(var z=0,N=0;N<this.length;N++){var B=(this.words[N]|0)*_,j=(B&67108863)+(z&67108863);z>>=26,z+=B/67108864|0,z+=j>>>26,this.words[N]=j&67108863}return z!==0&&(this.words[N]=z,this.length++),this.length=_===0?1:this.length,O?this.ineg():this},o.prototype.muln=function(_){return this.clone().imuln(_)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(_){var O=C(_);if(O.length===0)return new o(1);for(var z=this,N=0;N<O.length&&O[N]===0;N++,z=z.sqr());if(++N<O.length)for(var B=z.sqr();N<O.length;N++,B=B.sqr())O[N]!==0&&(z=z.mul(B));return z},o.prototype.iushln=function(_){n(typeof _==\"number\"&&_>=0);var O=_%26,z=(_-O)/26,N=67108863>>>26-O<<26-O,B;if(O!==0){var j=0;for(B=0;B<this.length;B++){var q=this.words[B]&N,H=(this.words[B]|0)-q<<O;this.words[B]=H|j,j=q>>>26-O}j&&(this.words[B]=j,this.length++)}if(z!==0){for(B=this.length-1;B>=0;B--)this.words[B+z]=this.words[B];for(B=0;B<z;B++)this.words[B]=0;this.length+=z}return this._strip()},o.prototype.ishln=function(_){return n(this.negative===0),this.iushln(_)},o.prototype.iushrn=function(_,O,z){n(typeof _==\"number\"&&_>=0);var N;O?N=(O-O%26)/26:N=0;var B=_%26,j=Math.min((_-B)/26,this.length),q=67108863^67108863>>>B<<B,H=z;if(N-=j,N=Math.max(0,N),H){for(var I=0;I<j;I++)H.words[I]=this.words[I];H.length=j}if(j!==0)if(this.length>j)for(this.length-=j,I=0;I<this.length;I++)this.words[I]=this.words[I+j];else this.words[0]=0,this.length=1;var U=0;for(I=this.length-1;I>=0&&(U!==0||I>=N);I--){var X=this.words[I]|0;this.words[I]=U<<26-B|X>>>B,U=X&q}return H&&U!==0&&(H.words[H.length++]=U),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},o.prototype.ishrn=function(_,O,z){return n(this.negative===0),this.iushrn(_,O,z)},o.prototype.shln=function(_){return this.clone().ishln(_)},o.prototype.ushln=function(_){return this.clone().iushln(_)},o.prototype.shrn=function(_){return this.clone().ishrn(_)},o.prototype.ushrn=function(_){return this.clone().iushrn(_)},o.prototype.testn=function(_){n(typeof _==\"number\"&&_>=0);var O=_%26,z=(_-O)/26,N=1<<O;if(this.length<=z)return!1;var B=this.words[z];return!!(B&N)},o.prototype.imaskn=function(_){n(typeof _==\"number\"&&_>=0);var O=_%26,z=(_-O)/26;if(n(this.negative===0,\"imaskn works only with positive numbers\"),this.length<=z)return this;if(O!==0&&z++,this.length=Math.min(z,this.length),O!==0){var N=67108863^67108863>>>O<<O;this.words[this.length-1]&=N}return this._strip()},o.prototype.maskn=function(_){return this.clone().imaskn(_)},o.prototype.iaddn=function(_){return n(typeof _==\"number\"),n(_<67108864),_<0?this.isubn(-_):this.negative!==0?this.length===1&&(this.words[0]|0)<=_?(this.words[0]=_-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(_),this.negative=1,this):this._iaddn(_)},o.prototype._iaddn=function(_){this.words[0]+=_;for(var O=0;O<this.length&&this.words[O]>=67108864;O++)this.words[O]-=67108864,O===this.length-1?this.words[O+1]=1:this.words[O+1]++;return this.length=Math.max(this.length,O+1),this},o.prototype.isubn=function(_){if(n(typeof _==\"number\"),n(_<67108864),_<0)return this.iaddn(-_);if(this.negative!==0)return this.negative=0,this.iaddn(_),this.negative=1,this;if(this.words[0]-=_,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var O=0;O<this.length&&this.words[O]<0;O++)this.words[O]+=67108864,this.words[O+1]-=1;return this._strip()},o.prototype.addn=function(_){return this.clone().iaddn(_)},o.prototype.subn=function(_){return this.clone().isubn(_)},o.prototype.iabs=function(){return this.negative=0,this},o.prototype.abs=function(){return this.clone().iabs()},o.prototype._ishlnsubmul=function(_,O,z){var N=_.length+z,B;this._expand(N);var j,q=0;for(B=0;B<_.length;B++){j=(this.words[B+z]|0)+q;var H=(_.words[B]|0)*O;j-=H&67108863,q=(j>>26)-(H/67108864|0),this.words[B+z]=j&67108863}for(;B<this.length-z;B++)j=(this.words[B+z]|0)+q,q=j>>26,this.words[B+z]=j&67108863;if(q===0)return this._strip();for(n(q===-1),q=0,B=0;B<this.length;B++)j=-(this.words[B]|0)+q,q=j>>26,this.words[B]=j&67108863;return this.negative=1,this._strip()},o.prototype._wordDiv=function(_,O){var z=this.length-_.length,N=this.clone(),B=_,j=B.words[B.length-1]|0,q=this._countBits(j);z=26-q,z!==0&&(B=B.ushln(z),N.iushln(z),j=B.words[B.length-1]|0);var H=N.length-B.length,I;if(O!==\"mod\"){I=new o(null),I.length=H+1,I.words=new Array(I.length);for(var U=0;U<I.length;U++)I.words[U]=0}var X=N.clone()._ishlnsubmul(B,1,H);X.negative===0&&(N=X,I&&(I.words[H]=1));for(var ee=H-1;ee>=0;ee--){var se=(N.words[B.length+ee]|0)*67108864+(N.words[B.length+ee-1]|0);for(se=Math.min(se/j|0,67108863),N._ishlnsubmul(B,se,ee);N.negative!==0;)se--,N.negative=0,N._ishlnsubmul(B,1,ee),N.isZero()||(N.negative^=1);I&&(I.words[ee]=se)}return I&&I._strip(),N._strip(),O!==\"div\"&&z!==0&&N.iushrn(z),{div:I||null,mod:N}},o.prototype.divmod=function(_,O,z){if(n(!_.isZero()),this.isZero())return{div:new o(0),mod:new o(0)};var N,B,j;return this.negative!==0&&_.negative===0?(j=this.neg().divmod(_,O),O!==\"mod\"&&(N=j.div.neg()),O!==\"div\"&&(B=j.mod.neg(),z&&B.negative!==0&&B.iadd(_)),{div:N,mod:B}):this.negative===0&&_.negative!==0?(j=this.divmod(_.neg(),O),O!==\"mod\"&&(N=j.div.neg()),{div:N,mod:j.mod}):(this.negative&_.negative)!==0?(j=this.neg().divmod(_.neg(),O),O!==\"div\"&&(B=j.mod.neg(),z&&B.negative!==0&&B.isub(_)),{div:j.div,mod:B}):_.length>this.length||this.cmp(_)<0?{div:new o(0),mod:this}:_.length===1?O===\"div\"?{div:this.divn(_.words[0]),mod:null}:O===\"mod\"?{div:null,mod:new o(this.modrn(_.words[0]))}:{div:this.divn(_.words[0]),mod:new o(this.modrn(_.words[0]))}:this._wordDiv(_,O)},o.prototype.div=function(_){return this.divmod(_,\"div\",!1).div},o.prototype.mod=function(_){return this.divmod(_,\"mod\",!1).mod},o.prototype.umod=function(_){return this.divmod(_,\"mod\",!0).mod},o.prototype.divRound=function(_){var O=this.divmod(_);if(O.mod.isZero())return O.div;var z=O.div.negative!==0?O.mod.isub(_):O.mod,N=_.ushrn(1),B=_.andln(1),j=z.cmp(N);return j<0||B===1&&j===0?O.div:O.div.negative!==0?O.div.isubn(1):O.div.iaddn(1)},o.prototype.modrn=function(_){var O=_<0;O&&(_=-_),n(_<=67108863);for(var z=(1<<26)%_,N=0,B=this.length-1;B>=0;B--)N=(z*N+(this.words[B]|0))%_;return O?-N:N},o.prototype.modn=function(_){return this.modrn(_)},o.prototype.idivn=function(_){var O=_<0;O&&(_=-_),n(_<=67108863);for(var z=0,N=this.length-1;N>=0;N--){var B=(this.words[N]|0)+z*67108864;this.words[N]=B/_|0,z=B%_}return this._strip(),O?this.ineg():this},o.prototype.divn=function(_){return this.clone().idivn(_)},o.prototype.egcd=function(_){n(_.negative===0),n(!_.isZero());var O=this,z=_.clone();O.negative!==0?O=O.umod(_):O=O.clone();for(var N=new o(1),B=new o(0),j=new o(0),q=new o(1),H=0;O.isEven()&&z.isEven();)O.iushrn(1),z.iushrn(1),++H;for(var I=z.clone(),U=O.clone();!O.isZero();){for(var X=0,ee=1;(O.words[0]&ee)===0&&X<26;++X,ee<<=1);if(X>0)for(O.iushrn(X);X-- >0;)(N.isOdd()||B.isOdd())&&(N.iadd(I),B.isub(U)),N.iushrn(1),B.iushrn(1);for(var se=0,pe=1;(z.words[0]&pe)===0&&se<26;++se,pe<<=1);if(se>0)for(z.iushrn(se);se-- >0;)(j.isOdd()||q.isOdd())&&(j.iadd(I),q.isub(U)),j.iushrn(1),q.iushrn(1);O.cmp(z)>=0?(O.isub(z),N.isub(j),B.isub(q)):(z.isub(O),j.isub(N),q.isub(B))}return{a:j,b:q,gcd:z.iushln(H)}},o.prototype._invmp=function(_){n(_.negative===0),n(!_.isZero());var O=this,z=_.clone();O.negative!==0?O=O.umod(_):O=O.clone();for(var N=new o(1),B=new o(0),j=z.clone();O.cmpn(1)>0&&z.cmpn(1)>0;){for(var q=0,H=1;(O.words[0]&H)===0&&q<26;++q,H<<=1);if(q>0)for(O.iushrn(q);q-- >0;)N.isOdd()&&N.iadd(j),N.iushrn(1);for(var I=0,U=1;(z.words[0]&U)===0&&I<26;++I,U<<=1);if(I>0)for(z.iushrn(I);I-- >0;)B.isOdd()&&B.iadd(j),B.iushrn(1);O.cmp(z)>=0?(O.isub(z),N.isub(B)):(z.isub(O),B.isub(N))}var X;return O.cmpn(1)===0?X=N:X=B,X.cmpn(0)<0&&X.iadd(_),X},o.prototype.gcd=function(_){if(this.isZero())return _.abs();if(_.isZero())return this.abs();var O=this.clone(),z=_.clone();O.negative=0,z.negative=0;for(var N=0;O.isEven()&&z.isEven();N++)O.iushrn(1),z.iushrn(1);do{for(;O.isEven();)O.iushrn(1);for(;z.isEven();)z.iushrn(1);var B=O.cmp(z);if(B<0){var j=O;O=z,z=j}else if(B===0||z.cmpn(1)===0)break;O.isub(z)}while(!0);return z.iushln(N)},o.prototype.invm=function(_){return this.egcd(_).a.umod(_)},o.prototype.isEven=function(){return(this.words[0]&1)===0},o.prototype.isOdd=function(){return(this.words[0]&1)===1},o.prototype.andln=function(_){return this.words[0]&_},o.prototype.bincn=function(_){n(typeof _==\"number\");var O=_%26,z=(_-O)/26,N=1<<O;if(this.length<=z)return this._expand(z+1),this.words[z]|=N,this;for(var B=N,j=z;B!==0&&j<this.length;j++){var q=this.words[j]|0;q+=B,B=q>>>26,q&=67108863,this.words[j]=q}return B!==0&&(this.words[j]=B,this.length++),this},o.prototype.isZero=function(){return this.length===1&&this.words[0]===0},o.prototype.cmpn=function(_){var O=_<0;if(this.negative!==0&&!O)return-1;if(this.negative===0&&O)return 1;this._strip();var z;if(this.length>1)z=1;else{O&&(_=-_),n(_<=67108863,\"Number is too big\");var N=this.words[0]|0;z=N===_?0:N<_?-1:1}return this.negative!==0?-z|0:z},o.prototype.cmp=function(_){if(this.negative!==0&&_.negative===0)return-1;if(this.negative===0&&_.negative!==0)return 1;var O=this.ucmp(_);return this.negative!==0?-O|0:O},o.prototype.ucmp=function(_){if(this.length>_.length)return 1;if(this.length<_.length)return-1;for(var O=0,z=this.length-1;z>=0;z--){var N=this.words[z]|0,B=_.words[z]|0;if(N!==B){N<B?O=-1:N>B&&(O=1);break}}return O},o.prototype.gtn=function(_){return this.cmpn(_)===1},o.prototype.gt=function(_){return this.cmp(_)===1},o.prototype.gten=function(_){return this.cmpn(_)>=0},o.prototype.gte=function(_){return this.cmp(_)>=0},o.prototype.ltn=function(_){return this.cmpn(_)===-1},o.prototype.lt=function(_){return this.cmp(_)===-1},o.prototype.lten=function(_){return this.cmpn(_)<=0},o.prototype.lte=function(_){return this.cmp(_)<=0},o.prototype.eqn=function(_){return this.cmpn(_)===0},o.prototype.eq=function(_){return this.cmp(_)===0},o.red=function(_){return new V(_)},o.prototype.toRed=function(_){return n(!this.red,\"Already a number in reduction context\"),n(this.negative===0,\"red works only with positives\"),_.convertTo(this)._forceRed(_)},o.prototype.fromRed=function(){return n(this.red,\"fromRed works only with numbers in reduction context\"),this.red.convertFrom(this)},o.prototype._forceRed=function(_){return this.red=_,this},o.prototype.forceRed=function(_){return n(!this.red,\"Already a number in reduction context\"),this._forceRed(_)},o.prototype.redAdd=function(_){return n(this.red,\"redAdd works only with red numbers\"),this.red.add(this,_)},o.prototype.redIAdd=function(_){return n(this.red,\"redIAdd works only with red numbers\"),this.red.iadd(this,_)},o.prototype.redSub=function(_){return n(this.red,\"redSub works only with red numbers\"),this.red.sub(this,_)},o.prototype.redISub=function(_){return n(this.red,\"redISub works only with red numbers\"),this.red.isub(this,_)},o.prototype.redShl=function(_){return n(this.red,\"redShl works only with red numbers\"),this.red.shl(this,_)},o.prototype.redMul=function(_){return n(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,_),this.red.mul(this,_)},o.prototype.redIMul=function(_){return n(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,_),this.red.imul(this,_)},o.prototype.redSqr=function(){return n(this.red,\"redSqr works only with red numbers\"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,\"redISqr works only with red numbers\"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,\"redSqrt works only with red numbers\"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,\"redInvm works only with red numbers\"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,\"redNeg works only with red numbers\"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(_){return n(this.red&&!_.red,\"redPow(normalNum)\"),this.red._verify1(this),this.red.pow(this,_)};var W={k256:null,p224:null,p192:null,p25519:null};function J(F,_){this.name=F,this.p=new o(_,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}J.prototype._tmp=function(){var _=new o(null);return _.words=new Array(Math.ceil(this.n/13)),_},J.prototype.ireduce=function(_){var O=_,z;do this.split(O,this.tmp),O=this.imulK(O),O=O.iadd(this.tmp),z=O.bitLength();while(z>this.n);var N=z<this.n?-1:O.ucmp(this.p);return N===0?(O.words[0]=0,O.length=1):N>0?O.isub(this.p):O.strip!==void 0?O.strip():O._strip(),O},J.prototype.split=function(_,O){_.iushrn(this.n,0,O)},J.prototype.imulK=function(_){return _.imul(this.k)};function ne(){J.call(this,\"k256\",\"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f\")}r(ne,J),ne.prototype.split=function(_,O){for(var z=4194303,N=Math.min(_.length,9),B=0;B<N;B++)O.words[B]=_.words[B];if(O.length=N,_.length<=9){_.words[0]=0,_.length=1;return}var j=_.words[9];for(O.words[O.length++]=j&z,B=10;B<_.length;B++){var q=_.words[B]|0;_.words[B-10]=(q&z)<<4|j>>>22,j=q}j>>>=22,_.words[B-10]=j,j===0&&_.length>10?_.length-=10:_.length-=9},ne.prototype.imulK=function(_){_.words[_.length]=0,_.words[_.length+1]=0,_.length+=2;for(var O=0,z=0;z<_.length;z++){var N=_.words[z]|0;O+=N*977,_.words[z]=O&67108863,O=N*64+(O/67108864|0)}return _.words[_.length-1]===0&&(_.length--,_.words[_.length-1]===0&&_.length--),_};function ie(){J.call(this,\"p224\",\"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001\")}r(ie,J);function Z(){J.call(this,\"p192\",\"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff\")}r(Z,J);function ae(){J.call(this,\"25519\",\"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed\")}r(ae,J),ae.prototype.imulK=function(_){for(var O=0,z=0;z<_.length;z++){var N=(_.words[z]|0)*19+O,B=N&67108863;N>>>=26,_.words[z]=B,O=N}return O!==0&&(_.words[_.length++]=O),_},o._prime=function(_){if(W[_])return W[_];var O;if(_===\"k256\")O=new ne;else if(_===\"p224\")O=new ie;else if(_===\"p192\")O=new Z;else if(_===\"p25519\")O=new ae;else throw new Error(\"Unknown prime \"+_);return W[_]=O,O};function V(F){if(typeof F==\"string\"){var _=o._prime(F);this.m=_.p,this.prime=_}else n(F.gtn(1),\"modulus must be greater than 1\"),this.m=F,this.prime=null}V.prototype._verify1=function(_){n(_.negative===0,\"red works only with positives\"),n(_.red,\"red works only with red numbers\")},V.prototype._verify2=function(_,O){n((_.negative|O.negative)===0,\"red works only with positives\"),n(_.red&&_.red===O.red,\"red works only with red numbers\")},V.prototype.imod=function(_){return this.prime?this.prime.ireduce(_)._forceRed(this):(d(_,_.umod(this.m)._forceRed(this)),_)},V.prototype.neg=function(_){return _.isZero()?_.clone():this.m.sub(_)._forceRed(this)},V.prototype.add=function(_,O){this._verify2(_,O);var z=_.add(O);return z.cmp(this.m)>=0&&z.isub(this.m),z._forceRed(this)},V.prototype.iadd=function(_,O){this._verify2(_,O);var z=_.iadd(O);return z.cmp(this.m)>=0&&z.isub(this.m),z},V.prototype.sub=function(_,O){this._verify2(_,O);var z=_.sub(O);return z.cmpn(0)<0&&z.iadd(this.m),z._forceRed(this)},V.prototype.isub=function(_,O){this._verify2(_,O);var z=_.isub(O);return z.cmpn(0)<0&&z.iadd(this.m),z},V.prototype.shl=function(_,O){return this._verify1(_),this.imod(_.ushln(O))},V.prototype.imul=function(_,O){return this._verify2(_,O),this.imod(_.imul(O))},V.prototype.mul=function(_,O){return this._verify2(_,O),this.imod(_.mul(O))},V.prototype.isqr=function(_){return this.imul(_,_.clone())},V.prototype.sqr=function(_){return this.mul(_,_)},V.prototype.sqrt=function(_){if(_.isZero())return _.clone();var O=this.m.andln(3);if(n(O%2===1),O===3){var z=this.m.add(new o(1)).iushrn(2);return this.pow(_,z)}for(var N=this.m.subn(1),B=0;!N.isZero()&&N.andln(1)===0;)B++,N.iushrn(1);n(!N.isZero());var j=new o(1).toRed(this),q=j.redNeg(),H=this.m.subn(1).iushrn(1),I=this.m.bitLength();for(I=new o(2*I*I).toRed(this);this.pow(I,H).cmp(q)!==0;)I.redIAdd(q);for(var U=this.pow(I,N),X=this.pow(_,N.addn(1).iushrn(1)),ee=this.pow(_,N),se=B;ee.cmp(j)!==0;){for(var pe=ee,ye=0;pe.cmp(j)!==0;ye++)pe=pe.redSqr();n(ye<se);var xe=this.pow(U,new o(1).iushln(se-ye-1));X=X.redMul(xe),U=xe.redSqr(),ee=ee.redMul(U),se=ye}return X},V.prototype.invm=function(_){var O=_._invmp(this.m);return O.negative!==0?(O.negative=0,this.imod(O).redNeg()):this.imod(O)},V.prototype.pow=function(_,O){if(O.isZero())return new o(1).toRed(this);if(O.cmpn(1)===0)return _.clone();var z=4,N=new Array(1<<z);N[0]=new o(1).toRed(this),N[1]=_;for(var B=2;B<N.length;B++)N[B]=this.mul(N[B-1],_);var j=N[0],q=0,H=0,I=O.bitLength()%26;for(I===0&&(I=26),B=O.length-1;B>=0;B--){for(var U=O.words[B],X=I-1;X>=0;X--){var ee=U>>X&1;if(j!==N[0]&&(j=this.sqr(j)),ee===0&&q===0){H=0;continue}q<<=1,q|=ee,H++,!(H!==z&&(B!==0||X!==0))&&(j=this.mul(j,N[q]),H=0,q=0)}I=26}return j},V.prototype.convertTo=function(_){var O=_.umod(this.m);return O===_?O.clone():O},V.prototype.convertFrom=function(_){var O=_.clone();return O.red=null,O},o.mont=function(_){return new $(_)};function $(F){V.call(this,F),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}r($,V),$.prototype.convertTo=function(_){return this.imod(_.ushln(this.shift))},$.prototype.convertFrom=function(_){var O=this.imod(_.mul(this.rinv));return O.red=null,O},$.prototype.imul=function(_,O){if(_.isZero()||O.isZero())return _.words[0]=0,_.length=1,_;var z=_.imul(O),N=z.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),B=z.isub(N).iushrn(this.shift),j=B;return B.cmp(this.m)>=0?j=B.isub(this.m):B.cmpn(0)<0&&(j=B.iadd(this.m)),j._forceRed(this)},$.prototype.mul=function(_,O){if(_.isZero()||O.isZero())return new o(0)._forceRed(this);var z=_.mul(O),N=z.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),B=z.isub(N).iushrn(this.shift),j=B;return B.cmp(this.m)>=0?j=B.isub(this.m):B.cmpn(0)<0&&(j=B.iadd(this.m)),j._forceRed(this)},$.prototype.invm=function(_){var O=this.imod(_._invmp(this.m).mul(this.r2));return O._forceRed(this)}})(typeof HJ>\"u\"||HJ,U2e)});var dI=be(n8=>{\"use strict\";p();Object.defineProperty(n8,\"__esModule\",{value:!0});n8.errorValues=n8.standardErrorCodes=void 0;n8.standardErrorCodes={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901,unsupportedChain:4902}};n8.errorValues={\"-32700\":{standard:\"JSON RPC 2.0\",message:\"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"},\"-32600\":{standard:\"JSON RPC 2.0\",message:\"The JSON sent is not a valid Request object.\"},\"-32601\":{standard:\"JSON RPC 2.0\",message:\"The method does not exist / is not available.\"},\"-32602\":{standard:\"JSON RPC 2.0\",message:\"Invalid method parameter(s).\"},\"-32603\":{standard:\"JSON RPC 2.0\",message:\"Internal JSON-RPC error.\"},\"-32000\":{standard:\"EIP-1474\",message:\"Invalid input.\"},\"-32001\":{standard:\"EIP-1474\",message:\"Resource not found.\"},\"-32002\":{standard:\"EIP-1474\",message:\"Resource unavailable.\"},\"-32003\":{standard:\"EIP-1474\",message:\"Transaction rejected.\"},\"-32004\":{standard:\"EIP-1474\",message:\"Method not supported.\"},\"-32005\":{standard:\"EIP-1474\",message:\"Request limit exceeded.\"},4001:{standard:\"EIP-1193\",message:\"User rejected the request.\"},4100:{standard:\"EIP-1193\",message:\"The requested account and/or method has not been authorized by the user.\"},4200:{standard:\"EIP-1193\",message:\"The requested method is not supported by this Ethereum provider.\"},4900:{standard:\"EIP-1193\",message:\"The provider is disconnected from all chains.\"},4901:{standard:\"EIP-1193\",message:\"The provider is disconnected from the specified chain.\"},4902:{standard:\"EIP-3085\",message:\"Unrecognized chain ID.\"}}});var SU=be(kh=>{\"use strict\";p();Object.defineProperty(kh,\"__esModule\",{value:!0});kh.serialize=kh.getErrorCode=kh.isValidCode=kh.getMessageFromCode=kh.JSON_RPC_SERVER_ERROR_MESSAGE=void 0;var EU=dI(),H2e=\"Unspecified error message.\";kh.JSON_RPC_SERVER_ERROR_MESSAGE=\"Unspecified server error.\";function q2e(t,e=H2e){if(t&&Number.isInteger(t)){let n=t.toString();if(qJ(EU.errorValues,n))return EU.errorValues[n].message;if(V2e(t))return kh.JSON_RPC_SERVER_ERROR_MESSAGE}return e}kh.getMessageFromCode=q2e;function W2e(t){if(!Number.isInteger(t))return!1;let e=t.toString();return!!(EU.errorValues[e]||V2e(t))}kh.isValidCode=W2e;function zWe(t){var e;if(typeof t==\"number\")return t;if(HWe(t))return(e=t.code)!==null&&e!==void 0?e:t.errorCode}kh.getErrorCode=zWe;function HWe(t){return typeof t==\"object\"&&t!==null&&(typeof t.code==\"number\"||typeof t.errorCode==\"number\")}function qWe(t,{shouldIncludeStack:e=!1}={}){let n={};if(t&&typeof t==\"object\"&&!Array.isArray(t)&&qJ(t,\"code\")&&W2e(t.code)){let r=t;n.code=r.code,r.message&&typeof r.message==\"string\"?(n.message=r.message,qJ(r,\"data\")&&(n.data=r.data)):(n.message=q2e(n.code),n.data={originalError:j2e(t)})}else n.code=EU.standardErrorCodes.rpc.internal,n.message=z2e(t,\"message\")?t.message:H2e,n.data={originalError:j2e(t)};return e&&(n.stack=z2e(t,\"stack\")?t.stack:void 0),n}kh.serialize=qWe;function V2e(t){return t>=-32099&&t<=-32e3}function j2e(t){return t&&typeof t==\"object\"&&!Array.isArray(t)?Object.assign({},t):t}function qJ(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function z2e(t,e){return typeof t==\"object\"&&t!==null&&e in t&&typeof t[e]==\"string\"}});var G2e=be(CU=>{\"use strict\";p();Object.defineProperty(CU,\"__esModule\",{value:!0});CU.standardErrors=void 0;var El=dI(),$2e=SU();CU.standardErrors={rpc:{parse:t=>im(El.standardErrorCodes.rpc.parse,t),invalidRequest:t=>im(El.standardErrorCodes.rpc.invalidRequest,t),invalidParams:t=>im(El.standardErrorCodes.rpc.invalidParams,t),methodNotFound:t=>im(El.standardErrorCodes.rpc.methodNotFound,t),internal:t=>im(El.standardErrorCodes.rpc.internal,t),server:t=>{if(!t||typeof t!=\"object\"||Array.isArray(t))throw new Error(\"Ethereum RPC Server errors must provide single object argument.\");let{code:e}=t;if(!Number.isInteger(e)||e>-32005||e<-32099)throw new Error(\\'\"code\" must be an integer such that: -32099 <= code <= -32005\\');return im(e,t)},invalidInput:t=>im(El.standardErrorCodes.rpc.invalidInput,t),resourceNotFound:t=>im(El.standardErrorCodes.rpc.resourceNotFound,t),resourceUnavailable:t=>im(El.standardErrorCodes.rpc.resourceUnavailable,t),transactionRejected:t=>im(El.standardErrorCodes.rpc.transactionRejected,t),methodNotSupported:t=>im(El.standardErrorCodes.rpc.methodNotSupported,t),limitExceeded:t=>im(El.standardErrorCodes.rpc.limitExceeded,t)},provider:{userRejectedRequest:t=>r8(El.standardErrorCodes.provider.userRejectedRequest,t),unauthorized:t=>r8(El.standardErrorCodes.provider.unauthorized,t),unsupportedMethod:t=>r8(El.standardErrorCodes.provider.unsupportedMethod,t),disconnected:t=>r8(El.standardErrorCodes.provider.disconnected,t),chainDisconnected:t=>r8(El.standardErrorCodes.provider.chainDisconnected,t),unsupportedChain:t=>r8(El.standardErrorCodes.provider.unsupportedChain,t),custom:t=>{if(!t||typeof t!=\"object\"||Array.isArray(t))throw new Error(\"Ethereum Provider custom errors must provide single object argument.\");let{code:e,message:n,data:r}=t;if(!n||typeof n!=\"string\")throw new Error(\\'\"message\" must be a nonempty string\\');return new _U(e,n,r)}}};function im(t,e){let[n,r]=K2e(e);return new kU(t,n||(0,$2e.getMessageFromCode)(t),r)}function r8(t,e){let[n,r]=K2e(e);return new _U(t,n||(0,$2e.getMessageFromCode)(t),r)}function K2e(t){if(t){if(typeof t==\"string\")return[t];if(typeof t==\"object\"&&!Array.isArray(t)){let{message:e,data:n}=t;if(e&&typeof e!=\"string\")throw new Error(\"Must specify string message.\");return[e||void 0,n]}}return[]}var kU=class extends Error{constructor(e,n,r){if(!Number.isInteger(e))throw new Error(\\'\"code\" must be an integer.\\');if(!n||typeof n!=\"string\")throw new Error(\\'\"message\" must be a nonempty string.\\');super(n),this.code=e,r!==void 0&&(this.data=r)}},_U=class extends kU{constructor(e,n,r){if(!WWe(e))throw new Error(\\'\"code\" must be an integer such that: 1000 <= code <= 4999\\');super(e,n,r)}};function WWe(t){return Number.isInteger(t)&&t>=1e3&&t<=4999}});var TU=be(AU=>{\"use strict\";p();Object.defineProperty(AU,\"__esModule\",{value:!0});AU.isErrorResponse=void 0;function VWe(t){return t.errorMessage!==void 0}AU.isErrorResponse=VWe});var IU=be(RU=>{\"use strict\";p();Object.defineProperty(RU,\"__esModule\",{value:!0});RU.LIB_VERSION=void 0;RU.LIB_VERSION=\"3.9.3\"});var Z2e=be(OU=>{\"use strict\";p();Object.defineProperty(OU,\"__esModule\",{value:!0});OU.serializeError=void 0;var $We=TU(),KWe=IU(),GWe=dI(),ZWe=SU();function YWe(t,e){let n=(0,ZWe.serialize)(QWe(t),{shouldIncludeStack:!0}),r=new URL(\"https://docs.cloud.coinbase.com/wallet-sdk/docs/errors\");r.searchParams.set(\"version\",KWe.LIB_VERSION),r.searchParams.set(\"code\",n.code.toString());let o=JWe(n.data,e);return o&&r.searchParams.set(\"method\",o),r.searchParams.set(\"message\",n.message),Object.assign(Object.assign({},n),{docUrl:r.href})}OU.serializeError=YWe;function QWe(t){return typeof t==\"string\"?{message:t,code:GWe.standardErrorCodes.rpc.internal}:(0,$We.isErrorResponse)(t)?Object.assign(Object.assign({},t),{message:t.errorMessage,code:t.errorCode,data:{method:t.method}}):t}function JWe(t,e){let n=t?.method;if(n)return n;if(e!==void 0){if(typeof e==\"string\")return e;if(Array.isArray(e)){if(e.length>0)return e[0].method}else return e.method}}});var fI=be(sm=>{\"use strict\";p();Object.defineProperty(sm,\"__esModule\",{value:!0});sm.standardErrors=sm.standardErrorCodes=sm.serializeError=sm.getMessageFromCode=sm.getErrorCode=void 0;var XWe=dI();Object.defineProperty(sm,\"standardErrorCodes\",{enumerable:!0,get:function(){return XWe.standardErrorCodes}});var eVe=G2e();Object.defineProperty(sm,\"standardErrors\",{enumerable:!0,get:function(){return eVe.standardErrors}});var tVe=Z2e();Object.defineProperty(sm,\"serializeError\",{enumerable:!0,get:function(){return tVe.serializeError}});var Y2e=SU();Object.defineProperty(sm,\"getErrorCode\",{enumerable:!0,get:function(){return Y2e.getErrorCode}});Object.defineProperty(sm,\"getMessageFromCode\",{enumerable:!0,get:function(){return Y2e.getMessageFromCode}})});var pI=be(mu=>{\"use strict\";p();Object.defineProperty(mu,\"__esModule\",{value:!0});mu.ProviderType=mu.RegExpString=mu.IntNumber=mu.BigIntString=mu.AddressString=mu.HexString=mu.OpaqueType=void 0;function hI(){return t=>t}mu.OpaqueType=hI;mu.HexString=hI();mu.AddressString=hI();mu.BigIntString=hI();function nVe(t){return Math.floor(t)}mu.IntNumber=nVe;mu.RegExpString=hI();var Q2e;(function(t){t.CoinbaseWallet=\"CoinbaseWallet\",t.MetaMask=\"MetaMask\",t.Unselected=\"\"})(Q2e||(mu.ProviderType=Q2e={}))});var Yy=be(fn=>{\"use strict\";p();var rVe=fn&&fn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(fn,\"__esModule\",{value:!0});fn.isMobileWeb=fn.getLocation=fn.isInIFrame=fn.createQrUrl=fn.getFavicon=fn.range=fn.isBigNumber=fn.ensureParsedJSONObject=fn.ensureBN=fn.ensureRegExpString=fn.ensureIntNumber=fn.ensureBuffer=fn.ensureAddressString=fn.ensureEvenLengthHexString=fn.ensureHexString=fn.isHexString=fn.prepend0x=fn.strip0x=fn.has0xPrefix=fn.hexStringFromIntNumber=fn.intNumberFromHexString=fn.bigIntStringFromBN=fn.hexStringFromBuffer=fn.hexStringToUint8Array=fn.uint8ArrayToHex=fn.randomBytesHex=void 0;var Cx=rVe(q6()),W6=fI(),am=pI(),J2e=/^[0-9]*$/,X2e=/^[a-f0-9]*$/;function oVe(t){return ewe(crypto.getRandomValues(new Uint8Array(t)))}fn.randomBytesHex=oVe;function ewe(t){return[...t].map(e=>e.toString(16).padStart(2,\"0\")).join(\"\")}fn.uint8ArrayToHex=ewe;function iVe(t){return new Uint8Array(t.match(/.{1,2}/g).map(e=>parseInt(e,16)))}fn.hexStringToUint8Array=iVe;function sVe(t,e=!1){let n=t.toString(\"hex\");return(0,am.HexString)(e?`0x${n}`:n)}fn.hexStringFromBuffer=sVe;function aVe(t){return(0,am.BigIntString)(t.toString(10))}fn.bigIntStringFromBN=aVe;function cVe(t){return(0,am.IntNumber)(new Cx.default(gI(t,!1),16).toNumber())}fn.intNumberFromHexString=cVe;function lVe(t){return(0,am.HexString)(`0x${new Cx.default(t).toString(16)}`)}fn.hexStringFromIntNumber=lVe;function WJ(t){return t.startsWith(\"0x\")||t.startsWith(\"0X\")}fn.has0xPrefix=WJ;function PU(t){return WJ(t)?t.slice(2):t}fn.strip0x=PU;function twe(t){return WJ(t)?`0x${t.slice(2)}`:`0x${t}`}fn.prepend0x=twe;function mI(t){if(typeof t!=\"string\")return!1;let e=PU(t).toLowerCase();return X2e.test(e)}fn.isHexString=mI;function nwe(t,e=!1){if(typeof t==\"string\"){let n=PU(t).toLowerCase();if(X2e.test(n))return(0,am.HexString)(e?`0x${n}`:n)}throw W6.standardErrors.rpc.invalidParams(`\"${String(t)}\" is not a hexadecimal string`)}fn.ensureHexString=nwe;function gI(t,e=!1){let n=nwe(t,!1);return n.length%2===1&&(n=(0,am.HexString)(`0${n}`)),e?(0,am.HexString)(`0x${n}`):n}fn.ensureEvenLengthHexString=gI;function uVe(t){if(typeof t==\"string\"){let e=PU(t).toLowerCase();if(mI(e)&&e.length===40)return(0,am.AddressString)(twe(e))}throw W6.standardErrors.rpc.invalidParams(`Invalid Ethereum address: ${String(t)}`)}fn.ensureAddressString=uVe;function dVe(t){if(globalThis.Buffer.isBuffer(t))return t;if(typeof t==\"string\"){if(mI(t)){let e=gI(t,!1);return globalThis.Buffer.from(e,\"hex\")}return globalThis.Buffer.from(t,\"utf8\")}throw W6.standardErrors.rpc.invalidParams(`Not binary data: ${String(t)}`)}fn.ensureBuffer=dVe;function rwe(t){if(typeof t==\"number\"&&Number.isInteger(t))return(0,am.IntNumber)(t);if(typeof t==\"string\"){if(J2e.test(t))return(0,am.IntNumber)(Number(t));if(mI(t))return(0,am.IntNumber)(new Cx.default(gI(t,!1),16).toNumber())}throw W6.standardErrors.rpc.invalidParams(`Not an integer: ${String(t)}`)}fn.ensureIntNumber=rwe;function fVe(t){if(t instanceof RegExp)return(0,am.RegExpString)(t.toString());throw W6.standardErrors.rpc.invalidParams(`Not a RegExp: ${String(t)}`)}fn.ensureRegExpString=fVe;function hVe(t){if(t!==null&&(Cx.default.isBN(t)||owe(t)))return new Cx.default(t.toString(10),10);if(typeof t==\"number\")return new Cx.default(rwe(t));if(typeof t==\"string\"){if(J2e.test(t))return new Cx.default(t,10);if(mI(t))return new Cx.default(gI(t,!1),16)}throw W6.standardErrors.rpc.invalidParams(`Not an integer: ${String(t)}`)}fn.ensureBN=hVe;function pVe(t){if(typeof t==\"string\")return JSON.parse(t);if(typeof t==\"object\")return t;throw W6.standardErrors.rpc.invalidParams(`Not a JSON string or an object: ${String(t)}`)}fn.ensureParsedJSONObject=pVe;function owe(t){if(t==null||typeof t.constructor!=\"function\")return!1;let{constructor:e}=t;return typeof e.config==\"function\"&&typeof e.EUCLID==\"number\"}fn.isBigNumber=owe;function mVe(t,e){return Array.from({length:e-t},(n,r)=>t+r)}fn.range=mVe;function gVe(){let t=document.querySelector(\\'link[sizes=\"192x192\"]\\')||document.querySelector(\\'link[sizes=\"180x180\"]\\')||document.querySelector(\\'link[rel=\"icon\"]\\')||document.querySelector(\\'link[rel=\"shortcut icon\"]\\'),{protocol:e,host:n}=document.location,r=t?t.getAttribute(\"href\"):null;return!r||r.startsWith(\"javascript:\")||r.startsWith(\"vbscript:\")?null:r.startsWith(\"http://\")||r.startsWith(\"https://\")||r.startsWith(\"data:\")?r:r.startsWith(\"//\")?e+r:`${e}//${n}${r}`}fn.getFavicon=gVe;function yVe(t,e,n,r,o,i){let a=r?\"parent-id\":\"id\",c=new URLSearchParams({[a]:t,secret:e,server:n,v:o,chainId:i.toString()}).toString();return`${n}/#/link?${c}`}fn.createQrUrl=yVe;function iwe(){try{return window.frameElement!==null}catch{return!1}}fn.isInIFrame=iwe;function bVe(){try{return iwe()&&window.top?window.top.location:window.location}catch{return window.location}}fn.getLocation=bVe;function vVe(){var t;return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test((t=window?.navigator)===null||t===void 0?void 0:t.userAgent)}fn.isMobileWeb=vVe});var swe=be(MU=>{\"use strict\";p();Object.defineProperty(MU,\"__esModule\",{value:!0});MU.ScopedLocalStorage=void 0;var VJ=class{constructor(e){this.scope=e}setItem(e,n){localStorage.setItem(this.scopedKey(e),n)}getItem(e){return localStorage.getItem(this.scopedKey(e))}removeItem(e){localStorage.removeItem(this.scopedKey(e))}clear(){let e=this.scopedKey(\"\"),n=[];for(let r=0;r<localStorage.length;r++){let o=localStorage.key(r);typeof o==\"string\"&&o.startsWith(e)&&n.push(o)}n.forEach(r=>localStorage.removeItem(r))}scopedKey(e){return`${this.scope}:${e}`}};MU.ScopedLocalStorage=VJ});var LU=be(NU=>{\"use strict\";p();Object.defineProperty(NU,\"__esModule\",{value:!0});NU.EVENTS=void 0;NU.EVENTS={STARTED_CONNECTING:\"walletlink_sdk.started.connecting\",CONNECTED_STATE_CHANGE:\"walletlink_sdk.connected\",DISCONNECTED:\"walletlink_sdk.disconnected\",METADATA_DESTROYED:\"walletlink_sdk_metadata_destroyed\",LINKED:\"walletlink_sdk.linked\",FAILURE:\"walletlink_sdk.generic_failure\",SESSION_CONFIG_RECEIVED:\"walletlink_sdk.session_config_event_received\",ETH_ACCOUNTS_STATE:\"walletlink_sdk.eth_accounts_state\",SESSION_STATE_CHANGE:\"walletlink_sdk.session_state_change\",UNLINKED_ERROR_STATE:\"walletlink_sdk.unlinked_error_state\",SKIPPED_CLEARING_SESSION:\"walletlink_sdk.skipped_clearing_session\",GENERAL_ERROR:\"walletlink_sdk.general_error\",WEB3_REQUEST:\"walletlink_sdk.web3.request\",WEB3_REQUEST_PUBLISHED:\"walletlink_sdk.web3.request_published\",WEB3_RESPONSE:\"walletlink_sdk.web3.response\",METHOD_NOT_IMPLEMENTED:\"walletlink_sdk.method_not_implemented\",UNKNOWN_ADDRESS_ENCOUNTERED:\"walletlink_sdk.unknown_address_encountered\"}});var BU=be(Qy=>{\"use strict\";p();Object.defineProperty(Qy,\"__esModule\",{value:!0});Qy.RelayAbstract=Qy.APP_VERSION_KEY=Qy.LOCAL_STORAGE_ADDRESSES_KEY=Qy.WALLET_USER_NAME_KEY=void 0;var awe=fI();Qy.WALLET_USER_NAME_KEY=\"walletUsername\";Qy.LOCAL_STORAGE_ADDRESSES_KEY=\"Addresses\";Qy.APP_VERSION_KEY=\"AppVersion\";var $J=class{async makeEthereumJSONRPCRequest(e,n){if(!n)throw new Error(\"Error: No jsonRpcUrl provided\");return window.fetch(n,{method:\"POST\",body:JSON.stringify(e),mode:\"cors\",headers:{\"Content-Type\":\"application/json\"}}).then(r=>r.json()).then(r=>{if(!r)throw awe.standardErrors.rpc.parse({});let o=r,{error:i}=o;if(i)throw(0,awe.serializeError)(i,e.method);return o})}};Qy.RelayAbstract=$J});var cm=be((Grn,KJ)=>{p();typeof Object.create==\"function\"?KJ.exports=function(e,n){n&&(e.super_=n,e.prototype=Object.create(n.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:KJ.exports=function(e,n){if(n){e.super_=n;var r=function(){};r.prototype=n.prototype,e.prototype=new r,e.prototype.constructor=e}}});var Xy=be((GJ,lwe)=>{p();var DU=Kb(),Jy=DU.Buffer;function cwe(t,e){for(var n in t)e[n]=t[n]}Jy.from&&Jy.alloc&&Jy.allocUnsafe&&Jy.allocUnsafeSlow?lwe.exports=DU:(cwe(DU,GJ),GJ.Buffer=V6);function V6(t,e,n){return Jy(t,e,n)}V6.prototype=Object.create(Jy.prototype);cwe(Jy,V6);V6.from=function(t,e,n){if(typeof t==\"number\")throw new TypeError(\"Argument must not be a number\");return Jy(t,e,n)};V6.alloc=function(t,e,n){if(typeof t!=\"number\")throw new TypeError(\"Argument must be a number\");var r=Jy(t);return e!==void 0?typeof n==\"string\"?r.fill(e,n):r.fill(e):r.fill(0),r};V6.allocUnsafe=function(t){if(typeof t!=\"number\")throw new TypeError(\"Argument must be a number\");return Jy(t)};V6.allocUnsafeSlow=function(t){if(typeof t!=\"number\")throw new TypeError(\"Argument must be a number\");return DU.SlowBuffer(t)}});var $6=be((Qrn,dwe)=>{p();var uwe=Xy().Buffer;function FU(t,e){this._block=uwe.alloc(t),this._finalSize=e,this._blockSize=t,this._len=0}FU.prototype.update=function(t,e){typeof t==\"string\"&&(e=e||\"utf8\",t=uwe.from(t,e));for(var n=this._block,r=this._blockSize,o=t.length,i=this._len,a=0;a<o;){for(var c=i%r,u=Math.min(o-a,r-c),d=0;d<u;d++)n[c+d]=t[a+d];i+=u,a+=u,i%r===0&&this._update(n)}return this._len+=o,this};FU.prototype.digest=function(t){var e=this._len%this._blockSize;this._block[e]=128,this._block.fill(0,e+1),e>=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=this._len*8;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(n&4294967295)>>>0,o=(n-r)/4294967296;this._block.writeUInt32BE(o,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var i=this._hash();return t?i.toString(t):i};FU.prototype._update=function(){throw new Error(\"_update must be implemented by subclass\")};dwe.exports=FU});var pwe=be((Xrn,hwe)=>{p();var wVe=cm(),fwe=$6(),xVe=Xy().Buffer,EVe=[1518500249,1859775393,-1894007588,-899497514],SVe=new Array(80);function yI(){this.init(),this._w=SVe,fwe.call(this,64,56)}wVe(yI,fwe);yI.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function kVe(t){return t<<5|t>>>27}function _Ve(t){return t<<30|t>>>2}function CVe(t,e,n,r){return t===0?e&n|~e&r:t===2?e&n|e&r|n&r:e^n^r}yI.prototype._update=function(t){for(var e=this._w,n=this._a|0,r=this._b|0,o=this._c|0,i=this._d|0,a=this._e|0,c=0;c<16;++c)e[c]=t.readInt32BE(c*4);for(;c<80;++c)e[c]=e[c-3]^e[c-8]^e[c-14]^e[c-16];for(var u=0;u<80;++u){var d=~~(u/20),h=kVe(n)+CVe(d,r,o,i)+a+e[u]+EVe[d]|0;a=i,i=o,o=_Ve(r),r=n,n=h}this._a=n+this._a|0,this._b=r+this._b|0,this._c=o+this._c|0,this._d=i+this._d|0,this._e=a+this._e|0};yI.prototype._hash=function(){var t=xVe.allocUnsafe(20);return t.writeInt32BE(this._a|0,0),t.writeInt32BE(this._b|0,4),t.writeInt32BE(this._c|0,8),t.writeInt32BE(this._d|0,12),t.writeInt32BE(this._e|0,16),t};hwe.exports=yI});var ywe=be((ton,gwe)=>{p();var AVe=cm(),mwe=$6(),TVe=Xy().Buffer,RVe=[1518500249,1859775393,-1894007588,-899497514],IVe=new Array(80);function bI(){this.init(),this._w=IVe,mwe.call(this,64,56)}AVe(bI,mwe);bI.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function OVe(t){return t<<1|t>>>31}function PVe(t){return t<<5|t>>>27}function MVe(t){return t<<30|t>>>2}function NVe(t,e,n,r){return t===0?e&n|~e&r:t===2?e&n|e&r|n&r:e^n^r}bI.prototype._update=function(t){for(var e=this._w,n=this._a|0,r=this._b|0,o=this._c|0,i=this._d|0,a=this._e|0,c=0;c<16;++c)e[c]=t.readInt32BE(c*4);for(;c<80;++c)e[c]=OVe(e[c-3]^e[c-8]^e[c-14]^e[c-16]);for(var u=0;u<80;++u){var d=~~(u/20),h=PVe(n)+NVe(d,r,o,i)+a+e[u]+RVe[d]|0;a=i,i=o,o=MVe(r),r=n,n=h}this._a=n+this._a|0,this._b=r+this._b|0,this._c=o+this._c|0,this._d=i+this._d|0,this._e=a+this._e|0};bI.prototype._hash=function(){var t=TVe.allocUnsafe(20);return t.writeInt32BE(this._a|0,0),t.writeInt32BE(this._b|0,4),t.writeInt32BE(this._c|0,8),t.writeInt32BE(this._d|0,12),t.writeInt32BE(this._e|0,16),t};gwe.exports=bI});var ZJ=be((ron,vwe)=>{p();var LVe=cm(),bwe=$6(),BVe=Xy().Buffer,DVe=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],FVe=new Array(64);function vI(){this.init(),this._w=FVe,bwe.call(this,64,56)}LVe(vI,bwe);vI.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this};function UVe(t,e,n){return n^t&(e^n)}function jVe(t,e,n){return t&e|n&(t|e)}function zVe(t){return(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10)}function HVe(t){return(t>>>6|t<<26)^(t>>>11|t<<21)^(t>>>25|t<<7)}function qVe(t){return(t>>>7|t<<25)^(t>>>18|t<<14)^t>>>3}function WVe(t){return(t>>>17|t<<15)^(t>>>19|t<<13)^t>>>10}vI.prototype._update=function(t){for(var e=this._w,n=this._a|0,r=this._b|0,o=this._c|0,i=this._d|0,a=this._e|0,c=this._f|0,u=this._g|0,d=this._h|0,h=0;h<16;++h)e[h]=t.readInt32BE(h*4);for(;h<64;++h)e[h]=WVe(e[h-2])+e[h-7]+qVe(e[h-15])+e[h-16]|0;for(var m=0;m<64;++m){var g=d+HVe(a)+UVe(a,c,u)+DVe[m]+e[m]|0,b=zVe(n)+jVe(n,r,o)|0;d=u,u=c,c=a,a=i+g|0,i=o,o=r,r=n,n=g+b|0}this._a=n+this._a|0,this._b=r+this._b|0,this._c=o+this._c|0,this._d=i+this._d|0,this._e=a+this._e|0,this._f=c+this._f|0,this._g=u+this._g|0,this._h=d+this._h|0};vI.prototype._hash=function(){var t=BVe.allocUnsafe(32);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t.writeInt32BE(this._h,28),t};vwe.exports=vI});var xwe=be((ion,wwe)=>{p();var VVe=cm(),$Ve=ZJ(),KVe=$6(),GVe=Xy().Buffer,ZVe=new Array(64);function UU(){this.init(),this._w=ZVe,KVe.call(this,64,56)}VVe(UU,$Ve);UU.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this};UU.prototype._hash=function(){var t=GVe.allocUnsafe(28);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t};wwe.exports=UU});var YJ=be((aon,Twe)=>{p();var YVe=cm(),Awe=$6(),QVe=Xy().Buffer,Ewe=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],JVe=new Array(160);function wI(){this.init(),this._w=JVe,Awe.call(this,128,112)}YVe(wI,Awe);wI.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this};function Swe(t,e,n){return n^t&(e^n)}function kwe(t,e,n){return t&e|n&(t|e)}function _we(t,e){return(t>>>28|e<<4)^(e>>>2|t<<30)^(e>>>7|t<<25)}function Cwe(t,e){return(t>>>14|e<<18)^(t>>>18|e<<14)^(e>>>9|t<<23)}function XVe(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^t>>>7}function e$e(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^(t>>>7|e<<25)}function t$e(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^t>>>6}function n$e(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^(t>>>6|e<<26)}function Fc(t,e){return t>>>0<e>>>0?1:0}wI.prototype._update=function(t){for(var e=this._w,n=this._ah|0,r=this._bh|0,o=this._ch|0,i=this._dh|0,a=this._eh|0,c=this._fh|0,u=this._gh|0,d=this._hh|0,h=this._al|0,m=this._bl|0,g=this._cl|0,b=this._dl|0,E=this._el|0,C=this._fl|0,T=this._gl|0,R=this._hl|0,L=0;L<32;L+=2)e[L]=t.readInt32BE(L*4),e[L+1]=t.readInt32BE(L*4+4);for(;L<160;L+=2){var D=e[L-30],G=e[L-15*2+1],W=XVe(D,G),J=e$e(G,D);D=e[L-2*2],G=e[L-2*2+1];var ne=t$e(D,G),ie=n$e(G,D),Z=e[L-7*2],ae=e[L-7*2+1],V=e[L-16*2],$=e[L-16*2+1],F=J+ae|0,_=W+Z+Fc(F,J)|0;F=F+ie|0,_=_+ne+Fc(F,ie)|0,F=F+$|0,_=_+V+Fc(F,$)|0,e[L]=_,e[L+1]=F}for(var O=0;O<160;O+=2){_=e[O],F=e[O+1];var z=kwe(n,r,o),N=kwe(h,m,g),B=_we(n,h),j=_we(h,n),q=Cwe(a,E),H=Cwe(E,a),I=Ewe[O],U=Ewe[O+1],X=Swe(a,c,u),ee=Swe(E,C,T),se=R+H|0,pe=d+q+Fc(se,R)|0;se=se+ee|0,pe=pe+X+Fc(se,ee)|0,se=se+U|0,pe=pe+I+Fc(se,U)|0,se=se+F|0,pe=pe+_+Fc(se,F)|0;var ye=j+N|0,xe=B+z+Fc(ye,j)|0;d=u,R=T,u=c,T=C,c=a,C=E,E=b+se|0,a=i+pe+Fc(E,b)|0,i=o,b=g,o=r,g=m,r=n,m=h,h=se+ye|0,n=pe+xe+Fc(h,se)|0}this._al=this._al+h|0,this._bl=this._bl+m|0,this._cl=this._cl+g|0,this._dl=this._dl+b|0,this._el=this._el+E|0,this._fl=this._fl+C|0,this._gl=this._gl+T|0,this._hl=this._hl+R|0,this._ah=this._ah+n+Fc(this._al,h)|0,this._bh=this._bh+r+Fc(this._bl,m)|0,this._ch=this._ch+o+Fc(this._cl,g)|0,this._dh=this._dh+i+Fc(this._dl,b)|0,this._eh=this._eh+a+Fc(this._el,E)|0,this._fh=this._fh+c+Fc(this._fl,C)|0,this._gh=this._gh+u+Fc(this._gl,T)|0,this._hh=this._hh+d+Fc(this._hl,R)|0};wI.prototype._hash=function(){var t=QVe.allocUnsafe(64);function e(n,r,o){t.writeInt32BE(n,o),t.writeInt32BE(r,o+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),e(this._gh,this._gl,48),e(this._hh,this._hl,56),t};Twe.exports=wI});var Iwe=be((lon,Rwe)=>{p();var r$e=cm(),o$e=YJ(),i$e=$6(),s$e=Xy().Buffer,a$e=new Array(160);function jU(){this.init(),this._w=a$e,i$e.call(this,128,112)}r$e(jU,o$e);jU.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this};jU.prototype._hash=function(){var t=s$e.allocUnsafe(48);function e(n,r,o){t.writeInt32BE(n,o),t.writeInt32BE(r,o+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),t};Rwe.exports=jU});var Pwe=be((Pv,Owe)=>{p();var Pv=Owe.exports=function(e){e=e.toLowerCase();var n=Pv[e];if(!n)throw new Error(e+\" is not supported (we accept pull requests)\");return new n};Pv.sha=pwe();Pv.sha1=ywe();Pv.sha224=xwe();Pv.sha256=ZJ();Pv.sha384=Iwe();Pv.sha512=YJ()});var HU=be(zU=>{\"use strict\";p();Object.defineProperty(zU,\"__esModule\",{value:!0});zU.Session=void 0;var Mwe=Pwe(),Nwe=Yy(),Lwe=\"session:id\",Bwe=\"session:secret\",Dwe=\"session:linked\",QJ=class t{constructor(e,n,r,o){this._storage=e,this._id=n||(0,Nwe.randomBytesHex)(16),this._secret=r||(0,Nwe.randomBytesHex)(32),this._key=new Mwe.sha256().update(`${this._id}, ${this._secret} WalletLink`).digest(\"hex\"),this._linked=!!o}static load(e){let n=e.getItem(Lwe),r=e.getItem(Dwe),o=e.getItem(Bwe);return n&&o?new t(e,n,o,r===\"1\"):null}static hash(e){return new Mwe.sha256().update(e).digest(\"hex\")}get id(){return this._id}get secret(){return this._secret}get key(){return this._key}get linked(){return this._linked}set linked(e){this._linked=e,this.persistLinked()}save(){return this._storage.setItem(Lwe,this._id),this._storage.setItem(Bwe,this._secret),this.persistLinked(),this}persistLinked(){this._storage.setItem(Dwe,this._linked?\"1\":\"0\")}};zU.Session=QJ});var Fwe=be(WU=>{\"use strict\";p();Object.defineProperty(WU,\"__esModule\",{value:!0});WU.Cipher=void 0;var qU=Yy(),JJ=class{constructor(e){this.secret=e}async encrypt(e){let n=this.secret;if(n.length!==64)throw Error(\"secret must be 256 bits\");let r=crypto.getRandomValues(new Uint8Array(12)),o=await crypto.subtle.importKey(\"raw\",(0,qU.hexStringToUint8Array)(n),{name:\"aes-gcm\"},!1,[\"encrypt\",\"decrypt\"]),i=new TextEncoder,a=await window.crypto.subtle.encrypt({name:\"AES-GCM\",iv:r},o,i.encode(e)),c=16,u=a.slice(a.byteLength-c),d=a.slice(0,a.byteLength-c),h=new Uint8Array(u),m=new Uint8Array(d),g=new Uint8Array([...r,...h,...m]);return(0,qU.uint8ArrayToHex)(g)}async decrypt(e){let n=this.secret;if(n.length!==64)throw Error(\"secret must be 256 bits\");return new Promise((r,o)=>{(async function(){let i=await crypto.subtle.importKey(\"raw\",(0,qU.hexStringToUint8Array)(n),{name:\"aes-gcm\"},!1,[\"encrypt\",\"decrypt\"]),a=(0,qU.hexStringToUint8Array)(e),c=a.slice(0,12),u=a.slice(12,28),d=a.slice(28),h=new Uint8Array([...d,...u]),m={name:\"AES-GCM\",iv:new Uint8Array(c)};try{let g=await window.crypto.subtle.decrypt(m,i,h),b=new TextDecoder;r(b.decode(g))}catch(g){o(g)}})()})}};WU.Cipher=JJ});var Uwe=be(VU=>{\"use strict\";p();Object.defineProperty(VU,\"__esModule\",{value:!0});VU.WalletLinkHTTP=void 0;var XJ=class{constructor(e,n,r){this.linkAPIUrl=e,this.sessionId=n;let o=`${n}:${r}`;this.auth=`Basic ${btoa(o)}`}async markUnseenEventsAsSeen(e){return Promise.all(e.map(n=>fetch(`${this.linkAPIUrl}/events/${n.eventId}/seen`,{method:\"POST\",headers:{Authorization:this.auth}}))).catch(n=>console.error(\"Unabled to mark event as failed:\",n))}async fetchUnseenEvents(){var e;let n=await fetch(`${this.linkAPIUrl}/events?unseen=true`,{headers:{Authorization:this.auth}});if(n.ok){let{events:r,error:o}=await n.json();if(o)throw new Error(`Check unseen events failed: ${o}`);let i=(e=r?.filter(a=>a.event===\"Web3Response\").map(a=>({type:\"Event\",sessionId:this.sessionId,eventId:a.id,event:a.event,data:a.data})))!==null&&e!==void 0?e:[];return this.markUnseenEventsAsSeen(i),i}throw new Error(`Check unseen events failed: ${n.status}`)}};VU.WalletLinkHTTP=XJ});var jwe=be(i8=>{\"use strict\";p();Object.defineProperty(i8,\"__esModule\",{value:!0});i8.WalletLinkWebSocket=i8.ConnectionState=void 0;var o8;(function(t){t[t.DISCONNECTED=0]=\"DISCONNECTED\",t[t.CONNECTING=1]=\"CONNECTING\",t[t.CONNECTED=2]=\"CONNECTED\"})(o8||(i8.ConnectionState=o8={}));var eX=class{setConnectionStateListener(e){this.connectionStateListener=e}setIncomingDataListener(e){this.incomingDataListener=e}constructor(e,n=WebSocket){this.WebSocketClass=n,this.webSocket=null,this.pendingData=[],this.url=e.replace(/^http/,\"ws\")}async connect(){if(this.webSocket)throw new Error(\"webSocket object is not null\");return new Promise((e,n)=>{var r;let o;try{this.webSocket=o=new this.WebSocketClass(this.url)}catch(i){n(i);return}(r=this.connectionStateListener)===null||r===void 0||r.call(this,o8.CONNECTING),o.onclose=i=>{var a;this.clearWebSocket(),n(new Error(`websocket error ${i.code}: ${i.reason}`)),(a=this.connectionStateListener)===null||a===void 0||a.call(this,o8.DISCONNECTED)},o.onopen=i=>{var a;e(),(a=this.connectionStateListener)===null||a===void 0||a.call(this,o8.CONNECTED),this.pendingData.length>0&&([...this.pendingData].forEach(u=>this.sendData(u)),this.pendingData=[])},o.onmessage=i=>{var a,c;if(i.data===\"h\")(a=this.incomingDataListener)===null||a===void 0||a.call(this,{type:\"Heartbeat\"});else try{let u=JSON.parse(i.data);(c=this.incomingDataListener)===null||c===void 0||c.call(this,u)}catch{}}})}disconnect(){var e;let{webSocket:n}=this;if(n){this.clearWebSocket(),(e=this.connectionStateListener)===null||e===void 0||e.call(this,o8.DISCONNECTED),this.connectionStateListener=void 0,this.incomingDataListener=void 0;try{n.close()}catch{}}}sendData(e){let{webSocket:n}=this;if(!n){this.pendingData.push(e),this.connect();return}n.send(e)}clearWebSocket(){let{webSocket:e}=this;e&&(this.webSocket=null,e.onclose=null,e.onerror=null,e.onmessage=null,e.onopen=null)}};i8.WalletLinkWebSocket=eX});var qwe=be(KU=>{\"use strict\";p();Object.defineProperty(KU,\"__esModule\",{value:!0});KU.WalletLinkConnection=void 0;var s8=pI(),c$e=Fwe(),e1=LU(),zwe=BU(),a8=HU(),l$e=Uwe(),$U=jwe(),Hwe=1e4,u$e=6e4,tX=class{constructor({session:e,linkAPIUrl:n,listener:r,diagnostic:o,WebSocketClass:i=WebSocket}){this.destroyed=!1,this.lastHeartbeatResponse=0,this.nextReqId=(0,s8.IntNumber)(1),this._connected=!1,this._linked=!1,this.shouldFetchUnseenEventsOnConnect=!1,this.requestResolutions=new Map,this.handleSessionMetadataUpdated=c=>{if(!c)return;new Map([[\"__destroyed\",this.handleDestroyed],[\"EthereumAddress\",this.handleAccountUpdated],[\"WalletUsername\",this.handleWalletUsernameUpdated],[\"AppVersion\",this.handleAppVersionUpdated],[\"ChainId\",d=>c.JsonRpcUrl&&this.handleChainUpdated(d,c.JsonRpcUrl)]]).forEach((d,h)=>{let m=c[h];m!==void 0&&d(m)})},this.handleDestroyed=c=>{var u,d;c===\"1\"&&((u=this.listener)===null||u===void 0||u.resetAndReload(),(d=this.diagnostic)===null||d===void 0||d.log(e1.EVENTS.METADATA_DESTROYED,{alreadyDestroyed:this.isDestroyed,sessionIdHash:a8.Session.hash(this.session.id)}))},this.handleAccountUpdated=async c=>{var u,d;try{let h=await this.cipher.decrypt(c);(u=this.listener)===null||u===void 0||u.accountUpdated(h)}catch{(d=this.diagnostic)===null||d===void 0||d.log(e1.EVENTS.GENERAL_ERROR,{message:\"Had error decrypting\",value:\"selectedAddress\"})}},this.handleMetadataUpdated=async(c,u)=>{var d,h;try{let m=await this.cipher.decrypt(u);(d=this.listener)===null||d===void 0||d.metadataUpdated(c,m)}catch{(h=this.diagnostic)===null||h===void 0||h.log(e1.EVENTS.GENERAL_ERROR,{message:\"Had error decrypting\",value:c})}},this.handleWalletUsernameUpdated=async c=>{this.handleMetadataUpdated(zwe.WALLET_USER_NAME_KEY,c)},this.handleAppVersionUpdated=async c=>{this.handleMetadataUpdated(zwe.APP_VERSION_KEY,c)},this.handleChainUpdated=async(c,u)=>{var d,h;try{let m=await this.cipher.decrypt(c),g=await this.cipher.decrypt(u);(d=this.listener)===null||d===void 0||d.chainUpdated(m,g)}catch{(h=this.diagnostic)===null||h===void 0||h.log(e1.EVENTS.GENERAL_ERROR,{message:\"Had error decrypting\",value:\"chainId|jsonRpcUrl\"})}},this.session=e,this.cipher=new c$e.Cipher(e.secret),this.diagnostic=o,this.listener=r;let a=new $U.WalletLinkWebSocket(`${n}/rpc`,i);a.setConnectionStateListener(async c=>{var u;(u=this.diagnostic)===null||u===void 0||u.log(e1.EVENTS.CONNECTED_STATE_CHANGE,{state:c,sessionIdHash:a8.Session.hash(e.id)});let d=!1;switch(c){case $U.ConnectionState.DISCONNECTED:if(!this.destroyed){let h=async()=>{await new Promise(m=>setTimeout(m,5e3)),this.destroyed||a.connect().catch(()=>{h()})};h()}break;case $U.ConnectionState.CONNECTED:try{await this.authenticate(),this.sendIsLinked(),this.sendGetSessionConfig(),d=!0}catch{}this.updateLastHeartbeat(),setInterval(()=>{this.heartbeat()},Hwe),this.shouldFetchUnseenEventsOnConnect&&this.fetchUnseenEventsAPI();break;case $U.ConnectionState.CONNECTING:break}this.connected!==d&&(this.connected=d)}),a.setIncomingDataListener(c=>{var u,d,h;switch(c.type){case\"Heartbeat\":this.updateLastHeartbeat();return;case\"IsLinkedOK\":case\"Linked\":{let m=c.type===\"IsLinkedOK\"?c.linked:void 0;(u=this.diagnostic)===null||u===void 0||u.log(e1.EVENTS.LINKED,{sessionIdHash:a8.Session.hash(e.id),linked:m,type:c.type,onlineGuests:c.onlineGuests}),this.linked=m||c.onlineGuests>0;break}case\"GetSessionConfigOK\":case\"SessionConfigUpdated\":{(d=this.diagnostic)===null||d===void 0||d.log(e1.EVENTS.SESSION_CONFIG_RECEIVED,{sessionIdHash:a8.Session.hash(e.id),metadata_keys:c&&c.metadata?Object.keys(c.metadata):void 0}),this.handleSessionMetadataUpdated(c.metadata);break}case\"Event\":{this.handleIncomingEvent(c);break}}c.id!==void 0&&((h=this.requestResolutions.get(c.id))===null||h===void 0||h(c))}),this.ws=a,this.http=new l$e.WalletLinkHTTP(n,e.id,e.key)}connect(){var e;if(this.destroyed)throw new Error(\"instance is destroyed\");(e=this.diagnostic)===null||e===void 0||e.log(e1.EVENTS.STARTED_CONNECTING,{sessionIdHash:a8.Session.hash(this.session.id)}),this.ws.connect()}destroy(){var e;this.destroyed=!0,this.ws.disconnect(),(e=this.diagnostic)===null||e===void 0||e.log(e1.EVENTS.DISCONNECTED,{sessionIdHash:a8.Session.hash(this.session.id)}),this.listener=void 0}get isDestroyed(){return this.destroyed}get connected(){return this._connected}set connected(e){var n,r;this._connected=e,e&&((n=this.onceConnected)===null||n===void 0||n.call(this)),(r=this.listener)===null||r===void 0||r.connectedUpdated(e)}setOnceConnected(e){return new Promise(n=>{this.connected?e().then(n):this.onceConnected=()=>{e().then(n),this.onceConnected=void 0}})}get linked(){return this._linked}set linked(e){var n,r;this._linked=e,e&&((n=this.onceLinked)===null||n===void 0||n.call(this)),(r=this.listener)===null||r===void 0||r.linkedUpdated(e)}setOnceLinked(e){return new Promise(n=>{this.linked?e().then(n):this.onceLinked=()=>{e().then(n),this.onceLinked=void 0}})}async handleIncomingEvent(e){var n,r;if(!(e.type!==\"Event\"||e.event!==\"Web3Response\"))try{let o=await this.cipher.decrypt(e.data),i=JSON.parse(o);if(i.type!==\"WEB3_RESPONSE\")return;(n=this.listener)===null||n===void 0||n.handleWeb3ResponseMessage(i)}catch{(r=this.diagnostic)===null||r===void 0||r.log(e1.EVENTS.GENERAL_ERROR,{message:\"Had error decrypting\",value:\"incomingEvent\"})}}async checkUnseenEvents(){if(!this.connected){this.shouldFetchUnseenEventsOnConnect=!0;return}await new Promise(e=>setTimeout(e,250));try{await this.fetchUnseenEventsAPI()}catch(e){console.error(\"Unable to check for unseen events\",e)}}async fetchUnseenEventsAPI(){this.shouldFetchUnseenEventsOnConnect=!1,(await this.http.fetchUnseenEvents()).forEach(n=>this.handleIncomingEvent(n))}async setSessionMetadata(e,n){let r={type:\"SetSessionConfig\",id:(0,s8.IntNumber)(this.nextReqId++),sessionId:this.session.id,metadata:{[e]:n}};return this.setOnceConnected(async()=>{let o=await this.makeRequest(r);if(o.type===\"Fail\")throw new Error(o.error||\"failed to set session metadata\")})}async publishEvent(e,n,r=!1){let o=await this.cipher.encrypt(JSON.stringify(Object.assign(Object.assign({},n),{origin:location.origin,relaySource:window.coinbaseWalletExtension?\"injected_sdk\":\"sdk\"}))),i={type:\"PublishEvent\",id:(0,s8.IntNumber)(this.nextReqId++),sessionId:this.session.id,event:e,data:o,callWebhook:r};return this.setOnceLinked(async()=>{let a=await this.makeRequest(i);if(a.type===\"Fail\")throw new Error(a.error||\"failed to publish event\");return a.eventId})}sendData(e){this.ws.sendData(JSON.stringify(e))}updateLastHeartbeat(){this.lastHeartbeatResponse=Date.now()}heartbeat(){if(Date.now()-this.lastHeartbeatResponse>Hwe*2){this.ws.disconnect();return}try{this.ws.sendData(\"h\")}catch{}}async makeRequest(e,n=u$e){let r=e.id;this.sendData(e);let o;return Promise.race([new Promise((i,a)=>{o=window.setTimeout(()=>{a(new Error(`request ${r} timed out`))},n)}),new Promise(i=>{this.requestResolutions.set(r,a=>{clearTimeout(o),i(a),this.requestResolutions.delete(r)})})])}async authenticate(){let e={type:\"HostSession\",id:(0,s8.IntNumber)(this.nextReqId++),sessionId:this.session.id,sessionKey:this.session.key},n=await this.makeRequest(e);if(n.type===\"Fail\")throw new Error(n.error||\"failed to authentcate\")}sendIsLinked(){let e={type:\"IsLinked\",id:(0,s8.IntNumber)(this.nextReqId++),sessionId:this.session.id};this.sendData(e)}sendGetSessionConfig(){let e={type:\"GetSessionConfig\",id:(0,s8.IntNumber)(this.nextReqId++),sessionId:this.session.id};this.sendData(e)}};KU.WalletLinkConnection=tX});var Wwe=be(nX=>{\"use strict\";p();Object.defineProperty(nX,\"__esModule\",{value:!0});nX.default=\\'@namespace svg \"http://www.w3.org/2000/svg\";.-cbwsdk-css-reset,.-cbwsdk-css-reset *{animation:none;animation-delay:0;animation-direction:normal;animation-duration:0;animation-fill-mode:none;animation-iteration-count:1;animation-name:none;animation-play-state:running;animation-timing-function:ease;backface-visibility:visible;background:0;background-attachment:scroll;background-clip:border-box;background-color:rgba(0,0,0,0);background-image:none;background-origin:padding-box;background-position:0 0;background-position-x:0;background-position-y:0;background-repeat:repeat;background-size:auto auto;border:0;border-style:none;border-width:medium;border-color:inherit;border-bottom:0;border-bottom-color:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-style:none;border-bottom-width:medium;border-collapse:separate;border-image:none;border-left:0;border-left-color:inherit;border-left-style:none;border-left-width:medium;border-radius:0;border-right:0;border-right-color:inherit;border-right-style:none;border-right-width:medium;border-spacing:0;border-top:0;border-top-color:inherit;border-top-left-radius:0;border-top-right-radius:0;border-top-style:none;border-top-width:medium;box-shadow:none;box-sizing:border-box;caption-side:top;clear:none;clip:auto;color:inherit;columns:auto;column-count:auto;column-fill:balance;column-gap:normal;column-rule:medium none currentColor;column-rule-color:currentColor;column-rule-style:none;column-rule-width:none;column-span:1;column-width:auto;counter-increment:none;counter-reset:none;direction:ltr;empty-cells:show;float:none;font:normal;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Helvetica Neue\",Arial,sans-serif;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;height:auto;hyphens:none;letter-spacing:normal;line-height:normal;list-style:none;list-style-image:none;list-style-position:outside;list-style-type:disc;margin:0;margin-bottom:0;margin-left:0;margin-right:0;margin-top:0;opacity:1;orphans:0;outline:0;outline-color:invert;outline-style:none;outline-width:medium;overflow:visible;overflow-x:visible;overflow-y:visible;padding:0;padding-bottom:0;padding-left:0;padding-right:0;padding-top:0;page-break-after:auto;page-break-before:auto;page-break-inside:auto;perspective:none;perspective-origin:50% 50%;pointer-events:auto;position:static;quotes:\"\\\\\\\\201C\" \"\\\\\\\\201D\" \"\\\\\\\\2018\" \"\\\\\\\\2019\";tab-size:8;table-layout:auto;text-align:inherit;text-align-last:auto;text-decoration:none;text-decoration-color:inherit;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-shadow:none;text-transform:none;transform:none;transform-style:flat;transition:none;transition-delay:0s;transition-duration:0s;transition-property:none;transition-timing-function:ease;unicode-bidi:normal;vertical-align:baseline;visibility:visible;white-space:normal;widows:0;word-spacing:normal;z-index:auto}.-cbwsdk-css-reset strong{font-weight:bold}.-cbwsdk-css-reset *{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Helvetica Neue\",Arial,sans-serif;line-height:1}.-cbwsdk-css-reset [class*=container]{margin:0;padding:0}.-cbwsdk-css-reset style{display:none}\\'});var rX=be(c8=>{\"use strict\";p();var d$e=c8&&c8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(c8,\"__esModule\",{value:!0});c8.injectCssReset=void 0;var f$e=d$e(Wwe());function h$e(){let t=document.createElement(\"style\");t.type=\"text/css\",t.appendChild(document.createTextNode(f$e.default)),document.documentElement.appendChild(t)}c8.injectCssReset=h$e});var $we=be(GU=>{\"use strict\";p();Object.defineProperty(GU,\"__esModule\",{value:!0});GU.CloseIcon=void 0;var Vwe=(Dc(),go(wd));function p$e(t){return(0,Vwe.h)(\"svg\",Object.assign({width:\"40\",height:\"40\",viewBox:\"0 0 40 40\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},t),(0,Vwe.h)(\"path\",{d:\"M13.7677 13L12.3535 14.4142L18.3535 20.4142L12.3535 26.4142L13.7677 27.8284L19.7677 21.8284L25.7677 27.8284L27.1819 26.4142L21.1819 20.4142L27.1819 14.4142L25.7677 13L19.7677 19L13.7677 13Z\"}))}GU.CloseIcon=p$e});var Kwe=be(YU=>{\"use strict\";p();Object.defineProperty(YU,\"__esModule\",{value:!0});YU.CoinbaseWalletRound=void 0;var ZU=(Dc(),go(wd));function m$e(t){return(0,ZU.h)(\"svg\",Object.assign({width:\"28\",height:\"28\",viewBox:\"0 0 28 28\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},t),(0,ZU.h)(\"circle\",{cx:\"14\",cy:\"14\",r:\"14\",fill:\"#0052FF\"}),(0,ZU.h)(\"path\",{d:\"M23.8521 14.0003C23.8521 19.455 19.455 23.8521 14.0003 23.8521C8.54559 23.8521 4.14844 19.455 4.14844 14.0003C4.14844 8.54559 8.54559 4.14844 14.0003 4.14844C19.455 4.14844 23.8521 8.54559 23.8521 14.0003Z\",fill:\"white\"}),(0,ZU.h)(\"path\",{d:\"M11.1855 12.5042C11.1855 12.0477 11.1855 11.7942 11.2835 11.642C11.3814 11.4899 11.4793 11.3377 11.6261 11.287C11.8219 11.1855 12.0178 11.1855 12.5073 11.1855H15.4934C15.983 11.1855 16.1788 11.1855 16.3746 11.287C16.5215 11.3884 16.6683 11.4899 16.7173 11.642C16.8152 11.8449 16.8152 12.0477 16.8152 12.5042V15.4965C16.8152 15.953 16.8152 16.2066 16.7173 16.3587C16.6194 16.5109 16.5215 16.663 16.3746 16.7137C16.1788 16.8152 15.983 16.8152 15.4934 16.8152H12.5073C12.0178 16.8152 11.8219 16.8152 11.6261 16.7137C11.4793 16.6123 11.3324 16.5109 11.2835 16.3587C11.1855 16.1558 11.1855 15.953 11.1855 15.4965V12.5042Z\",fill:\"#0052FF\"}))}YU.CoinbaseWalletRound=m$e});var Gwe=be(QU=>{\"use strict\";p();Object.defineProperty(QU,\"__esModule\",{value:!0});QU.QRCodeIcon=void 0;var xI=(Dc(),go(wd));function g$e(t){return(0,xI.h)(\"svg\",Object.assign({width:\"18\",height:\"18\",viewBox:\"0 0 24 24\",xmlns:\"http://www.w3.org/2000/svg\"},t),(0,xI.h)(\"path\",{d:\"M3 3V8.99939L5 8.99996V5H9V3H3Z\"}),(0,xI.h)(\"path\",{d:\"M15 21L21 21V15.0006L19 15V19L15 19V21Z\"}),(0,xI.h)(\"path\",{d:\"M21 9H19V5H15.0006L15 3H21V9Z\"}),(0,xI.h)(\"path\",{d:\"M3 15V21H8.99939L8.99996 19H5L5 15H3Z\"}))}QU.QRCodeIcon=g$e});var Xwe=be((Pon,Jwe)=>{p();function Zwe(t){this.mode=_h.MODE_8BIT_BYTE,this.data=t,this.parsedData=[];for(var e=0,n=this.data.length;e<n;e++){var r=[],o=this.data.charCodeAt(e);o>65536?(r[0]=240|(o&1835008)>>>18,r[1]=128|(o&258048)>>>12,r[2]=128|(o&4032)>>>6,r[3]=128|o&63):o>2048?(r[0]=224|(o&61440)>>>12,r[1]=128|(o&4032)>>>6,r[2]=128|o&63):o>128?(r[0]=192|(o&1984)>>>6,r[1]=128|o&63):r[0]=o,this.parsedData.push(r)}this.parsedData=Array.prototype.concat.apply([],this.parsedData),this.parsedData.length!=this.data.length&&(this.parsedData.unshift(191),this.parsedData.unshift(187),this.parsedData.unshift(239))}Zwe.prototype={getLength:function(t){return this.parsedData.length},write:function(t){for(var e=0,n=this.parsedData.length;e<n;e++)t.put(this.parsedData[e],8)}};function n1(t,e){this.typeNumber=t,this.errorCorrectLevel=e,this.modules=null,this.moduleCount=0,this.dataCache=null,this.dataList=[]}n1.prototype={addData:function(t){var e=new Zwe(t);this.dataList.push(e),this.dataCache=null},isDark:function(t,e){if(t<0||this.moduleCount<=t||e<0||this.moduleCount<=e)throw new Error(t+\",\"+e);return this.modules[t][e]},getModuleCount:function(){return this.moduleCount},make:function(){this.makeImpl(!1,this.getBestMaskPattern())},makeImpl:function(t,e){this.moduleCount=this.typeNumber*4+17,this.modules=new Array(this.moduleCount);for(var n=0;n<this.moduleCount;n++){this.modules[n]=new Array(this.moduleCount);for(var r=0;r<this.moduleCount;r++)this.modules[n][r]=null}this.setupPositionProbePattern(0,0),this.setupPositionProbePattern(this.moduleCount-7,0),this.setupPositionProbePattern(0,this.moduleCount-7),this.setupPositionAdjustPattern(),this.setupTimingPattern(),this.setupTypeInfo(t,e),this.typeNumber>=7&&this.setupTypeNumber(t),this.dataCache==null&&(this.dataCache=n1.createData(this.typeNumber,this.errorCorrectLevel,this.dataList)),this.mapData(this.dataCache,e)},setupPositionProbePattern:function(t,e){for(var n=-1;n<=7;n++)if(!(t+n<=-1||this.moduleCount<=t+n))for(var r=-1;r<=7;r++)e+r<=-1||this.moduleCount<=e+r||(0<=n&&n<=6&&(r==0||r==6)||0<=r&&r<=6&&(n==0||n==6)||2<=n&&n<=4&&2<=r&&r<=4?this.modules[t+n][e+r]=!0:this.modules[t+n][e+r]=!1)},getBestMaskPattern:function(){for(var t=0,e=0,n=0;n<8;n++){this.makeImpl(!0,n);var r=ks.getLostPoint(this);(n==0||t>r)&&(t=r,e=n)}return e},createMovieClip:function(t,e,n){var r=t.createEmptyMovieClip(e,n),o=1;this.make();for(var i=0;i<this.modules.length;i++)for(var a=i*o,c=0;c<this.modules[i].length;c++){var u=c*o,d=this.modules[i][c];d&&(r.beginFill(0,100),r.moveTo(u,a),r.lineTo(u+o,a),r.lineTo(u+o,a+o),r.lineTo(u,a+o),r.endFill())}return r},setupTimingPattern:function(){for(var t=8;t<this.moduleCount-8;t++)this.modules[t][6]==null&&(this.modules[t][6]=t%2==0);for(var e=8;e<this.moduleCount-8;e++)this.modules[6][e]==null&&(this.modules[6][e]=e%2==0)},setupPositionAdjustPattern:function(){for(var t=ks.getPatternPosition(this.typeNumber),e=0;e<t.length;e++)for(var n=0;n<t.length;n++){var r=t[e],o=t[n];if(this.modules[r][o]==null)for(var i=-2;i<=2;i++)for(var a=-2;a<=2;a++)i==-2||i==2||a==-2||a==2||i==0&&a==0?this.modules[r+i][o+a]=!0:this.modules[r+i][o+a]=!1}},setupTypeNumber:function(t){for(var e=ks.getBCHTypeNumber(this.typeNumber),n=0;n<18;n++){var r=!t&&(e>>n&1)==1;this.modules[Math.floor(n/3)][n%3+this.moduleCount-8-3]=r}for(var n=0;n<18;n++){var r=!t&&(e>>n&1)==1;this.modules[n%3+this.moduleCount-8-3][Math.floor(n/3)]=r}},setupTypeInfo:function(t,e){for(var n=this.errorCorrectLevel<<3|e,r=ks.getBCHTypeInfo(n),o=0;o<15;o++){var i=!t&&(r>>o&1)==1;o<6?this.modules[o][8]=i:o<8?this.modules[o+1][8]=i:this.modules[this.moduleCount-15+o][8]=i}for(var o=0;o<15;o++){var i=!t&&(r>>o&1)==1;o<8?this.modules[8][this.moduleCount-o-1]=i:o<9?this.modules[8][15-o-1+1]=i:this.modules[8][15-o-1]=i}this.modules[this.moduleCount-8][8]=!t},mapData:function(t,e){for(var n=-1,r=this.moduleCount-1,o=7,i=0,a=this.moduleCount-1;a>0;a-=2)for(a==6&&a--;;){for(var c=0;c<2;c++)if(this.modules[r][a-c]==null){var u=!1;i<t.length&&(u=(t[i]>>>o&1)==1);var d=ks.getMask(e,r,a-c);d&&(u=!u),this.modules[r][a-c]=u,o--,o==-1&&(i++,o=7)}if(r+=n,r<0||this.moduleCount<=r){r-=n,n=-n;break}}}};n1.PAD0=236;n1.PAD1=17;n1.createData=function(t,e,n){for(var r=t1.getRSBlocks(t,e),o=new Ywe,i=0;i<n.length;i++){var a=n[i];o.put(a.mode,4),o.put(a.getLength(),ks.getLengthInBits(a.mode,t)),a.write(o)}for(var c=0,i=0;i<r.length;i++)c+=r[i].dataCount;if(o.getLengthInBits()>c*8)throw new Error(\"code length overflow. (\"+o.getLengthInBits()+\">\"+c*8+\")\");for(o.getLengthInBits()+4<=c*8&&o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(!1);for(;!(o.getLengthInBits()>=c*8||(o.put(n1.PAD0,8),o.getLengthInBits()>=c*8));)o.put(n1.PAD1,8);return n1.createBytes(o,r)};n1.createBytes=function(t,e){for(var n=0,r=0,o=0,i=new Array(e.length),a=new Array(e.length),c=0;c<e.length;c++){var u=e[c].dataCount,d=e[c].totalCount-u;r=Math.max(r,u),o=Math.max(o,d),i[c]=new Array(u);for(var h=0;h<i[c].length;h++)i[c][h]=255&t.buffer[h+n];n+=u;var m=ks.getErrorCorrectPolynomial(d),g=new l8(i[c],m.getLength()-1),b=g.mod(m);a[c]=new Array(m.getLength()-1);for(var h=0;h<a[c].length;h++){var E=h+b.getLength()-a[c].length;a[c][h]=E>=0?b.get(E):0}}for(var C=0,h=0;h<e.length;h++)C+=e[h].totalCount;for(var T=new Array(C),R=0,h=0;h<r;h++)for(var c=0;c<e.length;c++)h<i[c].length&&(T[R++]=i[c][h]);for(var h=0;h<o;h++)for(var c=0;c<e.length;c++)h<a[c].length&&(T[R++]=a[c][h]);return T};var _h={MODE_NUMBER:1,MODE_ALPHA_NUM:2,MODE_8BIT_BYTE:4,MODE_KANJI:8},Tx={L:1,M:0,Q:3,H:2},Ax={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7},ks={PATTERN_POSITION_TABLE:[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],G15:1335,G18:7973,G15_MASK:21522,getBCHTypeInfo:function(t){for(var e=t<<10;ks.getBCHDigit(e)-ks.getBCHDigit(ks.G15)>=0;)e^=ks.G15<<ks.getBCHDigit(e)-ks.getBCHDigit(ks.G15);return(t<<10|e)^ks.G15_MASK},getBCHTypeNumber:function(t){for(var e=t<<12;ks.getBCHDigit(e)-ks.getBCHDigit(ks.G18)>=0;)e^=ks.G18<<ks.getBCHDigit(e)-ks.getBCHDigit(ks.G18);return t<<12|e},getBCHDigit:function(t){for(var e=0;t!=0;)e++,t>>>=1;return e},getPatternPosition:function(t){return ks.PATTERN_POSITION_TABLE[t-1]},getMask:function(t,e,n){switch(t){case Ax.PATTERN000:return(e+n)%2==0;case Ax.PATTERN001:return e%2==0;case Ax.PATTERN010:return n%3==0;case Ax.PATTERN011:return(e+n)%3==0;case Ax.PATTERN100:return(Math.floor(e/2)+Math.floor(n/3))%2==0;case Ax.PATTERN101:return e*n%2+e*n%3==0;case Ax.PATTERN110:return(e*n%2+e*n%3)%2==0;case Ax.PATTERN111:return(e*n%3+(e+n)%2)%2==0;default:throw new Error(\"bad maskPattern:\"+t)}},getErrorCorrectPolynomial:function(t){for(var e=new l8([1],0),n=0;n<t;n++)e=e.multiply(new l8([1,Uc.gexp(n)],0));return e},getLengthInBits:function(t,e){if(1<=e&&e<10)switch(t){case _h.MODE_NUMBER:return 10;case _h.MODE_ALPHA_NUM:return 9;case _h.MODE_8BIT_BYTE:return 8;case _h.MODE_KANJI:return 8;default:throw new Error(\"mode:\"+t)}else if(e<27)switch(t){case _h.MODE_NUMBER:return 12;case _h.MODE_ALPHA_NUM:return 11;case _h.MODE_8BIT_BYTE:return 16;case _h.MODE_KANJI:return 10;default:throw new Error(\"mode:\"+t)}else if(e<41)switch(t){case _h.MODE_NUMBER:return 14;case _h.MODE_ALPHA_NUM:return 13;case _h.MODE_8BIT_BYTE:return 16;case _h.MODE_KANJI:return 12;default:throw new Error(\"mode:\"+t)}else throw new Error(\"type:\"+e)},getLostPoint:function(t){for(var e=t.getModuleCount(),n=0,r=0;r<e;r++)for(var o=0;o<e;o++){for(var i=0,a=t.isDark(r,o),c=-1;c<=1;c++)if(!(r+c<0||e<=r+c))for(var u=-1;u<=1;u++)o+u<0||e<=o+u||c==0&&u==0||a==t.isDark(r+c,o+u)&&i++;i>5&&(n+=3+i-5)}for(var r=0;r<e-1;r++)for(var o=0;o<e-1;o++){var d=0;t.isDark(r,o)&&d++,t.isDark(r+1,o)&&d++,t.isDark(r,o+1)&&d++,t.isDark(r+1,o+1)&&d++,(d==0||d==4)&&(n+=3)}for(var r=0;r<e;r++)for(var o=0;o<e-6;o++)t.isDark(r,o)&&!t.isDark(r,o+1)&&t.isDark(r,o+2)&&t.isDark(r,o+3)&&t.isDark(r,o+4)&&!t.isDark(r,o+5)&&t.isDark(r,o+6)&&(n+=40);for(var o=0;o<e;o++)for(var r=0;r<e-6;r++)t.isDark(r,o)&&!t.isDark(r+1,o)&&t.isDark(r+2,o)&&t.isDark(r+3,o)&&t.isDark(r+4,o)&&!t.isDark(r+5,o)&&t.isDark(r+6,o)&&(n+=40);for(var h=0,o=0;o<e;o++)for(var r=0;r<e;r++)t.isDark(r,o)&&h++;var m=Math.abs(100*h/e/e-50)/5;return n+=m*10,n}},Uc={glog:function(t){if(t<1)throw new Error(\"glog(\"+t+\")\");return Uc.LOG_TABLE[t]},gexp:function(t){for(;t<0;)t+=255;for(;t>=256;)t-=255;return Uc.EXP_TABLE[t]},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)};for(Ha=0;Ha<8;Ha++)Uc.EXP_TABLE[Ha]=1<<Ha;var Ha;for(Ha=8;Ha<256;Ha++)Uc.EXP_TABLE[Ha]=Uc.EXP_TABLE[Ha-4]^Uc.EXP_TABLE[Ha-5]^Uc.EXP_TABLE[Ha-6]^Uc.EXP_TABLE[Ha-8];var Ha;for(Ha=0;Ha<255;Ha++)Uc.LOG_TABLE[Uc.EXP_TABLE[Ha]]=Ha;var Ha;function l8(t,e){if(t.length==null)throw new Error(t.length+\"/\"+e);for(var n=0;n<t.length&&t[n]==0;)n++;this.num=new Array(t.length-n+e);for(var r=0;r<t.length-n;r++)this.num[r]=t[r+n]}l8.prototype={get:function(t){return this.num[t]},getLength:function(){return this.num.length},multiply:function(t){for(var e=new Array(this.getLength()+t.getLength()-1),n=0;n<this.getLength();n++)for(var r=0;r<t.getLength();r++)e[n+r]^=Uc.gexp(Uc.glog(this.get(n))+Uc.glog(t.get(r)));return new l8(e,0)},mod:function(t){if(this.getLength()-t.getLength()<0)return this;for(var e=Uc.glog(this.get(0))-Uc.glog(t.get(0)),n=new Array(this.getLength()),r=0;r<this.getLength();r++)n[r]=this.get(r);for(var r=0;r<t.getLength();r++)n[r]^=Uc.gexp(Uc.glog(t.get(r))+e);return new l8(n,0).mod(t)}};function t1(t,e){this.totalCount=t,this.dataCount=e}t1.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]];t1.getRSBlocks=function(t,e){var n=t1.getRsBlockTable(t,e);if(n==null)throw new Error(\"bad rs block @ typeNumber:\"+t+\"/errorCorrectLevel:\"+e);for(var r=n.length/3,o=[],i=0;i<r;i++)for(var a=n[i*3+0],c=n[i*3+1],u=n[i*3+2],d=0;d<a;d++)o.push(new t1(c,u));return o};t1.getRsBlockTable=function(t,e){switch(e){case Tx.L:return t1.RS_BLOCK_TABLE[(t-1)*4+0];case Tx.M:return t1.RS_BLOCK_TABLE[(t-1)*4+1];case Tx.Q:return t1.RS_BLOCK_TABLE[(t-1)*4+2];case Tx.H:return t1.RS_BLOCK_TABLE[(t-1)*4+3];default:return}};function Ywe(){this.buffer=[],this.length=0}Ywe.prototype={get:function(t){var e=Math.floor(t/8);return(this.buffer[e]>>>7-t%8&1)==1},put:function(t,e){for(var n=0;n<e;n++)this.putBit((t>>>e-n-1&1)==1)},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};var oX=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]];function Qwe(t){var e=this;if(this.options={padding:4,width:256,height:256,typeNumber:4,color:\"#000000\",background:\"#ffffff\",ecl:\"M\",image:{svg:\"\",width:0,height:0}},typeof t==\"string\"&&(t={content:t}),t)for(var n in t)this.options[n]=t[n];if(typeof this.options.content!=\"string\")throw new Error(\"Expected \\'content\\' as string!\");if(this.options.content.length===0)throw new Error(\"Expected \\'content\\' to be non-empty!\");if(!(this.options.padding>=0))throw new Error(\"Expected \\'padding\\' value to be non-negative!\");if(!(this.options.width>0)||!(this.options.height>0))throw new Error(\"Expected \\'width\\' or \\'height\\' value to be higher than zero!\");function r(d){switch(d){case\"L\":return Tx.L;case\"M\":return Tx.M;case\"Q\":return Tx.Q;case\"H\":return Tx.H;default:throw new Error(\"Unknwon error correction level: \"+d)}}function o(d,h){for(var m=i(d),g=1,b=0,E=0,C=oX.length;E<=C;E++){var T=oX[E];if(!T)throw new Error(\"Content too long: expected \"+b+\" but got \"+m);switch(h){case\"L\":b=T[0];break;case\"M\":b=T[1];break;case\"Q\":b=T[2];break;case\"H\":b=T[3];break;default:throw new Error(\"Unknwon error correction level: \"+h)}if(m<=b)break;g++}if(g>oX.length)throw new Error(\"Content too long\");return g}function i(d){var h=encodeURI(d).toString().replace(/\\\\%[0-9a-fA-F]{2}/g,\"a\");return h.length+(h.length!=d?3:0)}var a=this.options.content,c=o(a,this.options.ecl),u=r(this.options.ecl);this.qrcode=new n1(c,u),this.qrcode.addData(a),this.qrcode.make()}Qwe.prototype.svg=function(t){var e=this.options||{},n=this.qrcode.modules;typeof t>\"u\"&&(t={container:e.container||\"svg\"});for(var r=typeof e.pretty<\"u\"?!!e.pretty:!0,o=r?\"  \":\"\",i=r?`\\\\r\\n`:\"\",a=e.width,c=e.height,u=n.length,d=a/(u+2*e.padding),h=c/(u+2*e.padding),m=typeof e.join<\"u\"?!!e.join:!1,g=typeof e.swap<\"u\"?!!e.swap:!1,b=typeof e.xmlDeclaration<\"u\"?!!e.xmlDeclaration:!0,E=typeof e.predefined<\"u\"?!!e.predefined:!1,C=E?o+\\'<defs><path id=\"qrmodule\" d=\"M0 0 h\\'+h+\" v\"+d+\\' H0 z\" style=\"fill:\\'+e.color+\\';shape-rendering:crispEdges;\" /></defs>\\'+i:\"\",T=o+\\'<rect x=\"0\" y=\"0\" width=\"\\'+a+\\'\" height=\"\\'+c+\\'\" style=\"fill:\\'+e.background+\\';shape-rendering:crispEdges;\"/>\\'+i,R=\"\",L=\"\",D=0;D<u;D++)for(var G=0;G<u;G++){var W=n[G][D];if(W){var J=G*d+e.padding*d,ne=D*h+e.padding*h;if(g){var ie=J;J=ne,ne=ie}if(m){var Z=d+J,ae=h+ne;J=Number.isInteger(J)?Number(J):J.toFixed(2),ne=Number.isInteger(ne)?Number(ne):ne.toFixed(2),Z=Number.isInteger(Z)?Number(Z):Z.toFixed(2),ae=Number.isInteger(ae)?Number(ae):ae.toFixed(2),L+=\"M\"+J+\",\"+ne+\" V\"+ae+\" H\"+Z+\" V\"+ne+\" H\"+J+\" Z \"}else E?R+=o+\\'<use x=\"\\'+J.toString()+\\'\" y=\"\\'+ne.toString()+\\'\" href=\"#qrmodule\" />\\'+i:R+=o+\\'<rect x=\"\\'+J.toString()+\\'\" y=\"\\'+ne.toString()+\\'\" width=\"\\'+d+\\'\" height=\"\\'+h+\\'\" style=\"fill:\\'+e.color+\\';shape-rendering:crispEdges;\"/>\\'+i}}m&&(R=o+\\'<path x=\"0\" y=\"0\" style=\"fill:\\'+e.color+\\';shape-rendering:crispEdges;\" d=\"\\'+L+\\'\" />\\');let V=\"\";if(this.options.image!==void 0&&this.options.image.svg){let F=a*this.options.image.width/100,_=c*this.options.image.height/100,O=a/2-F/2,z=c/2-_/2;V+=`<svg x=\"${O}\" y=\"${z}\" width=\"${F}\" height=\"${_}\" viewBox=\"0 0 100 100\" preserveAspectRatio=\"xMinYMin meet\">`,V+=this.options.image.svg+i,V+=\"</svg>\"}var $=\"\";switch(t.container){case\"svg\":b&&($+=\\'<?xml version=\"1.0\" standalone=\"yes\"?>\\'+i),$+=\\'<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" width=\"\\'+a+\\'\" height=\"\\'+c+\\'\">\\'+i,$+=C+T+R,$+=V,$+=\"</svg>\";break;case\"svg-viewbox\":b&&($+=\\'<?xml version=\"1.0\" standalone=\"yes\"?>\\'+i),$+=\\'<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" viewBox=\"0 0 \\'+a+\" \"+c+\\'\">\\'+i,$+=C+T+R,$+=V,$+=\"</svg>\";break;case\"g\":$+=\\'<g width=\"\\'+a+\\'\" height=\"\\'+c+\\'\">\\'+i,$+=C+T+R,$+=V,$+=\"</g>\";break;default:$+=(C+T+R+V).replace(/^\\\\s+/,\"\");break}return $};Jwe.exports=Qwe});var txe=be(u8=>{\"use strict\";p();var y$e=u8&&u8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(u8,\"__esModule\",{value:!0});u8.QRCode=void 0;var b$e=(Dc(),go(wd)),exe=(JC(),go(iI)),v$e=y$e(Xwe()),w$e=t=>{let[e,n]=(0,exe.useState)(\"\");return(0,exe.useEffect)(()=>{var r,o;let i=new v$e.default({content:t.content,background:t.bgColor||\"#ffffff\",color:t.fgColor||\"#000000\",container:\"svg\",ecl:\"M\",width:(r=t.width)!==null&&r!==void 0?r:256,height:(o=t.height)!==null&&o!==void 0?o:256,padding:0,image:t.image}),a=globalThis.Buffer.from(i.svg(),\"utf8\").toString(\"base64\");n(`data:image/svg+xml;base64,${a}`)},[t.bgColor,t.content,t.fgColor,t.height,t.image,t.width]),e?(0,b$e.h)(\"img\",{src:e,alt:\"QR Code\"}):null};u8.QRCode=w$e});var nxe=be(iX=>{\"use strict\";p();Object.defineProperty(iX,\"__esModule\",{value:!0});iX.default=\".-cbwsdk-css-reset .-cbwsdk-spinner{display:inline-block}.-cbwsdk-css-reset .-cbwsdk-spinner svg{display:inline-block;animation:2s linear infinite -cbwsdk-spinner-svg}.-cbwsdk-css-reset .-cbwsdk-spinner svg circle{animation:1.9s ease-in-out infinite both -cbwsdk-spinner-circle;display:block;fill:rgba(0,0,0,0);stroke-dasharray:283;stroke-dashoffset:280;stroke-linecap:round;stroke-width:10px;transform-origin:50% 50%}@keyframes -cbwsdk-spinner-svg{0%{transform:rotateZ(0deg)}100%{transform:rotateZ(360deg)}}@keyframes -cbwsdk-spinner-circle{0%,25%{stroke-dashoffset:280;transform:rotate(0)}50%,75%{stroke-dashoffset:75;transform:rotate(45deg)}100%{stroke-dashoffset:280;transform:rotate(360deg)}}\"});var rxe=be(d8=>{\"use strict\";p();var x$e=d8&&d8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(d8,\"__esModule\",{value:!0});d8.Spinner=void 0;var JU=(Dc(),go(wd)),E$e=x$e(nxe()),S$e=t=>{var e;let n=(e=t.size)!==null&&e!==void 0?e:64,r=t.color||\"#000\";return(0,JU.h)(\"div\",{class:\"-cbwsdk-spinner\"},(0,JU.h)(\"style\",null,E$e.default),(0,JU.h)(\"svg\",{viewBox:\"0 0 100 100\",xmlns:\"http://www.w3.org/2000/svg\",style:{width:n,height:n}},(0,JU.h)(\"circle\",{style:{cx:50,cy:50,r:45,stroke:r}})))};d8.Spinner=S$e});var oxe=be(sX=>{\"use strict\";p();Object.defineProperty(sX,\"__esModule\",{value:!0});sX.default=\".-cbwsdk-css-reset .-cbwsdk-connect-content{height:430px;width:700px;border-radius:12px;padding:30px}.-cbwsdk-css-reset .-cbwsdk-connect-content.light{background:#fff}.-cbwsdk-css-reset .-cbwsdk-connect-content.dark{background:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-connect-content-header{display:flex;align-items:center;justify-content:space-between;margin:0 0 30px}.-cbwsdk-css-reset .-cbwsdk-connect-content-heading{font-style:normal;font-weight:500;font-size:28px;line-height:36px;margin:0}.-cbwsdk-css-reset .-cbwsdk-connect-content-heading.light{color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-connect-content-heading.dark{color:#fff}.-cbwsdk-css-reset .-cbwsdk-connect-content-layout{display:flex;flex-direction:row}.-cbwsdk-css-reset .-cbwsdk-connect-content-column-left{margin-right:30px;display:flex;flex-direction:column;justify-content:space-between}.-cbwsdk-css-reset .-cbwsdk-connect-content-column-right{flex:25%;margin-right:34px}.-cbwsdk-css-reset .-cbwsdk-connect-content-qr-wrapper{width:220px;height:220px;border-radius:12px;display:flex;justify-content:center;align-items:center;background:#fff}.-cbwsdk-css-reset .-cbwsdk-connect-content-qr-connecting{position:absolute;top:0;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.-cbwsdk-css-reset .-cbwsdk-connect-content-qr-connecting.light{background-color:rgba(255,255,255,.95)}.-cbwsdk-css-reset .-cbwsdk-connect-content-qr-connecting.light>p{color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-connect-content-qr-connecting.dark{background-color:rgba(10,11,13,.9)}.-cbwsdk-css-reset .-cbwsdk-connect-content-qr-connecting.dark>p{color:#fff}.-cbwsdk-css-reset .-cbwsdk-connect-content-qr-connecting>p{font-size:12px;font-weight:bold;margin-top:16px}.-cbwsdk-css-reset .-cbwsdk-connect-content-update-app{border-radius:8px;font-size:14px;line-height:20px;padding:12px;width:339px}.-cbwsdk-css-reset .-cbwsdk-connect-content-update-app.light{background:#eef0f3;color:#5b636e}.-cbwsdk-css-reset .-cbwsdk-connect-content-update-app.dark{background:#1e2025;color:#8a919e}.-cbwsdk-css-reset .-cbwsdk-cancel-button{-webkit-appearance:none;border:none;background:none;cursor:pointer;padding:0;margin:0}.-cbwsdk-css-reset .-cbwsdk-cancel-button-x{position:relative;display:block;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-wallet-steps{padding:0 0 0 16px;margin:0;width:100%;list-style:decimal}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-item{list-style-type:decimal;display:list-item;font-style:normal;font-weight:400;font-size:16px;line-height:24px;margin-top:20px}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-item.light{color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-item.dark{color:#fff}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-item-wrapper{display:flex;align-items:center}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-pad-left{margin-left:6px}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-icon{display:flex;border-radius:50%;height:24px;width:24px}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-icon svg{margin:auto;display:block}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-icon.light{background:#0052ff}.-cbwsdk-css-reset .-cbwsdk-wallet-steps-icon.dark{background:#588af5}.-cbwsdk-css-reset .-cbwsdk-connect-item{align-items:center;display:flex;flex-direction:row;padding:16px 24px;gap:12px;cursor:pointer;border-radius:100px;font-weight:600}.-cbwsdk-css-reset .-cbwsdk-connect-item.light{background:#f5f8ff;color:#0052ff}.-cbwsdk-css-reset .-cbwsdk-connect-item.dark{background:#001033;color:#588af5}.-cbwsdk-css-reset .-cbwsdk-connect-item-copy-wrapper{margin:0 4px 0 8px}.-cbwsdk-css-reset .-cbwsdk-connect-item-title{margin:0 0 0;font-size:16px;line-height:24px;font-weight:500}.-cbwsdk-css-reset .-cbwsdk-connect-item-description{font-weight:400;font-size:14px;line-height:20px;margin:0}\"});var axe=be(Rx=>{\"use strict\";p();var ixe=Rx&&Rx.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Rx,\"__esModule\",{value:!0});Rx.CoinbaseWalletSteps=Rx.ConnectContent=void 0;var K6=ixe((_x(),go(ZC))),io=(Dc(),go(wd)),k$e=Yy(),_$e=IU(),C$e=$we(),A$e=Kwe(),T$e=Gwe(),R$e=txe(),I$e=rxe(),O$e=ixe(oxe()),aX={title:\"Coinbase Wallet app\",description:\"Connect with your self-custody wallet\",steps:sxe},P$e=t=>t===\"light\"?\"#FFFFFF\":\"#0A0B0D\";function M$e(t){let{theme:e}=t,n=(0,k$e.createQrUrl)(t.sessionId,t.sessionSecret,t.linkAPIUrl,t.isParentConnection,t.version,t.chainId),r=aX.steps;return(0,io.h)(\"div\",{\"data-testid\":\"connect-content\",className:(0,K6.default)(\"-cbwsdk-connect-content\",e)},(0,io.h)(\"style\",null,O$e.default),(0,io.h)(\"div\",{className:\"-cbwsdk-connect-content-header\"},(0,io.h)(\"h2\",{className:(0,K6.default)(\"-cbwsdk-connect-content-heading\",e)},\"Scan to connect with our mobile app\"),t.onCancel&&(0,io.h)(\"button\",{type:\"button\",className:\"-cbwsdk-cancel-button\",onClick:t.onCancel},(0,io.h)(C$e.CloseIcon,{fill:e===\"light\"?\"#0A0B0D\":\"#FFFFFF\"}))),(0,io.h)(\"div\",{className:\"-cbwsdk-connect-content-layout\"},(0,io.h)(\"div\",{className:\"-cbwsdk-connect-content-column-left\"},(0,io.h)(N$e,{title:aX.title,description:aX.description,theme:e})),(0,io.h)(\"div\",{className:\"-cbwsdk-connect-content-column-right\"},(0,io.h)(\"div\",{className:\"-cbwsdk-connect-content-qr-wrapper\"},(0,io.h)(R$e.QRCode,{content:n,width:200,height:200,fgColor:\"#000\",bgColor:\"transparent\"}),(0,io.h)(\"input\",{type:\"hidden\",name:\"cbw-cbwsdk-version\",value:_$e.LIB_VERSION}),(0,io.h)(\"input\",{type:\"hidden\",value:n})),(0,io.h)(r,{theme:e}),!t.isConnected&&(0,io.h)(\"div\",{\"data-testid\":\"connecting-spinner\",className:(0,K6.default)(\"-cbwsdk-connect-content-qr-connecting\",e)},(0,io.h)(I$e.Spinner,{size:36,color:e===\"dark\"?\"#FFF\":\"#000\"}),(0,io.h)(\"p\",null,\"Connecting...\")))))}Rx.ConnectContent=M$e;function N$e({title:t,description:e,theme:n}){return(0,io.h)(\"div\",{className:(0,K6.default)(\"-cbwsdk-connect-item\",n)},(0,io.h)(\"div\",null,(0,io.h)(A$e.CoinbaseWalletRound,null)),(0,io.h)(\"div\",{className:\"-cbwsdk-connect-item-copy-wrapper\"},(0,io.h)(\"h3\",{className:\"-cbwsdk-connect-item-title\"},t),(0,io.h)(\"p\",{className:\"-cbwsdk-connect-item-description\"},e)))}function sxe({theme:t}){return(0,io.h)(\"ol\",{className:\"-cbwsdk-wallet-steps\"},(0,io.h)(\"li\",{className:(0,K6.default)(\"-cbwsdk-wallet-steps-item\",t)},(0,io.h)(\"div\",{className:\"-cbwsdk-wallet-steps-item-wrapper\"},\"Open Coinbase Wallet app\")),(0,io.h)(\"li\",{className:(0,K6.default)(\"-cbwsdk-wallet-steps-item\",t)},(0,io.h)(\"div\",{className:\"-cbwsdk-wallet-steps-item-wrapper\"},(0,io.h)(\"span\",null,\"Tap \",(0,io.h)(\"strong\",null,\"Scan\"),\" \"),(0,io.h)(\"span\",{className:(0,K6.default)(\"-cbwsdk-wallet-steps-pad-left\",\"-cbwsdk-wallet-steps-icon\",t)},(0,io.h)(T$e.QRCodeIcon,{fill:P$e(t)})))))}Rx.CoinbaseWalletSteps=sxe});var lxe=be(XU=>{\"use strict\";p();Object.defineProperty(XU,\"__esModule\",{value:!0});XU.ArrowLeftIcon=void 0;var cxe=(Dc(),go(wd));function L$e(t){return(0,cxe.h)(\"svg\",Object.assign({width:\"16\",height:\"16\",viewBox:\"0 0 16 16\",xmlns:\"http://www.w3.org/2000/svg\"},t),(0,cxe.h)(\"path\",{d:\"M8.60675 0.155884L7.37816 1.28209L12.7723 7.16662H0V8.83328H12.6548L6.82149 14.6666L8 15.8451L15.8201 8.02501L8.60675 0.155884Z\"}))}XU.ArrowLeftIcon=L$e});var uxe=be(ej=>{\"use strict\";p();Object.defineProperty(ej,\"__esModule\",{value:!0});ej.LaptopIcon=void 0;var cX=(Dc(),go(wd));function B$e(t){return(0,cX.h)(\"svg\",Object.assign({width:\"14\",height:\"14\",viewBox:\"0 0 14 14\",xmlns:\"http://www.w3.org/2000/svg\"},t),(0,cX.h)(\"path\",{d:\"M1.8001 2.2002H12.2001V9.40019H1.8001V2.2002ZM3.4001 3.8002V7.80019H10.6001V3.8002H3.4001Z\"}),(0,cX.h)(\"path\",{d:\"M13.4001 10.2002H0.600098C0.600098 11.0838 1.31644 11.8002 2.2001 11.8002H11.8001C12.6838 11.8002 13.4001 11.0838 13.4001 10.2002Z\"}))}ej.LaptopIcon=B$e});var fxe=be(tj=>{\"use strict\";p();Object.defineProperty(tj,\"__esModule\",{value:!0});tj.SafeIcon=void 0;var dxe=(Dc(),go(wd));function D$e(t){return(0,dxe.h)(\"svg\",Object.assign({width:\"14\",height:\"14\",viewBox:\"0 0 14 14\",xmlns:\"http://www.w3.org/2000/svg\"},t),(0,dxe.h)(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M0.600098 0.600098V11.8001H13.4001V0.600098H0.600098ZM7.0001 9.2001C5.3441 9.2001 4.0001 7.8561 4.0001 6.2001C4.0001 4.5441 5.3441 3.2001 7.0001 3.2001C8.6561 3.2001 10.0001 4.5441 10.0001 6.2001C10.0001 7.8561 8.6561 9.2001 7.0001 9.2001ZM0.600098 12.6001H3.8001V13.4001H0.600098V12.6001ZM10.2001 12.6001H13.4001V13.4001H10.2001V12.6001ZM8.8001 6.2001C8.8001 7.19421 7.99421 8.0001 7.0001 8.0001C6.00598 8.0001 5.2001 7.19421 5.2001 6.2001C5.2001 5.20598 6.00598 4.4001 7.0001 4.4001C7.99421 4.4001 8.8001 5.20598 8.8001 6.2001Z\"}))}tj.SafeIcon=D$e});var hxe=be(lX=>{\"use strict\";p();Object.defineProperty(lX,\"__esModule\",{value:!0});lX.default=\".-cbwsdk-css-reset .-cbwsdk-try-extension{display:flex;margin-top:12px;height:202px;width:700px;border-radius:12px;padding:30px}.-cbwsdk-css-reset .-cbwsdk-try-extension.light{background:#fff}.-cbwsdk-css-reset .-cbwsdk-try-extension.dark{background:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-try-extension-column-half{flex:50%}.-cbwsdk-css-reset .-cbwsdk-try-extension-heading{font-style:normal;font-weight:500;font-size:25px;line-height:32px;margin:0;max-width:204px}.-cbwsdk-css-reset .-cbwsdk-try-extension-heading.light{color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-try-extension-heading.dark{color:#fff}.-cbwsdk-css-reset .-cbwsdk-try-extension-cta{appearance:none;border:none;background:none;color:#0052ff;cursor:pointer;padding:0;text-decoration:none;display:block;font-weight:600;font-size:16px;line-height:24px}.-cbwsdk-css-reset .-cbwsdk-try-extension-cta.light{color:#0052ff}.-cbwsdk-css-reset .-cbwsdk-try-extension-cta.dark{color:#588af5}.-cbwsdk-css-reset .-cbwsdk-try-extension-cta-wrapper{display:flex;align-items:center;margin-top:12px}.-cbwsdk-css-reset .-cbwsdk-try-extension-cta-icon{display:block;margin-left:4px;height:14px}.-cbwsdk-css-reset .-cbwsdk-try-extension-list{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0;padding:0;list-style:none;height:100%}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item{display:flex;align-items:center;flex-flow:nowrap;margin-top:24px}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item:first-of-type{margin-top:0}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item-icon-wrapper{display:block}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item-icon{display:flex;height:32px;width:32px;border-radius:50%}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item-icon svg{margin:auto;display:block}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item-icon.light{background:#eef0f3}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item-icon.dark{background:#1e2025}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item-copy{display:block;font-weight:400;font-size:14px;line-height:20px;padding-left:12px}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item-copy.light{color:#5b636e}.-cbwsdk-css-reset .-cbwsdk-try-extension-list-item-copy.dark{color:#8a919e}\"});var mxe=be(f8=>{\"use strict\";p();var pxe=f8&&f8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(f8,\"__esModule\",{value:!0});f8.TryExtensionContent=void 0;var G6=pxe((_x(),go(ZC))),qa=(Dc(),go(wd)),uX=(JC(),go(iI)),F$e=lxe(),U$e=uxe(),j$e=fxe(),z$e=pxe(hxe());function H$e({theme:t}){let[e,n]=(0,uX.useState)(!1),r=(0,uX.useCallback)(()=>{window.open(\"https://api.wallet.coinbase.com/rpc/v2/desktop/chrome\",\"_blank\")},[]),o=(0,uX.useCallback)(()=>{e?window.location.reload():(r(),n(!0))},[r,e]);return(0,qa.h)(\"div\",{class:(0,G6.default)(\"-cbwsdk-try-extension\",t)},(0,qa.h)(\"style\",null,z$e.default),(0,qa.h)(\"div\",{class:\"-cbwsdk-try-extension-column-half\"},(0,qa.h)(\"h3\",{class:(0,G6.default)(\"-cbwsdk-try-extension-heading\",t)},\"Or try the Coinbase Wallet browser extension\"),(0,qa.h)(\"div\",{class:\"-cbwsdk-try-extension-cta-wrapper\"},(0,qa.h)(\"button\",{class:(0,G6.default)(\"-cbwsdk-try-extension-cta\",t),onClick:o},e?\"Refresh\":\"Install\"),(0,qa.h)(\"div\",null,!e&&(0,qa.h)(F$e.ArrowLeftIcon,{class:\"-cbwsdk-try-extension-cta-icon\",fill:t===\"light\"?\"#0052FF\":\"#588AF5\"})))),(0,qa.h)(\"div\",{class:\"-cbwsdk-try-extension-column-half\"},(0,qa.h)(\"ul\",{class:\"-cbwsdk-try-extension-list\"},(0,qa.h)(\"li\",{class:\"-cbwsdk-try-extension-list-item\"},(0,qa.h)(\"div\",{class:\"-cbwsdk-try-extension-list-item-icon-wrapper\"},(0,qa.h)(\"span\",{class:(0,G6.default)(\"-cbwsdk-try-extension-list-item-icon\",t)},(0,qa.h)(U$e.LaptopIcon,{fill:t===\"light\"?\"#0A0B0D\":\"#FFFFFF\"}))),(0,qa.h)(\"div\",{class:(0,G6.default)(\"-cbwsdk-try-extension-list-item-copy\",t)},\"Connect with dapps with just one click on your desktop browser\")),(0,qa.h)(\"li\",{class:\"-cbwsdk-try-extension-list-item\"},(0,qa.h)(\"div\",{class:\"-cbwsdk-try-extension-list-item-icon-wrapper\"},(0,qa.h)(\"span\",{class:(0,G6.default)(\"-cbwsdk-try-extension-list-item-icon\",t)},(0,qa.h)(j$e.SafeIcon,{fill:t===\"light\"?\"#0A0B0D\":\"#FFFFFF\"}))),(0,qa.h)(\"div\",{class:(0,G6.default)(\"-cbwsdk-try-extension-list-item-copy\",t)},\"Add an additional layer of security by using a supported Ledger hardware wallet\")))))}f8.TryExtensionContent=H$e});var gxe=be(dX=>{\"use strict\";p();Object.defineProperty(dX,\"__esModule\",{value:!0});dX.default=\".-cbwsdk-css-reset .-cbwsdk-connect-dialog{z-index:2147483647;position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center}.-cbwsdk-css-reset .-cbwsdk-connect-dialog-backdrop{z-index:2147483647;position:fixed;top:0;left:0;right:0;bottom:0;transition:opacity .25s}.-cbwsdk-css-reset .-cbwsdk-connect-dialog-backdrop.light{background-color:rgba(0,0,0,.5)}.-cbwsdk-css-reset .-cbwsdk-connect-dialog-backdrop.dark{background-color:rgba(50,53,61,.4)}.-cbwsdk-css-reset .-cbwsdk-connect-dialog-backdrop-hidden{opacity:0}.-cbwsdk-css-reset .-cbwsdk-connect-dialog-box{display:flex;position:relative;flex-direction:column;transform:scale(1);transition:opacity .25s,transform .25s}.-cbwsdk-css-reset .-cbwsdk-connect-dialog-box-hidden{opacity:0;transform:scale(0.85)}.-cbwsdk-css-reset .-cbwsdk-connect-dialog-container{display:block}.-cbwsdk-css-reset .-cbwsdk-connect-dialog-container-hidden{display:none}\"});var bxe=be(h8=>{\"use strict\";p();var yxe=h8&&h8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(h8,\"__esModule\",{value:!0});h8.ConnectDialog=void 0;var fX=yxe((_x(),go(ZC))),Z6=(Dc(),go(wd)),hX=(JC(),go(iI)),q$e=axe(),W$e=mxe(),V$e=yxe(gxe()),$$e=t=>{let{isOpen:e,darkMode:n}=t,[r,o]=(0,hX.useState)(!e),[i,a]=(0,hX.useState)(!e);(0,hX.useEffect)(()=>{let u=[window.setTimeout(()=>{a(!e)},10)];return e?o(!1):u.push(window.setTimeout(()=>{o(!0)},360)),()=>{u.forEach(window.clearTimeout)}},[e]);let c=n?\"dark\":\"light\";return(0,Z6.h)(\"div\",{class:(0,fX.default)(\"-cbwsdk-connect-dialog-container\",r&&\"-cbwsdk-connect-dialog-container-hidden\")},(0,Z6.h)(\"style\",null,V$e.default),(0,Z6.h)(\"div\",{class:(0,fX.default)(\"-cbwsdk-connect-dialog-backdrop\",c,i&&\"-cbwsdk-connect-dialog-backdrop-hidden\")}),(0,Z6.h)(\"div\",{class:\"-cbwsdk-connect-dialog\"},(0,Z6.h)(\"div\",{class:(0,fX.default)(\"-cbwsdk-connect-dialog-box\",i&&\"-cbwsdk-connect-dialog-box-hidden\")},t.connectDisabled?null:(0,Z6.h)(q$e.ConnectContent,{theme:c,version:t.version,sessionId:t.sessionId,sessionSecret:t.sessionSecret,linkAPIUrl:t.linkAPIUrl,isConnected:t.isConnected,isParentConnection:t.isParentConnection,chainId:t.chainId,onCancel:t.onCancel}),(0,Z6.h)(W$e.TryExtensionContent,{theme:c}))))};h8.ConnectDialog=$$e});var vxe=be(nj=>{\"use strict\";p();Object.defineProperty(nj,\"__esModule\",{value:!0});nj.LinkFlow=void 0;var pX=(Dc(),go(wd)),K$e=bxe(),mX=class{constructor(e){this.connected=!1,this.chainId=1,this.isOpen=!1,this.onCancel=null,this.root=null,this.connectDisabled=!1,this.darkMode=e.darkMode,this.version=e.version,this.sessionId=e.sessionId,this.sessionSecret=e.sessionSecret,this.linkAPIUrl=e.linkAPIUrl,this.isParentConnection=e.isParentConnection}attach(e){this.root=document.createElement(\"div\"),this.root.className=\"-cbwsdk-link-flow-root\",e.appendChild(this.root),this.render()}setConnected(e){this.connected!==e&&(this.connected=e,this.render())}setChainId(e){this.chainId!==e&&(this.chainId=e,this.render())}detach(){var e;this.root&&((0,pX.render)(null,this.root),(e=this.root.parentElement)===null||e===void 0||e.removeChild(this.root))}setConnectDisabled(e){this.connectDisabled=e}open(e){this.isOpen=!0,this.onCancel=e.onCancel,this.render()}close(){this.isOpen=!1,this.onCancel=null,this.render()}render(){this.root&&(0,pX.render)((0,pX.h)(K$e.ConnectDialog,{darkMode:this.darkMode,version:this.version,sessionId:this.sessionId,sessionSecret:this.sessionSecret,linkAPIUrl:this.linkAPIUrl,isOpen:this.isOpen,isConnected:this.connected,isParentConnection:this.isParentConnection,chainId:this.chainId,onCancel:this.onCancel,connectDisabled:this.connectDisabled}),this.root)}};nj.LinkFlow=mX});var wxe=be(gX=>{\"use strict\";p();Object.defineProperty(gX,\"__esModule\",{value:!0});gX.default=\".-cbwsdk-css-reset .-gear-container{margin-left:16px !important;margin-right:9px !important;display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:opacity .25s}.-cbwsdk-css-reset .-gear-container *{user-select:none}.-cbwsdk-css-reset .-gear-container svg{opacity:0;position:absolute}.-cbwsdk-css-reset .-gear-icon{height:12px;width:12px;z-index:10000}.-cbwsdk-css-reset .-cbwsdk-snackbar{align-items:flex-end;display:flex;flex-direction:column;position:fixed;right:0;top:0;z-index:2147483647}.-cbwsdk-css-reset .-cbwsdk-snackbar *{user-select:none}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance{display:flex;flex-direction:column;margin:8px 16px 0 16px;overflow:visible;text-align:left;transform:translateX(0);transition:opacity .25s,transform .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header:hover .-gear-container svg{opacity:1}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header{display:flex;align-items:center;background:#fff;overflow:hidden;border:1px solid #e7ebee;box-sizing:border-box;border-radius:8px;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header-cblogo{margin:8px 8px 8px 8px}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header *{cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header-message{color:#000;font-size:13px;line-height:1.5;user-select:none}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu{background:#fff;transition:opacity .25s ease-in-out,transform .25s linear,visibility 0s;visibility:hidden;border:1px solid #e7ebee;box-sizing:border-box;border-radius:8px;opacity:0;flex-direction:column;padding-left:8px;padding-right:8px}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:last-child{margin-bottom:8px !important}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover{background:#f5f7f8;border-radius:6px;transition:background .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover span{color:#050f19;transition:color .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover svg path{fill:#000;transition:fill .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item{visibility:inherit;height:35px;margin-top:8px;margin-bottom:0;display:flex;flex-direction:row;align-items:center;padding:8px;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item *{visibility:inherit;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover{background:rgba(223,95,103,.2);transition:background .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover *{cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover svg path{fill:#df5f67;transition:fill .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover span{color:#df5f67;transition:color .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-info{color:#aaa;font-size:13px;margin:0 8px 0 32px;position:absolute}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-hidden{opacity:0;text-align:left;transform:translateX(25%);transition:opacity .5s linear}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-expanded .-cbwsdk-snackbar-instance-menu{opacity:1;display:flex;transform:translateY(8px);visibility:visible}\"});var vX=be(lm=>{\"use strict\";p();var xxe=lm&&lm.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(lm,\"__esModule\",{value:!0});lm.SnackbarInstance=lm.SnackbarContainer=lm.Snackbar=void 0;var rj=xxe((_x(),go(ZC))),Wa=(Dc(),go(wd)),yX=(JC(),go(iI)),G$e=xxe(wxe()),Z$e=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuNDkyIDEwLjQxOWE4LjkzIDguOTMgMCAwMTguOTMtOC45M2gxMS4xNjNhOC45MyA4LjkzIDAgMDE4LjkzIDguOTN2MTEuMTYzYTguOTMgOC45MyAwIDAxLTguOTMgOC45M0gxMC40MjJhOC45MyA4LjkzIDAgMDEtOC45My04LjkzVjEwLjQxOXoiIGZpbGw9IiMxNjUyRjAiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwLjQxOSAwSDIxLjU4QzI3LjMzNSAwIDMyIDQuNjY1IDMyIDEwLjQxOVYyMS41OEMzMiAyNy4zMzUgMjcuMzM1IDMyIDIxLjU4MSAzMkgxMC40MkM0LjY2NSAzMiAwIDI3LjMzNSAwIDIxLjU4MVYxMC40MkMwIDQuNjY1IDQuNjY1IDAgMTAuNDE5IDB6bTAgMS40ODhhOC45MyA4LjkzIDAgMDAtOC45MyA4LjkzdjExLjE2M2E4LjkzIDguOTMgMCAwMDguOTMgOC45M0gyMS41OGE4LjkzIDguOTMgMCAwMDguOTMtOC45M1YxMC40MmE4LjkzIDguOTMgMCAwMC04LjkzLTguOTNIMTAuNDJ6IiBmaWxsPSIjZmZmIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNS45OTggMjYuMDQ5Yy01LjU0OSAwLTEwLjA0Ny00LjQ5OC0xMC4wNDctMTAuMDQ3IDAtNS41NDggNC40OTgtMTAuMDQ2IDEwLjA0Ny0xMC4wNDYgNS41NDggMCAxMC4wNDYgNC40OTggMTAuMDQ2IDEwLjA0NiAwIDUuNTQ5LTQuNDk4IDEwLjA0Ny0xMC4wNDYgMTAuMDQ3eiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0xMi43NjIgMTQuMjU0YzAtLjgyMi42NjctMS40ODkgMS40ODktMS40ODloMy40OTdjLjgyMiAwIDEuNDg4LjY2NiAxLjQ4OCAxLjQ4OXYzLjQ5N2MwIC44MjItLjY2NiAxLjQ4OC0xLjQ4OCAxLjQ4OGgtMy40OTdhMS40ODggMS40ODggMCAwMS0xLjQ4OS0xLjQ4OHYtMy40OTh6IiBmaWxsPSIjMTY1MkYwIi8+PC9zdmc+\",Y$e=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDYuNzV2LTEuNWwtMS43Mi0uNTdjLS4wOC0uMjctLjE5LS41Mi0uMzItLjc3bC44MS0xLjYyLTEuMDYtMS4wNi0xLjYyLjgxYy0uMjQtLjEzLS41LS4yNC0uNzctLjMyTDYuNzUgMGgtMS41bC0uNTcgMS43MmMtLjI3LjA4LS41My4xOS0uNzcuMzJsLTEuNjItLjgxLTEuMDYgMS4wNi44MSAxLjYyYy0uMTMuMjQtLjI0LjUtLjMyLjc3TDAgNS4yNXYxLjVsMS43Mi41N2MuMDguMjcuMTkuNTMuMzIuNzdsLS44MSAxLjYyIDEuMDYgMS4wNiAxLjYyLS44MWMuMjQuMTMuNS4yMy43Ny4zMkw1LjI1IDEyaDEuNWwuNTctMS43MmMuMjctLjA4LjUyLS4xOS43Ny0uMzJsMS42Mi44MSAxLjA2LTEuMDYtLjgxLTEuNjJjLjEzLS4yNC4yMy0uNS4zMi0uNzdMMTIgNi43NXpNNiA4LjVhMi41IDIuNSAwIDAxMC01IDIuNSAyLjUgMCAwMTAgNXoiIGZpbGw9IiMwNTBGMTkiLz48L3N2Zz4=\",bX=class{constructor(e){this.items=new Map,this.nextItemKey=0,this.root=null,this.darkMode=e.darkMode}attach(e){this.root=document.createElement(\"div\"),this.root.className=\"-cbwsdk-snackbar-root\",e.appendChild(this.root),this.render()}presentItem(e){let n=this.nextItemKey++;return this.items.set(n,e),this.render(),()=>{this.items.delete(n),this.render()}}clear(){this.items.clear(),this.render()}render(){this.root&&(0,Wa.render)((0,Wa.h)(\"div\",null,(0,Wa.h)(lm.SnackbarContainer,{darkMode:this.darkMode},Array.from(this.items.entries()).map(([e,n])=>(0,Wa.h)(lm.SnackbarInstance,Object.assign({},n,{key:e}))))),this.root)}};lm.Snackbar=bX;var Q$e=t=>(0,Wa.h)(\"div\",{class:(0,rj.default)(\"-cbwsdk-snackbar-container\")},(0,Wa.h)(\"style\",null,G$e.default),(0,Wa.h)(\"div\",{class:\"-cbwsdk-snackbar\"},t.children));lm.SnackbarContainer=Q$e;var J$e=({autoExpand:t,message:e,menuItems:n})=>{let[r,o]=(0,yX.useState)(!0),[i,a]=(0,yX.useState)(t??!1);(0,yX.useEffect)(()=>{let u=[window.setTimeout(()=>{o(!1)},1),window.setTimeout(()=>{a(!0)},1e4)];return()=>{u.forEach(window.clearTimeout)}});let c=()=>{a(!i)};return(0,Wa.h)(\"div\",{class:(0,rj.default)(\"-cbwsdk-snackbar-instance\",r&&\"-cbwsdk-snackbar-instance-hidden\",i&&\"-cbwsdk-snackbar-instance-expanded\")},(0,Wa.h)(\"div\",{class:\"-cbwsdk-snackbar-instance-header\",onClick:c},(0,Wa.h)(\"img\",{src:Z$e,class:\"-cbwsdk-snackbar-instance-header-cblogo\"}),\" \",(0,Wa.h)(\"div\",{class:\"-cbwsdk-snackbar-instance-header-message\"},e),(0,Wa.h)(\"div\",{class:\"-gear-container\"},!i&&(0,Wa.h)(\"svg\",{width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},(0,Wa.h)(\"circle\",{cx:\"12\",cy:\"12\",r:\"12\",fill:\"#F5F7F8\"})),(0,Wa.h)(\"img\",{src:Y$e,class:\"-gear-icon\",title:\"Expand\"}))),n&&n.length>0&&(0,Wa.h)(\"div\",{class:\"-cbwsdk-snackbar-instance-menu\"},n.map((u,d)=>(0,Wa.h)(\"div\",{class:(0,rj.default)(\"-cbwsdk-snackbar-instance-menu-item\",u.isRed&&\"-cbwsdk-snackbar-instance-menu-item-is-red\"),onClick:u.onClick,key:d},(0,Wa.h)(\"svg\",{width:u.svgWidth,height:u.svgHeight,viewBox:\"0 0 10 11\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},(0,Wa.h)(\"path\",{\"fill-rule\":u.defaultFillRule,\"clip-rule\":u.defaultClipRule,d:u.path,fill:\"#AAAAAA\"})),(0,Wa.h)(\"span\",{class:(0,rj.default)(\"-cbwsdk-snackbar-instance-menu-item-info\",u.isRed&&\"-cbwsdk-snackbar-instance-menu-item-info-is-red\")},u.info)))))};lm.SnackbarInstance=J$e});var xX=be(oj=>{\"use strict\";p();Object.defineProperty(oj,\"__esModule\",{value:!0});oj.WalletLinkRelayUI=void 0;var X$e=rX(),eKe=vxe(),tKe=vX(),wX=class{constructor(e){this.standalone=null,this.attached=!1,this.snackbar=new tKe.Snackbar({darkMode:e.darkMode}),this.linkFlow=new eKe.LinkFlow({darkMode:e.darkMode,version:e.version,sessionId:e.session.id,sessionSecret:e.session.secret,linkAPIUrl:e.linkAPIUrl,isParentConnection:!1})}attach(){if(this.attached)throw new Error(\"Coinbase Wallet SDK UI is already attached\");let e=document.documentElement,n=document.createElement(\"div\");n.className=\"-cbwsdk-css-reset\",e.appendChild(n),this.linkFlow.attach(n),this.snackbar.attach(n),this.attached=!0,(0,X$e.injectCssReset)()}setConnected(e){this.linkFlow.setConnected(e)}setChainId(e){this.linkFlow.setChainId(e)}setConnectDisabled(e){this.linkFlow.setConnectDisabled(e)}addEthereumChain(){}watchAsset(){}switchEthereumChain(){}requestEthereumAccounts(e){this.linkFlow.open({onCancel:e.onCancel})}hideRequestEthereumAccounts(){this.linkFlow.close()}signEthereumMessage(){}signEthereumTransaction(){}submitEthereumTransaction(){}ethereumAddressFromSignedMessage(){}showConnecting(e){let n;return e.isUnlinkedErrorState?n={autoExpand:!0,message:\"Connection lost\",menuItems:[{isRed:!1,info:\"Reset connection\",svgWidth:\"10\",svgHeight:\"11\",path:\"M5.00008 0.96875C6.73133 0.96875 8.23758 1.94375 9.00008 3.375L10.0001 2.375V5.5H9.53133H7.96883H6.87508L7.80633 4.56875C7.41258 3.3875 6.31258 2.53125 5.00008 2.53125C3.76258 2.53125 2.70633 3.2875 2.25633 4.36875L0.812576 3.76875C1.50008 2.125 3.11258 0.96875 5.00008 0.96875ZM2.19375 6.43125C2.5875 7.6125 3.6875 8.46875 5 8.46875C6.2375 8.46875 7.29375 7.7125 7.74375 6.63125L9.1875 7.23125C8.5 8.875 6.8875 10.0312 5 10.0312C3.26875 10.0312 1.7625 9.05625 1 7.625L0 8.625V5.5H0.46875H2.03125H3.125L2.19375 6.43125Z\",defaultFillRule:\"evenodd\",defaultClipRule:\"evenodd\",onClick:e.onResetConnection}]}:n={message:\"Confirm on phone\",menuItems:[{isRed:!0,info:\"Cancel transaction\",svgWidth:\"11\",svgHeight:\"11\",path:\"M10.3711 1.52346L9.21775 0.370117L5.37109 4.21022L1.52444 0.370117L0.371094 1.52346L4.2112 5.37012L0.371094 9.21677L1.52444 10.3701L5.37109 6.53001L9.21775 10.3701L10.3711 9.21677L6.53099 5.37012L10.3711 1.52346Z\",defaultFillRule:\"inherit\",defaultClipRule:\"inherit\",onClick:e.onCancel},{isRed:!1,info:\"Reset connection\",svgWidth:\"10\",svgHeight:\"11\",path:\"M5.00008 0.96875C6.73133 0.96875 8.23758 1.94375 9.00008 3.375L10.0001 2.375V5.5H9.53133H7.96883H6.87508L7.80633 4.56875C7.41258 3.3875 6.31258 2.53125 5.00008 2.53125C3.76258 2.53125 2.70633 3.2875 2.25633 4.36875L0.812576 3.76875C1.50008 2.125 3.11258 0.96875 5.00008 0.96875ZM2.19375 6.43125C2.5875 7.6125 3.6875 8.46875 5 8.46875C6.2375 8.46875 7.29375 7.7125 7.74375 6.63125L9.1875 7.23125C8.5 8.875 6.8875 10.0312 5 10.0312C3.26875 10.0312 1.7625 9.05625 1 7.625L0 8.625V5.5H0.46875H2.03125H3.125L2.19375 6.43125Z\",defaultFillRule:\"evenodd\",defaultClipRule:\"evenodd\",onClick:e.onResetConnection}]},this.snackbar.presentItem(n)}reloadUI(){document.location.reload()}inlineAccountsResponse(){return!1}inlineAddEthereumChain(){return!1}inlineWatchAsset(){return!1}inlineSwitchEthereumChain(){return!1}setStandalone(e){this.standalone=e}isStandalone(){var e;return(e=this.standalone)!==null&&e!==void 0?e:!1}};oj.WalletLinkRelayUI=wX});var EX=be(sj=>{\"use strict\";p();Object.defineProperty(sj,\"__esModule\",{value:!0});sj.WalletLinkRelay=void 0;var p8=fI(),nKe=pI(),_s=Yy(),Y6=LU(),Exe=BU(),Ix=HU(),rKe=qwe(),Q6=TU(),oKe=xX(),ij=class t extends Exe.RelayAbstract{constructor(e){var n;super(),this.accountsCallback=null,this.chainCallbackParams={chainId:\"\",jsonRpcUrl:\"\"},this.chainCallback=null,this.dappDefaultChain=1,this.appName=\"\",this.appLogoUrl=null,this.linkedUpdated=a=>{var c;this.isLinked=a;let u=this.storage.getItem(Exe.LOCAL_STORAGE_ADDRESSES_KEY);if(a&&(this.session.linked=a),this.isUnlinkedErrorState=!1,u){let d=u.split(\" \"),h=this.storage.getItem(\"IsStandaloneSigning\")===\"true\";if(d[0]!==\"\"&&!a&&this.session.linked&&!h){this.isUnlinkedErrorState=!0;let m=this.getSessionIdHash();(c=this.diagnostic)===null||c===void 0||c.log(Y6.EVENTS.UNLINKED_ERROR_STATE,{sessionIdHash:m})}}},this.metadataUpdated=(a,c)=>{this.storage.setItem(a,c)},this.chainUpdated=(a,c)=>{this.chainCallbackParams.chainId===a&&this.chainCallbackParams.jsonRpcUrl===c||(this.chainCallbackParams={chainId:a,jsonRpcUrl:c},this.chainCallback&&this.chainCallback(a,c))},this.accountUpdated=a=>{this.accountsCallback&&this.accountsCallback([a]),t.accountRequestCallbackIds.size>0&&(Array.from(t.accountRequestCallbackIds.values()).forEach(c=>{let u={type:\"WEB3_RESPONSE\",id:c,response:{method:\"requestEthereumAccounts\",result:[a]}};this.invokeCallback(Object.assign(Object.assign({},u),{id:c}))}),t.accountRequestCallbackIds.clear())},this.connectedUpdated=a=>{this.ui.setConnected(a)},this.resetAndReload=this.resetAndReload.bind(this),this.linkAPIUrl=e.linkAPIUrl,this.storage=e.storage,this.options=e;let{session:r,ui:o,connection:i}=this.subscribe();this._session=r,this.connection=i,this.relayEventManager=e.relayEventManager,this.diagnostic=e.diagnosticLogger,this._reloadOnDisconnect=(n=e.reloadOnDisconnect)!==null&&n!==void 0?n:!0,this.ui=o}subscribe(){let e=Ix.Session.load(this.storage)||new Ix.Session(this.storage).save(),{linkAPIUrl:n,diagnostic:r}=this,o=new rKe.WalletLinkConnection({session:e,linkAPIUrl:n,diagnostic:r,listener:this}),{version:i,darkMode:a}=this.options,c=this.options.uiConstructor({linkAPIUrl:n,version:i,darkMode:a,session:e});return o.connect(),{session:e,ui:c,connection:o}}attachUI(){this.ui.attach()}resetAndReload(){Promise.race([this.connection.setSessionMetadata(\"__destroyed\",\"1\"),new Promise(e=>setTimeout(()=>e(null),1e3))]).then(()=>{var e,n;let r=this.ui.isStandalone();(e=this.diagnostic)===null||e===void 0||e.log(Y6.EVENTS.SESSION_STATE_CHANGE,{method:\"relay::resetAndReload\",sessionMetadataChange:\"__destroyed, 1\",sessionIdHash:this.getSessionIdHash()}),this.connection.destroy();let o=Ix.Session.load(this.storage);if(o?.id===this._session.id?this.storage.clear():o&&((n=this.diagnostic)===null||n===void 0||n.log(Y6.EVENTS.SKIPPED_CLEARING_SESSION,{sessionIdHash:this.getSessionIdHash(),storedSessionIdHash:Ix.Session.hash(o.id)})),this._reloadOnDisconnect){this.ui.reloadUI();return}this.accountsCallback&&this.accountsCallback([],!0);let{session:i,ui:a,connection:c}=this.subscribe();this._session=i,this.connection=c,this.ui=a,r&&this.ui.setStandalone&&this.ui.setStandalone(!0),this.options.headlessMode||this.attachUI()}).catch(e=>{var n;(n=this.diagnostic)===null||n===void 0||n.log(Y6.EVENTS.FAILURE,{method:\"relay::resetAndReload\",message:`failed to reset and reload with ${e}`,sessionIdHash:this.getSessionIdHash()})})}setAppInfo(e,n){this.appName=e,this.appLogoUrl=n}getStorageItem(e){return this.storage.getItem(e)}get session(){return this._session}setStorageItem(e,n){this.storage.setItem(e,n)}signEthereumMessage(e,n,r,o){return this.sendRequest({method:\"signEthereumMessage\",params:{message:(0,_s.hexStringFromBuffer)(e,!0),address:n,addPrefix:r,typedDataJson:o||null}})}ethereumAddressFromSignedMessage(e,n,r){return this.sendRequest({method:\"ethereumAddressFromSignedMessage\",params:{message:(0,_s.hexStringFromBuffer)(e,!0),signature:(0,_s.hexStringFromBuffer)(n,!0),addPrefix:r}})}signEthereumTransaction(e){return this.sendRequest({method:\"signEthereumTransaction\",params:{fromAddress:e.fromAddress,toAddress:e.toAddress,weiValue:(0,_s.bigIntStringFromBN)(e.weiValue),data:(0,_s.hexStringFromBuffer)(e.data,!0),nonce:e.nonce,gasPriceInWei:e.gasPriceInWei?(0,_s.bigIntStringFromBN)(e.gasPriceInWei):null,maxFeePerGas:e.gasPriceInWei?(0,_s.bigIntStringFromBN)(e.gasPriceInWei):null,maxPriorityFeePerGas:e.gasPriceInWei?(0,_s.bigIntStringFromBN)(e.gasPriceInWei):null,gasLimit:e.gasLimit?(0,_s.bigIntStringFromBN)(e.gasLimit):null,chainId:e.chainId,shouldSubmit:!1}})}signAndSubmitEthereumTransaction(e){return this.sendRequest({method:\"signEthereumTransaction\",params:{fromAddress:e.fromAddress,toAddress:e.toAddress,weiValue:(0,_s.bigIntStringFromBN)(e.weiValue),data:(0,_s.hexStringFromBuffer)(e.data,!0),nonce:e.nonce,gasPriceInWei:e.gasPriceInWei?(0,_s.bigIntStringFromBN)(e.gasPriceInWei):null,maxFeePerGas:e.maxFeePerGas?(0,_s.bigIntStringFromBN)(e.maxFeePerGas):null,maxPriorityFeePerGas:e.maxPriorityFeePerGas?(0,_s.bigIntStringFromBN)(e.maxPriorityFeePerGas):null,gasLimit:e.gasLimit?(0,_s.bigIntStringFromBN)(e.gasLimit):null,chainId:e.chainId,shouldSubmit:!0}})}submitEthereumTransaction(e,n){return this.sendRequest({method:\"submitEthereumTransaction\",params:{signedTransaction:(0,_s.hexStringFromBuffer)(e,!0),chainId:n}})}scanQRCode(e){return this.sendRequest({method:\"scanQRCode\",params:{regExp:e}})}getQRCodeUrl(){return(0,_s.createQrUrl)(this._session.id,this._session.secret,this.linkAPIUrl,!1,this.options.version,this.dappDefaultChain)}genericRequest(e,n){return this.sendRequest({method:\"generic\",params:{action:n,data:e}})}sendGenericMessage(e){return this.sendRequest(e)}sendRequest(e){let n=null,r=(0,_s.randomBytesHex)(8),o=a=>{this.publishWeb3RequestCanceledEvent(r),this.handleErrorResponse(r,e.method,a),n?.()};return{promise:new Promise((a,c)=>{this.ui.isStandalone()||(n=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:o,onResetConnection:this.resetAndReload})),this.relayEventManager.callbacks.set(r,u=>{if(n?.(),(0,Q6.isErrorResponse)(u))return c(new Error(u.errorMessage));a(u)}),this.ui.isStandalone()?this.sendRequestStandalone(r,e):this.publishWeb3RequestEvent(r,e)}),cancel:o}}setConnectDisabled(e){this.ui.setConnectDisabled(e)}setAccountsCallback(e){this.accountsCallback=e}setChainCallback(e){this.chainCallback=e}setDappDefaultChainCallback(e){this.dappDefaultChain=e,this.ui instanceof oKe.WalletLinkRelayUI&&this.ui.setChainId(e)}publishWeb3RequestEvent(e,n){var r;let o={type:\"WEB3_REQUEST\",id:e,request:n},i=Ix.Session.load(this.storage);(r=this.diagnostic)===null||r===void 0||r.log(Y6.EVENTS.WEB3_REQUEST,{eventId:o.id,method:`relay::${n.method}`,sessionIdHash:this.getSessionIdHash(),storedSessionIdHash:i?Ix.Session.hash(i.id):\"\",isSessionMismatched:(i?.id!==this._session.id).toString()}),this.publishEvent(\"Web3Request\",o,!0).then(a=>{var c;(c=this.diagnostic)===null||c===void 0||c.log(Y6.EVENTS.WEB3_REQUEST_PUBLISHED,{eventId:o.id,method:`relay::${n.method}`,sessionIdHash:this.getSessionIdHash(),storedSessionIdHash:i?Ix.Session.hash(i.id):\"\",isSessionMismatched:(i?.id!==this._session.id).toString()})}).catch(a=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:o.id,response:{method:n.method,errorMessage:a.message}})})}publishWeb3RequestCanceledEvent(e){let n={type:\"WEB3_REQUEST_CANCELED\",id:e};this.publishEvent(\"Web3RequestCanceled\",n,!1).then()}publishEvent(e,n,r){return this.connection.publishEvent(e,n,r)}handleWeb3ResponseMessage(e){var n;let{response:r}=e;if((n=this.diagnostic)===null||n===void 0||n.log(Y6.EVENTS.WEB3_RESPONSE,{eventId:e.id,method:`relay::${r.method}`,sessionIdHash:this.getSessionIdHash()}),r.method===\"requestEthereumAccounts\"){t.accountRequestCallbackIds.forEach(o=>this.invokeCallback(Object.assign(Object.assign({},e),{id:o}))),t.accountRequestCallbackIds.clear();return}this.invokeCallback(e)}handleErrorResponse(e,n,r,o){var i;let a=(i=r?.message)!==null&&i!==void 0?i:(0,p8.getMessageFromCode)(o);this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:e,response:{method:n,errorMessage:a,errorCode:o}})}invokeCallback(e){let n=this.relayEventManager.callbacks.get(e.id);n&&(n(e.response),this.relayEventManager.callbacks.delete(e.id))}requestEthereumAccounts(){let e={method:\"requestEthereumAccounts\",params:{appName:this.appName,appLogoUrl:this.appLogoUrl||null}},n=null,r=(0,_s.randomBytesHex)(8),o=a=>{this.publishWeb3RequestCanceledEvent(r),this.handleErrorResponse(r,e.method,a),n?.()};return{promise:new Promise((a,c)=>{if(this.relayEventManager.callbacks.set(r,u=>{if(this.ui.hideRequestEthereumAccounts(),n?.(),(0,Q6.isErrorResponse)(u))return c(new Error(u.errorMessage));a(u)}),this.ui.inlineAccountsResponse()){let u=d=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:r,response:{method:\"requestEthereumAccounts\",result:d}})};this.ui.requestEthereumAccounts({onCancel:o,onAccounts:u})}else{let u=p8.standardErrors.provider.userRejectedRequest(\"User denied account authorization\");this.ui.requestEthereumAccounts({onCancel:()=>o(u)})}t.accountRequestCallbackIds.add(r),!this.ui.inlineAccountsResponse()&&!this.ui.isStandalone()&&this.publishWeb3RequestEvent(r,e)}),cancel:o}}selectProvider(e){let n={method:\"selectProvider\",params:{providerOptions:e}},r=(0,_s.randomBytesHex)(8),o=a=>{this.publishWeb3RequestCanceledEvent(r),this.handleErrorResponse(r,n.method,a)},i=new Promise((a,c)=>{this.relayEventManager.callbacks.set(r,h=>{if((0,Q6.isErrorResponse)(h))return c(new Error(h.errorMessage));a(h)});let u=h=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:r,response:{method:\"selectProvider\",result:nKe.ProviderType.Unselected}})},d=h=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:r,response:{method:\"selectProvider\",result:h}})};this.ui.selectProvider&&this.ui.selectProvider({onApprove:d,onCancel:u,providerOptions:e})});return{cancel:o,promise:i}}watchAsset(e,n,r,o,i,a){let c={method:\"watchAsset\",params:{type:e,options:{address:n,symbol:r,decimals:o,image:i},chainId:a}},u=null,d=(0,_s.randomBytesHex)(8),h=g=>{this.publishWeb3RequestCanceledEvent(d),this.handleErrorResponse(d,c.method,g),u?.()};this.ui.inlineWatchAsset()||(u=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:h,onResetConnection:this.resetAndReload}));let m=new Promise((g,b)=>{this.relayEventManager.callbacks.set(d,T=>{if(u?.(),(0,Q6.isErrorResponse)(T))return b(new Error(T.errorMessage));g(T)});let E=T=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:d,response:{method:\"watchAsset\",result:!1}})},C=()=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:d,response:{method:\"watchAsset\",result:!0}})};this.ui.inlineWatchAsset()&&this.ui.watchAsset({onApprove:C,onCancel:E,type:e,address:n,symbol:r,decimals:o,image:i,chainId:a}),!this.ui.inlineWatchAsset()&&!this.ui.isStandalone()&&this.publishWeb3RequestEvent(d,c)});return{cancel:h,promise:m}}addEthereumChain(e,n,r,o,i,a){let c={method:\"addEthereumChain\",params:{chainId:e,rpcUrls:n,blockExplorerUrls:o,chainName:i,iconUrls:r,nativeCurrency:a}},u=null,d=(0,_s.randomBytesHex)(8),h=g=>{this.publishWeb3RequestCanceledEvent(d),this.handleErrorResponse(d,c.method,g),u?.()};return this.ui.inlineAddEthereumChain(e)||(u=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:h,onResetConnection:this.resetAndReload})),{promise:new Promise((g,b)=>{this.relayEventManager.callbacks.set(d,T=>{if(u?.(),(0,Q6.isErrorResponse)(T))return b(new Error(T.errorMessage));g(T)});let E=T=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:d,response:{method:\"addEthereumChain\",result:{isApproved:!1,rpcUrl:\"\"}}})},C=T=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:d,response:{method:\"addEthereumChain\",result:{isApproved:!0,rpcUrl:T}}})};this.ui.inlineAddEthereumChain(e)&&this.ui.addEthereumChain({onCancel:E,onApprove:C,chainId:c.params.chainId,rpcUrls:c.params.rpcUrls,blockExplorerUrls:c.params.blockExplorerUrls,chainName:c.params.chainName,iconUrls:c.params.iconUrls,nativeCurrency:c.params.nativeCurrency}),!this.ui.inlineAddEthereumChain(e)&&!this.ui.isStandalone()&&this.publishWeb3RequestEvent(d,c)}),cancel:h}}switchEthereumChain(e,n){let r={method:\"switchEthereumChain\",params:Object.assign({chainId:e},{address:n})},o=(0,_s.randomBytesHex)(8),i=c=>{this.publishWeb3RequestCanceledEvent(o),this.handleErrorResponse(o,r.method,c)};return{promise:new Promise((c,u)=>{this.relayEventManager.callbacks.set(o,m=>{if((0,Q6.isErrorResponse)(m)&&m.errorCode)return u(p8.standardErrors.provider.custom({code:m.errorCode,message:\"Unrecognized chain ID. Try adding the chain using addEthereumChain first.\"}));if((0,Q6.isErrorResponse)(m))return u(new Error(m.errorMessage));c(m)});let d=m=>{var g;if(m){let b=(g=(0,p8.getErrorCode)(m))!==null&&g!==void 0?g:p8.standardErrorCodes.provider.unsupportedChain;this.handleErrorResponse(o,\"switchEthereumChain\",m instanceof Error?m:p8.standardErrors.provider.unsupportedChain(e),b)}else this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:o,response:{method:\"switchEthereumChain\",result:{isApproved:!1,rpcUrl:\"\"}}})},h=m=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:o,response:{method:\"switchEthereumChain\",result:{isApproved:!0,rpcUrl:m}}})};this.ui.switchEthereumChain({onCancel:d,onApprove:h,chainId:r.params.chainId,address:r.params.address}),!this.ui.inlineSwitchEthereumChain()&&!this.ui.isStandalone()&&this.publishWeb3RequestEvent(o,r)}),cancel:i}}inlineAddEthereumChain(e){return this.ui.inlineAddEthereumChain(e)}getSessionIdHash(){return Ix.Session.hash(this._session.id)}sendRequestStandalone(e,n){let r=i=>{this.handleErrorResponse(e,n.method,i)},o=i=>{this.handleWeb3ResponseMessage({type:\"WEB3_RESPONSE\",id:e,response:i})};switch(n.method){case\"signEthereumMessage\":this.ui.signEthereumMessage({request:n,onSuccess:o,onCancel:r});break;case\"signEthereumTransaction\":this.ui.signEthereumTransaction({request:n,onSuccess:o,onCancel:r});break;case\"submitEthereumTransaction\":this.ui.submitEthereumTransaction({request:n,onSuccess:o,onCancel:r});break;case\"ethereumAddressFromSignedMessage\":this.ui.ethereumAddressFromSignedMessage({request:n,onSuccess:o});break;default:r();break}}};sj.WalletLinkRelay=ij;ij.accountRequestCallbackIds=new Set});var Sxe=be(J6=>{\"use strict\";p();var iKe=J6&&J6.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var o=Object.getOwnPropertyDescriptor(e,n);(!o||(\"get\"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,o)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),sKe=J6&&J6.__exportStar||function(t,e){for(var n in t)n!==\"default\"&&!Object.prototype.hasOwnProperty.call(e,n)&&iKe(e,t,n)};Object.defineProperty(J6,\"__esModule\",{value:!0});sKe(vX(),J6)});var kxe=be(SX=>{\"use strict\";p();Object.defineProperty(SX,\"__esModule\",{value:!0});SX.default=\".-cbwsdk-css-reset .-cbwsdk-redirect-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;transition:opacity .25s;background-color:rgba(10,11,13,.5)}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-backdrop-hidden{opacity:0}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box{display:block;position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);padding:20px;border-radius:8px;background-color:#fff;color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box p{display:block;font-weight:400;font-size:14px;line-height:20px;padding-bottom:12px;color:#5b636e}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box button{appearance:none;border:none;background:none;color:#0052ff;padding:0;text-decoration:none;display:block;font-weight:600;font-size:16px;line-height:24px}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.dark{background-color:#0a0b0d;color:#fff}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.dark button{color:#0052ff}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.light{background-color:#fff;color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.light button{color:#0052ff}\"});var Cxe=be(m8=>{\"use strict\";p();var _xe=m8&&m8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(m8,\"__esModule\",{value:!0});m8.RedirectDialog=void 0;var aKe=_xe((_x(),go(ZC))),r1=(Dc(),go(wd)),cKe=rX(),lKe=Sxe(),uKe=_xe(kxe()),kX=class{constructor(){this.root=null}attach(){let e=document.documentElement;this.root=document.createElement(\"div\"),this.root.className=\"-cbwsdk-css-reset\",e.appendChild(this.root),(0,cKe.injectCssReset)()}present(e){this.render(e)}clear(){this.render(null)}render(e){this.root&&((0,r1.render)(null,this.root),e&&(0,r1.render)((0,r1.h)(dKe,Object.assign({},e,{onDismiss:()=>{this.clear()}})),this.root))}};m8.RedirectDialog=kX;var dKe=({title:t,buttonText:e,darkMode:n,onButtonClick:r,onDismiss:o})=>{let i=n?\"dark\":\"light\";return(0,r1.h)(lKe.SnackbarContainer,{darkMode:n},(0,r1.h)(\"div\",{class:\"-cbwsdk-redirect-dialog\"},(0,r1.h)(\"style\",null,uKe.default),(0,r1.h)(\"div\",{class:\"-cbwsdk-redirect-dialog-backdrop\",onClick:o}),(0,r1.h)(\"div\",{class:(0,aKe.default)(\"-cbwsdk-redirect-dialog-box\",i)},(0,r1.h)(\"p\",null,t),(0,r1.h)(\"button\",{onClick:r},e))))}});var CX=be(aj=>{\"use strict\";p();Object.defineProperty(aj,\"__esModule\",{value:!0});aj.MobileRelayUI=void 0;var fKe=Cxe(),_X=class{constructor(e){this.attached=!1,this.darkMode=!1,this.redirectDialog=new fKe.RedirectDialog,this.darkMode=e.darkMode}attach(){if(this.attached)throw new Error(\"Coinbase Wallet SDK UI is already attached\");this.redirectDialog.attach(),this.attached=!0}setConnected(e){}redirectToCoinbaseWallet(e){let n=new URL(\"https://go.cb-w.com/walletlink\");n.searchParams.append(\"redirect_url\",window.location.href),e&&n.searchParams.append(\"wl_url\",e);let r=document.createElement(\"a\");r.target=\"cbw-opener\",r.href=n.href,r.rel=\"noreferrer noopener\",r.click()}openCoinbaseWalletDeeplink(e){this.redirectDialog.present({title:\"Redirecting to Coinbase Wallet...\",buttonText:\"Open\",darkMode:this.darkMode,onButtonClick:()=>{this.redirectToCoinbaseWallet(e)}}),setTimeout(()=>{this.redirectToCoinbaseWallet(e)},99)}showConnecting(e){return()=>{this.redirectDialog.clear()}}hideRequestEthereumAccounts(){this.redirectDialog.clear()}requestEthereumAccounts(){}addEthereumChain(){}watchAsset(){}selectProvider(){}switchEthereumChain(){}signEthereumMessage(){}signEthereumTransaction(){}submitEthereumTransaction(){}ethereumAddressFromSignedMessage(){}reloadUI(){}setStandalone(){}setConnectDisabled(){}inlineAccountsResponse(){return!1}inlineAddEthereumChain(){return!1}inlineWatchAsset(){return!1}inlineSwitchEthereumChain(){return!1}isStandalone(){return!1}};aj.MobileRelayUI=_X});var TX=be(cj=>{\"use strict\";p();Object.defineProperty(cj,\"__esModule\",{value:!0});cj.MobileRelay=void 0;var hKe=Yy(),pKe=EX(),mKe=CX(),AX=class extends pKe.WalletLinkRelay{constructor(e){var n;super(e),this._enableMobileWalletLink=(n=e.enableMobileWalletLink)!==null&&n!==void 0?n:!1}requestEthereumAccounts(){return this._enableMobileWalletLink?super.requestEthereumAccounts():{promise:new Promise(()=>{let e=(0,hKe.getLocation)();e.href=`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(e.href)}`}),cancel:()=>{}}}publishWeb3RequestEvent(e,n){if(super.publishWeb3RequestEvent(e,n),!(this._enableMobileWalletLink&&this.ui instanceof mKe.MobileRelayUI))return;let r=!1;switch(n.method){case\"requestEthereumAccounts\":case\"connectAndSignIn\":r=!0,this.ui.openCoinbaseWalletDeeplink(this.getQRCodeUrl());break;case\"switchEthereumChain\":return;default:r=!0,this.ui.openCoinbaseWalletDeeplink();break}r&&window.addEventListener(\"blur\",()=>{window.addEventListener(\"focus\",()=>{this.connection.checkUnseenEvents()},{once:!0})},{once:!0})}handleWeb3ResponseMessage(e){super.handleWeb3ResponseMessage(e)}connectAndSignIn(e){if(!this._enableMobileWalletLink)throw new Error(\"connectAndSignIn is supported only when enableMobileWalletLink is on\");return this.sendRequest({method:\"connectAndSignIn\",params:{appName:this.appName,appLogoUrl:this.appLogoUrl,domain:window.location.hostname,aud:window.location.href,version:\"1\",type:\"eip4361\",nonce:e.nonce,iat:new Date().toISOString(),chainId:`eip155:${this.dappDefaultChain}`,statement:e.statement,resources:e.resources}})}};cj.MobileRelay=AX});var EI=be((kin,RX)=>{\"use strict\";p();var g8=typeof Reflect==\"object\"?Reflect:null,Axe=g8&&typeof g8.apply==\"function\"?g8.apply:function(e,n,r){return Function.prototype.apply.call(e,n,r)},lj;g8&&typeof g8.ownKeys==\"function\"?lj=g8.ownKeys:Object.getOwnPropertySymbols?lj=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:lj=function(e){return Object.getOwnPropertyNames(e)};function gKe(t){console&&console.warn&&console.warn(t)}var Rxe=Number.isNaN||function(e){return e!==e};function di(){di.init.call(this)}RX.exports=di;RX.exports.once=wKe;di.EventEmitter=di;di.prototype._events=void 0;di.prototype._eventsCount=0;di.prototype._maxListeners=void 0;var Txe=10;function uj(t){if(typeof t!=\"function\")throw new TypeError(\\'The \"listener\" argument must be of type Function. Received type \\'+typeof t)}Object.defineProperty(di,\"defaultMaxListeners\",{enumerable:!0,get:function(){return Txe},set:function(t){if(typeof t!=\"number\"||t<0||Rxe(t))throw new RangeError(\\'The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received \\'+t+\".\");Txe=t}});di.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};di.prototype.setMaxListeners=function(e){if(typeof e!=\"number\"||e<0||Rxe(e))throw new RangeError(\\'The value of \"n\" is out of range. It must be a non-negative number. Received \\'+e+\".\");return this._maxListeners=e,this};function Ixe(t){return t._maxListeners===void 0?di.defaultMaxListeners:t._maxListeners}di.prototype.getMaxListeners=function(){return Ixe(this)};di.prototype.emit=function(e){for(var n=[],r=1;r<arguments.length;r++)n.push(arguments[r]);var o=e===\"error\",i=this._events;if(i!==void 0)o=o&&i.error===void 0;else if(!o)return!1;if(o){var a;if(n.length>0&&(a=n[0]),a instanceof Error)throw a;var c=new Error(\"Unhandled error.\"+(a?\" (\"+a.message+\")\":\"\"));throw c.context=a,c}var u=i[e];if(u===void 0)return!1;if(typeof u==\"function\")Axe(u,this,n);else for(var d=u.length,h=Lxe(u,d),r=0;r<d;++r)Axe(h[r],this,n);return!0};function Oxe(t,e,n,r){var o,i,a;if(uj(n),i=t._events,i===void 0?(i=t._events=Object.create(null),t._eventsCount=0):(i.newListener!==void 0&&(t.emit(\"newListener\",e,n.listener?n.listener:n),i=t._events),a=i[e]),a===void 0)a=i[e]=n,++t._eventsCount;else if(typeof a==\"function\"?a=i[e]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),o=Ixe(t),o>0&&a.length>o&&!a.warned){a.warned=!0;var c=new Error(\"Possible EventEmitter memory leak detected. \"+a.length+\" \"+String(e)+\" listeners added. Use emitter.setMaxListeners() to increase limit\");c.name=\"MaxListenersExceededWarning\",c.emitter=t,c.type=e,c.count=a.length,gKe(c)}return t}di.prototype.addListener=function(e,n){return Oxe(this,e,n,!1)};di.prototype.on=di.prototype.addListener;di.prototype.prependListener=function(e,n){return Oxe(this,e,n,!0)};function yKe(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function Pxe(t,e,n){var r={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},o=yKe.bind(r);return o.listener=n,r.wrapFn=o,o}di.prototype.once=function(e,n){return uj(n),this.on(e,Pxe(this,e,n)),this};di.prototype.prependOnceListener=function(e,n){return uj(n),this.prependListener(e,Pxe(this,e,n)),this};di.prototype.removeListener=function(e,n){var r,o,i,a,c;if(uj(n),o=this._events,o===void 0)return this;if(r=o[e],r===void 0)return this;if(r===n||r.listener===n)--this._eventsCount===0?this._events=Object.create(null):(delete o[e],o.removeListener&&this.emit(\"removeListener\",e,r.listener||n));else if(typeof r!=\"function\"){for(i=-1,a=r.length-1;a>=0;a--)if(r[a]===n||r[a].listener===n){c=r[a].listener,i=a;break}if(i<0)return this;i===0?r.shift():bKe(r,i),r.length===1&&(o[e]=r[0]),o.removeListener!==void 0&&this.emit(\"removeListener\",e,c||n)}return this};di.prototype.off=di.prototype.removeListener;di.prototype.removeAllListeners=function(e){var n,r,o;if(r=this._events,r===void 0)return this;if(r.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):r[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete r[e]),this;if(arguments.length===0){var i=Object.keys(r),a;for(o=0;o<i.length;++o)a=i[o],a!==\"removeListener\"&&this.removeAllListeners(a);return this.removeAllListeners(\"removeListener\"),this._events=Object.create(null),this._eventsCount=0,this}if(n=r[e],typeof n==\"function\")this.removeListener(e,n);else if(n!==void 0)for(o=n.length-1;o>=0;o--)this.removeListener(e,n[o]);return this};function Mxe(t,e,n){var r=t._events;if(r===void 0)return[];var o=r[e];return o===void 0?[]:typeof o==\"function\"?n?[o.listener||o]:[o]:n?vKe(o):Lxe(o,o.length)}di.prototype.listeners=function(e){return Mxe(this,e,!0)};di.prototype.rawListeners=function(e){return Mxe(this,e,!1)};di.listenerCount=function(t,e){return typeof t.listenerCount==\"function\"?t.listenerCount(e):Nxe.call(t,e)};di.prototype.listenerCount=Nxe;function Nxe(t){var e=this._events;if(e!==void 0){var n=e[t];if(typeof n==\"function\")return 1;if(n!==void 0)return n.length}return 0}di.prototype.eventNames=function(){return this._eventsCount>0?lj(this._events):[]};function Lxe(t,e){for(var n=new Array(e),r=0;r<e;++r)n[r]=t[r];return n}function bKe(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}function vKe(t){for(var e=new Array(t.length),n=0;n<e.length;++n)e[n]=t[n].listener||t[n];return e}function wKe(t,e){return new Promise(function(n,r){function o(a){t.removeListener(e,i),r(a)}function i(){typeof t.removeListener==\"function\"&&t.removeListener(\"error\",o),n([].slice.call(arguments))}Bxe(t,e,i,{once:!0}),e!==\"error\"&&xKe(t,o,{once:!0})})}function xKe(t,e,n){typeof t.on==\"function\"&&Bxe(t,\"error\",e,n)}function Bxe(t,e,n,r){if(typeof t.on==\"function\")r.once?t.once(e,n):t.on(e,n);else if(typeof t.addEventListener==\"function\")t.addEventListener(e,function o(i){r.once&&t.removeEventListener(e,o),n(i)});else throw new TypeError(\\'The \"emitter\" argument must be of type EventEmitter. Received type \\'+typeof t)}});var IX=be((Cin,Dxe)=>{p();Dxe.exports=EI().EventEmitter});var OX=be(()=>{p()});var qxe=be((Oin,Hxe)=>{\"use strict\";p();function Fxe(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),n.push.apply(n,r)}return n}function Uxe(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?Fxe(Object(n),!0).forEach(function(r){EKe(t,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Fxe(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))})}return t}function EKe(t,e,n){return e=zxe(e),e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function SKe(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function jxe(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,zxe(r.key),r)}}function kKe(t,e,n){return e&&jxe(t.prototype,e),n&&jxe(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t}function zxe(t){var e=_Ke(t,\"string\");return typeof e==\"symbol\"?e:String(e)}function _Ke(t,e){if(typeof t!=\"object\"||t===null)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var r=n.call(t,e||\"default\");if(typeof r!=\"object\")return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(e===\"string\"?String:Number)(t)}var CKe=Kb(),dj=CKe.Buffer,AKe=OX(),PX=AKe.inspect,TKe=PX&&PX.custom||\"inspect\";function RKe(t,e,n){dj.prototype.copy.call(t,e,n)}Hxe.exports=function(){function t(){SKe(this,t),this.head=null,this.tail=null,this.length=0}return kKe(t,[{key:\"push\",value:function(n){var r={data:n,next:null};this.length>0?this.tail.next=r:this.head=r,this.tail=r,++this.length}},{key:\"unshift\",value:function(n){var r={data:n,next:this.head};this.length===0&&(this.tail=r),this.head=r,++this.length}},{key:\"shift\",value:function(){if(this.length!==0){var n=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,n}}},{key:\"clear\",value:function(){this.head=this.tail=null,this.length=0}},{key:\"join\",value:function(n){if(this.length===0)return\"\";for(var r=this.head,o=\"\"+r.data;r=r.next;)o+=n+r.data;return o}},{key:\"concat\",value:function(n){if(this.length===0)return dj.alloc(0);for(var r=dj.allocUnsafe(n>>>0),o=this.head,i=0;o;)RKe(o.data,r,i),i+=o.data.length,o=o.next;return r}},{key:\"consume\",value:function(n,r){var o;return n<this.head.data.length?(o=this.head.data.slice(0,n),this.head.data=this.head.data.slice(n)):n===this.head.data.length?o=this.shift():o=r?this._getString(n):this._getBuffer(n),o}},{key:\"first\",value:function(){return this.head.data}},{key:\"_getString\",value:function(n){var r=this.head,o=1,i=r.data;for(n-=i.length;r=r.next;){var a=r.data,c=n>a.length?a.length:n;if(c===a.length?i+=a:i+=a.slice(0,n),n-=c,n===0){c===a.length?(++o,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=a.slice(c));break}++o}return this.length-=o,i}},{key:\"_getBuffer\",value:function(n){var r=dj.allocUnsafe(n),o=this.head,i=1;for(o.data.copy(r),n-=o.data.length;o=o.next;){var a=o.data,c=n>a.length?a.length:n;if(a.copy(r,r.length-n,0,c),n-=c,n===0){c===a.length?(++i,o.next?this.head=o.next:this.head=this.tail=null):(this.head=o,o.data=a.slice(c));break}++i}return this.length-=i,r}},{key:TKe,value:function(n,r){return PX(this,Uxe(Uxe({},r),{},{depth:0,customInspect:!1}))}}]),t}()});var NX=be((Min,Vxe)=>{\"use strict\";p();function IKe(t,e){var n=this,r=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return r||o?(e?e(t):t&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(MX,this,t)):process.nextTick(MX,this,t)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(i){!e&&i?n._writableState?n._writableState.errorEmitted?process.nextTick(fj,n):(n._writableState.errorEmitted=!0,process.nextTick(Wxe,n,i)):process.nextTick(Wxe,n,i):e?(process.nextTick(fj,n),e(i)):process.nextTick(fj,n)}),this)}function Wxe(t,e){MX(t,e),fj(t)}function fj(t){t._writableState&&!t._writableState.emitClose||t._readableState&&!t._readableState.emitClose||t.emit(\"close\")}function OKe(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function MX(t,e){t.emit(\"error\",e)}function PKe(t,e){var n=t._readableState,r=t._writableState;n&&n.autoDestroy||r&&r.autoDestroy?t.destroy(e):t.emit(\"error\",e)}Vxe.exports={destroy:IKe,undestroy:OKe,errorOrDestroy:PKe}});var X6=be((Lin,Gxe)=>{\"use strict\";p();function MKe(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}var Kxe={};function um(t,e,n){n||(n=Error);function r(i,a,c){return typeof e==\"string\"?e:e(i,a,c)}var o=function(i){MKe(a,i);function a(c,u,d){return i.call(this,r(c,u,d))||this}return a}(n);o.prototype.name=n.name,o.prototype.code=t,Kxe[t]=o}function $xe(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map(function(r){return String(r)}),n>2?\"one of \".concat(e,\" \").concat(t.slice(0,n-1).join(\", \"),\", or \")+t[n-1]:n===2?\"one of \".concat(e,\" \").concat(t[0],\" or \").concat(t[1]):\"of \".concat(e,\" \").concat(t[0])}else return\"of \".concat(e,\" \").concat(String(t))}function NKe(t,e,n){return t.substr(!n||n<0?0:+n,e.length)===e}function LKe(t,e,n){return(n===void 0||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}function BKe(t,e,n){return typeof n!=\"number\"&&(n=0),n+e.length>t.length?!1:t.indexOf(e,n)!==-1}um(\"ERR_INVALID_OPT_VALUE\",function(t,e){return\\'The value \"\\'+e+\\'\" is invalid for option \"\\'+t+\\'\"\\'},TypeError);um(\"ERR_INVALID_ARG_TYPE\",function(t,e,n){var r;typeof e==\"string\"&&NKe(e,\"not \")?(r=\"must not be\",e=e.replace(/^not /,\"\")):r=\"must be\";var o;if(LKe(t,\" argument\"))o=\"The \".concat(t,\" \").concat(r,\" \").concat($xe(e,\"type\"));else{var i=BKe(t,\".\")?\"property\":\"argument\";o=\\'The \"\\'.concat(t,\\'\" \\').concat(i,\" \").concat(r,\" \").concat($xe(e,\"type\"))}return o+=\". Received type \".concat(typeof n),o},TypeError);um(\"ERR_STREAM_PUSH_AFTER_EOF\",\"stream.push() after EOF\");um(\"ERR_METHOD_NOT_IMPLEMENTED\",function(t){return\"The \"+t+\" method is not implemented\"});um(\"ERR_STREAM_PREMATURE_CLOSE\",\"Premature close\");um(\"ERR_STREAM_DESTROYED\",function(t){return\"Cannot call \"+t+\" after a stream was destroyed\"});um(\"ERR_MULTIPLE_CALLBACK\",\"Callback called multiple times\");um(\"ERR_STREAM_CANNOT_PIPE\",\"Cannot pipe, not readable\");um(\"ERR_STREAM_WRITE_AFTER_END\",\"write after end\");um(\"ERR_STREAM_NULL_VALUES\",\"May not write null values to stream\",TypeError);um(\"ERR_UNKNOWN_ENCODING\",function(t){return\"Unknown encoding: \"+t},TypeError);um(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\",\"stream.unshift() after end event\");Gxe.exports.codes=Kxe});var LX=be((Din,Zxe)=>{\"use strict\";p();var DKe=X6().codes.ERR_INVALID_OPT_VALUE;function FKe(t,e,n){return t.highWaterMark!=null?t.highWaterMark:e?t[n]:null}function UKe(t,e,n,r){var o=FKe(e,r,n);if(o!=null){if(!(isFinite(o)&&Math.floor(o)===o)||o<0){var i=r?n:\"highWaterMark\";throw new DKe(i,o)}return Math.floor(o)}return t.objectMode?16:16*1024}Zxe.exports={getHighWaterMark:UKe}});var Qxe=be((Uin,Yxe)=>{p();Yxe.exports=jKe;function jKe(t,e){if(BX(\"noDeprecation\"))return t;var n=!1;function r(){if(!n){if(BX(\"throwDeprecation\"))throw new Error(e);BX(\"traceDeprecation\")?console.trace(e):console.warn(e),n=!0}return t.apply(this,arguments)}return r}function BX(t){try{if(!globalThis.localStorage)return!1}catch{return!1}var e=globalThis.localStorage[t];return e==null?!1:String(e).toLowerCase()===\"true\"}});var UX=be((zin,r3e)=>{\"use strict\";p();r3e.exports=qs;function Xxe(t){var e=this;this.next=null,this.entry=null,this.finish=function(){hGe(e,t)}}var y8;qs.WritableState=kI;var zKe={deprecate:Qxe()},e3e=IX(),pj=Kb().Buffer,HKe=(typeof globalThis<\"u\"?globalThis:typeof window<\"u\"?window:typeof self<\"u\"?self:{}).Uint8Array||function(){};function qKe(t){return pj.from(t)}function WKe(t){return pj.isBuffer(t)||t instanceof HKe}var FX=NX(),VKe=LX(),$Ke=VKe.getHighWaterMark,Ox=X6().codes,KKe=Ox.ERR_INVALID_ARG_TYPE,GKe=Ox.ERR_METHOD_NOT_IMPLEMENTED,ZKe=Ox.ERR_MULTIPLE_CALLBACK,YKe=Ox.ERR_STREAM_CANNOT_PIPE,QKe=Ox.ERR_STREAM_DESTROYED,JKe=Ox.ERR_STREAM_NULL_VALUES,XKe=Ox.ERR_STREAM_WRITE_AFTER_END,eGe=Ox.ERR_UNKNOWN_ENCODING,b8=FX.errorOrDestroy;cm()(qs,e3e);function tGe(){}function kI(t,e,n){y8=y8||eS(),t=t||{},typeof n!=\"boolean\"&&(n=e instanceof y8),this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.writableObjectMode),this.highWaterMark=$Ke(this,t,\"writableHighWaterMark\",n),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var r=t.decodeStrings===!1;this.decodeStrings=!r,this.defaultEncoding=t.defaultEncoding||\"utf8\",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(o){cGe(e,o)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new Xxe(this)}kI.prototype.getBuffer=function(){for(var e=this.bufferedRequest,n=[];e;)n.push(e),e=e.next;return n};(function(){try{Object.defineProperty(kI.prototype,\"buffer\",{get:zKe.deprecate(function(){return this.getBuffer()},\"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.\",\"DEP0003\")})}catch{}})();var hj;typeof Symbol==\"function\"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]==\"function\"?(hj=Function.prototype[Symbol.hasInstance],Object.defineProperty(qs,Symbol.hasInstance,{value:function(e){return hj.call(this,e)?!0:this!==qs?!1:e&&e._writableState instanceof kI}})):hj=function(e){return e instanceof this};function qs(t){y8=y8||eS();var e=this instanceof y8;if(!e&&!hj.call(qs,this))return new qs(t);this._writableState=new kI(t,this,e),this.writable=!0,t&&(typeof t.write==\"function\"&&(this._write=t.write),typeof t.writev==\"function\"&&(this._writev=t.writev),typeof t.destroy==\"function\"&&(this._destroy=t.destroy),typeof t.final==\"function\"&&(this._final=t.final)),e3e.call(this)}qs.prototype.pipe=function(){b8(this,new YKe)};function nGe(t,e){var n=new XKe;b8(t,n),process.nextTick(e,n)}function rGe(t,e,n,r){var o;return n===null?o=new JKe:typeof n!=\"string\"&&!e.objectMode&&(o=new KKe(\"chunk\",[\"string\",\"Buffer\"],n)),o?(b8(t,o),process.nextTick(r,o),!1):!0}qs.prototype.write=function(t,e,n){var r=this._writableState,o=!1,i=!r.objectMode&&WKe(t);return i&&!pj.isBuffer(t)&&(t=qKe(t)),typeof e==\"function\"&&(n=e,e=null),i?e=\"buffer\":e||(e=r.defaultEncoding),typeof n!=\"function\"&&(n=tGe),r.ending?nGe(this,n):(i||rGe(this,r,t,n))&&(r.pendingcb++,o=iGe(this,r,i,t,e,n)),o};qs.prototype.cork=function(){this._writableState.corked++};qs.prototype.uncork=function(){var t=this._writableState;t.corked&&(t.corked--,!t.writing&&!t.corked&&!t.bufferProcessing&&t.bufferedRequest&&t3e(this,t))};qs.prototype.setDefaultEncoding=function(e){if(typeof e==\"string\"&&(e=e.toLowerCase()),!([\"hex\",\"utf8\",\"utf-8\",\"ascii\",\"binary\",\"base64\",\"ucs2\",\"ucs-2\",\"utf16le\",\"utf-16le\",\"raw\"].indexOf((e+\"\").toLowerCase())>-1))throw new eGe(e);return this._writableState.defaultEncoding=e,this};Object.defineProperty(qs.prototype,\"writableBuffer\",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function oGe(t,e,n){return!t.objectMode&&t.decodeStrings!==!1&&typeof e==\"string\"&&(e=pj.from(e,n)),e}Object.defineProperty(qs.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function iGe(t,e,n,r,o,i){if(!n){var a=oGe(e,r,o);r!==a&&(n=!0,o=\"buffer\",r=a)}var c=e.objectMode?1:r.length;e.length+=c;var u=e.length<e.highWaterMark;if(u||(e.needDrain=!0),e.writing||e.corked){var d=e.lastBufferedRequest;e.lastBufferedRequest={chunk:r,encoding:o,isBuf:n,callback:i,next:null},d?d.next=e.lastBufferedRequest:e.bufferedRequest=e.lastBufferedRequest,e.bufferedRequestCount+=1}else DX(t,e,!1,c,r,o,i);return u}function DX(t,e,n,r,o,i,a){e.writelen=r,e.writecb=a,e.writing=!0,e.sync=!0,e.destroyed?e.onwrite(new QKe(\"write\")):n?t._writev(o,e.onwrite):t._write(o,i,e.onwrite),e.sync=!1}function sGe(t,e,n,r,o){--e.pendingcb,n?(process.nextTick(o,r),process.nextTick(SI,t,e),t._writableState.errorEmitted=!0,b8(t,r)):(o(r),t._writableState.errorEmitted=!0,b8(t,r),SI(t,e))}function aGe(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}function cGe(t,e){var n=t._writableState,r=n.sync,o=n.writecb;if(typeof o!=\"function\")throw new ZKe;if(aGe(n),e)sGe(t,n,r,e,o);else{var i=n3e(n)||t.destroyed;!i&&!n.corked&&!n.bufferProcessing&&n.bufferedRequest&&t3e(t,n),r?process.nextTick(Jxe,t,n,i,o):Jxe(t,n,i,o)}}function Jxe(t,e,n,r){n||lGe(t,e),e.pendingcb--,r(),SI(t,e)}function lGe(t,e){e.length===0&&e.needDrain&&(e.needDrain=!1,t.emit(\"drain\"))}function t3e(t,e){e.bufferProcessing=!0;var n=e.bufferedRequest;if(t._writev&&n&&n.next){var r=e.bufferedRequestCount,o=new Array(r),i=e.corkedRequestsFree;i.entry=n;for(var a=0,c=!0;n;)o[a]=n,n.isBuf||(c=!1),n=n.next,a+=1;o.allBuffers=c,DX(t,e,!0,e.length,o,\"\",i.finish),e.pendingcb++,e.lastBufferedRequest=null,i.next?(e.corkedRequestsFree=i.next,i.next=null):e.corkedRequestsFree=new Xxe(e),e.bufferedRequestCount=0}else{for(;n;){var u=n.chunk,d=n.encoding,h=n.callback,m=e.objectMode?1:u.length;if(DX(t,e,!1,m,u,d,h),n=n.next,e.bufferedRequestCount--,e.writing)break}n===null&&(e.lastBufferedRequest=null)}e.bufferedRequest=n,e.bufferProcessing=!1}qs.prototype._write=function(t,e,n){n(new GKe(\"_write()\"))};qs.prototype._writev=null;qs.prototype.end=function(t,e,n){var r=this._writableState;return typeof t==\"function\"?(n=t,t=null,e=null):typeof e==\"function\"&&(n=e,e=null),t!=null&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||fGe(this,r,n),this};Object.defineProperty(qs.prototype,\"writableLength\",{enumerable:!1,get:function(){return this._writableState.length}});function n3e(t){return t.ending&&t.length===0&&t.bufferedRequest===null&&!t.finished&&!t.writing}function uGe(t,e){t._final(function(n){e.pendingcb--,n&&b8(t,n),e.prefinished=!0,t.emit(\"prefinish\"),SI(t,e)})}function dGe(t,e){!e.prefinished&&!e.finalCalled&&(typeof t._final==\"function\"&&!e.destroyed?(e.pendingcb++,e.finalCalled=!0,process.nextTick(uGe,t,e)):(e.prefinished=!0,t.emit(\"prefinish\")))}function SI(t,e){var n=n3e(e);if(n&&(dGe(t,e),e.pendingcb===0&&(e.finished=!0,t.emit(\"finish\"),e.autoDestroy))){var r=t._readableState;(!r||r.autoDestroy&&r.endEmitted)&&t.destroy()}return n}function fGe(t,e,n){e.ending=!0,SI(t,e),n&&(e.finished?process.nextTick(n):t.once(\"finish\",n)),e.ended=!0,t.writable=!1}function hGe(t,e,n){var r=t.entry;for(t.entry=null;r;){var o=r.callback;e.pendingcb--,o(n),r=r.next}e.corkedRequestsFree.next=t}Object.defineProperty(qs.prototype,\"destroyed\",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}});qs.prototype.destroy=FX.destroy;qs.prototype._undestroy=FX.undestroy;qs.prototype._destroy=function(t,e){e(t)}});var eS=be((qin,i3e)=>{\"use strict\";p();var pGe=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};i3e.exports=o1;var o3e=HX(),zX=UX();cm()(o1,o3e);for(jX=pGe(zX.prototype),mj=0;mj<jX.length;mj++)gj=jX[mj],o1.prototype[gj]||(o1.prototype[gj]=zX.prototype[gj]);var jX,gj,mj;function o1(t){if(!(this instanceof o1))return new o1(t);o3e.call(this,t),zX.call(this,t),this.allowHalfOpen=!0,t&&(t.readable===!1&&(this.readable=!1),t.writable===!1&&(this.writable=!1),t.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once(\"end\",mGe)))}Object.defineProperty(o1.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});Object.defineProperty(o1.prototype,\"writableBuffer\",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});Object.defineProperty(o1.prototype,\"writableLength\",{enumerable:!1,get:function(){return this._writableState.length}});function mGe(){this._writableState.ended||process.nextTick(gGe,this)}function gGe(t){t.end()}Object.defineProperty(o1.prototype,\"destroyed\",{enumerable:!1,get:function(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set:function(e){this._readableState===void 0||this._writableState===void 0||(this._readableState.destroyed=e,this._writableState.destroyed=e)}})});var VX=be(a3e=>{\"use strict\";p();var WX=Xy().Buffer,s3e=WX.isEncoding||function(t){switch(t=\"\"+t,t&&t.toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":case\"raw\":return!0;default:return!1}};function yGe(t){if(!t)return\"utf8\";for(var e;;)switch(t){case\"utf8\":case\"utf-8\":return\"utf8\";case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return\"utf16le\";case\"latin1\":case\"binary\":return\"latin1\";case\"base64\":case\"ascii\":case\"hex\":return t;default:if(e)return;t=(\"\"+t).toLowerCase(),e=!0}}function bGe(t){var e=yGe(t);if(typeof e!=\"string\"&&(WX.isEncoding===s3e||!s3e(t)))throw new Error(\"Unknown encoding: \"+t);return e||t}a3e.StringDecoder=_I;function _I(t){this.encoding=bGe(t);var e;switch(this.encoding){case\"utf16le\":this.text=kGe,this.end=_Ge,e=4;break;case\"utf8\":this.fillLast=xGe,e=4;break;case\"base64\":this.text=CGe,this.end=AGe,e=3;break;default:this.write=TGe,this.end=RGe;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=WX.allocUnsafe(e)}_I.prototype.write=function(t){if(t.length===0)return\"\";var e,n;if(this.lastNeed){if(e=this.fillLast(t),e===void 0)return\"\";n=this.lastNeed,this.lastNeed=0}else n=0;return n<t.length?e?e+this.text(t,n):this.text(t,n):e||\"\"};_I.prototype.end=SGe;_I.prototype.text=EGe;_I.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length};function qX(t){return t<=127?0:t>>5===6?2:t>>4===14?3:t>>3===30?4:t>>6===2?-1:-2}function vGe(t,e,n){var r=e.length-1;if(r<n)return 0;var o=qX(e[r]);return o>=0?(o>0&&(t.lastNeed=o-1),o):--r<n||o===-2?0:(o=qX(e[r]),o>=0?(o>0&&(t.lastNeed=o-2),o):--r<n||o===-2?0:(o=qX(e[r]),o>=0?(o>0&&(o===2?o=0:t.lastNeed=o-3),o):0))}function wGe(t,e,n){if((e[0]&192)!==128)return t.lastNeed=0,\"\\\\uFFFD\";if(t.lastNeed>1&&e.length>1){if((e[1]&192)!==128)return t.lastNeed=1,\"\\\\uFFFD\";if(t.lastNeed>2&&e.length>2&&(e[2]&192)!==128)return t.lastNeed=2,\"\\\\uFFFD\"}}function xGe(t){var e=this.lastTotal-this.lastNeed,n=wGe(this,t,e);if(n!==void 0)return n;if(this.lastNeed<=t.length)return t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,e,0,t.length),this.lastNeed-=t.length}function EGe(t,e){var n=vGe(this,t,e);if(!this.lastNeed)return t.toString(\"utf8\",e);this.lastTotal=n;var r=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,r),t.toString(\"utf8\",e,r)}function SGe(t){var e=t&&t.length?this.write(t):\"\";return this.lastNeed?e+\"\\\\uFFFD\":e}function kGe(t,e){if((t.length-e)%2===0){var n=t.toString(\"utf16le\",e);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString(\"utf16le\",e,t.length-1)}function _Ge(t){var e=t&&t.length?this.write(t):\"\";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return e+this.lastChar.toString(\"utf16le\",0,n)}return e}function CGe(t,e){var n=(t.length-e)%3;return n===0?t.toString(\"base64\",e):(this.lastNeed=3-n,this.lastTotal=3,n===1?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString(\"base64\",e,t.length-n))}function AGe(t){var e=t&&t.length?this.write(t):\"\";return this.lastNeed?e+this.lastChar.toString(\"base64\",0,3-this.lastNeed):e}function TGe(t){return t.toString(this.encoding)}function RGe(t){return t&&t.length?this.write(t):\"\"}});var yj=be((Kin,u3e)=>{\"use strict\";p();var c3e=X6().codes.ERR_STREAM_PREMATURE_CLOSE;function IGe(t){var e=!1;return function(){if(!e){e=!0;for(var n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];t.apply(this,r)}}}function OGe(){}function PGe(t){return t.setHeader&&typeof t.abort==\"function\"}function l3e(t,e,n){if(typeof e==\"function\")return l3e(t,null,e);e||(e={}),n=IGe(n||OGe);var r=e.readable||e.readable!==!1&&t.readable,o=e.writable||e.writable!==!1&&t.writable,i=function(){t.writable||c()},a=t._writableState&&t._writableState.finished,c=function(){o=!1,a=!0,r||n.call(t)},u=t._readableState&&t._readableState.endEmitted,d=function(){r=!1,u=!0,o||n.call(t)},h=function(E){n.call(t,E)},m=function(){var E;if(r&&!u)return(!t._readableState||!t._readableState.ended)&&(E=new c3e),n.call(t,E);if(o&&!a)return(!t._writableState||!t._writableState.ended)&&(E=new c3e),n.call(t,E)},g=function(){t.req.on(\"finish\",c)};return PGe(t)?(t.on(\"complete\",c),t.on(\"abort\",m),t.req?g():t.on(\"request\",g)):o&&!t._writableState&&(t.on(\"end\",i),t.on(\"close\",i)),t.on(\"end\",d),t.on(\"finish\",c),e.error!==!1&&t.on(\"error\",h),t.on(\"close\",m),function(){t.removeListener(\"complete\",c),t.removeListener(\"abort\",m),t.removeListener(\"request\",g),t.req&&t.req.removeListener(\"finish\",c),t.removeListener(\"end\",i),t.removeListener(\"close\",i),t.removeListener(\"finish\",c),t.removeListener(\"end\",d),t.removeListener(\"error\",h),t.removeListener(\"close\",m)}}u3e.exports=l3e});var f3e=be((Zin,d3e)=>{\"use strict\";p();var bj;function Px(t,e,n){return e=MGe(e),e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function MGe(t){var e=NGe(t,\"string\");return typeof e==\"symbol\"?e:String(e)}function NGe(t,e){if(typeof t!=\"object\"||t===null)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var r=n.call(t,e||\"default\");if(typeof r!=\"object\")return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(e===\"string\"?String:Number)(t)}var LGe=yj(),Mx=Symbol(\"lastResolve\"),tS=Symbol(\"lastReject\"),CI=Symbol(\"error\"),vj=Symbol(\"ended\"),nS=Symbol(\"lastPromise\"),$X=Symbol(\"handlePromise\"),rS=Symbol(\"stream\");function Nx(t,e){return{value:t,done:e}}function BGe(t){var e=t[Mx];if(e!==null){var n=t[rS].read();n!==null&&(t[nS]=null,t[Mx]=null,t[tS]=null,e(Nx(n,!1)))}}function DGe(t){process.nextTick(BGe,t)}function FGe(t,e){return function(n,r){t.then(function(){if(e[vj]){n(Nx(void 0,!0));return}e[$X](n,r)},r)}}var UGe=Object.getPrototypeOf(function(){}),jGe=Object.setPrototypeOf((bj={get stream(){return this[rS]},next:function(){var e=this,n=this[CI];if(n!==null)return Promise.reject(n);if(this[vj])return Promise.resolve(Nx(void 0,!0));if(this[rS].destroyed)return new Promise(function(a,c){process.nextTick(function(){e[CI]?c(e[CI]):a(Nx(void 0,!0))})});var r=this[nS],o;if(r)o=new Promise(FGe(r,this));else{var i=this[rS].read();if(i!==null)return Promise.resolve(Nx(i,!1));o=new Promise(this[$X])}return this[nS]=o,o}},Px(bj,Symbol.asyncIterator,function(){return this}),Px(bj,\"return\",function(){var e=this;return new Promise(function(n,r){e[rS].destroy(null,function(o){if(o){r(o);return}n(Nx(void 0,!0))})})}),bj),UGe),zGe=function(e){var n,r=Object.create(jGe,(n={},Px(n,rS,{value:e,writable:!0}),Px(n,Mx,{value:null,writable:!0}),Px(n,tS,{value:null,writable:!0}),Px(n,CI,{value:null,writable:!0}),Px(n,vj,{value:e._readableState.endEmitted,writable:!0}),Px(n,$X,{value:function(i,a){var c=r[rS].read();c?(r[nS]=null,r[Mx]=null,r[tS]=null,i(Nx(c,!1))):(r[Mx]=i,r[tS]=a)},writable:!0}),n));return r[nS]=null,LGe(e,function(o){if(o&&o.code!==\"ERR_STREAM_PREMATURE_CLOSE\"){var i=r[tS];i!==null&&(r[nS]=null,r[Mx]=null,r[tS]=null,i(o)),r[CI]=o;return}var a=r[Mx];a!==null&&(r[nS]=null,r[Mx]=null,r[tS]=null,a(Nx(void 0,!0))),r[vj]=!0}),e.on(\"readable\",DGe.bind(null,r)),r};d3e.exports=zGe});var p3e=be((Qin,h3e)=>{p();h3e.exports=function(){throw new Error(\"Readable.from is not available in the browser\")}});var HX=be((esn,k3e)=>{\"use strict\";p();k3e.exports=so;var v8;so.ReadableState=b3e;var Xin=EI().EventEmitter,y3e=function(e,n){return e.listeners(n).length},TI=IX(),wj=Kb().Buffer,HGe=(typeof globalThis<\"u\"?globalThis:typeof window<\"u\"?window:typeof self<\"u\"?self:{}).Uint8Array||function(){};function qGe(t){return wj.from(t)}function WGe(t){return wj.isBuffer(t)||t instanceof HGe}var KX=OX(),Ir;KX&&KX.debuglog?Ir=KX.debuglog(\"stream\"):Ir=function(){};var VGe=qxe(),eee=NX(),$Ge=LX(),KGe=$Ge.getHighWaterMark,xj=X6().codes,GGe=xj.ERR_INVALID_ARG_TYPE,ZGe=xj.ERR_STREAM_PUSH_AFTER_EOF,YGe=xj.ERR_METHOD_NOT_IMPLEMENTED,QGe=xj.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,w8,GX,ZX;cm()(so,TI);var AI=eee.errorOrDestroy,YX=[\"error\",\"close\",\"destroy\",\"pause\",\"resume\"];function JGe(t,e,n){if(typeof t.prependListener==\"function\")return t.prependListener(e,n);!t._events||!t._events[e]?t.on(e,n):Array.isArray(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]}function b3e(t,e,n){v8=v8||eS(),t=t||{},typeof n!=\"boolean\"&&(n=e instanceof v8),this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=KGe(this,t,\"readableHighWaterMark\",n),this.buffer=new VGe,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=t.emitClose!==!1,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||\"utf8\",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(w8||(w8=VX().StringDecoder),this.decoder=new w8(t.encoding),this.encoding=t.encoding)}function so(t){if(v8=v8||eS(),!(this instanceof so))return new so(t);var e=this instanceof v8;this._readableState=new b3e(t,this,e),this.readable=!0,t&&(typeof t.read==\"function\"&&(this._read=t.read),typeof t.destroy==\"function\"&&(this._destroy=t.destroy)),TI.call(this)}Object.defineProperty(so.prototype,\"destroyed\",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}});so.prototype.destroy=eee.destroy;so.prototype._undestroy=eee.undestroy;so.prototype._destroy=function(t,e){e(t)};so.prototype.push=function(t,e){var n=this._readableState,r;return n.objectMode?r=!0:typeof t==\"string\"&&(e=e||n.defaultEncoding,e!==n.encoding&&(t=wj.from(t,e),e=\"\"),r=!0),v3e(this,t,e,!1,r)};so.prototype.unshift=function(t){return v3e(this,t,null,!0,!1)};function v3e(t,e,n,r,o){Ir(\"readableAddChunk\",e);var i=t._readableState;if(e===null)i.reading=!1,tZe(t,i);else{var a;if(o||(a=XGe(i,e)),a)AI(t,a);else if(i.objectMode||e&&e.length>0)if(typeof e!=\"string\"&&!i.objectMode&&Object.getPrototypeOf(e)!==wj.prototype&&(e=qGe(e)),r)i.endEmitted?AI(t,new QGe):QX(t,i,e,!0);else if(i.ended)AI(t,new ZGe);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(e=i.decoder.write(e),i.objectMode||e.length!==0?QX(t,i,e,!1):XX(t,i)):QX(t,i,e,!1)}else r||(i.reading=!1,XX(t,i))}return!i.ended&&(i.length<i.highWaterMark||i.length===0)}function QX(t,e,n,r){e.flowing&&e.length===0&&!e.sync?(e.awaitDrain=0,t.emit(\"data\",n)):(e.length+=e.objectMode?1:n.length,r?e.buffer.unshift(n):e.buffer.push(n),e.needReadable&&Ej(t)),XX(t,e)}function XGe(t,e){var n;return!WGe(e)&&typeof e!=\"string\"&&e!==void 0&&!t.objectMode&&(n=new GGe(\"chunk\",[\"string\",\"Buffer\",\"Uint8Array\"],e)),n}so.prototype.isPaused=function(){return this._readableState.flowing===!1};so.prototype.setEncoding=function(t){w8||(w8=VX().StringDecoder);var e=new w8(t);this._readableState.decoder=e,this._readableState.encoding=this._readableState.decoder.encoding;for(var n=this._readableState.buffer.head,r=\"\";n!==null;)r+=e.write(n.data),n=n.next;return this._readableState.buffer.clear(),r!==\"\"&&this._readableState.buffer.push(r),this._readableState.length=r.length,this};var m3e=1073741824;function eZe(t){return t>=m3e?t=m3e:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}function g3e(t,e){return t<=0||e.length===0&&e.ended?0:e.objectMode?1:t!==t?e.flowing&&e.length?e.buffer.head.data.length:e.length:(t>e.highWaterMark&&(e.highWaterMark=eZe(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}so.prototype.read=function(t){Ir(\"read\",t),t=parseInt(t,10);var e=this._readableState,n=t;if(t!==0&&(e.emittedReadable=!1),t===0&&e.needReadable&&((e.highWaterMark!==0?e.length>=e.highWaterMark:e.length>0)||e.ended))return Ir(\"read: emitReadable\",e.length,e.ended),e.length===0&&e.ended?JX(this):Ej(this),null;if(t=g3e(t,e),t===0&&e.ended)return e.length===0&&JX(this),null;var r=e.needReadable;Ir(\"need readable\",r),(e.length===0||e.length-t<e.highWaterMark)&&(r=!0,Ir(\"length less than watermark\",r)),e.ended||e.reading?(r=!1,Ir(\"reading or ended\",r)):r&&(Ir(\"do read\"),e.reading=!0,e.sync=!0,e.length===0&&(e.needReadable=!0),this._read(e.highWaterMark),e.sync=!1,e.reading||(t=g3e(n,e)));var o;return t>0?o=E3e(t,e):o=null,o===null?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),e.length===0&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&JX(this)),o!==null&&this.emit(\"data\",o),o};function tZe(t,e){if(Ir(\"onEofChunk\"),!e.ended){if(e.decoder){var n=e.decoder.end();n&&n.length&&(e.buffer.push(n),e.length+=e.objectMode?1:n.length)}e.ended=!0,e.sync?Ej(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,w3e(t)))}}function Ej(t){var e=t._readableState;Ir(\"emitReadable\",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(Ir(\"emitReadable\",e.flowing),e.emittedReadable=!0,process.nextTick(w3e,t))}function w3e(t){var e=t._readableState;Ir(\"emitReadable_\",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit(\"readable\"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,tee(t)}function XX(t,e){e.readingMore||(e.readingMore=!0,process.nextTick(nZe,t,e))}function nZe(t,e){for(;!e.reading&&!e.ended&&(e.length<e.highWaterMark||e.flowing&&e.length===0);){var n=e.length;if(Ir(\"maybeReadMore read 0\"),t.read(0),n===e.length)break}e.readingMore=!1}so.prototype._read=function(t){AI(this,new YGe(\"_read()\"))};so.prototype.pipe=function(t,e){var n=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=t;break;case 1:r.pipes=[r.pipes,t];break;default:r.pipes.push(t);break}r.pipesCount+=1,Ir(\"pipe count=%d opts=%j\",r.pipesCount,e);var o=(!e||e.end!==!1)&&t!==process.stdout&&t!==process.stderr,i=o?c:C;r.endEmitted?process.nextTick(i):n.once(\"end\",i),t.on(\"unpipe\",a);function a(T,R){Ir(\"onunpipe\"),T===n&&R&&R.hasUnpiped===!1&&(R.hasUnpiped=!0,h())}function c(){Ir(\"onend\"),t.end()}var u=rZe(n);t.on(\"drain\",u);var d=!1;function h(){Ir(\"cleanup\"),t.removeListener(\"close\",b),t.removeListener(\"finish\",E),t.removeListener(\"drain\",u),t.removeListener(\"error\",g),t.removeListener(\"unpipe\",a),n.removeListener(\"end\",c),n.removeListener(\"end\",C),n.removeListener(\"data\",m),d=!0,r.awaitDrain&&(!t._writableState||t._writableState.needDrain)&&u()}n.on(\"data\",m);function m(T){Ir(\"ondata\");var R=t.write(T);Ir(\"dest.write\",R),R===!1&&((r.pipesCount===1&&r.pipes===t||r.pipesCount>1&&S3e(r.pipes,t)!==-1)&&!d&&(Ir(\"false write response, pause\",r.awaitDrain),r.awaitDrain++),n.pause())}function g(T){Ir(\"onerror\",T),C(),t.removeListener(\"error\",g),y3e(t,\"error\")===0&&AI(t,T)}JGe(t,\"error\",g);function b(){t.removeListener(\"finish\",E),C()}t.once(\"close\",b);function E(){Ir(\"onfinish\"),t.removeListener(\"close\",b),C()}t.once(\"finish\",E);function C(){Ir(\"unpipe\"),n.unpipe(t)}return t.emit(\"pipe\",n),r.flowing||(Ir(\"pipe resume\"),n.resume()),t};function rZe(t){return function(){var n=t._readableState;Ir(\"pipeOnDrain\",n.awaitDrain),n.awaitDrain&&n.awaitDrain--,n.awaitDrain===0&&y3e(t,\"data\")&&(n.flowing=!0,tee(t))}}so.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(e.pipesCount===0)return this;if(e.pipesCount===1)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit(\"unpipe\",this,n),this);if(!t){var r=e.pipes,o=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var i=0;i<o;i++)r[i].emit(\"unpipe\",this,{hasUnpiped:!1});return this}var a=S3e(e.pipes,t);return a===-1?this:(e.pipes.splice(a,1),e.pipesCount-=1,e.pipesCount===1&&(e.pipes=e.pipes[0]),t.emit(\"unpipe\",this,n),this)};so.prototype.on=function(t,e){var n=TI.prototype.on.call(this,t,e),r=this._readableState;return t===\"data\"?(r.readableListening=this.listenerCount(\"readable\")>0,r.flowing!==!1&&this.resume()):t===\"readable\"&&!r.endEmitted&&!r.readableListening&&(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,Ir(\"on readable\",r.length,r.reading),r.length?Ej(this):r.reading||process.nextTick(oZe,this)),n};so.prototype.addListener=so.prototype.on;so.prototype.removeListener=function(t,e){var n=TI.prototype.removeListener.call(this,t,e);return t===\"readable\"&&process.nextTick(x3e,this),n};so.prototype.removeAllListeners=function(t){var e=TI.prototype.removeAllListeners.apply(this,arguments);return(t===\"readable\"||t===void 0)&&process.nextTick(x3e,this),e};function x3e(t){var e=t._readableState;e.readableListening=t.listenerCount(\"readable\")>0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount(\"data\")>0&&t.resume()}function oZe(t){Ir(\"readable nexttick read 0\"),t.read(0)}so.prototype.resume=function(){var t=this._readableState;return t.flowing||(Ir(\"resume\"),t.flowing=!t.readableListening,iZe(this,t)),t.paused=!1,this};function iZe(t,e){e.resumeScheduled||(e.resumeScheduled=!0,process.nextTick(sZe,t,e))}function sZe(t,e){Ir(\"resume\",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit(\"resume\"),tee(t),e.flowing&&!e.reading&&t.read(0)}so.prototype.pause=function(){return Ir(\"call pause flowing=%j\",this._readableState.flowing),this._readableState.flowing!==!1&&(Ir(\"pause\"),this._readableState.flowing=!1,this.emit(\"pause\")),this._readableState.paused=!0,this};function tee(t){var e=t._readableState;for(Ir(\"flow\",e.flowing);e.flowing&&t.read()!==null;);}so.prototype.wrap=function(t){var e=this,n=this._readableState,r=!1;t.on(\"end\",function(){if(Ir(\"wrapped end\"),n.decoder&&!n.ended){var a=n.decoder.end();a&&a.length&&e.push(a)}e.push(null)}),t.on(\"data\",function(a){if(Ir(\"wrapped data\"),n.decoder&&(a=n.decoder.write(a)),!(n.objectMode&&a==null)&&!(!n.objectMode&&(!a||!a.length))){var c=e.push(a);c||(r=!0,t.pause())}});for(var o in t)this[o]===void 0&&typeof t[o]==\"function\"&&(this[o]=function(c){return function(){return t[c].apply(t,arguments)}}(o));for(var i=0;i<YX.length;i++)t.on(YX[i],this.emit.bind(this,YX[i]));return this._read=function(a){Ir(\"wrapped _read\",a),r&&(r=!1,t.resume())},this};typeof Symbol==\"function\"&&(so.prototype[Symbol.asyncIterator]=function(){return GX===void 0&&(GX=f3e()),GX(this)});Object.defineProperty(so.prototype,\"readableHighWaterMark\",{enumerable:!1,get:function(){return this._readableState.highWaterMark}});Object.defineProperty(so.prototype,\"readableBuffer\",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}});Object.defineProperty(so.prototype,\"readableFlowing\",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(e){this._readableState&&(this._readableState.flowing=e)}});so._fromList=E3e;Object.defineProperty(so.prototype,\"readableLength\",{enumerable:!1,get:function(){return this._readableState.length}});function E3e(t,e){if(e.length===0)return null;var n;return e.objectMode?n=e.buffer.shift():!t||t>=e.length?(e.decoder?n=e.buffer.join(\"\"):e.buffer.length===1?n=e.buffer.first():n=e.buffer.concat(e.length),e.buffer.clear()):n=e.buffer.consume(t,e.decoder),n}function JX(t){var e=t._readableState;Ir(\"endReadable\",e.endEmitted),e.endEmitted||(e.ended=!0,process.nextTick(aZe,e,t))}function aZe(t,e){if(Ir(\"endReadableNT\",t.endEmitted,t.length),!t.endEmitted&&t.length===0&&(t.endEmitted=!0,e.readable=!1,e.emit(\"end\"),t.autoDestroy)){var n=e._writableState;(!n||n.autoDestroy&&n.finished)&&e.destroy()}}typeof Symbol==\"function\"&&(so.from=function(t,e){return ZX===void 0&&(ZX=p3e()),ZX(so,t,e)});function S3e(t,e){for(var n=0,r=t.length;n<r;n++)if(t[n]===e)return n;return-1}});var nee=be((nsn,C3e)=>{\"use strict\";p();C3e.exports=Mv;var Sj=X6().codes,cZe=Sj.ERR_METHOD_NOT_IMPLEMENTED,lZe=Sj.ERR_MULTIPLE_CALLBACK,uZe=Sj.ERR_TRANSFORM_ALREADY_TRANSFORMING,dZe=Sj.ERR_TRANSFORM_WITH_LENGTH_0,kj=eS();cm()(Mv,kj);function fZe(t,e){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(r===null)return this.emit(\"error\",new lZe);n.writechunk=null,n.writecb=null,e!=null&&this.push(e),r(t);var o=this._readableState;o.reading=!1,(o.needReadable||o.length<o.highWaterMark)&&this._read(o.highWaterMark)}function Mv(t){if(!(this instanceof Mv))return new Mv(t);kj.call(this,t),this._transformState={afterTransform:fZe.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,t&&(typeof t.transform==\"function\"&&(this._transform=t.transform),typeof t.flush==\"function\"&&(this._flush=t.flush)),this.on(\"prefinish\",hZe)}function hZe(){var t=this;typeof this._flush==\"function\"&&!this._readableState.destroyed?this._flush(function(e,n){_3e(t,e,n)}):_3e(this,null,null)}Mv.prototype.push=function(t,e){return this._transformState.needTransform=!1,kj.prototype.push.call(this,t,e)};Mv.prototype._transform=function(t,e,n){n(new cZe(\"_transform()\"))};Mv.prototype._write=function(t,e,n){var r=this._transformState;if(r.writecb=n,r.writechunk=t,r.writeencoding=e,!r.transforming){var o=this._readableState;(r.needTransform||o.needReadable||o.length<o.highWaterMark)&&this._read(o.highWaterMark)}};Mv.prototype._read=function(t){var e=this._transformState;e.writechunk!==null&&!e.transforming?(e.transforming=!0,this._transform(e.writechunk,e.writeencoding,e.afterTransform)):e.needTransform=!0};Mv.prototype._destroy=function(t,e){kj.prototype._destroy.call(this,t,function(n){e(n)})};function _3e(t,e,n){if(e)return t.emit(\"error\",e);if(n!=null&&t.push(n),t._writableState.length)throw new dZe;if(t._transformState.transforming)throw new uZe;return t.push(null)}});var R3e=be((osn,T3e)=>{\"use strict\";p();T3e.exports=RI;var A3e=nee();cm()(RI,A3e);function RI(t){if(!(this instanceof RI))return new RI(t);A3e.call(this,t)}RI.prototype._transform=function(t,e,n){n(null,t)}});var N3e=be((ssn,M3e)=>{\"use strict\";p();var ree;function pZe(t){var e=!1;return function(){e||(e=!0,t.apply(void 0,arguments))}}var P3e=X6().codes,mZe=P3e.ERR_MISSING_ARGS,gZe=P3e.ERR_STREAM_DESTROYED;function I3e(t){if(t)throw t}function yZe(t){return t.setHeader&&typeof t.abort==\"function\"}function bZe(t,e,n,r){r=pZe(r);var o=!1;t.on(\"close\",function(){o=!0}),ree===void 0&&(ree=yj()),ree(t,{readable:e,writable:n},function(a){if(a)return r(a);o=!0,r()});var i=!1;return function(a){if(!o&&!i){if(i=!0,yZe(t))return t.abort();if(typeof t.destroy==\"function\")return t.destroy();r(a||new gZe(\"pipe\"))}}}function O3e(t){t()}function vZe(t,e){return t.pipe(e)}function wZe(t){return!t.length||typeof t[t.length-1]!=\"function\"?I3e:t.pop()}function xZe(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];var r=wZe(e);if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new mZe(\"streams\");var o,i=e.map(function(a,c){var u=c<e.length-1,d=c>0;return bZe(a,u,d,function(h){o||(o=h),h&&i.forEach(O3e),!u&&(i.forEach(O3e),r(o))})});return e.reduce(vZe)}M3e.exports=xZe});var oee=be((dm,L3e)=>{p();dm=L3e.exports=HX();dm.Stream=dm;dm.Readable=dm;dm.Writable=UX();dm.Duplex=eS();dm.Transform=nee();dm.PassThrough=R3e();dm.finished=yj();dm.pipeline=N3e()});var F3e=be((lsn,D3e)=>{p();var{Transform:EZe}=oee();D3e.exports=t=>class B3e extends EZe{constructor(n,r,o,i,a){super(a),this._rate=n,this._capacity=r,this._delimitedSuffix=o,this._hashBitLength=i,this._options=a,this._state=new t,this._state.initialize(n,r),this._finalized=!1}_transform(n,r,o){let i=null;try{this.update(n,r)}catch(a){i=a}o(i)}_flush(n){let r=null;try{this.push(this.digest())}catch(o){r=o}n(r)}update(n,r){if(!globalThis.Buffer.isBuffer(n)&&typeof n!=\"string\")throw new TypeError(\"Data must be a string or a buffer\");if(this._finalized)throw new Error(\"Digest already called\");return globalThis.Buffer.isBuffer(n)||(n=globalThis.Buffer.from(n,r)),this._state.absorb(n),this}digest(n){if(this._finalized)throw new Error(\"Digest already called\");this._finalized=!0,this._delimitedSuffix&&this._state.absorbLastFewBits(this._delimitedSuffix);let r=this._state.squeeze(this._hashBitLength/8);return n!==void 0&&(r=r.toString(n)),this._resetState(),r}_resetState(){return this._state.initialize(this._rate,this._capacity),this}_clone(){let n=new B3e(this._rate,this._capacity,this._delimitedSuffix,this._hashBitLength,this._options);return this._state.copy(n._state),n._finalized=this._finalized,n}}});var z3e=be((dsn,j3e)=>{p();var{Transform:SZe}=oee();j3e.exports=t=>class U3e extends SZe{constructor(n,r,o,i){super(i),this._rate=n,this._capacity=r,this._delimitedSuffix=o,this._options=i,this._state=new t,this._state.initialize(n,r),this._finalized=!1}_transform(n,r,o){let i=null;try{this.update(n,r)}catch(a){i=a}o(i)}_flush(){}_read(n){this.push(this.squeeze(n))}update(n,r){if(!globalThis.Buffer.isBuffer(n)&&typeof n!=\"string\")throw new TypeError(\"Data must be a string or a buffer\");if(this._finalized)throw new Error(\"Squeeze already called\");return globalThis.Buffer.isBuffer(n)||(n=globalThis.Buffer.from(n,r)),this._state.absorb(n),this}squeeze(n,r){this._finalized||(this._finalized=!0,this._state.absorbLastFewBits(this._delimitedSuffix));let o=this._state.squeeze(n);return r!==void 0&&(o=o.toString(r)),o}_resetState(){return this._state.initialize(this._rate,this._capacity),this}_clone(){let n=new U3e(this._rate,this._capacity,this._delimitedSuffix,this._options);return this._state.copy(n._state),n._finalized=this._finalized,n}}});var q3e=be((hsn,H3e)=>{p();var kZe=F3e(),_Ze=z3e();H3e.exports=function(t){let e=kZe(t),n=_Ze(t);return function(r,o){switch(typeof r==\"string\"?r.toLowerCase():r){case\"keccak224\":return new e(1152,448,null,224,o);case\"keccak256\":return new e(1088,512,null,256,o);case\"keccak384\":return new e(832,768,null,384,o);case\"keccak512\":return new e(576,1024,null,512,o);case\"sha3-224\":return new e(1152,448,6,224,o);case\"sha3-256\":return new e(1088,512,6,256,o);case\"sha3-384\":return new e(832,768,6,384,o);case\"sha3-512\":return new e(576,1024,6,512,o);case\"shake128\":return new n(1344,256,31,o);case\"shake256\":return new n(1088,512,31,o);default:throw new Error(\"Invald algorithm: \"+r)}}}});var $3e=be(V3e=>{p();var W3e=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648];V3e.p1600=function(t){for(let e=0;e<24;++e){let n=t[0]^t[10]^t[20]^t[30]^t[40],r=t[1]^t[11]^t[21]^t[31]^t[41],o=t[2]^t[12]^t[22]^t[32]^t[42],i=t[3]^t[13]^t[23]^t[33]^t[43],a=t[4]^t[14]^t[24]^t[34]^t[44],c=t[5]^t[15]^t[25]^t[35]^t[45],u=t[6]^t[16]^t[26]^t[36]^t[46],d=t[7]^t[17]^t[27]^t[37]^t[47],h=t[8]^t[18]^t[28]^t[38]^t[48],m=t[9]^t[19]^t[29]^t[39]^t[49],g=h^(o<<1|i>>>31),b=m^(i<<1|o>>>31),E=t[0]^g,C=t[1]^b,T=t[10]^g,R=t[11]^b,L=t[20]^g,D=t[21]^b,G=t[30]^g,W=t[31]^b,J=t[40]^g,ne=t[41]^b;g=n^(a<<1|c>>>31),b=r^(c<<1|a>>>31);let ie=t[2]^g,Z=t[3]^b,ae=t[12]^g,V=t[13]^b,$=t[22]^g,F=t[23]^b,_=t[32]^g,O=t[33]^b,z=t[42]^g,N=t[43]^b;g=o^(u<<1|d>>>31),b=i^(d<<1|u>>>31);let B=t[4]^g,j=t[5]^b,q=t[14]^g,H=t[15]^b,I=t[24]^g,U=t[25]^b,X=t[34]^g,ee=t[35]^b,se=t[44]^g,pe=t[45]^b;g=a^(h<<1|m>>>31),b=c^(m<<1|h>>>31);let ye=t[6]^g,xe=t[7]^b,_e=t[16]^g,Me=t[17]^b,qe=t[26]^g,wt=t[27]^b,Ge=t[36]^g,ht=t[37]^b,Ct=t[46]^g,dt=t[47]^b;g=u^(n<<1|r>>>31),b=d^(r<<1|n>>>31);let Ze=t[8]^g,rn=t[9]^b,zt=t[18]^g,Bt=t[19]^b,Mt=t[28]^g,qt=t[29]^b,Wt=t[38]^g,zn=t[39]^b,Mn=t[48]^g,br=t[49]^b,Zs=E,Pr=C,vr=R<<4|T>>>28,hi=T<<4|R>>>28,er=L<<3|D>>>29,wr=D<<3|L>>>29,Ri=W<<9|G>>>23,le=G<<9|W>>>23,Te=J<<18|ne>>>14,xt=ne<<18|J>>>14,tt=ie<<1|Z>>>31,It=Z<<1|ie>>>31,hn=V<<12|ae>>>20,Dt=ae<<12|V>>>20,sn=$<<10|F>>>22,bn=F<<10|$>>>22,Fn=O<<13|_>>>19,en=_<<13|O>>>19,ni=z<<2|N>>>30,jr=N<<2|z>>>30,Eo=j<<30|B>>>2,zu=B<<30|j>>>2,tr=q<<6|H>>>26,dr=H<<6|q>>>26,Bl=U<<11|I>>>21,vn=I<<11|U>>>21,zr=X<<15|ee>>>17,Dd=ee<<15|X>>>17,Mr=pe<<29|se>>>3,So=se<<29|pe>>>3,jt=ye<<28|xe>>>4,xr=xe<<28|ye>>>4,En=Me<<23|_e>>>9,Hu=_e<<23|Me>>>9,Zr=qe<<25|wt>>>7,Cr=wt<<25|qe>>>7,Ys=Ge<<21|ht>>>11,Zc=ht<<21|Ge>>>11,Zo=dt<<24|Ct>>>8,qu=Ct<<24|dt>>>8,ts=Ze<<27|rn>>>5,Wu=rn<<27|Ze>>>5,Yc=zt<<20|Bt>>>12,Ya=Bt<<20|zt>>>12,Qa=qt<<7|Mt>>>25,ya=Mt<<7|qt>>>25,Dl=Wt<<8|zn>>>24,Ja=zn<<8|Wt>>>24,Fl=Mn<<14|br>>>18,Fd=br<<14|Mn>>>18;t[0]=Zs^~hn&Bl,t[1]=Pr^~Dt&vn,t[10]=jt^~Yc&er,t[11]=xr^~Ya&wr,t[20]=tt^~tr&Zr,t[21]=It^~dr&Cr,t[30]=ts^~vr&sn,t[31]=Wu^~hi&bn,t[40]=Eo^~En&Qa,t[41]=zu^~Hu&ya,t[2]=hn^~Bl&Ys,t[3]=Dt^~vn&Zc,t[12]=Yc^~er&Fn,t[13]=Ya^~wr&en,t[22]=tr^~Zr&Dl,t[23]=dr^~Cr&Ja,t[32]=vr^~sn&zr,t[33]=hi^~bn&Dd,t[42]=En^~Qa&Ri,t[43]=Hu^~ya&le,t[4]=Bl^~Ys&Fl,t[5]=vn^~Zc&Fd,t[14]=er^~Fn&Mr,t[15]=wr^~en&So,t[24]=Zr^~Dl&Te,t[25]=Cr^~Ja&xt,t[34]=sn^~zr&Zo,t[35]=bn^~Dd&qu,t[44]=Qa^~Ri&ni,t[45]=ya^~le&jr,t[6]=Ys^~Fl&Zs,t[7]=Zc^~Fd&Pr,t[16]=Fn^~Mr&jt,t[17]=en^~So&xr,t[26]=Dl^~Te&tt,t[27]=Ja^~xt&It,t[36]=zr^~Zo&ts,t[37]=Dd^~qu&Wu,t[46]=Ri^~ni&Eo,t[47]=le^~jr&zu,t[8]=Fl^~Zs&hn,t[9]=Fd^~Pr&Dt,t[18]=Mr^~jt&Yc,t[19]=So^~xr&Ya,t[28]=Te^~tt&tr,t[29]=xt^~It&dr,t[38]=Zo^~ts&vr,t[39]=qu^~Wu&hi,t[48]=ni^~Eo&En,t[49]=jr^~zu&Hu,t[0]^=W3e[e*2],t[1]^=W3e[e*2+1]}}});var G3e=be((ysn,K3e)=>{p();var _j=$3e();function x8(){this.state=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.blockSize=null,this.count=0,this.squeezing=!1}x8.prototype.initialize=function(t,e){for(let n=0;n<50;++n)this.state[n]=0;this.blockSize=t/8,this.count=0,this.squeezing=!1};x8.prototype.absorb=function(t){for(let e=0;e<t.length;++e)this.state[~~(this.count/4)]^=t[e]<<8*(this.count%4),this.count+=1,this.count===this.blockSize&&(_j.p1600(this.state),this.count=0)};x8.prototype.absorbLastFewBits=function(t){this.state[~~(this.count/4)]^=t<<8*(this.count%4),(t&128)!==0&&this.count===this.blockSize-1&&_j.p1600(this.state),this.state[~~((this.blockSize-1)/4)]^=128<<8*((this.blockSize-1)%4),_j.p1600(this.state),this.count=0,this.squeezing=!0};x8.prototype.squeeze=function(t){this.squeezing||this.absorbLastFewBits(1);let e=globalThis.Buffer.alloc(t);for(let n=0;n<t;++n)e[n]=this.state[~~(this.count/4)]>>>8*(this.count%4)&255,this.count+=1,this.count===this.blockSize&&(_j.p1600(this.state),this.count=0);return e};x8.prototype.copy=function(t){for(let e=0;e<50;++e)t.state[e]=this.state[e];t.blockSize=this.blockSize,t.count=this.count,t.squeezing=this.squeezing};K3e.exports=x8});var Y3e=be((vsn,Z3e)=>{p();Z3e.exports=q3e()(G3e())});var iee=be((xsn,tEe)=>{p();var CZe=Y3e(),AZe=q6();function Q3e(t){return globalThis.Buffer.allocUnsafe(t).fill(0)}function J3e(t,e,n){let r=Q3e(e);return t=Cj(t),n?t.length<e?(t.copy(r),r):t.slice(0,e):t.length<e?(t.copy(r,e-t.length),r):t.slice(-e)}function TZe(t,e){return J3e(t,e,!0)}function Cj(t){if(!globalThis.Buffer.isBuffer(t))if(Array.isArray(t))t=globalThis.Buffer.from(t);else if(typeof t==\"string\")X3e(t)?t=globalThis.Buffer.from(OZe(eEe(t)),\"hex\"):t=globalThis.Buffer.from(t);else if(typeof t==\"number\")t=intToBuffer(t);else if(t==null)t=globalThis.Buffer.allocUnsafe(0);else if(AZe.isBN(t))t=t.toArrayLike(globalThis.Buffer);else if(t.toArray)t=globalThis.Buffer.from(t.toArray());else throw new Error(\"invalid type\");return t}function RZe(t){return t=Cj(t),\"0x\"+t.toString(\"hex\")}function IZe(t,e){return t=Cj(t),e||(e=256),CZe(\"keccak\"+e).update(t).digest()}function OZe(t){return t.length%2?\"0\"+t:t}function X3e(t){return typeof t==\"string\"&&t.match(/^0x[0-9A-Fa-f]*$/)}function eEe(t){return typeof t==\"string\"&&t.startsWith(\"0x\")?t.slice(2):t}tEe.exports={zeros:Q3e,setLength:J3e,setLengthRight:TZe,isHexString:X3e,stripHexPrefix:eEe,toBuffer:Cj,bufferToHex:RZe,keccak:IZe}});var aEe=be((Ssn,sEe)=>{p();var sS=iee(),iS=q6();function rEe(t){return t.startsWith(\"int[\")?\"int256\"+t.slice(3):t===\"int\"?\"int256\":t.startsWith(\"uint[\")?\"uint256\"+t.slice(4):t===\"uint\"?\"uint256\":t.startsWith(\"fixed[\")?\"fixed128x128\"+t.slice(5):t===\"fixed\"?\"fixed128x128\":t.startsWith(\"ufixed[\")?\"ufixed128x128\"+t.slice(6):t===\"ufixed\"?\"ufixed128x128\":t}function E8(t){return parseInt(/^\\\\D+(\\\\d+)$/.exec(t)[1],10)}function nEe(t){var e=/^\\\\D+(\\\\d+)x(\\\\d+)$/.exec(t);return[parseInt(e[1],10),parseInt(e[2],10)]}function oEe(t){var e=t.match(/(.*)\\\\[(.*?)\\\\]$/);return e?e[2]===\"\"?\"dynamic\":parseInt(e[2],10):null}function oS(t){var e=typeof t;if(e===\"string\")return sS.isHexString(t)?new iS(sS.stripHexPrefix(t),16):new iS(t,10);if(e===\"number\")return new iS(t);if(t.toArray)return t;throw new Error(\"Argument is not a number\")}function i1(t,e){var n,r,o,i;if(t===\"address\")return i1(\"uint160\",oS(e));if(t===\"bool\")return i1(\"uint8\",e?1:0);if(t===\"string\")return i1(\"bytes\",new globalThis.Buffer(e,\"utf8\"));if(MZe(t)){if(typeof e.length>\"u\")throw new Error(\"Not an array?\");if(n=oEe(t),n!==\"dynamic\"&&n!==0&&e.length>n)throw new Error(\"Elements exceed array size: \"+n);o=[],t=t.slice(0,t.lastIndexOf(\"[\")),typeof e==\"string\"&&(e=JSON.parse(e));for(i in e)o.push(i1(t,e[i]));if(n===\"dynamic\"){var a=i1(\"uint256\",e.length);o.unshift(a)}return globalThis.Buffer.concat(o)}else{if(t===\"bytes\")return e=new globalThis.Buffer(e),o=globalThis.Buffer.concat([i1(\"uint256\",e.length),e]),e.length%32!==0&&(o=globalThis.Buffer.concat([o,sS.zeros(32-e.length%32)])),o;if(t.startsWith(\"bytes\")){if(n=E8(t),n<1||n>32)throw new Error(\"Invalid bytes<N> width: \"+n);return sS.setLengthRight(e,32)}else if(t.startsWith(\"uint\")){if(n=E8(t),n%8||n<8||n>256)throw new Error(\"Invalid uint<N> width: \"+n);if(r=oS(e),r.bitLength()>n)throw new Error(\"Supplied uint exceeds width: \"+n+\" vs \"+r.bitLength());if(r<0)throw new Error(\"Supplied uint is negative\");return r.toArrayLike(globalThis.Buffer,\"be\",32)}else if(t.startsWith(\"int\")){if(n=E8(t),n%8||n<8||n>256)throw new Error(\"Invalid int<N> width: \"+n);if(r=oS(e),r.bitLength()>n)throw new Error(\"Supplied int exceeds width: \"+n+\" vs \"+r.bitLength());return r.toTwos(256).toArrayLike(globalThis.Buffer,\"be\",32)}else if(t.startsWith(\"ufixed\")){if(n=nEe(t),r=oS(e),r<0)throw new Error(\"Supplied ufixed is negative\");return i1(\"uint256\",r.mul(new iS(2).pow(new iS(n[1]))))}else if(t.startsWith(\"fixed\"))return n=nEe(t),i1(\"int256\",oS(e).mul(new iS(2).pow(new iS(n[1]))))}throw new Error(\"Unsupported or invalid type: \"+t)}function PZe(t){return t===\"string\"||t===\"bytes\"||oEe(t)===\"dynamic\"}function MZe(t){return t.lastIndexOf(\"]\")===t.length-1}function NZe(t,e){var n=[],r=[],o=32*t.length;for(var i in t){var a=rEe(t[i]),c=e[i],u=i1(a,c);PZe(a)?(n.push(i1(\"uint256\",o)),r.push(u),o+=u.length):n.push(u)}return globalThis.Buffer.concat(n.concat(r))}function iEe(t,e){if(t.length!==e.length)throw new Error(\"Number of types are not matching the values\");for(var n,r,o=[],i=0;i<t.length;i++){var a=rEe(t[i]),c=e[i];if(a===\"bytes\")o.push(c);else if(a===\"string\")o.push(new globalThis.Buffer(c,\"utf8\"));else if(a===\"bool\")o.push(new globalThis.Buffer(c?\"01\":\"00\",\"hex\"));else if(a===\"address\")o.push(sS.setLength(c,20));else if(a.startsWith(\"bytes\")){if(n=E8(a),n<1||n>32)throw new Error(\"Invalid bytes<N> width: \"+n);o.push(sS.setLengthRight(c,n))}else if(a.startsWith(\"uint\")){if(n=E8(a),n%8||n<8||n>256)throw new Error(\"Invalid uint<N> width: \"+n);if(r=oS(c),r.bitLength()>n)throw new Error(\"Supplied uint exceeds width: \"+n+\" vs \"+r.bitLength());o.push(r.toArrayLike(globalThis.Buffer,\"be\",n/8))}else if(a.startsWith(\"int\")){if(n=E8(a),n%8||n<8||n>256)throw new Error(\"Invalid int<N> width: \"+n);if(r=oS(c),r.bitLength()>n)throw new Error(\"Supplied int exceeds width: \"+n+\" vs \"+r.bitLength());o.push(r.toTwos(n).toArrayLike(globalThis.Buffer,\"be\",n/8))}else throw new Error(\"Unsupported or invalid type: \"+a)}return globalThis.Buffer.concat(o)}function LZe(t,e){return sS.keccak(iEe(t,e))}sEe.exports={rawEncode:NZe,solidityPack:iEe,soliditySHA3:LZe}});var uEe=be((_sn,lEe)=>{p();var ig=iee(),II=aEe(),cEe={type:\"object\",properties:{types:{type:\"object\",additionalProperties:{type:\"array\",items:{type:\"object\",properties:{name:{type:\"string\"},type:{type:\"string\"}},required:[\"name\",\"type\"]}}},primaryType:{type:\"string\"},domain:{type:\"object\"},message:{type:\"object\"}},required:[\"types\",\"primaryType\",\"domain\",\"message\"]},see={encodeData(t,e,n,r=!0){let o=[\"bytes32\"],i=[this.hashType(t,n)];if(r){let a=(c,u,d)=>{if(n[u]!==void 0)return[\"bytes32\",d==null?\"0x0000000000000000000000000000000000000000000000000000000000000000\":ig.keccak(this.encodeData(u,d,n,r))];if(d===void 0)throw new Error(`missing value for field ${c} of type ${u}`);if(u===\"bytes\")return[\"bytes32\",ig.keccak(d)];if(u===\"string\")return typeof d==\"string\"&&(d=globalThis.Buffer.from(d,\"utf8\")),[\"bytes32\",ig.keccak(d)];if(u.lastIndexOf(\"]\")===u.length-1){let h=u.slice(0,u.lastIndexOf(\"[\")),m=d.map(g=>a(c,h,g));return[\"bytes32\",ig.keccak(II.rawEncode(m.map(([g])=>g),m.map(([,g])=>g)))]}return[u,d]};for(let c of n[t]){let[u,d]=a(c.name,c.type,e[c.name]);o.push(u),i.push(d)}}else for(let a of n[t]){let c=e[a.name];if(c!==void 0)if(a.type===\"bytes\")o.push(\"bytes32\"),c=ig.keccak(c),i.push(c);else if(a.type===\"string\")o.push(\"bytes32\"),typeof c==\"string\"&&(c=globalThis.Buffer.from(c,\"utf8\")),c=ig.keccak(c),i.push(c);else if(n[a.type]!==void 0)o.push(\"bytes32\"),c=ig.keccak(this.encodeData(a.type,c,n,r)),i.push(c);else{if(a.type.lastIndexOf(\"]\")===a.type.length-1)throw new Error(\"Arrays currently unimplemented in encodeData\");o.push(a.type),i.push(c)}}return II.rawEncode(o,i)},encodeType(t,e){let n=\"\",r=this.findTypeDependencies(t,e).filter(o=>o!==t);r=[t].concat(r.sort());for(let o of r){if(!e[o])throw new Error(\"No type definition specified: \"+o);n+=o+\"(\"+e[o].map(({name:a,type:c})=>c+\" \"+a).join(\",\")+\")\"}return n},findTypeDependencies(t,e,n=[]){if(t=t.match(/^\\\\w*/)[0],n.includes(t)||e[t]===void 0)return n;n.push(t);for(let r of e[t])for(let o of this.findTypeDependencies(r.type,e,n))!n.includes(o)&&n.push(o);return n},hashStruct(t,e,n,r=!0){return ig.keccak(this.encodeData(t,e,n,r))},hashType(t,e){return ig.keccak(this.encodeType(t,e))},sanitizeData(t){let e={};for(let n in cEe.properties)t[n]&&(e[n]=t[n]);return e.types&&(e.types=Object.assign({EIP712Domain:[]},e.types)),e},hash(t,e=!0){let n=this.sanitizeData(t),r=[globalThis.Buffer.from(\"1901\",\"hex\")];return r.push(this.hashStruct(\"EIP712Domain\",n.domain,n.types,e)),n.primaryType!==\"EIP712Domain\"&&r.push(this.hashStruct(n.primaryType,n.message,n.types,e)),ig.keccak(globalThis.Buffer.concat(r))}};lEe.exports={TYPED_MESSAGE_SCHEMA:cEe,TypedDataUtils:see,hashForSignTypedDataLegacy:function(t){return BZe(t.data)},hashForSignTypedData_v3:function(t){return see.hash(t.data,!1)},hashForSignTypedData_v4:function(t){return see.hash(t.data)}};function BZe(t){let e=new Error(\"Expect argument to be non-empty array\");if(typeof t!=\"object\"||!t.length)throw e;let n=t.map(function(i){return i.type===\"bytes\"?ig.toBuffer(i.value):i.value}),r=t.map(function(i){return i.type}),o=t.map(function(i){if(!i.name)throw e;return i.type+\" \"+i.name});return II.soliditySHA3([\"bytes32\",\"bytes32\"],[II.soliditySHA3(new Array(t.length).fill(\"string\"),o),II.soliditySHA3(r,n)])}});var mEe=be(k8=>{\"use strict\";p();Object.defineProperty(k8,\"__esModule\",{value:!0});k8.filterFromParam=k8.FilterPolyfill=void 0;var S8=pI(),xd=Yy(),DZe=5*60*1e3,aS={jsonrpc:\"2.0\",id:0},aee=class{constructor(e){this.logFilters=new Map,this.blockFilters=new Set,this.pendingTransactionFilters=new Set,this.cursors=new Map,this.timeouts=new Map,this.nextFilterId=(0,S8.IntNumber)(1),this.REQUEST_THROTTLE_INTERVAL=1e3,this.lastFetchTimestamp=new Date(0),this.resolvers=[],this.provider=e}async newFilter(e){let n=pEe(e),r=this.makeFilterId(),o=await this.setInitialCursorPosition(r,n.fromBlock);return console.info(`Installing new log filter(${r}):`,n,\"initial cursor position:\",o),this.logFilters.set(r,n),this.setFilterTimeout(r),(0,xd.hexStringFromIntNumber)(r)}async newBlockFilter(){let e=this.makeFilterId(),n=await this.setInitialCursorPosition(e,\"latest\");return console.info(`Installing new block filter (${e}) with initial cursor position:`,n),this.blockFilters.add(e),this.setFilterTimeout(e),(0,xd.hexStringFromIntNumber)(e)}async newPendingTransactionFilter(){let e=this.makeFilterId(),n=await this.setInitialCursorPosition(e,\"latest\");return console.info(`Installing new block filter (${e}) with initial cursor position:`,n),this.pendingTransactionFilters.add(e),this.setFilterTimeout(e),(0,xd.hexStringFromIntNumber)(e)}uninstallFilter(e){let n=(0,xd.intNumberFromHexString)(e);return console.info(`Uninstalling filter (${n})`),this.deleteFilter(n),!0}getFilterChanges(e){let n=(0,xd.intNumberFromHexString)(e);return this.timeouts.has(n)&&this.setFilterTimeout(n),this.logFilters.has(n)?this.getLogFilterChanges(n):this.blockFilters.has(n)?this.getBlockFilterChanges(n):this.pendingTransactionFilters.has(n)?this.getPendingTransactionFilterChanges(n):Promise.resolve(Aj())}async getFilterLogs(e){let n=(0,xd.intNumberFromHexString)(e),r=this.logFilters.get(n);return r?this.sendAsyncPromise(Object.assign(Object.assign({},aS),{method:\"eth_getLogs\",params:[dEe(r)]})):Aj()}makeFilterId(){return(0,S8.IntNumber)(++this.nextFilterId)}sendAsyncPromise(e){return new Promise((n,r)=>{this.provider.sendAsync(e,(o,i)=>{if(o)return r(o);if(Array.isArray(i)||i==null)return r(new Error(`unexpected response received: ${JSON.stringify(i)}`));n(i)})})}deleteFilter(e){console.info(`Deleting filter (${e})`),this.logFilters.delete(e),this.blockFilters.delete(e),this.pendingTransactionFilters.delete(e),this.cursors.delete(e),this.timeouts.delete(e)}async getLogFilterChanges(e){let n=this.logFilters.get(e),r=this.cursors.get(e);if(!r||!n)return Aj();let o=await this.getCurrentBlockHeight(),i=n.toBlock===\"latest\"?o:n.toBlock;if(r>o||r>Number(n.toBlock))return Tj();console.info(`Fetching logs from ${r} to ${i} for filter ${e}`);let a=await this.sendAsyncPromise(Object.assign(Object.assign({},aS),{method:\"eth_getLogs\",params:[dEe(Object.assign(Object.assign({},n),{fromBlock:r,toBlock:i}))]}));if(Array.isArray(a.result)){let c=a.result.map(d=>(0,xd.intNumberFromHexString)(d.blockNumber||\"0x0\")),u=Math.max(...c);if(u&&u>r){let d=(0,S8.IntNumber)(u+1);console.info(`Moving cursor position for filter (${e}) from ${r} to ${d}`),this.cursors.set(e,d)}}return a}async getBlockFilterChanges(e){let n=this.cursors.get(e);if(!n)return Aj();let r=await this.getCurrentBlockHeight();if(n>r)return Tj();console.info(`Fetching blocks from ${n} to ${r} for filter (${e})`);let o=(await Promise.all((0,xd.range)(n,r+1).map(a=>this.getBlockHashByNumber((0,S8.IntNumber)(a))))).filter(a=>!!a),i=(0,S8.IntNumber)(n+o.length);return console.info(`Moving cursor position for filter (${e}) from ${n} to ${i}`),this.cursors.set(e,i),Object.assign(Object.assign({},aS),{result:o})}async getPendingTransactionFilterChanges(e){return Promise.resolve(Tj())}async setInitialCursorPosition(e,n){let r=await this.getCurrentBlockHeight(),o=typeof n==\"number\"&&n>r?n:r;return this.cursors.set(e,o),o}setFilterTimeout(e){let n=this.timeouts.get(e);n&&window.clearTimeout(n);let r=window.setTimeout(()=>{console.info(`Filter (${e}) timed out`),this.deleteFilter(e)},DZe);this.timeouts.set(e,r)}async getCurrentBlockHeight(){let e=new Date;if(e.getTime()-this.lastFetchTimestamp.getTime()>this.REQUEST_THROTTLE_INTERVAL){this.lastFetchTimestamp=e;let n=await this._getCurrentBlockHeight();this.currentBlockHeight=n,this.resolvers.forEach(r=>r(n)),this.resolvers=[]}return this.currentBlockHeight?this.currentBlockHeight:new Promise(n=>this.resolvers.push(n))}async _getCurrentBlockHeight(){let{result:e}=await this.sendAsyncPromise(Object.assign(Object.assign({},aS),{method:\"eth_blockNumber\",params:[]}));return(0,xd.intNumberFromHexString)((0,xd.ensureHexString)(e))}async getBlockHashByNumber(e){let n=await this.sendAsyncPromise(Object.assign(Object.assign({},aS),{method:\"eth_getBlockByNumber\",params:[(0,xd.hexStringFromIntNumber)(e),!1]}));return n.result&&typeof n.result.hash==\"string\"?(0,xd.ensureHexString)(n.result.hash):null}};k8.FilterPolyfill=aee;function pEe(t){return{fromBlock:fEe(t.fromBlock),toBlock:fEe(t.toBlock),addresses:t.address===void 0?null:Array.isArray(t.address)?t.address:[t.address],topics:t.topics||[]}}k8.filterFromParam=pEe;function dEe(t){let e={fromBlock:hEe(t.fromBlock),toBlock:hEe(t.toBlock),topics:t.topics};return t.addresses!==null&&(e.address=t.addresses),e}function fEe(t){if(t===void 0||t===\"latest\"||t===\"pending\")return\"latest\";if(t===\"earliest\")return(0,S8.IntNumber)(0);if((0,xd.isHexString)(t))return(0,xd.intNumberFromHexString)(t);throw new Error(`Invalid block option: ${String(t)}`)}function hEe(t){return t===\"latest\"?t:(0,xd.hexStringFromIntNumber)(t)}function Aj(){return Object.assign(Object.assign({},aS),{error:{code:-32e3,message:\"filter not found\"}})}function Tj(){return Object.assign(Object.assign({},aS),{result:[]})}});var Rj=be((Rsn,gEe)=>{p();gEe.exports=FZe;function FZe(t){t=t||{};var e=t.max||Number.MAX_SAFE_INTEGER,n=typeof t.start<\"u\"?t.start:Math.floor(Math.random()*e);return function(){return n=n%e,n++}}});var vEe=be((Osn,bEe)=>{\"use strict\";p();var yEe=(t,e)=>function(){let n=e.promiseModule,r=new Array(arguments.length);for(let o=0;o<arguments.length;o++)r[o]=arguments[o];return new n((o,i)=>{e.errorFirst?r.push(function(a,c){if(e.multiArgs){let u=new Array(arguments.length-1);for(let d=1;d<arguments.length;d++)u[d-1]=arguments[d];a?(u.unshift(a),i(u)):o(u)}else a?i(a):o(c)}):r.push(function(a){if(e.multiArgs){let c=new Array(arguments.length-1);for(let u=0;u<arguments.length;u++)c[u]=arguments[u];o(c)}else o(a)}),t.apply(this,r)})};bEe.exports=(t,e)=>{e=Object.assign({exclude:[/.+(Sync|Stream)$/],errorFirst:!0,promiseModule:Promise},e);let n=o=>{let i=a=>typeof a==\"string\"?o===a:a.test(o);return e.include?e.include.some(i):!e.exclude.some(i)},r;typeof t==\"function\"?r=function(){return e.excludeMain?t.apply(this,arguments):yEe(t,e).apply(this,arguments)}:r=Object.create(Object.getPrototypeOf(t));for(let o in t){let i=t[o];r[o]=typeof i==\"function\"&&n(o)?yEe(i,e):i}return r}});var Ij=be(lee=>{\"use strict\";p();Object.defineProperty(lee,\"__esModule\",{value:!0});var UZe=EI();function wEe(t,e,n){try{Reflect.apply(t,e,n)}catch(r){setTimeout(()=>{throw r})}}function jZe(t){let e=t.length,n=new Array(e);for(let r=0;r<e;r+=1)n[r]=t[r];return n}var cee=class extends UZe.EventEmitter{emit(e,...n){let r=e===\"error\",o=this._events;if(o!==void 0)r=r&&o.error===void 0;else if(!r)return!1;if(r){let a;if(n.length>0&&([a]=n),a instanceof Error)throw a;let c=new Error(`Unhandled error.${a?` (${a.message})`:\"\"}`);throw c.context=a,c}let i=o[e];if(i===void 0)return!1;if(typeof i==\"function\")wEe(i,this,n);else{let a=i.length,c=jZe(i);for(let u=0;u<a;u+=1)wEe(c[u],this,n)}return!0}};lee.default=cee});var dee=be(_8=>{\"use strict\";p();var zZe=_8&&_8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_8,\"__esModule\",{value:!0});_8.BaseBlockTracker=void 0;var HZe=zZe(Ij()),qZe=1e3,WZe=(t,e)=>t+e,xEe=[\"sync\",\"latest\"],uee=class extends HZe.default{constructor(e){super(),this._blockResetDuration=e.blockResetDuration||20*qZe,this._usePastBlocks=e.usePastBlocks||!1,this._currentBlock=null,this._isRunning=!1,this._onNewListener=this._onNewListener.bind(this),this._onRemoveListener=this._onRemoveListener.bind(this),this._resetCurrentBlock=this._resetCurrentBlock.bind(this),this._setupInternalEvents()}async destroy(){this._cancelBlockResetTimeout(),await this._maybeEnd(),super.removeAllListeners()}isRunning(){return this._isRunning}getCurrentBlock(){return this._currentBlock}async getLatestBlock(){return this._currentBlock?this._currentBlock:await new Promise(n=>this.once(\"latest\",n))}removeAllListeners(e){return e?super.removeAllListeners(e):super.removeAllListeners(),this._setupInternalEvents(),this._onRemoveListener(),this}_setupInternalEvents(){this.removeListener(\"newListener\",this._onNewListener),this.removeListener(\"removeListener\",this._onRemoveListener),this.on(\"newListener\",this._onNewListener),this.on(\"removeListener\",this._onRemoveListener)}_onNewListener(e){xEe.includes(e)&&this._maybeStart()}_onRemoveListener(){this._getBlockTrackerEventCount()>0||this._maybeEnd()}async _maybeStart(){this._isRunning||(this._isRunning=!0,this._cancelBlockResetTimeout(),await this._start(),this.emit(\"_started\"))}async _maybeEnd(){this._isRunning&&(this._isRunning=!1,this._setupBlockResetTimeout(),await this._end(),this.emit(\"_ended\"))}_getBlockTrackerEventCount(){return xEe.map(e=>this.listenerCount(e)).reduce(WZe)}_shouldUseNewBlock(e){let n=this._currentBlock;if(!n)return!0;let r=EEe(e),o=EEe(n);return this._usePastBlocks&&r<o||r>o}_newPotentialLatest(e){this._shouldUseNewBlock(e)&&this._setCurrentBlock(e)}_setCurrentBlock(e){let n=this._currentBlock;this._currentBlock=e,this.emit(\"latest\",e),this.emit(\"sync\",{oldBlock:n,newBlock:e})}_setupBlockResetTimeout(){this._cancelBlockResetTimeout(),this._blockResetTimeout=setTimeout(this._resetCurrentBlock,this._blockResetDuration),this._blockResetTimeout.unref&&this._blockResetTimeout.unref()}_cancelBlockResetTimeout(){this._blockResetTimeout&&clearTimeout(this._blockResetTimeout)}_resetCurrentBlock(){this._currentBlock=null}};_8.BaseBlockTracker=uee;function EEe(t){return Number.parseInt(t,16)}});var Lx={};ld(Lx,{Struct:()=>Cs,StructError:()=>Oj,any:()=>nYe,array:()=>rYe,assert:()=>kEe,assign:()=>GZe,bigint:()=>oYe,boolean:()=>iYe,coerce:()=>gee,create:()=>_Ee,date:()=>sYe,defaulted:()=>xYe,define:()=>kf,deprecated:()=>ZZe,dynamic:()=>YZe,empty:()=>SYe,enums:()=>aYe,func:()=>cYe,instance:()=>lYe,integer:()=>uYe,intersection:()=>dYe,is:()=>pee,lazy:()=>QZe,literal:()=>fYe,map:()=>hYe,mask:()=>CEe,max:()=>kYe,min:()=>_Ye,never:()=>mee,nonempty:()=>CYe,nullable:()=>pYe,number:()=>mYe,object:()=>OI,omit:()=>JZe,optional:()=>AEe,partial:()=>XZe,pattern:()=>AYe,pick:()=>eYe,record:()=>gYe,refine:()=>cS,regexp:()=>yYe,set:()=>bYe,size:()=>TYe,string:()=>TEe,struct:()=>tYe,trimmed:()=>EYe,tuple:()=>vYe,type:()=>PI,union:()=>wYe,unknown:()=>REe,validate:()=>C8});function VZe(t){return fm(t)&&typeof t[Symbol.iterator]==\"function\"}function fm(t){return typeof t==\"object\"&&t!=null}function SEe(t){if(Object.prototype.toString.call(t)!==\"[object Object]\")return!1;let e=Object.getPrototypeOf(t);return e===null||e===Object.prototype}function gc(t){return typeof t==\"symbol\"?t.toString():typeof t==\"string\"?JSON.stringify(t):`${t}`}function $Ze(t){let{done:e,value:n}=t.next();return e?void 0:n}function KZe(t,e,n,r){if(t===!0)return;t===!1?t={}:typeof t==\"string\"&&(t={message:t});let{path:o,branch:i}=e,{type:a}=n,{refinement:c,message:u=`Expected a value of type \\\\`${a}\\\\`${c?` with refinement \\\\`${c}\\\\``:\"\"}, but received: \\\\`${gc(r)}\\\\``}=t;return{value:r,type:a,refinement:c,key:o[o.length-1],path:o,branch:i,...t,message:u}}function*fee(t,e,n,r){VZe(t)||(t=[t]);for(let o of t){let i=KZe(o,e,n,r);i&&(yield i)}}function*hee(t,e,n={}){let{path:r=[],branch:o=[t],coerce:i=!1,mask:a=!1}=n,c={path:r,branch:o};if(i&&(t=e.coercer(t,c),a&&e.type!==\"type\"&&fm(e.schema)&&fm(t)&&!Array.isArray(t)))for(let d in t)e.schema[d]===void 0&&delete t[d];let u=\"valid\";for(let d of e.validator(t,c))d.explanation=n.message,u=\"not_valid\",yield[d,void 0];for(let[d,h,m]of e.entries(t,c)){let g=hee(h,m,{path:d===void 0?r:[...r,d],branch:d===void 0?o:[...o,h],coerce:i,mask:a,message:n.message});for(let b of g)b[0]?(u=b[0].refinement!=null?\"not_refined\":\"not_valid\",yield[b[0],void 0]):i&&(h=b[1],d===void 0?t=h:t instanceof Map?t.set(d,h):t instanceof Set?t.add(h):fm(t)&&(h!==void 0||d in t)&&(t[d]=h))}if(u!==\"not_valid\")for(let d of e.refiner(t,c))d.explanation=n.message,u=\"not_refined\",yield[d,void 0];u===\"valid\"&&(yield[void 0,t])}function kEe(t,e,n){let r=C8(t,e,{message:n});if(r[0])throw r[0]}function _Ee(t,e,n){let r=C8(t,e,{coerce:!0,message:n});if(r[0])throw r[0];return r[1]}function CEe(t,e,n){let r=C8(t,e,{coerce:!0,mask:!0,message:n});if(r[0])throw r[0];return r[1]}function pee(t,e){return!C8(t,e)[0]}function C8(t,e,n={}){let r=hee(t,e,n),o=$Ze(r);return o[0]?[new Oj(o[0],function*(){for(let a of r)a[0]&&(yield a[0])}),void 0]:[void 0,o[1]]}function GZe(...t){let e=t[0].type===\"type\",n=t.map(o=>o.schema),r=Object.assign({},...n);return e?PI(r):OI(r)}function kf(t,e){return new Cs({type:t,schema:null,validator:e})}function ZZe(t,e){return new Cs({...t,refiner:(n,r)=>n===void 0||t.refiner(n,r),validator(n,r){return n===void 0?!0:(e(n,r),t.validator(n,r))}})}function YZe(t){return new Cs({type:\"dynamic\",schema:null,*entries(e,n){yield*t(e,n).entries(e,n)},validator(e,n){return t(e,n).validator(e,n)},coercer(e,n){return t(e,n).coercer(e,n)},refiner(e,n){return t(e,n).refiner(e,n)}})}function QZe(t){let e;return new Cs({type:\"lazy\",schema:null,*entries(n,r){e??(e=t()),yield*e.entries(n,r)},validator(n,r){return e??(e=t()),e.validator(n,r)},coercer(n,r){return e??(e=t()),e.coercer(n,r)},refiner(n,r){return e??(e=t()),e.refiner(n,r)}})}function JZe(t,e){let{schema:n}=t,r={...n};for(let o of e)delete r[o];switch(t.type){case\"type\":return PI(r);default:return OI(r)}}function XZe(t){let e=t instanceof Cs,n=e?{...t.schema}:{...t};for(let r in n)n[r]=AEe(n[r]);return e&&t.type===\"type\"?PI(n):OI(n)}function eYe(t,e){let{schema:n}=t,r={};for(let o of e)r[o]=n[o];switch(t.type){case\"type\":return PI(r);default:return OI(r)}}function tYe(t,e){return console.warn(\"superstruct@0.11 - The `struct` helper has been renamed to `define`.\"),kf(t,e)}function nYe(){return kf(\"any\",()=>!0)}function rYe(t){return new Cs({type:\"array\",schema:t,*entries(e){if(t&&Array.isArray(e))for(let[n,r]of e.entries())yield[n,r,t]},coercer(e){return Array.isArray(e)?e.slice():e},validator(e){return Array.isArray(e)||`Expected an array value, but received: ${gc(e)}`}})}function oYe(){return kf(\"bigint\",t=>typeof t==\"bigint\")}function iYe(){return kf(\"boolean\",t=>typeof t==\"boolean\")}function sYe(){return kf(\"date\",t=>t instanceof Date&&!isNaN(t.getTime())||`Expected a valid \\\\`Date\\\\` object, but received: ${gc(t)}`)}function aYe(t){let e={},n=t.map(r=>gc(r)).join();for(let r of t)e[r]=r;return new Cs({type:\"enums\",schema:e,validator(r){return t.includes(r)||`Expected one of \\\\`${n}\\\\`, but received: ${gc(r)}`}})}function cYe(){return kf(\"func\",t=>typeof t==\"function\"||`Expected a function, but received: ${gc(t)}`)}function lYe(t){return kf(\"instance\",e=>e instanceof t||`Expected a \\\\`${t.name}\\\\` instance, but received: ${gc(e)}`)}function uYe(){return kf(\"integer\",t=>typeof t==\"number\"&&!isNaN(t)&&Number.isInteger(t)||`Expected an integer, but received: ${gc(t)}`)}function dYe(t){return new Cs({type:\"intersection\",schema:null,*entries(e,n){for(let r of t)yield*r.entries(e,n)},*validator(e,n){for(let r of t)yield*r.validator(e,n)},*refiner(e,n){for(let r of t)yield*r.refiner(e,n)}})}function fYe(t){let e=gc(t),n=typeof t;return new Cs({type:\"literal\",schema:n===\"string\"||n===\"number\"||n===\"boolean\"?t:null,validator(r){return r===t||`Expected the literal \\\\`${e}\\\\`, but received: ${gc(r)}`}})}function hYe(t,e){return new Cs({type:\"map\",schema:null,*entries(n){if(t&&e&&n instanceof Map)for(let[r,o]of n.entries())yield[r,r,t],yield[r,o,e]},coercer(n){return n instanceof Map?new Map(n):n},validator(n){return n instanceof Map||`Expected a \\\\`Map\\\\` object, but received: ${gc(n)}`}})}function mee(){return kf(\"never\",()=>!1)}function pYe(t){return new Cs({...t,validator:(e,n)=>e===null||t.validator(e,n),refiner:(e,n)=>e===null||t.refiner(e,n)})}function mYe(){return kf(\"number\",t=>typeof t==\"number\"&&!isNaN(t)||`Expected a number, but received: ${gc(t)}`)}function OI(t){let e=t?Object.keys(t):[],n=mee();return new Cs({type:\"object\",schema:t||null,*entries(r){if(t&&fm(r)){let o=new Set(Object.keys(r));for(let i of e)o.delete(i),yield[i,r[i],t[i]];for(let i of o)yield[i,r[i],n]}},validator(r){return fm(r)||`Expected an object, but received: ${gc(r)}`},coercer(r){return fm(r)?{...r}:r}})}function AEe(t){return new Cs({...t,validator:(e,n)=>e===void 0||t.validator(e,n),refiner:(e,n)=>e===void 0||t.refiner(e,n)})}function gYe(t,e){return new Cs({type:\"record\",schema:null,*entries(n){if(fm(n))for(let r in n){let o=n[r];yield[r,r,t],yield[r,o,e]}},validator(n){return fm(n)||`Expected an object, but received: ${gc(n)}`}})}function yYe(){return kf(\"regexp\",t=>t instanceof RegExp)}function bYe(t){return new Cs({type:\"set\",schema:null,*entries(e){if(t&&e instanceof Set)for(let n of e)yield[n,n,t]},coercer(e){return e instanceof Set?new Set(e):e},validator(e){return e instanceof Set||`Expected a \\\\`Set\\\\` object, but received: ${gc(e)}`}})}function TEe(){return kf(\"string\",t=>typeof t==\"string\"||`Expected a string, but received: ${gc(t)}`)}function vYe(t){let e=mee();return new Cs({type:\"tuple\",schema:null,*entries(n){if(Array.isArray(n)){let r=Math.max(t.length,n.length);for(let o=0;o<r;o++)yield[o,n[o],t[o]||e]}},validator(n){return Array.isArray(n)||`Expected an array, but received: ${gc(n)}`}})}function PI(t){let e=Object.keys(t);return new Cs({type:\"type\",schema:t,*entries(n){if(fm(n))for(let r of e)yield[r,n[r],t[r]]},validator(n){return fm(n)||`Expected an object, but received: ${gc(n)}`},coercer(n){return fm(n)?{...n}:n}})}function wYe(t){let e=t.map(n=>n.type).join(\" | \");return new Cs({type:\"union\",schema:null,coercer(n){for(let r of t){let[o,i]=r.validate(n,{coerce:!0});if(!o)return i}return n},validator(n,r){let o=[];for(let i of t){let[...a]=hee(n,i,r),[c]=a;if(c[0])for(let[u]of a)u&&o.push(u);else return[]}return[`Expected the value to satisfy a union of \\\\`${e}\\\\`, but received: ${gc(n)}`,...o]}})}function REe(){return kf(\"unknown\",()=>!0)}function gee(t,e,n){return new Cs({...t,coercer:(r,o)=>pee(r,e)?t.coercer(n(r,o),o):t.coercer(r,o)})}function xYe(t,e,n={}){return gee(t,REe(),r=>{let o=typeof e==\"function\"?e():e;if(r===void 0)return o;if(!n.strict&&SEe(r)&&SEe(o)){let i={...r},a=!1;for(let c in o)i[c]===void 0&&(i[c]=o[c],a=!0);if(a)return i}return r})}function EYe(t){return gee(t,TEe(),e=>e.trim())}function SYe(t){return cS(t,\"empty\",e=>{let n=IEe(e);return n===0||`Expected an empty ${t.type} but received one with a size of \\\\`${n}\\\\``})}function IEe(t){return t instanceof Map||t instanceof Set?t.size:t.length}function kYe(t,e,n={}){let{exclusive:r}=n;return cS(t,\"max\",o=>r?o<e:o<=e||`Expected a ${t.type} less than ${r?\"\":\"or equal to \"}${e} but received \\\\`${o}\\\\``)}function _Ye(t,e,n={}){let{exclusive:r}=n;return cS(t,\"min\",o=>r?o>e:o>=e||`Expected a ${t.type} greater than ${r?\"\":\"or equal to \"}${e} but received \\\\`${o}\\\\``)}function CYe(t){return cS(t,\"nonempty\",e=>IEe(e)>0||`Expected a nonempty ${t.type} but received an empty one`)}function AYe(t,e){return cS(t,\"pattern\",n=>e.test(n)||`Expected a ${t.type} matching \\\\`/${e.source}/\\\\` but received \"${n}\"`)}function TYe(t,e,n=e){let r=`Expected a ${t.type}`,o=e===n?`of \\\\`${e}\\\\``:`between \\\\`${e}\\\\` and \\\\`${n}\\\\``;return cS(t,\"size\",i=>{if(typeof i==\"number\"||i instanceof Date)return e<=i&&i<=n||`${r} ${o} but received \\\\`${i}\\\\``;if(i instanceof Map||i instanceof Set){let{size:a}=i;return e<=a&&a<=n||`${r} with a size ${o} but received one with a size of \\\\`${a}\\\\``}else{let{length:a}=i;return e<=a&&a<=n||`${r} with a length ${o} but received one with a length of \\\\`${a}\\\\``}})}function cS(t,e,n){return new Cs({...t,*refiner(r,o){yield*t.refiner(r,o);let i=n(r,o),a=fee(i,o,t,r);for(let c of a)yield{...c,refinement:e}}})}var Oj,Cs,Bx=ce(()=>{p();Oj=class extends TypeError{constructor(e,n){let r,{message:o,explanation:i,...a}=e,{path:c}=e,u=c.length===0?o:`At path: ${c.join(\".\")} -- ${o}`;super(i??u),i!=null&&(this.cause=u),Object.assign(this,a),this.name=this.constructor.name,this.failures=()=>r??(r=[e,...n()])}};Cs=class{constructor(e){let{type:n,schema:r,validator:o,refiner:i,coercer:a=u=>u,entries:c=function*(){}}=e;this.type=n,this.schema=r,this.entries=c,this.coercer=a,o?this.validator=(u,d)=>{let h=o(u,d);return fee(h,d,this,u)}:this.validator=()=>[],i?this.refiner=(u,d)=>{let h=i(u,d);return fee(h,d,this,u)}:this.refiner=()=>[]}assert(e,n){return kEe(e,this,n)}create(e,n){return _Ee(e,this,n)}is(e){return pee(e,this)}mask(e,n){return CEe(e,this,n)}validate(e,n={}){return C8(e,this,n)}}});var Nv=be(s1=>{\"use strict\";p();Object.defineProperty(s1,\"__esModule\",{value:!0});s1.assertExhaustive=s1.assertStruct=s1.assert=s1.AssertionError=void 0;var RYe=(Bx(),go(Lx));function IYe(t){return typeof t==\"object\"&&t!==null&&\"message\"in t}function OYe(t){var e,n;return typeof((n=(e=t?.prototype)===null||e===void 0?void 0:e.constructor)===null||n===void 0?void 0:n.name)==\"string\"}function PYe(t){let e=IYe(t)?t.message:String(t);return e.endsWith(\".\")?e.slice(0,-1):e}function OEe(t,e){return OYe(t)?new t({message:e}):t({message:e})}var MI=class extends Error{constructor(e){super(e.message),this.code=\"ERR_ASSERTION\"}};s1.AssertionError=MI;function MYe(t,e=\"Assertion failed.\",n=MI){if(!t)throw e instanceof Error?e:OEe(n,e)}s1.assert=MYe;function NYe(t,e,n=\"Assertion failed\",r=MI){try{(0,RYe.assert)(t,e)}catch(o){throw OEe(r,`${n}: ${PYe(o)}.`)}}s1.assertStruct=NYe;function LYe(t){throw new Error(\"Invalid branch reached. Should be detected during compilation.\")}s1.assertExhaustive=LYe});var yee=be(Pj=>{\"use strict\";p();Object.defineProperty(Pj,\"__esModule\",{value:!0});Pj.base64=void 0;var BYe=(Bx(),go(Lx)),DYe=Nv(),FYe=(t,e={})=>{var n,r;let o=(n=e.paddingRequired)!==null&&n!==void 0?n:!1,i=(r=e.characterSet)!==null&&r!==void 0?r:\"base64\",a;i===\"base64\"?a=String.raw`[A-Za-z0-9+\\\\/]`:((0,DYe.assert)(i===\"base64url\"),a=String.raw`[-_A-Za-z0-9]`);let c;return o?c=new RegExp(`^(?:${a}{4})*(?:${a}{3}=|${a}{2}==)?$`,\"u\"):c=new RegExp(`^(?:${a}{4})*(?:${a}{2,3}|${a}{3}=|${a}{2}==)?$`,\"u\"),(0,BYe.pattern)(t,c)};Pj.base64=FYe});var NI=be(Va=>{\"use strict\";p();Object.defineProperty(Va,\"__esModule\",{value:!0});Va.remove0x=Va.add0x=Va.assertIsStrictHexString=Va.assertIsHexString=Va.isStrictHexString=Va.isHexString=Va.StrictHexStruct=Va.HexStruct=void 0;var A8=(Bx(),go(Lx)),PEe=Nv();Va.HexStruct=(0,A8.pattern)((0,A8.string)(),/^(?:0x)?[0-9a-f]+$/iu);Va.StrictHexStruct=(0,A8.pattern)((0,A8.string)(),/^0x[0-9a-f]+$/iu);function MEe(t){return(0,A8.is)(t,Va.HexStruct)}Va.isHexString=MEe;function NEe(t){return(0,A8.is)(t,Va.StrictHexStruct)}Va.isStrictHexString=NEe;function UYe(t){(0,PEe.assert)(MEe(t),\"Value must be a hexadecimal string.\")}Va.assertIsHexString=UYe;function jYe(t){(0,PEe.assert)(NEe(t),\\'Value must be a hexadecimal string, starting with \"0x\".\\')}Va.assertIsStrictHexString=jYe;function zYe(t){return t.startsWith(\"0x\")?t:t.startsWith(\"0X\")?`0x${t.substring(2)}`:`0x${t}`}Va.add0x=zYe;function HYe(t){return t.startsWith(\"0x\")||t.startsWith(\"0X\")?t.substring(2):t}Va.remove0x=HYe});var wee=be(vo=>{\"use strict\";p();Object.defineProperty(vo,\"__esModule\",{value:!0});vo.createDataView=vo.concatBytes=vo.valueToBytes=vo.stringToBytes=vo.numberToBytes=vo.signedBigIntToBytes=vo.bigIntToBytes=vo.hexToBytes=vo.bytesToString=vo.bytesToNumber=vo.bytesToSignedBigInt=vo.bytesToBigInt=vo.bytesToHex=vo.assertIsBytes=vo.isBytes=void 0;var Ch=Nv(),bee=NI(),LEe=48,BEe=58,DEe=87;function qYe(){let t=[];return()=>{if(t.length===0)for(let e=0;e<256;e++)t.push(e.toString(16).padStart(2,\"0\"));return t}}var WYe=qYe();function vee(t){return t instanceof Uint8Array}vo.isBytes=vee;function T8(t){(0,Ch.assert)(vee(t),\"Value must be a Uint8Array.\")}vo.assertIsBytes=T8;function FEe(t){if(T8(t),t.length===0)return\"0x\";let e=WYe(),n=new Array(t.length);for(let r=0;r<t.length;r++)n[r]=e[t[r]];return(0,bee.add0x)(n.join(\"\"))}vo.bytesToHex=FEe;function UEe(t){T8(t);let e=FEe(t);return BigInt(e)}vo.bytesToBigInt=UEe;function VYe(t){T8(t);let e=BigInt(0);for(let n of t)e=(e<<BigInt(8))+BigInt(n);return BigInt.asIntN(t.length*8,e)}vo.bytesToSignedBigInt=VYe;function $Ye(t){T8(t);let e=UEe(t);return(0,Ch.assert)(e<=BigInt(Number.MAX_SAFE_INTEGER),\"Number is not a safe integer. Use `bytesToBigInt` instead.\"),Number(e)}vo.bytesToNumber=$Ye;function KYe(t){return T8(t),new TextDecoder().decode(t)}vo.bytesToString=KYe;function Mj(t){var e;if(((e=t?.toLowerCase)===null||e===void 0?void 0:e.call(t))===\"0x\")return new Uint8Array;(0,bee.assertIsHexString)(t);let n=(0,bee.remove0x)(t).toLowerCase(),r=n.length%2===0?n:`0${n}`,o=new Uint8Array(r.length/2);for(let i=0;i<o.length;i++){let a=r.charCodeAt(i*2),c=r.charCodeAt(i*2+1),u=a-(a<BEe?LEe:DEe),d=c-(c<BEe?LEe:DEe);o[i]=u*16+d}return o}vo.hexToBytes=Mj;function jEe(t){(0,Ch.assert)(typeof t==\"bigint\",\"Value must be a bigint.\"),(0,Ch.assert)(t>=BigInt(0),\"Value must be a non-negative bigint.\");let e=t.toString(16);return Mj(e)}vo.bigIntToBytes=jEe;function GYe(t,e){(0,Ch.assert)(e>0);let n=t>>BigInt(31);return!((~t&n)+(t&~n)>>BigInt(e*8+-1))}function ZYe(t,e){(0,Ch.assert)(typeof t==\"bigint\",\"Value must be a bigint.\"),(0,Ch.assert)(typeof e==\"number\",\"Byte length must be a number.\"),(0,Ch.assert)(e>0,\"Byte length must be greater than 0.\"),(0,Ch.assert)(GYe(t,e),\"Byte length is too small to represent the given value.\");let n=t,r=new Uint8Array(e);for(let o=0;o<r.length;o++)r[o]=Number(BigInt.asUintN(8,n)),n>>=BigInt(8);return r.reverse()}vo.signedBigIntToBytes=ZYe;function zEe(t){(0,Ch.assert)(typeof t==\"number\",\"Value must be a number.\"),(0,Ch.assert)(t>=0,\"Value must be a non-negative number.\"),(0,Ch.assert)(Number.isSafeInteger(t),\"Value is not a safe integer. Use `bigIntToBytes` instead.\");let e=t.toString(16);return Mj(e)}vo.numberToBytes=zEe;function HEe(t){return(0,Ch.assert)(typeof t==\"string\",\"Value must be a string.\"),new TextEncoder().encode(t)}vo.stringToBytes=HEe;function qEe(t){if(typeof t==\"bigint\")return jEe(t);if(typeof t==\"number\")return zEe(t);if(typeof t==\"string\")return t.startsWith(\"0x\")?Mj(t):HEe(t);if(vee(t))return t;throw new TypeError(`Unsupported value type: \"${typeof t}\".`)}vo.valueToBytes=qEe;function YYe(t){let e=new Array(t.length),n=0;for(let o=0;o<t.length;o++){let i=qEe(t[o]);e[o]=i,n+=i.length}let r=new Uint8Array(n);for(let o=0,i=0;o<e.length;o++)r.set(e[o],i),i+=e[o].length;return r}vo.concatBytes=YYe;function QYe(t){if(typeof globalThis.Buffer<\"u\"&&t instanceof globalThis.Buffer){let e=t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);return new DataView(e)}return new DataView(t.buffer,t.byteOffset,t.byteLength)}vo.createDataView=QYe});var VEe=be(Nj=>{\"use strict\";p();Object.defineProperty(Nj,\"__esModule\",{value:!0});Nj.ChecksumStruct=void 0;var WEe=(Bx(),go(Lx)),JYe=yee();Nj.ChecksumStruct=(0,WEe.size)((0,JYe.base64)((0,WEe.string)(),{paddingRequired:!0}),44,44)});var GEe=be(a1=>{\"use strict\";p();Object.defineProperty(a1,\"__esModule\",{value:!0});a1.createHex=a1.createBytes=a1.createBigInt=a1.createNumber=void 0;var As=(Bx(),go(Lx)),XYe=Nv(),$Ee=wee(),Lj=NI(),KEe=(0,As.union)([(0,As.number)(),(0,As.bigint)(),(0,As.string)(),Lj.StrictHexStruct]),eQe=(0,As.coerce)((0,As.number)(),KEe,Number),tQe=(0,As.coerce)((0,As.bigint)(),KEe,BigInt),Gsn=(0,As.union)([Lj.StrictHexStruct,(0,As.instance)(Uint8Array)]),nQe=(0,As.coerce)((0,As.instance)(Uint8Array),(0,As.union)([Lj.StrictHexStruct]),$Ee.hexToBytes),rQe=(0,As.coerce)(Lj.StrictHexStruct,(0,As.instance)(Uint8Array),$Ee.bytesToHex);function oQe(t){try{let e=(0,As.create)(t,eQe);return(0,XYe.assert)(Number.isFinite(e),`Expected a number-like value, got \"${t}\".`),e}catch(e){throw e instanceof As.StructError?new Error(`Expected a number-like value, got \"${t}\".`):e}}a1.createNumber=oQe;function iQe(t){try{return(0,As.create)(t,tQe)}catch(e){throw e instanceof As.StructError?new Error(`Expected a number-like value, got \"${String(e.value)}\".`):e}}a1.createBigInt=iQe;function sQe(t){if(typeof t==\"string\"&&t.toLowerCase()===\"0x\")return new Uint8Array;try{return(0,As.create)(t,nQe)}catch(e){throw e instanceof As.StructError?new Error(`Expected a bytes-like value, got \"${String(e.value)}\".`):e}}a1.createBytes=sQe;function aQe(t){if(t instanceof Uint8Array&&t.length===0||typeof t==\"string\"&&t.toLowerCase()===\"0x\")return\"0x\";try{return(0,As.create)(t,rQe)}catch(e){throw e instanceof As.StructError?new Error(`Expected a bytes-like value, got \"${String(e.value)}\".`):e}}a1.createHex=aQe});var YEe=be(l1=>{\"use strict\";p();var ZEe=l1&&l1.__classPrivateFieldSet||function(t,e,n,r,o){if(r===\"m\")throw new TypeError(\"Private method is not writable\");if(r===\"a\"&&!o)throw new TypeError(\"Private accessor was defined without a setter\");if(typeof e==\"function\"?t!==e||!o:!e.has(t))throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");return r===\"a\"?o.call(t,n):o?o.value=n:e.set(t,n),n},Ed=l1&&l1.__classPrivateFieldGet||function(t,e,n,r){if(n===\"a\"&&!r)throw new TypeError(\"Private accessor was defined without a getter\");if(typeof e==\"function\"?t!==e||!r:!e.has(t))throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");return n===\"m\"?r:n===\"a\"?r.call(t):r?r.value:e.get(t)},sg,c1;Object.defineProperty(l1,\"__esModule\",{value:!0});l1.FrozenSet=l1.FrozenMap=void 0;var LI=class{constructor(e){sg.set(this,void 0),ZEe(this,sg,new Map(e),\"f\"),Object.freeze(this)}get size(){return Ed(this,sg,\"f\").size}[(sg=new WeakMap,Symbol.iterator)](){return Ed(this,sg,\"f\")[Symbol.iterator]()}entries(){return Ed(this,sg,\"f\").entries()}forEach(e,n){return Ed(this,sg,\"f\").forEach((r,o,i)=>e.call(n,r,o,this))}get(e){return Ed(this,sg,\"f\").get(e)}has(e){return Ed(this,sg,\"f\").has(e)}keys(){return Ed(this,sg,\"f\").keys()}values(){return Ed(this,sg,\"f\").values()}toString(){return`FrozenMap(${this.size}) {${this.size>0?` ${[...this.entries()].map(([e,n])=>`${String(e)} => ${String(n)}`).join(\", \")} `:\"\"}}`}};l1.FrozenMap=LI;var BI=class{constructor(e){c1.set(this,void 0),ZEe(this,c1,new Set(e),\"f\"),Object.freeze(this)}get size(){return Ed(this,c1,\"f\").size}[(c1=new WeakMap,Symbol.iterator)](){return Ed(this,c1,\"f\")[Symbol.iterator]()}entries(){return Ed(this,c1,\"f\").entries()}forEach(e,n){return Ed(this,c1,\"f\").forEach((r,o,i)=>e.call(n,r,o,this))}has(e){return Ed(this,c1,\"f\").has(e)}keys(){return Ed(this,c1,\"f\").keys()}values(){return Ed(this,c1,\"f\").values()}toString(){return`FrozenSet(${this.size}) {${this.size>0?` ${[...this.values()].map(e=>String(e)).join(\", \")} `:\"\"}}`}};l1.FrozenSet=BI;Object.freeze(LI);Object.freeze(LI.prototype);Object.freeze(BI);Object.freeze(BI.prototype)});var JEe=be(QEe=>{\"use strict\";p();Object.defineProperty(QEe,\"__esModule\",{value:!0})});var XEe=be(kt=>{\"use strict\";p();Object.defineProperty(kt,\"__esModule\",{value:!0});kt.getJsonRpcIdValidator=kt.assertIsJsonRpcError=kt.isJsonRpcError=kt.assertIsJsonRpcFailure=kt.isJsonRpcFailure=kt.assertIsJsonRpcSuccess=kt.isJsonRpcSuccess=kt.assertIsJsonRpcResponse=kt.isJsonRpcResponse=kt.assertIsPendingJsonRpcResponse=kt.isPendingJsonRpcResponse=kt.JsonRpcResponseStruct=kt.JsonRpcFailureStruct=kt.JsonRpcSuccessStruct=kt.PendingJsonRpcResponseStruct=kt.assertIsJsonRpcRequest=kt.isJsonRpcRequest=kt.assertIsJsonRpcNotification=kt.isJsonRpcNotification=kt.JsonRpcNotificationStruct=kt.JsonRpcRequestStruct=kt.JsonRpcParamsStruct=kt.JsonRpcErrorStruct=kt.JsonRpcIdStruct=kt.JsonRpcVersionStruct=kt.jsonrpc2=kt.getJsonSize=kt.isValidJson=kt.JsonStruct=kt.UnsafeJsonStruct=void 0;var Nn=(Bx(),go(Lx)),Dx=Nv(),cQe=()=>(0,Nn.define)(\"finite number\",t=>(0,Nn.is)(t,(0,Nn.number)())&&Number.isFinite(t));kt.UnsafeJsonStruct=(0,Nn.union)([(0,Nn.literal)(null),(0,Nn.boolean)(),cQe(),(0,Nn.string)(),(0,Nn.array)((0,Nn.lazy)(()=>kt.UnsafeJsonStruct)),(0,Nn.record)((0,Nn.string)(),(0,Nn.lazy)(()=>kt.UnsafeJsonStruct))]);kt.JsonStruct=(0,Nn.define)(\"Json\",(t,e)=>{function n(r,o){let a=[...o.validator(r,e)];return a.length>0?a:!0}try{let r=n(t,kt.UnsafeJsonStruct);return r!==!0?r:n(JSON.parse(JSON.stringify(t)),kt.UnsafeJsonStruct)}catch(r){return r instanceof RangeError?\"Circular reference detected\":!1}});function lQe(t){return(0,Nn.is)(t,kt.JsonStruct)}kt.isValidJson=lQe;function uQe(t){(0,Dx.assertStruct)(t,kt.JsonStruct,\"Invalid JSON value\");let e=JSON.stringify(t);return new TextEncoder().encode(e).byteLength}kt.getJsonSize=uQe;kt.jsonrpc2=\"2.0\";kt.JsonRpcVersionStruct=(0,Nn.literal)(kt.jsonrpc2);kt.JsonRpcIdStruct=(0,Nn.nullable)((0,Nn.union)([(0,Nn.number)(),(0,Nn.string)()]));kt.JsonRpcErrorStruct=(0,Nn.object)({code:(0,Nn.integer)(),message:(0,Nn.string)(),data:(0,Nn.optional)(kt.JsonStruct),stack:(0,Nn.optional)((0,Nn.string)())});kt.JsonRpcParamsStruct=(0,Nn.optional)((0,Nn.union)([(0,Nn.record)((0,Nn.string)(),kt.JsonStruct),(0,Nn.array)(kt.JsonStruct)]));kt.JsonRpcRequestStruct=(0,Nn.object)({id:kt.JsonRpcIdStruct,jsonrpc:kt.JsonRpcVersionStruct,method:(0,Nn.string)(),params:kt.JsonRpcParamsStruct});kt.JsonRpcNotificationStruct=(0,Nn.omit)(kt.JsonRpcRequestStruct,[\"id\"]);function dQe(t){return(0,Nn.is)(t,kt.JsonRpcNotificationStruct)}kt.isJsonRpcNotification=dQe;function fQe(t,e){(0,Dx.assertStruct)(t,kt.JsonRpcNotificationStruct,\"Invalid JSON-RPC notification\",e)}kt.assertIsJsonRpcNotification=fQe;function hQe(t){return(0,Nn.is)(t,kt.JsonRpcRequestStruct)}kt.isJsonRpcRequest=hQe;function pQe(t,e){(0,Dx.assertStruct)(t,kt.JsonRpcRequestStruct,\"Invalid JSON-RPC request\",e)}kt.assertIsJsonRpcRequest=pQe;kt.PendingJsonRpcResponseStruct=(0,Nn.object)({id:kt.JsonRpcIdStruct,jsonrpc:kt.JsonRpcVersionStruct,result:(0,Nn.optional)((0,Nn.unknown)()),error:(0,Nn.optional)(kt.JsonRpcErrorStruct)});kt.JsonRpcSuccessStruct=(0,Nn.object)({id:kt.JsonRpcIdStruct,jsonrpc:kt.JsonRpcVersionStruct,result:kt.JsonStruct});kt.JsonRpcFailureStruct=(0,Nn.object)({id:kt.JsonRpcIdStruct,jsonrpc:kt.JsonRpcVersionStruct,error:kt.JsonRpcErrorStruct});kt.JsonRpcResponseStruct=(0,Nn.union)([kt.JsonRpcSuccessStruct,kt.JsonRpcFailureStruct]);function mQe(t){return(0,Nn.is)(t,kt.PendingJsonRpcResponseStruct)}kt.isPendingJsonRpcResponse=mQe;function gQe(t,e){(0,Dx.assertStruct)(t,kt.PendingJsonRpcResponseStruct,\"Invalid pending JSON-RPC response\",e)}kt.assertIsPendingJsonRpcResponse=gQe;function yQe(t){return(0,Nn.is)(t,kt.JsonRpcResponseStruct)}kt.isJsonRpcResponse=yQe;function bQe(t,e){(0,Dx.assertStruct)(t,kt.JsonRpcResponseStruct,\"Invalid JSON-RPC response\",e)}kt.assertIsJsonRpcResponse=bQe;function vQe(t){return(0,Nn.is)(t,kt.JsonRpcSuccessStruct)}kt.isJsonRpcSuccess=vQe;function wQe(t,e){(0,Dx.assertStruct)(t,kt.JsonRpcSuccessStruct,\"Invalid JSON-RPC success response\",e)}kt.assertIsJsonRpcSuccess=wQe;function xQe(t){return(0,Nn.is)(t,kt.JsonRpcFailureStruct)}kt.isJsonRpcFailure=xQe;function EQe(t,e){(0,Dx.assertStruct)(t,kt.JsonRpcFailureStruct,\"Invalid JSON-RPC failure response\",e)}kt.assertIsJsonRpcFailure=EQe;function SQe(t){return(0,Nn.is)(t,kt.JsonRpcErrorStruct)}kt.isJsonRpcError=SQe;function kQe(t,e){(0,Dx.assertStruct)(t,kt.JsonRpcErrorStruct,\"Invalid JSON-RPC error\",e)}kt.assertIsJsonRpcError=kQe;function _Qe(t){let{permitEmptyString:e,permitFractions:n,permitNull:r}=Object.assign({permitEmptyString:!0,permitFractions:!1,permitNull:!0},t);return i=>!!(typeof i==\"number\"&&(n||Number.isInteger(i))||typeof i==\"string\"&&(e||i.length>0)||r&&i===null)}kt.getJsonRpcIdValidator=_Qe});var t5e=be(e5e=>{\"use strict\";p();Object.defineProperty(e5e,\"__esModule\",{value:!0})});var r5e=be((ian,n5e)=>{p();var R8=1e3,I8=R8*60,O8=I8*60,lS=O8*24,CQe=lS*7,AQe=lS*365.25;n5e.exports=function(t,e){e=e||{};var n=typeof t;if(n===\"string\"&&t.length>0)return TQe(t);if(n===\"number\"&&isFinite(t))return e.long?IQe(t):RQe(t);throw new Error(\"val is not a non-empty string or a valid number. val=\"+JSON.stringify(t))};function TQe(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\\\\d+)?\\\\.?\\\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var n=parseFloat(e[1]),r=(e[2]||\"ms\").toLowerCase();switch(r){case\"years\":case\"year\":case\"yrs\":case\"yr\":case\"y\":return n*AQe;case\"weeks\":case\"week\":case\"w\":return n*CQe;case\"days\":case\"day\":case\"d\":return n*lS;case\"hours\":case\"hour\":case\"hrs\":case\"hr\":case\"h\":return n*O8;case\"minutes\":case\"minute\":case\"mins\":case\"min\":case\"m\":return n*I8;case\"seconds\":case\"second\":case\"secs\":case\"sec\":case\"s\":return n*R8;case\"milliseconds\":case\"millisecond\":case\"msecs\":case\"msec\":case\"ms\":return n;default:return}}}}function RQe(t){var e=Math.abs(t);return e>=lS?Math.round(t/lS)+\"d\":e>=O8?Math.round(t/O8)+\"h\":e>=I8?Math.round(t/I8)+\"m\":e>=R8?Math.round(t/R8)+\"s\":t+\"ms\"}function IQe(t){var e=Math.abs(t);return e>=lS?Bj(t,e,lS,\"day\"):e>=O8?Bj(t,e,O8,\"hour\"):e>=I8?Bj(t,e,I8,\"minute\"):e>=R8?Bj(t,e,R8,\"second\"):t+\" ms\"}function Bj(t,e,n,r){var o=e>=n*1.5;return Math.round(t/n)+\" \"+r+(o?\"s\":\"\")}});var i5e=be((aan,o5e)=>{p();function OQe(t){n.debug=n,n.default=n,n.coerce=u,n.disable=a,n.enable=o,n.enabled=c,n.humanize=r5e(),n.destroy=d,Object.keys(t).forEach(h=>{n[h]=t[h]}),n.names=[],n.skips=[],n.formatters={};function e(h){let m=0;for(let g=0;g<h.length;g++)m=(m<<5)-m+h.charCodeAt(g),m|=0;return n.colors[Math.abs(m)%n.colors.length]}n.selectColor=e;function n(h){let m,g=null,b,E;function C(...T){if(!C.enabled)return;let R=C,L=Number(new Date),D=L-(m||L);R.diff=D,R.prev=m,R.curr=L,m=L,T[0]=n.coerce(T[0]),typeof T[0]!=\"string\"&&T.unshift(\"%O\");let G=0;T[0]=T[0].replace(/%([a-zA-Z%])/g,(J,ne)=>{if(J===\"%%\")return\"%\";G++;let ie=n.formatters[ne];if(typeof ie==\"function\"){let Z=T[G];J=ie.call(R,Z),T.splice(G,1),G--}return J}),n.formatArgs.call(R,T),(R.log||n.log).apply(R,T)}return C.namespace=h,C.useColors=n.useColors(),C.color=n.selectColor(h),C.extend=r,C.destroy=n.destroy,Object.defineProperty(C,\"enabled\",{enumerable:!0,configurable:!1,get:()=>g!==null?g:(b!==n.namespaces&&(b=n.namespaces,E=n.enabled(h)),E),set:T=>{g=T}}),typeof n.init==\"function\"&&n.init(C),C}function r(h,m){let g=n(this.namespace+(typeof m>\"u\"?\":\":m)+h);return g.log=this.log,g}function o(h){n.save(h),n.namespaces=h,n.names=[],n.skips=[];let m=(typeof h==\"string\"?h:\"\").trim().replace(/\\\\s+/g,\",\").split(\",\").filter(Boolean);for(let g of m)g[0]===\"-\"?n.skips.push(g.slice(1)):n.names.push(g)}function i(h,m){let g=0,b=0,E=-1,C=0;for(;g<h.length;)if(b<m.length&&(m[b]===h[g]||m[b]===\"*\"))m[b]===\"*\"?(E=b,C=g,b++):(g++,b++);else if(E!==-1)b=E+1,C++,g=C;else return!1;for(;b<m.length&&m[b]===\"*\";)b++;return b===m.length}function a(){let h=[...n.names,...n.skips.map(m=>\"-\"+m)].join(\",\");return n.enable(\"\"),h}function c(h){for(let m of n.skips)if(i(h,m))return!1;for(let m of n.names)if(i(h,m))return!0;return!1}function u(h){return h instanceof Error?h.stack||h.message:h}function d(){console.warn(\"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.\")}return n.enable(n.load()),n}o5e.exports=OQe});var xee=be((_f,Dj)=>{p();_f.formatArgs=MQe;_f.save=NQe;_f.load=LQe;_f.useColors=PQe;_f.storage=BQe();_f.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn(\"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.\"))}})();_f.colors=[\"#0000CC\",\"#0000FF\",\"#0033CC\",\"#0033FF\",\"#0066CC\",\"#0066FF\",\"#0099CC\",\"#0099FF\",\"#00CC00\",\"#00CC33\",\"#00CC66\",\"#00CC99\",\"#00CCCC\",\"#00CCFF\",\"#3300CC\",\"#3300FF\",\"#3333CC\",\"#3333FF\",\"#3366CC\",\"#3366FF\",\"#3399CC\",\"#3399FF\",\"#33CC00\",\"#33CC33\",\"#33CC66\",\"#33CC99\",\"#33CCCC\",\"#33CCFF\",\"#6600CC\",\"#6600FF\",\"#6633CC\",\"#6633FF\",\"#66CC00\",\"#66CC33\",\"#9900CC\",\"#9900FF\",\"#9933CC\",\"#9933FF\",\"#99CC00\",\"#99CC33\",\"#CC0000\",\"#CC0033\",\"#CC0066\",\"#CC0099\",\"#CC00CC\",\"#CC00FF\",\"#CC3300\",\"#CC3333\",\"#CC3366\",\"#CC3399\",\"#CC33CC\",\"#CC33FF\",\"#CC6600\",\"#CC6633\",\"#CC9900\",\"#CC9933\",\"#CCCC00\",\"#CCCC33\",\"#FF0000\",\"#FF0033\",\"#FF0066\",\"#FF0099\",\"#FF00CC\",\"#FF00FF\",\"#FF3300\",\"#FF3333\",\"#FF3366\",\"#FF3399\",\"#FF33CC\",\"#FF33FF\",\"#FF6600\",\"#FF6633\",\"#FF9900\",\"#FF9933\",\"#FFCC00\",\"#FFCC33\"];function PQe(){if(typeof window<\"u\"&&window.process&&(window.process.type===\"renderer\"||window.process.__nwjs))return!0;if(typeof navigator<\"u\"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\\\\/(\\\\d+)/))return!1;let t;return typeof document<\"u\"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<\"u\"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<\"u\"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\\\\/(\\\\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<\"u\"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\\\\/(\\\\d+)/)}function MQe(t){if(t[0]=(this.useColors?\"%c\":\"\")+this.namespace+(this.useColors?\" %c\":\" \")+t[0]+(this.useColors?\"%c \":\" \")+\"+\"+Dj.exports.humanize(this.diff),!this.useColors)return;let e=\"color: \"+this.color;t.splice(1,0,e,\"color: inherit\");let n=0,r=0;t[0].replace(/%[a-zA-Z%]/g,o=>{o!==\"%%\"&&(n++,o===\"%c\"&&(r=n))}),t.splice(r,0,e)}_f.log=console.debug||console.log||(()=>{});function NQe(t){try{t?_f.storage.setItem(\"debug\",t):_f.storage.removeItem(\"debug\")}catch{}}function LQe(){let t;try{t=_f.storage.getItem(\"debug\")||_f.storage.getItem(\"DEBUG\")}catch{}return!t&&typeof process<\"u\"&&\"env\"in process&&(t=process.env.DEBUG),t}function BQe(){try{return localStorage}catch{}}Dj.exports=i5e()(_f);var{formatters:DQe}=Dj.exports;DQe.j=function(t){try{return JSON.stringify(t)}catch(e){return\"[UnexpectedJSONParseError]: \"+e.message}}});var s5e=be(Fx=>{\"use strict\";p();var FQe=Fx&&Fx.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Fx,\"__esModule\",{value:!0});Fx.createModuleLogger=Fx.createProjectLogger=void 0;var UQe=FQe(xee()),jQe=(0,UQe.default)(\"metamask\");function zQe(t){return jQe.extend(t)}Fx.createProjectLogger=zQe;function HQe(t,e){return t.extend(e)}Fx.createModuleLogger=HQe});var c5e=be(ds=>{\"use strict\";p();Object.defineProperty(ds,\"__esModule\",{value:!0});ds.calculateNumberSize=ds.calculateStringSize=ds.isASCII=ds.isPlainObject=ds.ESCAPE_CHARACTERS_REGEXP=ds.JsonSize=ds.hasProperty=ds.isObject=ds.isNullOrUndefined=ds.isNonEmptyArray=void 0;function qQe(t){return Array.isArray(t)&&t.length>0}ds.isNonEmptyArray=qQe;function WQe(t){return t==null}ds.isNullOrUndefined=WQe;function VQe(t){return!!t&&typeof t==\"object\"&&!Array.isArray(t)}ds.isObject=VQe;var $Qe=(t,e)=>Object.hasOwnProperty.call(t,e);ds.hasProperty=$Qe;var KQe;(function(t){t[t.Null=4]=\"Null\",t[t.Comma=1]=\"Comma\",t[t.Wrapper=1]=\"Wrapper\",t[t.True=4]=\"True\",t[t.False=5]=\"False\",t[t.Quote=1]=\"Quote\",t[t.Colon=1]=\"Colon\",t[t.Date=24]=\"Date\"})(KQe=ds.JsonSize||(ds.JsonSize={}));ds.ESCAPE_CHARACTERS_REGEXP=/\"|\\\\\\\\|\\\\n|\\\\r|\\\\t/gu;function GQe(t){if(typeof t!=\"object\"||t===null)return!1;try{let e=t;for(;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}catch{return!1}}ds.isPlainObject=GQe;function a5e(t){return t.charCodeAt(0)<=127}ds.isASCII=a5e;function ZQe(t){var e;return t.split(\"\").reduce((r,o)=>a5e(o)?r+1:r+2,0)+((e=t.match(ds.ESCAPE_CHARACTERS_REGEXP))!==null&&e!==void 0?e:[]).length}ds.calculateStringSize=ZQe;function YQe(t){return t.toString().length}ds.calculateNumberSize=YQe});var l5e=be(u1=>{\"use strict\";p();Object.defineProperty(u1,\"__esModule\",{value:!0});u1.hexToBigInt=u1.hexToNumber=u1.bigIntToHex=u1.numberToHex=void 0;var P8=Nv(),DI=NI(),QQe=t=>((0,P8.assert)(typeof t==\"number\",\"Value must be a number.\"),(0,P8.assert)(t>=0,\"Value must be a non-negative number.\"),(0,P8.assert)(Number.isSafeInteger(t),\"Value is not a safe integer. Use `bigIntToHex` instead.\"),(0,DI.add0x)(t.toString(16)));u1.numberToHex=QQe;var JQe=t=>((0,P8.assert)(typeof t==\"bigint\",\"Value must be a bigint.\"),(0,P8.assert)(t>=0,\"Value must be a non-negative bigint.\"),(0,DI.add0x)(t.toString(16)));u1.bigIntToHex=JQe;var XQe=t=>{(0,DI.assertIsHexString)(t);let e=parseInt(t,16);return(0,P8.assert)(Number.isSafeInteger(e),\"Value is not a safe integer. Use `hexToBigInt` instead.\"),e};u1.hexToNumber=XQe;var eJe=t=>((0,DI.assertIsHexString)(t),BigInt((0,DI.add0x)(t)));u1.hexToBigInt=eJe});var d5e=be(u5e=>{\"use strict\";p();Object.defineProperty(u5e,\"__esModule\",{value:!0})});var h5e=be(Lv=>{\"use strict\";p();Object.defineProperty(Lv,\"__esModule\",{value:!0});Lv.timeSince=Lv.inMilliseconds=Lv.Duration=void 0;var tJe;(function(t){t[t.Millisecond=1]=\"Millisecond\",t[t.Second=1e3]=\"Second\",t[t.Minute=6e4]=\"Minute\",t[t.Hour=36e5]=\"Hour\",t[t.Day=864e5]=\"Day\",t[t.Week=6048e5]=\"Week\",t[t.Year=31536e6]=\"Year\"})(tJe=Lv.Duration||(Lv.Duration={}));var nJe=t=>Number.isInteger(t)&&t>=0,f5e=(t,e)=>{if(!nJe(t))throw new Error(`\"${e}\" must be a non-negative integer. Received: \"${t}\".`)};function rJe(t,e){return f5e(t,\"count\"),t*e}Lv.inMilliseconds=rJe;function oJe(t){return f5e(t,\"timestamp\"),Date.now()-t}Lv.timeSince=oJe});var m5e=be(p5e=>{\"use strict\";p();Object.defineProperty(p5e,\"__esModule\",{value:!0})});var FI=be((Ean,g5e)=>{\"use strict\";p();var iJe=\"2.0.0\",sJe=Number.MAX_SAFE_INTEGER||9007199254740991,aJe=16,cJe=250,lJe=[\"major\",\"premajor\",\"minor\",\"preminor\",\"patch\",\"prepatch\",\"prerelease\"];g5e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:aJe,MAX_SAFE_BUILD_LENGTH:cJe,MAX_SAFE_INTEGER:sJe,RELEASE_TYPES:lJe,SEMVER_SPEC_VERSION:iJe,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var UI=be((kan,y5e)=>{\"use strict\";p();var uJe=typeof process==\"object\"&&process.env&&process.env.NODE_DEBUG&&/\\\\bsemver\\\\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error(\"SEMVER\",...t):()=>{};y5e.exports=uJe});var M8=be((d1,b5e)=>{\"use strict\";p();var{MAX_SAFE_COMPONENT_LENGTH:Eee,MAX_SAFE_BUILD_LENGTH:dJe,MAX_LENGTH:fJe}=FI(),hJe=UI();d1=b5e.exports={};var pJe=d1.re=[],mJe=d1.safeRe=[],Qt=d1.src=[],gJe=d1.safeSrc=[],Jt=d1.t={},yJe=0,See=\"[a-zA-Z0-9-]\",bJe=[[\"\\\\\\\\s\",1],[\"\\\\\\\\d\",fJe],[See,dJe]],vJe=t=>{for(let[e,n]of bJe)t=t.split(`${e}*`).join(`${e}{0,${n}}`).split(`${e}+`).join(`${e}{1,${n}}`);return t},Xn=(t,e,n)=>{let r=vJe(e),o=yJe++;hJe(t,o,e),Jt[t]=o,Qt[o]=e,gJe[o]=r,pJe[o]=new RegExp(e,n?\"g\":void 0),mJe[o]=new RegExp(r,n?\"g\":void 0)};Xn(\"NUMERICIDENTIFIER\",\"0|[1-9]\\\\\\\\d*\");Xn(\"NUMERICIDENTIFIERLOOSE\",\"\\\\\\\\d+\");Xn(\"NONNUMERICIDENTIFIER\",`\\\\\\\\d*[a-zA-Z-]${See}*`);Xn(\"MAINVERSION\",`(${Qt[Jt.NUMERICIDENTIFIER]})\\\\\\\\.(${Qt[Jt.NUMERICIDENTIFIER]})\\\\\\\\.(${Qt[Jt.NUMERICIDENTIFIER]})`);Xn(\"MAINVERSIONLOOSE\",`(${Qt[Jt.NUMERICIDENTIFIERLOOSE]})\\\\\\\\.(${Qt[Jt.NUMERICIDENTIFIERLOOSE]})\\\\\\\\.(${Qt[Jt.NUMERICIDENTIFIERLOOSE]})`);Xn(\"PRERELEASEIDENTIFIER\",`(?:${Qt[Jt.NONNUMERICIDENTIFIER]}|${Qt[Jt.NUMERICIDENTIFIER]})`);Xn(\"PRERELEASEIDENTIFIERLOOSE\",`(?:${Qt[Jt.NONNUMERICIDENTIFIER]}|${Qt[Jt.NUMERICIDENTIFIERLOOSE]})`);Xn(\"PRERELEASE\",`(?:-(${Qt[Jt.PRERELEASEIDENTIFIER]}(?:\\\\\\\\.${Qt[Jt.PRERELEASEIDENTIFIER]})*))`);Xn(\"PRERELEASELOOSE\",`(?:-?(${Qt[Jt.PRERELEASEIDENTIFIERLOOSE]}(?:\\\\\\\\.${Qt[Jt.PRERELEASEIDENTIFIERLOOSE]})*))`);Xn(\"BUILDIDENTIFIER\",`${See}+`);Xn(\"BUILD\",`(?:\\\\\\\\+(${Qt[Jt.BUILDIDENTIFIER]}(?:\\\\\\\\.${Qt[Jt.BUILDIDENTIFIER]})*))`);Xn(\"FULLPLAIN\",`v?${Qt[Jt.MAINVERSION]}${Qt[Jt.PRERELEASE]}?${Qt[Jt.BUILD]}?`);Xn(\"FULL\",`^${Qt[Jt.FULLPLAIN]}$`);Xn(\"LOOSEPLAIN\",`[v=\\\\\\\\s]*${Qt[Jt.MAINVERSIONLOOSE]}${Qt[Jt.PRERELEASELOOSE]}?${Qt[Jt.BUILD]}?`);Xn(\"LOOSE\",`^${Qt[Jt.LOOSEPLAIN]}$`);Xn(\"GTLT\",\"((?:<|>)?=?)\");Xn(\"XRANGEIDENTIFIERLOOSE\",`${Qt[Jt.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\\\\\*`);Xn(\"XRANGEIDENTIFIER\",`${Qt[Jt.NUMERICIDENTIFIER]}|x|X|\\\\\\\\*`);Xn(\"XRANGEPLAIN\",`[v=\\\\\\\\s]*(${Qt[Jt.XRANGEIDENTIFIER]})(?:\\\\\\\\.(${Qt[Jt.XRANGEIDENTIFIER]})(?:\\\\\\\\.(${Qt[Jt.XRANGEIDENTIFIER]})(?:${Qt[Jt.PRERELEASE]})?${Qt[Jt.BUILD]}?)?)?`);Xn(\"XRANGEPLAINLOOSE\",`[v=\\\\\\\\s]*(${Qt[Jt.XRANGEIDENTIFIERLOOSE]})(?:\\\\\\\\.(${Qt[Jt.XRANGEIDENTIFIERLOOSE]})(?:\\\\\\\\.(${Qt[Jt.XRANGEIDENTIFIERLOOSE]})(?:${Qt[Jt.PRERELEASELOOSE]})?${Qt[Jt.BUILD]}?)?)?`);Xn(\"XRANGE\",`^${Qt[Jt.GTLT]}\\\\\\\\s*${Qt[Jt.XRANGEPLAIN]}$`);Xn(\"XRANGELOOSE\",`^${Qt[Jt.GTLT]}\\\\\\\\s*${Qt[Jt.XRANGEPLAINLOOSE]}$`);Xn(\"COERCEPLAIN\",`(^|[^\\\\\\\\d])(\\\\\\\\d{1,${Eee}})(?:\\\\\\\\.(\\\\\\\\d{1,${Eee}}))?(?:\\\\\\\\.(\\\\\\\\d{1,${Eee}}))?`);Xn(\"COERCE\",`${Qt[Jt.COERCEPLAIN]}(?:$|[^\\\\\\\\d])`);Xn(\"COERCEFULL\",Qt[Jt.COERCEPLAIN]+`(?:${Qt[Jt.PRERELEASE]})?(?:${Qt[Jt.BUILD]})?(?:$|[^\\\\\\\\d])`);Xn(\"COERCERTL\",Qt[Jt.COERCE],!0);Xn(\"COERCERTLFULL\",Qt[Jt.COERCEFULL],!0);Xn(\"LONETILDE\",\"(?:~>?)\");Xn(\"TILDETRIM\",`(\\\\\\\\s*)${Qt[Jt.LONETILDE]}\\\\\\\\s+`,!0);d1.tildeTrimReplace=\"$1~\";Xn(\"TILDE\",`^${Qt[Jt.LONETILDE]}${Qt[Jt.XRANGEPLAIN]}$`);Xn(\"TILDELOOSE\",`^${Qt[Jt.LONETILDE]}${Qt[Jt.XRANGEPLAINLOOSE]}$`);Xn(\"LONECARET\",\"(?:\\\\\\\\^)\");Xn(\"CARETTRIM\",`(\\\\\\\\s*)${Qt[Jt.LONECARET]}\\\\\\\\s+`,!0);d1.caretTrimReplace=\"$1^\";Xn(\"CARET\",`^${Qt[Jt.LONECARET]}${Qt[Jt.XRANGEPLAIN]}$`);Xn(\"CARETLOOSE\",`^${Qt[Jt.LONECARET]}${Qt[Jt.XRANGEPLAINLOOSE]}$`);Xn(\"COMPARATORLOOSE\",`^${Qt[Jt.GTLT]}\\\\\\\\s*(${Qt[Jt.LOOSEPLAIN]})$|^$`);Xn(\"COMPARATOR\",`^${Qt[Jt.GTLT]}\\\\\\\\s*(${Qt[Jt.FULLPLAIN]})$|^$`);Xn(\"COMPARATORTRIM\",`(\\\\\\\\s*)${Qt[Jt.GTLT]}\\\\\\\\s*(${Qt[Jt.LOOSEPLAIN]}|${Qt[Jt.XRANGEPLAIN]})`,!0);d1.comparatorTrimReplace=\"$1$2$3\";Xn(\"HYPHENRANGE\",`^\\\\\\\\s*(${Qt[Jt.XRANGEPLAIN]})\\\\\\\\s+-\\\\\\\\s+(${Qt[Jt.XRANGEPLAIN]})\\\\\\\\s*$`);Xn(\"HYPHENRANGELOOSE\",`^\\\\\\\\s*(${Qt[Jt.XRANGEPLAINLOOSE]})\\\\\\\\s+-\\\\\\\\s+(${Qt[Jt.XRANGEPLAINLOOSE]})\\\\\\\\s*$`);Xn(\"STAR\",\"(<|>)?=?\\\\\\\\s*\\\\\\\\*\");Xn(\"GTE0\",\"^\\\\\\\\s*>=\\\\\\\\s*0\\\\\\\\.0\\\\\\\\.0\\\\\\\\s*$\");Xn(\"GTE0PRE\",\"^\\\\\\\\s*>=\\\\\\\\s*0\\\\\\\\.0\\\\\\\\.0-0\\\\\\\\s*$\")});var Fj=be((Aan,v5e)=>{\"use strict\";p();var wJe=Object.freeze({loose:!0}),xJe=Object.freeze({}),EJe=t=>t?typeof t!=\"object\"?wJe:t:xJe;v5e.exports=EJe});var kee=be((Ran,E5e)=>{\"use strict\";p();var w5e=/^[0-9]+$/,x5e=(t,e)=>{let n=w5e.test(t),r=w5e.test(e);return n&&r&&(t=+t,e=+e),t===e?0:n&&!r?-1:r&&!n?1:t<e?-1:1},SJe=(t,e)=>x5e(e,t);E5e.exports={compareIdentifiers:x5e,rcompareIdentifiers:SJe}});var gu=be((Oan,k5e)=>{\"use strict\";p();var Uj=UI(),{MAX_LENGTH:S5e,MAX_SAFE_INTEGER:jj}=FI(),{safeRe:zj,t:Hj}=M8(),kJe=Fj(),{compareIdentifiers:N8}=kee(),_ee=class t{constructor(e,n){if(n=kJe(n),e instanceof t){if(e.loose===!!n.loose&&e.includePrerelease===!!n.includePrerelease)return e;e=e.version}else if(typeof e!=\"string\")throw new TypeError(`Invalid version. Must be a string. Got type \"${typeof e}\".`);if(e.length>S5e)throw new TypeError(`version is longer than ${S5e} characters`);Uj(\"SemVer\",e,n),this.options=n,this.loose=!!n.loose,this.includePrerelease=!!n.includePrerelease;let r=e.trim().match(n.loose?zj[Hj.LOOSE]:zj[Hj.FULL]);if(!r)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>jj||this.major<0)throw new TypeError(\"Invalid major version\");if(this.minor>jj||this.minor<0)throw new TypeError(\"Invalid minor version\");if(this.patch>jj||this.patch<0)throw new TypeError(\"Invalid patch version\");r[4]?this.prerelease=r[4].split(\".\").map(o=>{if(/^[0-9]+$/.test(o)){let i=+o;if(i>=0&&i<jj)return i}return o}):this.prerelease=[],this.build=r[5]?r[5].split(\".\"):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(\".\")}`),this.version}toString(){return this.version}compare(e){if(Uj(\"SemVer.compare\",this.version,this.options,e),!(e instanceof t)){if(typeof e==\"string\"&&e===this.version)return 0;e=new t(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof t||(e=new t(e,this.options)),N8(this.major,e.major)||N8(this.minor,e.minor)||N8(this.patch,e.patch)}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let n=0;do{let r=this.prerelease[n],o=e.prerelease[n];if(Uj(\"prerelease compare\",n,r,o),r===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(r===void 0)return-1;if(r===o)continue;return N8(r,o)}while(++n)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let n=0;do{let r=this.build[n],o=e.build[n];if(Uj(\"build compare\",n,r,o),r===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(r===void 0)return-1;if(r===o)continue;return N8(r,o)}while(++n)}inc(e,n,r){if(e.startsWith(\"pre\")){if(!n&&r===!1)throw new Error(\"invalid increment argument: identifier is empty\");if(n){let o=`-${n}`.match(this.options.loose?zj[Hj.PRERELEASELOOSE]:zj[Hj.PRERELEASE]);if(!o||o[1]!==n)throw new Error(`invalid identifier: ${n}`)}}switch(e){case\"premajor\":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc(\"pre\",n,r);break;case\"preminor\":this.prerelease.length=0,this.patch=0,this.minor++,this.inc(\"pre\",n,r);break;case\"prepatch\":this.prerelease.length=0,this.inc(\"patch\",n,r),this.inc(\"pre\",n,r);break;case\"prerelease\":this.prerelease.length===0&&this.inc(\"patch\",n,r),this.inc(\"pre\",n,r);break;case\"release\":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case\"major\":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case\"minor\":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case\"patch\":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case\"pre\":{let o=Number(r)?1:0;if(this.prerelease.length===0)this.prerelease=[o];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]==\"number\"&&(this.prerelease[i]++,i=-2);if(i===-1){if(n===this.prerelease.join(\".\")&&r===!1)throw new Error(\"invalid increment argument: identifier already exists\");this.prerelease.push(o)}}if(n){let i=[n,o];r===!1&&(i=[n]),N8(this.prerelease[0],n)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(\".\")}`),this}};k5e.exports=_ee});var uS=be((Man,C5e)=>{\"use strict\";p();var _5e=gu(),_Je=(t,e,n=!1)=>{if(t instanceof _5e)return t;try{return new _5e(t,e)}catch(r){if(!n)return null;throw r}};C5e.exports=_Je});var T5e=be((Lan,A5e)=>{\"use strict\";p();var CJe=uS(),AJe=(t,e)=>{let n=CJe(t,e);return n?n.version:null};A5e.exports=AJe});var I5e=be((Dan,R5e)=>{\"use strict\";p();var TJe=uS(),RJe=(t,e)=>{let n=TJe(t.trim().replace(/^[=v]+/,\"\"),e);return n?n.version:null};R5e.exports=RJe});var M5e=be((Uan,P5e)=>{\"use strict\";p();var O5e=gu(),IJe=(t,e,n,r,o)=>{typeof n==\"string\"&&(o=r,r=n,n=void 0);try{return new O5e(t instanceof O5e?t.version:t,n).inc(e,r,o).version}catch{return null}};P5e.exports=IJe});var B5e=be((zan,L5e)=>{\"use strict\";p();var N5e=uS(),OJe=(t,e)=>{let n=N5e(t,null,!0),r=N5e(e,null,!0),o=n.compare(r);if(o===0)return null;let i=o>0,a=i?n:r,c=i?r:n,u=!!a.prerelease.length;if(!!c.prerelease.length&&!u){if(!c.patch&&!c.minor)return\"major\";if(c.compareMain(a)===0)return c.minor&&!c.patch?\"minor\":\"patch\"}let h=u?\"pre\":\"\";return n.major!==r.major?h+\"major\":n.minor!==r.minor?h+\"minor\":n.patch!==r.patch?h+\"patch\":\"prerelease\"};L5e.exports=OJe});var F5e=be((qan,D5e)=>{\"use strict\";p();var PJe=gu(),MJe=(t,e)=>new PJe(t,e).major;D5e.exports=MJe});var j5e=be((Van,U5e)=>{\"use strict\";p();var NJe=gu(),LJe=(t,e)=>new NJe(t,e).minor;U5e.exports=LJe});var H5e=be((Kan,z5e)=>{\"use strict\";p();var BJe=gu(),DJe=(t,e)=>new BJe(t,e).patch;z5e.exports=DJe});var W5e=be((Zan,q5e)=>{\"use strict\";p();var FJe=uS(),UJe=(t,e)=>{let n=FJe(t,e);return n&&n.prerelease.length?n.prerelease:null};q5e.exports=UJe});var hm=be((Qan,$5e)=>{\"use strict\";p();var V5e=gu(),jJe=(t,e,n)=>new V5e(t,n).compare(new V5e(e,n));$5e.exports=jJe});var G5e=be((Xan,K5e)=>{\"use strict\";p();var zJe=hm(),HJe=(t,e,n)=>zJe(e,t,n);K5e.exports=HJe});var Y5e=be((tcn,Z5e)=>{\"use strict\";p();var qJe=hm(),WJe=(t,e)=>qJe(t,e,!0);Z5e.exports=WJe});var qj=be((rcn,J5e)=>{\"use strict\";p();var Q5e=gu(),VJe=(t,e,n)=>{let r=new Q5e(t,n),o=new Q5e(e,n);return r.compare(o)||r.compareBuild(o)};J5e.exports=VJe});var e6e=be((icn,X5e)=>{\"use strict\";p();var $Je=qj(),KJe=(t,e)=>t.sort((n,r)=>$Je(n,r,e));X5e.exports=KJe});var n6e=be((acn,t6e)=>{\"use strict\";p();var GJe=qj(),ZJe=(t,e)=>t.sort((n,r)=>GJe(r,n,e));t6e.exports=ZJe});var jI=be((lcn,r6e)=>{\"use strict\";p();var YJe=hm(),QJe=(t,e,n)=>YJe(t,e,n)>0;r6e.exports=QJe});var Wj=be((dcn,o6e)=>{\"use strict\";p();var JJe=hm(),XJe=(t,e,n)=>JJe(t,e,n)<0;o6e.exports=XJe});var Cee=be((hcn,i6e)=>{\"use strict\";p();var eXe=hm(),tXe=(t,e,n)=>eXe(t,e,n)===0;i6e.exports=tXe});var Aee=be((mcn,s6e)=>{\"use strict\";p();var nXe=hm(),rXe=(t,e,n)=>nXe(t,e,n)!==0;s6e.exports=rXe});var Vj=be((ycn,a6e)=>{\"use strict\";p();var oXe=hm(),iXe=(t,e,n)=>oXe(t,e,n)>=0;a6e.exports=iXe});var $j=be((vcn,c6e)=>{\"use strict\";p();var sXe=hm(),aXe=(t,e,n)=>sXe(t,e,n)<=0;c6e.exports=aXe});var Tee=be((xcn,l6e)=>{\"use strict\";p();var cXe=Cee(),lXe=Aee(),uXe=jI(),dXe=Vj(),fXe=Wj(),hXe=$j(),pXe=(t,e,n,r)=>{switch(e){case\"===\":return typeof t==\"object\"&&(t=t.version),typeof n==\"object\"&&(n=n.version),t===n;case\"!==\":return typeof t==\"object\"&&(t=t.version),typeof n==\"object\"&&(n=n.version),t!==n;case\"\":case\"=\":case\"==\":return cXe(t,n,r);case\"!=\":return lXe(t,n,r);case\">\":return uXe(t,n,r);case\">=\":return dXe(t,n,r);case\"<\":return fXe(t,n,r);case\"<=\":return hXe(t,n,r);default:throw new TypeError(`Invalid operator: ${e}`)}};l6e.exports=pXe});var d6e=be((Scn,u6e)=>{\"use strict\";p();var mXe=gu(),gXe=uS(),{safeRe:Kj,t:Gj}=M8(),yXe=(t,e)=>{if(t instanceof mXe)return t;if(typeof t==\"number\"&&(t=String(t)),typeof t!=\"string\")return null;e=e||{};let n=null;if(!e.rtl)n=t.match(e.includePrerelease?Kj[Gj.COERCEFULL]:Kj[Gj.COERCE]);else{let u=e.includePrerelease?Kj[Gj.COERCERTLFULL]:Kj[Gj.COERCERTL],d;for(;(d=u.exec(t))&&(!n||n.index+n[0].length!==t.length);)(!n||d.index+d[0].length!==n.index+n[0].length)&&(n=d),u.lastIndex=d.index+d[1].length+d[2].length;u.lastIndex=-1}if(n===null)return null;let r=n[2],o=n[3]||\"0\",i=n[4]||\"0\",a=e.includePrerelease&&n[5]?`-${n[5]}`:\"\",c=e.includePrerelease&&n[6]?`+${n[6]}`:\"\";return gXe(`${r}.${o}.${i}${a}${c}`,e)};u6e.exports=yXe});var h6e=be((_cn,f6e)=>{\"use strict\";p();var Ree=class{constructor(){this.max=1e3,this.map=new Map}get(e){let n=this.map.get(e);if(n!==void 0)return this.map.delete(e),this.map.set(e,n),n}delete(e){return this.map.delete(e)}set(e,n){if(!this.delete(e)&&n!==void 0){if(this.map.size>=this.max){let o=this.map.keys().next().value;this.delete(o)}this.map.set(e,n)}return this}};f6e.exports=Ree});var pm=be((Acn,y6e)=>{\"use strict\";p();var bXe=/\\\\s+/g,Iee=class t{constructor(e,n){if(n=wXe(n),e instanceof t)return e.loose===!!n.loose&&e.includePrerelease===!!n.includePrerelease?e:new t(e.raw,n);if(e instanceof Oee)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=n,this.loose=!!n.loose,this.includePrerelease=!!n.includePrerelease,this.raw=e.trim().replace(bXe,\" \"),this.set=this.raw.split(\"||\").map(r=>this.parseRange(r.trim())).filter(r=>r.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let r=this.set[0];if(this.set=this.set.filter(o=>!m6e(o[0])),this.set.length===0)this.set=[r];else if(this.set.length>1){for(let o of this.set)if(o.length===1&&AXe(o[0])){this.set=[o];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted=\"\";for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+=\"||\");let n=this.set[e];for(let r=0;r<n.length;r++)r>0&&(this.formatted+=\" \"),this.formatted+=n[r].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let r=((this.options.includePrerelease&&_Xe)|(this.options.loose&&CXe))+\":\"+e,o=p6e.get(r);if(o)return o;let i=this.options.loose,a=i?Cf[Sd.HYPHENRANGELOOSE]:Cf[Sd.HYPHENRANGE];e=e.replace(a,DXe(this.options.includePrerelease)),Ji(\"hyphen replace\",e),e=e.replace(Cf[Sd.COMPARATORTRIM],EXe),Ji(\"comparator trim\",e),e=e.replace(Cf[Sd.TILDETRIM],SXe),Ji(\"tilde trim\",e),e=e.replace(Cf[Sd.CARETTRIM],kXe),Ji(\"caret trim\",e);let c=e.split(\" \").map(m=>TXe(m,this.options)).join(\" \").split(/\\\\s+/).map(m=>BXe(m,this.options));i&&(c=c.filter(m=>(Ji(\"loose invalid filter\",m,this.options),!!m.match(Cf[Sd.COMPARATORLOOSE])))),Ji(\"range list\",c);let u=new Map,d=c.map(m=>new Oee(m,this.options));for(let m of d){if(m6e(m))return[m];u.set(m.value,m)}u.size>1&&u.has(\"\")&&u.delete(\"\");let h=[...u.values()];return p6e.set(r,h),h}intersects(e,n){if(!(e instanceof t))throw new TypeError(\"a Range is required\");return this.set.some(r=>g6e(r,n)&&e.set.some(o=>g6e(o,n)&&r.every(i=>o.every(a=>i.intersects(a,n)))))}test(e){if(!e)return!1;if(typeof e==\"string\")try{e=new xXe(e,this.options)}catch{return!1}for(let n=0;n<this.set.length;n++)if(FXe(this.set[n],e,this.options))return!0;return!1}};y6e.exports=Iee;var vXe=h6e(),p6e=new vXe,wXe=Fj(),Oee=zI(),Ji=UI(),xXe=gu(),{safeRe:Cf,t:Sd,comparatorTrimReplace:EXe,tildeTrimReplace:SXe,caretTrimReplace:kXe}=M8(),{FLAG_INCLUDE_PRERELEASE:_Xe,FLAG_LOOSE:CXe}=FI(),m6e=t=>t.value===\"<0.0.0-0\",AXe=t=>t.value===\"\",g6e=(t,e)=>{let n=!0,r=t.slice(),o=r.pop();for(;n&&r.length;)n=r.every(i=>o.intersects(i,e)),o=r.pop();return n},TXe=(t,e)=>(Ji(\"comp\",t,e),t=OXe(t,e),Ji(\"caret\",t),t=RXe(t,e),Ji(\"tildes\",t),t=MXe(t,e),Ji(\"xrange\",t),t=LXe(t,e),Ji(\"stars\",t),t),kd=t=>!t||t.toLowerCase()===\"x\"||t===\"*\",RXe=(t,e)=>t.trim().split(/\\\\s+/).map(n=>IXe(n,e)).join(\" \"),IXe=(t,e)=>{let n=e.loose?Cf[Sd.TILDELOOSE]:Cf[Sd.TILDE];return t.replace(n,(r,o,i,a,c)=>{Ji(\"tilde\",t,r,o,i,a,c);let u;return kd(o)?u=\"\":kd(i)?u=`>=${o}.0.0 <${+o+1}.0.0-0`:kd(a)?u=`>=${o}.${i}.0 <${o}.${+i+1}.0-0`:c?(Ji(\"replaceTilde pr\",c),u=`>=${o}.${i}.${a}-${c} <${o}.${+i+1}.0-0`):u=`>=${o}.${i}.${a} <${o}.${+i+1}.0-0`,Ji(\"tilde return\",u),u})},OXe=(t,e)=>t.trim().split(/\\\\s+/).map(n=>PXe(n,e)).join(\" \"),PXe=(t,e)=>{Ji(\"caret\",t,e);let n=e.loose?Cf[Sd.CARETLOOSE]:Cf[Sd.CARET],r=e.includePrerelease?\"-0\":\"\";return t.replace(n,(o,i,a,c,u)=>{Ji(\"caret\",t,o,i,a,c,u);let d;return kd(i)?d=\"\":kd(a)?d=`>=${i}.0.0${r} <${+i+1}.0.0-0`:kd(c)?i===\"0\"?d=`>=${i}.${a}.0${r} <${i}.${+a+1}.0-0`:d=`>=${i}.${a}.0${r} <${+i+1}.0.0-0`:u?(Ji(\"replaceCaret pr\",u),i===\"0\"?a===\"0\"?d=`>=${i}.${a}.${c}-${u} <${i}.${a}.${+c+1}-0`:d=`>=${i}.${a}.${c}-${u} <${i}.${+a+1}.0-0`:d=`>=${i}.${a}.${c}-${u} <${+i+1}.0.0-0`):(Ji(\"no pr\"),i===\"0\"?a===\"0\"?d=`>=${i}.${a}.${c}${r} <${i}.${a}.${+c+1}-0`:d=`>=${i}.${a}.${c}${r} <${i}.${+a+1}.0-0`:d=`>=${i}.${a}.${c} <${+i+1}.0.0-0`),Ji(\"caret return\",d),d})},MXe=(t,e)=>(Ji(\"replaceXRanges\",t,e),t.split(/\\\\s+/).map(n=>NXe(n,e)).join(\" \")),NXe=(t,e)=>{t=t.trim();let n=e.loose?Cf[Sd.XRANGELOOSE]:Cf[Sd.XRANGE];return t.replace(n,(r,o,i,a,c,u)=>{Ji(\"xRange\",t,r,o,i,a,c,u);let d=kd(i),h=d||kd(a),m=h||kd(c),g=m;return o===\"=\"&&g&&(o=\"\"),u=e.includePrerelease?\"-0\":\"\",d?o===\">\"||o===\"<\"?r=\"<0.0.0-0\":r=\"*\":o&&g?(h&&(a=0),c=0,o===\">\"?(o=\">=\",h?(i=+i+1,a=0,c=0):(a=+a+1,c=0)):o===\"<=\"&&(o=\"<\",h?i=+i+1:a=+a+1),o===\"<\"&&(u=\"-0\"),r=`${o+i}.${a}.${c}${u}`):h?r=`>=${i}.0.0${u} <${+i+1}.0.0-0`:m&&(r=`>=${i}.${a}.0${u} <${i}.${+a+1}.0-0`),Ji(\"xRange return\",r),r})},LXe=(t,e)=>(Ji(\"replaceStars\",t,e),t.trim().replace(Cf[Sd.STAR],\"\")),BXe=(t,e)=>(Ji(\"replaceGTE0\",t,e),t.trim().replace(Cf[e.includePrerelease?Sd.GTE0PRE:Sd.GTE0],\"\")),DXe=t=>(e,n,r,o,i,a,c,u,d,h,m,g)=>(kd(r)?n=\"\":kd(o)?n=`>=${r}.0.0${t?\"-0\":\"\"}`:kd(i)?n=`>=${r}.${o}.0${t?\"-0\":\"\"}`:a?n=`>=${n}`:n=`>=${n}${t?\"-0\":\"\"}`,kd(d)?u=\"\":kd(h)?u=`<${+d+1}.0.0-0`:kd(m)?u=`<${d}.${+h+1}.0-0`:g?u=`<=${d}.${h}.${m}-${g}`:t?u=`<${d}.${h}.${+m+1}-0`:u=`<=${u}`,`${n} ${u}`.trim()),FXe=(t,e,n)=>{for(let r=0;r<t.length;r++)if(!t[r].test(e))return!1;if(e.prerelease.length&&!n.includePrerelease){for(let r=0;r<t.length;r++)if(Ji(t[r].semver),t[r].semver!==Oee.ANY&&t[r].semver.prerelease.length>0){let o=t[r].semver;if(o.major===e.major&&o.minor===e.minor&&o.patch===e.patch)return!0}return!1}return!0}});var zI=be((Rcn,S6e)=>{\"use strict\";p();var HI=Symbol(\"SemVer ANY\"),Nee=class t{static get ANY(){return HI}constructor(e,n){if(n=b6e(n),e instanceof t){if(e.loose===!!n.loose)return e;e=e.value}e=e.trim().split(/\\\\s+/).join(\" \"),Mee(\"comparator\",e,n),this.options=n,this.loose=!!n.loose,this.parse(e),this.semver===HI?this.value=\"\":this.value=this.operator+this.semver.version,Mee(\"comp\",this)}parse(e){let n=this.options.loose?v6e[w6e.COMPARATORLOOSE]:v6e[w6e.COMPARATOR],r=e.match(n);if(!r)throw new TypeError(`Invalid comparator: ${e}`);this.operator=r[1]!==void 0?r[1]:\"\",this.operator===\"=\"&&(this.operator=\"\"),r[2]?this.semver=new x6e(r[2],this.options.loose):this.semver=HI}toString(){return this.value}test(e){if(Mee(\"Comparator.test\",e,this.options.loose),this.semver===HI||e===HI)return!0;if(typeof e==\"string\")try{e=new x6e(e,this.options)}catch{return!1}return Pee(e,this.operator,this.semver,this.options)}intersects(e,n){if(!(e instanceof t))throw new TypeError(\"a Comparator is required\");return this.operator===\"\"?this.value===\"\"?!0:new E6e(e.value,n).test(this.value):e.operator===\"\"?e.value===\"\"?!0:new E6e(this.value,n).test(e.semver):(n=b6e(n),n.includePrerelease&&(this.value===\"<0.0.0-0\"||e.value===\"<0.0.0-0\")||!n.includePrerelease&&(this.value.startsWith(\"<0.0.0\")||e.value.startsWith(\"<0.0.0\"))?!1:!!(this.operator.startsWith(\">\")&&e.operator.startsWith(\">\")||this.operator.startsWith(\"<\")&&e.operator.startsWith(\"<\")||this.semver.version===e.semver.version&&this.operator.includes(\"=\")&&e.operator.includes(\"=\")||Pee(this.semver,\"<\",e.semver,n)&&this.operator.startsWith(\">\")&&e.operator.startsWith(\"<\")||Pee(this.semver,\">\",e.semver,n)&&this.operator.startsWith(\"<\")&&e.operator.startsWith(\">\")))}};S6e.exports=Nee;var b6e=Fj(),{safeRe:v6e,t:w6e}=M8(),Pee=Tee(),Mee=UI(),x6e=gu(),E6e=pm()});var qI=be((Ocn,k6e)=>{\"use strict\";p();var UXe=pm(),jXe=(t,e,n)=>{try{e=new UXe(e,n)}catch{return!1}return e.test(t)};k6e.exports=jXe});var C6e=be((Mcn,_6e)=>{\"use strict\";p();var zXe=pm(),HXe=(t,e)=>new zXe(t,e).set.map(n=>n.map(r=>r.value).join(\" \").trim().split(\" \"));_6e.exports=HXe});var T6e=be((Lcn,A6e)=>{\"use strict\";p();var qXe=gu(),WXe=pm(),VXe=(t,e,n)=>{let r=null,o=null,i=null;try{i=new WXe(e,n)}catch{return null}return t.forEach(a=>{i.test(a)&&(!r||o.compare(a)===-1)&&(r=a,o=new qXe(r,n))}),r};A6e.exports=VXe});var I6e=be((Dcn,R6e)=>{\"use strict\";p();var $Xe=gu(),KXe=pm(),GXe=(t,e,n)=>{let r=null,o=null,i=null;try{i=new KXe(e,n)}catch{return null}return t.forEach(a=>{i.test(a)&&(!r||o.compare(a)===1)&&(r=a,o=new $Xe(r,n))}),r};R6e.exports=GXe});var M6e=be((Ucn,P6e)=>{\"use strict\";p();var Lee=gu(),ZXe=pm(),O6e=jI(),YXe=(t,e)=>{t=new ZXe(t,e);let n=new Lee(\"0.0.0\");if(t.test(n)||(n=new Lee(\"0.0.0-0\"),t.test(n)))return n;n=null;for(let r=0;r<t.set.length;++r){let o=t.set[r],i=null;o.forEach(a=>{let c=new Lee(a.semver.version);switch(a.operator){case\">\":c.prerelease.length===0?c.patch++:c.prerelease.push(0),c.raw=c.format();case\"\":case\">=\":(!i||O6e(c,i))&&(i=c);break;case\"<\":case\"<=\":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!n||O6e(n,i))&&(n=i)}return n&&t.test(n)?n:null};P6e.exports=YXe});var L6e=be((zcn,N6e)=>{\"use strict\";p();var QXe=pm(),JXe=(t,e)=>{try{return new QXe(t,e).range||\"*\"}catch{return null}};N6e.exports=JXe});var Zj=be((qcn,U6e)=>{\"use strict\";p();var XXe=gu(),F6e=zI(),{ANY:eet}=F6e,tet=pm(),net=qI(),B6e=jI(),D6e=Wj(),ret=$j(),oet=Vj(),iet=(t,e,n,r)=>{t=new XXe(t,r),e=new tet(e,r);let o,i,a,c,u;switch(n){case\">\":o=B6e,i=ret,a=D6e,c=\">\",u=\">=\";break;case\"<\":o=D6e,i=oet,a=B6e,c=\"<\",u=\"<=\";break;default:throw new TypeError(\\'Must provide a hilo val of \"<\" or \">\"\\')}if(net(t,e,r))return!1;for(let d=0;d<e.set.length;++d){let h=e.set[d],m=null,g=null;if(h.forEach(b=>{b.semver===eet&&(b=new F6e(\">=0.0.0\")),m=m||b,g=g||b,o(b.semver,m.semver,r)?m=b:a(b.semver,g.semver,r)&&(g=b)}),m.operator===c||m.operator===u||(!g.operator||g.operator===c)&&i(t,g.semver))return!1;if(g.operator===u&&a(t,g.semver))return!1}return!0};U6e.exports=iet});var z6e=be((Vcn,j6e)=>{\"use strict\";p();var set=Zj(),aet=(t,e,n)=>set(t,e,\">\",n);j6e.exports=aet});var q6e=be((Kcn,H6e)=>{\"use strict\";p();var cet=Zj(),uet=(t,e,n)=>cet(t,e,\"<\",n);H6e.exports=uet});var $6e=be((Zcn,V6e)=>{\"use strict\";p();var W6e=pm(),det=(t,e,n)=>(t=new W6e(t,n),e=new W6e(e,n),t.intersects(e,n));V6e.exports=det});var G6e=be((Qcn,K6e)=>{\"use strict\";p();var fet=qI(),het=hm();K6e.exports=(t,e,n)=>{let r=[],o=null,i=null,a=t.sort((h,m)=>het(h,m,n));for(let h of a)fet(h,e,n)?(i=h,o||(o=h)):(i&&r.push([o,i]),i=null,o=null);o&&r.push([o,null]);let c=[];for(let[h,m]of r)h===m?c.push(h):!m&&h===a[0]?c.push(\"*\"):m?h===a[0]?c.push(`<=${m}`):c.push(`${h} - ${m}`):c.push(`>=${h}`);let u=c.join(\" || \"),d=typeof e.raw==\"string\"?e.raw:String(e);return u.length<d.length?u:e}});var eSe=be((Xcn,X6e)=>{\"use strict\";p();var Z6e=pm(),Dee=zI(),{ANY:Bee}=Dee,WI=qI(),Fee=hm(),pet=(t,e,n={})=>{if(t===e)return!0;t=new Z6e(t,n),e=new Z6e(e,n);let r=!1;e:for(let o of t.set){for(let i of e.set){let a=get(o,i,n);if(r=r||a!==null,a)continue e}if(r)return!1}return!0},met=[new Dee(\">=0.0.0-0\")],Y6e=[new Dee(\">=0.0.0\")],get=(t,e,n)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===Bee){if(e.length===1&&e[0].semver===Bee)return!0;n.includePrerelease?t=met:t=Y6e}if(e.length===1&&e[0].semver===Bee){if(n.includePrerelease)return!0;e=Y6e}let r=new Set,o,i;for(let b of t)b.operator===\">\"||b.operator===\">=\"?o=Q6e(o,b,n):b.operator===\"<\"||b.operator===\"<=\"?i=J6e(i,b,n):r.add(b.semver);if(r.size>1)return null;let a;if(o&&i){if(a=Fee(o.semver,i.semver,n),a>0)return null;if(a===0&&(o.operator!==\">=\"||i.operator!==\"<=\"))return null}for(let b of r){if(o&&!WI(b,String(o),n)||i&&!WI(b,String(i),n))return null;for(let E of e)if(!WI(b,String(E),n))return!1;return!0}let c,u,d,h,m=i&&!n.includePrerelease&&i.semver.prerelease.length?i.semver:!1,g=o&&!n.includePrerelease&&o.semver.prerelease.length?o.semver:!1;m&&m.prerelease.length===1&&i.operator===\"<\"&&m.prerelease[0]===0&&(m=!1);for(let b of e){if(h=h||b.operator===\">\"||b.operator===\">=\",d=d||b.operator===\"<\"||b.operator===\"<=\",o){if(g&&b.semver.prerelease&&b.semver.prerelease.length&&b.semver.major===g.major&&b.semver.minor===g.minor&&b.semver.patch===g.patch&&(g=!1),b.operator===\">\"||b.operator===\">=\"){if(c=Q6e(o,b,n),c===b&&c!==o)return!1}else if(o.operator===\">=\"&&!WI(o.semver,String(b),n))return!1}if(i){if(m&&b.semver.prerelease&&b.semver.prerelease.length&&b.semver.major===m.major&&b.semver.minor===m.minor&&b.semver.patch===m.patch&&(m=!1),b.operator===\"<\"||b.operator===\"<=\"){if(u=J6e(i,b,n),u===b&&u!==i)return!1}else if(i.operator===\"<=\"&&!WI(i.semver,String(b),n))return!1}if(!b.operator&&(i||o)&&a!==0)return!1}return!(o&&d&&!i&&a!==0||i&&h&&!o&&a!==0||g||m)},Q6e=(t,e,n)=>{if(!t)return e;let r=Fee(t.semver,e.semver,n);return r>0?t:r<0||e.operator===\">\"&&t.operator===\">=\"?e:t},J6e=(t,e,n)=>{if(!t)return e;let r=Fee(t.semver,e.semver,n);return r<0?t:r>0||e.operator===\"<\"&&t.operator===\"<=\"?e:t};X6e.exports=pet});var oSe=be((tln,rSe)=>{\"use strict\";p();var Uee=M8(),tSe=FI(),yet=gu(),nSe=kee(),bet=uS(),vet=T5e(),wet=I5e(),xet=M5e(),Eet=B5e(),ket=F5e(),_et=j5e(),Cet=H5e(),Aet=W5e(),Tet=hm(),Ret=G5e(),Iet=Y5e(),Oet=qj(),Pet=e6e(),Met=n6e(),Net=jI(),Let=Wj(),Bet=Cee(),Det=Aee(),Fet=Vj(),Uet=$j(),jet=Tee(),zet=d6e(),Het=zI(),qet=pm(),Wet=qI(),Vet=C6e(),$et=T6e(),Ket=I6e(),Get=M6e(),Zet=L6e(),Yet=Zj(),Qet=z6e(),Jet=q6e(),Xet=$6e(),ett=G6e(),ttt=eSe();rSe.exports={parse:bet,valid:vet,clean:wet,inc:xet,diff:Eet,major:ket,minor:_et,patch:Cet,prerelease:Aet,compare:Tet,rcompare:Ret,compareLoose:Iet,compareBuild:Oet,sort:Pet,rsort:Met,gt:Net,lt:Let,eq:Bet,neq:Det,gte:Fet,lte:Uet,cmp:jet,coerce:zet,Comparator:Het,Range:qet,satisfies:Wet,toComparators:Vet,maxSatisfying:$et,minSatisfying:Ket,minVersion:Get,validRange:Zet,outside:Yet,gtr:Qet,ltr:Jet,intersects:Xet,simplifyRange:ett,subset:ttt,SemVer:yet,re:Uee.re,src:Uee.src,tokens:Uee.t,SEMVER_SPEC_VERSION:tSe.SEMVER_SPEC_VERSION,RELEASE_TYPES:tSe.RELEASE_TYPES,compareIdentifiers:nSe.compareIdentifiers,rcompareIdentifiers:nSe.rcompareIdentifiers}});var sSe=be(fs=>{\"use strict\";p();Object.defineProperty(fs,\"__esModule\",{value:!0});fs.satisfiesVersionRange=fs.gtRange=fs.gtVersion=fs.assertIsSemVerRange=fs.assertIsSemVerVersion=fs.isValidSemVerRange=fs.isValidSemVerVersion=fs.VersionRangeStruct=fs.VersionStruct=void 0;var VI=oSe(),L8=(Bx(),go(Lx)),iSe=Nv();fs.VersionStruct=(0,L8.refine)((0,L8.string)(),\"Version\",t=>(0,VI.valid)(t)===null?`Expected SemVer version, got \"${t}\"`:!0);fs.VersionRangeStruct=(0,L8.refine)((0,L8.string)(),\"Version range\",t=>(0,VI.validRange)(t)===null?`Expected SemVer range, got \"${t}\"`:!0);function ntt(t){return(0,L8.is)(t,fs.VersionStruct)}fs.isValidSemVerVersion=ntt;function rtt(t){return(0,L8.is)(t,fs.VersionRangeStruct)}fs.isValidSemVerRange=rtt;function ott(t){(0,iSe.assertStruct)(t,fs.VersionStruct)}fs.assertIsSemVerVersion=ott;function itt(t){(0,iSe.assertStruct)(t,fs.VersionRangeStruct)}fs.assertIsSemVerRange=itt;function stt(t,e){return(0,VI.gt)(t,e)}fs.gtVersion=stt;function att(t,e){return(0,VI.gtr)(t,e)}fs.gtRange=att;function ctt(t,e){return(0,VI.satisfies)(t,e,{includePrerelease:!0})}fs.satisfiesVersionRange=ctt});var aSe=be(Ts=>{\"use strict\";p();var ltt=Ts&&Ts.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var o=Object.getOwnPropertyDescriptor(e,n);(!o||(\"get\"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,o)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),Sl=Ts&&Ts.__exportStar||function(t,e){for(var n in t)n!==\"default\"&&!Object.prototype.hasOwnProperty.call(e,n)&&ltt(e,t,n)};Object.defineProperty(Ts,\"__esModule\",{value:!0});Sl(Nv(),Ts);Sl(yee(),Ts);Sl(wee(),Ts);Sl(VEe(),Ts);Sl(GEe(),Ts);Sl(YEe(),Ts);Sl(JEe(),Ts);Sl(NI(),Ts);Sl(XEe(),Ts);Sl(t5e(),Ts);Sl(s5e(),Ts);Sl(c5e(),Ts);Sl(l5e(),Ts);Sl(d5e(),Ts);Sl(h5e(),Ts);Sl(m5e(),Ts);Sl(sSe(),Ts)});var lSe=be(B8=>{\"use strict\";p();Object.defineProperty(B8,\"__esModule\",{value:!0});B8.createModuleLogger=B8.projectLogger=void 0;var cSe=aSe();Object.defineProperty(B8,\"createModuleLogger\",{enumerable:!0,get:function(){return cSe.createModuleLogger}});B8.projectLogger=(0,cSe.createProjectLogger)(\"eth-block-tracker\")});var pSe=be(D8=>{\"use strict\";p();var hSe=D8&&D8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(D8,\"__esModule\",{value:!0});D8.PollingBlockTracker=void 0;var utt=hSe(Rj()),dtt=hSe(vEe()),ftt=dee(),uSe=lSe(),dSe=(0,uSe.createModuleLogger)(uSe.projectLogger,\"polling-block-tracker\"),htt=(0,utt.default)(),ptt=1e3,jee=class extends ftt.BaseBlockTracker{constructor(e={}){var n;if(!e.provider)throw new Error(\"PollingBlockTracker - no provider specified.\");super(Object.assign(Object.assign({},e),{blockResetDuration:(n=e.blockResetDuration)!==null&&n!==void 0?n:e.pollingInterval})),this._provider=e.provider,this._pollingInterval=e.pollingInterval||20*ptt,this._retryTimeout=e.retryTimeout||this._pollingInterval/10,this._keepEventLoopActive=e.keepEventLoopActive===void 0?!0:e.keepEventLoopActive,this._setSkipCacheFlag=e.setSkipCacheFlag||!1}async checkForLatestBlock(){return await this._updateLatestBlock(),await this.getLatestBlock()}async _start(){this._synchronize()}async _end(){}async _synchronize(){for(var e;this._isRunning;)try{await this._updateLatestBlock();let n=fSe(this._pollingInterval,!this._keepEventLoopActive);this.emit(\"_waitingForNextIteration\"),await n}catch(n){let r=new Error(`PollingBlockTracker - encountered an error while attempting to update latest block:\\n${(e=n.stack)!==null&&e!==void 0?e:n}`);try{this.emit(\"error\",r)}catch{console.error(r)}let o=fSe(this._retryTimeout,!this._keepEventLoopActive);this.emit(\"_waitingForNextIteration\"),await o}}async _updateLatestBlock(){let e=await this._fetchLatestBlock();this._newPotentialLatest(e)}async _fetchLatestBlock(){let e={jsonrpc:\"2.0\",id:htt(),method:\"eth_blockNumber\",params:[]};this._setSkipCacheFlag&&(e.skipCache=!0),dSe(\"Making request\",e);let n=await(0,dtt.default)(r=>this._provider.sendAsync(e,r))();if(dSe(\"Got response\",n),n.error)throw new Error(`PollingBlockTracker - encountered error fetching block:\\n${n.error.message}`);return n.result}};D8.PollingBlockTracker=jee;function fSe(t,e){return new Promise(n=>{let r=setTimeout(n,t);r.unref&&e&&r.unref()})}});var mSe=be(F8=>{\"use strict\";p();var mtt=F8&&F8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(F8,\"__esModule\",{value:!0});F8.SubscribeBlockTracker=void 0;var gtt=mtt(Rj()),ytt=dee(),btt=(0,gtt.default)(),zee=class extends ytt.BaseBlockTracker{constructor(e={}){if(!e.provider)throw new Error(\"SubscribeBlockTracker - no provider specified.\");super(e),this._provider=e.provider,this._subscriptionId=null}async checkForLatestBlock(){return await this.getLatestBlock()}async _start(){if(this._subscriptionId===void 0||this._subscriptionId===null)try{let e=await this._call(\"eth_blockNumber\");this._subscriptionId=await this._call(\"eth_subscribe\",\"newHeads\"),this._provider.on(\"data\",this._handleSubData.bind(this)),this._newPotentialLatest(e)}catch(e){this.emit(\"error\",e)}}async _end(){if(this._subscriptionId!==null&&this._subscriptionId!==void 0)try{await this._call(\"eth_unsubscribe\",this._subscriptionId),this._subscriptionId=null}catch(e){this.emit(\"error\",e)}}_call(e,...n){return new Promise((r,o)=>{this._provider.sendAsync({id:btt(),method:e,params:n,jsonrpc:\"2.0\"},(i,a)=>{i?o(i):r(a.result)})})}_handleSubData(e,n){var r;n.method===\"eth_subscription\"&&((r=n.params)===null||r===void 0?void 0:r.subscription)===this._subscriptionId&&this._newPotentialLatest(n.params.result.number)}};F8.SubscribeBlockTracker=zee});var ySe=be(Ux=>{\"use strict\";p();var vtt=Ux&&Ux.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n),Object.defineProperty(t,r,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),gSe=Ux&&Ux.__exportStar||function(t,e){for(var n in t)n!==\"default\"&&!Object.prototype.hasOwnProperty.call(e,n)&&vtt(e,t,n)};Object.defineProperty(Ux,\"__esModule\",{value:!0});gSe(pSe(),Ux);gSe(mSe(),Ux)});var qee=be(Yj=>{\"use strict\";p();Object.defineProperty(Yj,\"__esModule\",{value:!0});Yj.getUniqueId=void 0;var bSe=4294967295,Hee=Math.floor(Math.random()*bSe);function wtt(){return Hee=(Hee+1)%bSe,Hee}Yj.getUniqueId=wtt});var vSe=be(Qj=>{\"use strict\";p();Object.defineProperty(Qj,\"__esModule\",{value:!0});Qj.createIdRemapMiddleware=void 0;var xtt=qee();function Ett(){return(t,e,n,r)=>{let o=t.id,i=xtt.getUniqueId();t.id=i,e.id=i,n(a=>{t.id=o,e.id=o,a()})}}Qj.createIdRemapMiddleware=Ett});var wSe=be(Jj=>{\"use strict\";p();Object.defineProperty(Jj,\"__esModule\",{value:!0});Jj.createAsyncMiddleware=void 0;function Stt(t){return async(e,n,r,o)=>{let i,a=new Promise(h=>{i=h}),c=null,u=!1,d=async()=>{u=!0,r(h=>{c=h,i()}),await a};try{await t(e,n,d),u?(await a,c(null)):o(null)}catch(h){c?c(h):o(h)}}}Jj.createAsyncMiddleware=Stt});var xSe=be(Xj=>{\"use strict\";p();Object.defineProperty(Xj,\"__esModule\",{value:!0});Xj.createScaffoldMiddleware=void 0;function ktt(t){return(e,n,r,o)=>{let i=t[e.method];return i===void 0?r():typeof i==\"function\"?i(e,n,r,o):(n.result=i,o())}}Xj.createScaffoldMiddleware=ktt});var SSe=be(Vee=>{\"use strict\";p();Object.defineProperty(Vee,\"__esModule\",{value:!0});var _tt=EI();function ESe(t,e,n){try{Reflect.apply(t,e,n)}catch(r){setTimeout(()=>{throw r})}}function Ctt(t){let e=t.length,n=new Array(e);for(let r=0;r<e;r+=1)n[r]=t[r];return n}var Wee=class extends _tt.EventEmitter{emit(e,...n){let r=e===\"error\",o=this._events;if(o!==void 0)r=r&&o.error===void 0;else if(!r)return!1;if(r){let a;if(n.length>0&&([a]=n),a instanceof Error)throw a;let c=new Error(`Unhandled error.${a?` (${a.message})`:\"\"}`);throw c.context=a,c}let i=o[e];if(i===void 0)return!1;if(typeof i==\"function\")ESe(i,this,n);else{let a=i.length,c=Ctt(i);for(let u=0;u<a;u+=1)ESe(c[u],this,n)}return!0}};Vee.default=Wee});var RSe=be((_ln,TSe)=>{p();TSe.exports=$I;$I.default=$I;$I.stable=CSe;$I.stableStringify=CSe;var ez=\"[...]\",kSe=\"[Circular]\",fS=[],dS=[];function _Se(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function $I(t,e,n,r){typeof r>\"u\"&&(r=_Se()),$ee(t,\"\",0,[],void 0,0,r);var o;try{dS.length===0?o=JSON.stringify(t,e,n):o=JSON.stringify(t,ASe(e),n)}catch{return JSON.stringify(\"[unable to serialize, circular reference is too complex to analyze]\")}finally{for(;fS.length!==0;){var i=fS.pop();i.length===4?Object.defineProperty(i[0],i[1],i[3]):i[0][i[1]]=i[2]}}return o}function U8(t,e,n,r){var o=Object.getOwnPropertyDescriptor(r,n);o.get!==void 0?o.configurable?(Object.defineProperty(r,n,{value:t}),fS.push([r,n,e,o])):dS.push([e,n,t]):(r[n]=t,fS.push([r,n,e]))}function $ee(t,e,n,r,o,i,a){i+=1;var c;if(typeof t==\"object\"&&t!==null){for(c=0;c<r.length;c++)if(r[c]===t){U8(kSe,t,e,o);return}if(typeof a.depthLimit<\"u\"&&i>a.depthLimit){U8(ez,t,e,o);return}if(typeof a.edgesLimit<\"u\"&&n+1>a.edgesLimit){U8(ez,t,e,o);return}if(r.push(t),Array.isArray(t))for(c=0;c<t.length;c++)$ee(t[c],c,c,r,t,i,a);else{var u=Object.keys(t);for(c=0;c<u.length;c++){var d=u[c];$ee(t[d],d,c,r,t,i,a)}}r.pop()}}function Att(t,e){return t<e?-1:t>e?1:0}function CSe(t,e,n,r){typeof r>\"u\"&&(r=_Se());var o=Kee(t,\"\",0,[],void 0,0,r)||t,i;try{dS.length===0?i=JSON.stringify(o,e,n):i=JSON.stringify(o,ASe(e),n)}catch{return JSON.stringify(\"[unable to serialize, circular reference is too complex to analyze]\")}finally{for(;fS.length!==0;){var a=fS.pop();a.length===4?Object.defineProperty(a[0],a[1],a[3]):a[0][a[1]]=a[2]}}return i}function Kee(t,e,n,r,o,i,a){i+=1;var c;if(typeof t==\"object\"&&t!==null){for(c=0;c<r.length;c++)if(r[c]===t){U8(kSe,t,e,o);return}try{if(typeof t.toJSON==\"function\")return}catch{return}if(typeof a.depthLimit<\"u\"&&i>a.depthLimit){U8(ez,t,e,o);return}if(typeof a.edgesLimit<\"u\"&&n+1>a.edgesLimit){U8(ez,t,e,o);return}if(r.push(t),Array.isArray(t))for(c=0;c<t.length;c++)Kee(t[c],c,c,r,t,i,a);else{var u={},d=Object.keys(t).sort(Att);for(c=0;c<d.length;c++){var h=d[c];Kee(t[h],h,c,r,t,i,a),u[h]=t[h]}if(typeof o<\"u\")fS.push([o,e,t]),o[e]=u;else return u}r.pop()}}function ASe(t){return t=typeof t<\"u\"?t:function(e,n){return n},function(e,n){if(dS.length>0)for(var r=0;r<dS.length;r++){var o=dS[r];if(o[1]===e&&o[0]===n){n=o[2],dS.splice(r,1);break}}return t.call(this,e,n)}}});var nz=be(j8=>{\"use strict\";p();Object.defineProperty(j8,\"__esModule\",{value:!0});j8.EthereumProviderError=j8.EthereumRpcError=void 0;var Ttt=RSe(),tz=class extends Error{constructor(e,n,r){if(!Number.isInteger(e))throw new Error(\\'\"code\" must be an integer.\\');if(!n||typeof n!=\"string\")throw new Error(\\'\"message\" must be a nonempty string.\\');super(n),this.code=e,r!==void 0&&(this.data=r)}serialize(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),this.stack&&(e.stack=this.stack),e}toString(){return Ttt.default(this.serialize(),Itt,2)}};j8.EthereumRpcError=tz;var Gee=class extends tz{constructor(e,n,r){if(!Rtt(e))throw new Error(\\'\"code\" must be an integer such that: 1000 <= code <= 4999\\');super(e,n,r)}};j8.EthereumProviderError=Gee;function Rtt(t){return Number.isInteger(t)&&t>=1e3&&t<=4999}function Itt(t,e){if(e!==\"[Circular]\")return e}});var rz=be(z8=>{\"use strict\";p();Object.defineProperty(z8,\"__esModule\",{value:!0});z8.errorValues=z8.errorCodes=void 0;z8.errorCodes={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901}};z8.errorValues={\"-32700\":{standard:\"JSON RPC 2.0\",message:\"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"},\"-32600\":{standard:\"JSON RPC 2.0\",message:\"The JSON sent is not a valid Request object.\"},\"-32601\":{standard:\"JSON RPC 2.0\",message:\"The method does not exist / is not available.\"},\"-32602\":{standard:\"JSON RPC 2.0\",message:\"Invalid method parameter(s).\"},\"-32603\":{standard:\"JSON RPC 2.0\",message:\"Internal JSON-RPC error.\"},\"-32000\":{standard:\"EIP-1474\",message:\"Invalid input.\"},\"-32001\":{standard:\"EIP-1474\",message:\"Resource not found.\"},\"-32002\":{standard:\"EIP-1474\",message:\"Resource unavailable.\"},\"-32003\":{standard:\"EIP-1474\",message:\"Transaction rejected.\"},\"-32004\":{standard:\"EIP-1474\",message:\"Method not supported.\"},\"-32005\":{standard:\"EIP-1474\",message:\"Request limit exceeded.\"},4001:{standard:\"EIP-1193\",message:\"User rejected the request.\"},4100:{standard:\"EIP-1193\",message:\"The requested account and/or method has not been authorized by the user.\"},4200:{standard:\"EIP-1193\",message:\"The requested method is not supported by this Ethereum provider.\"},4900:{standard:\"EIP-1193\",message:\"The provider is disconnected from all chains.\"},4901:{standard:\"EIP-1193\",message:\"The provider is disconnected from the specified chain.\"}}});var Qee=be(ag=>{\"use strict\";p();Object.defineProperty(ag,\"__esModule\",{value:!0});ag.serializeError=ag.isValidCode=ag.getMessageFromCode=ag.JSON_RPC_SERVER_ERROR_MESSAGE=void 0;var oz=rz(),Ott=nz(),ISe=oz.errorCodes.rpc.internal,Ptt=\"Unspecified error message. This is a bug, please report it.\",Mtt={code:ISe,message:Yee(ISe)};ag.JSON_RPC_SERVER_ERROR_MESSAGE=\"Unspecified server error.\";function Yee(t,e=Ptt){if(Number.isInteger(t)){let n=t.toString();if(Zee(oz.errorValues,n))return oz.errorValues[n].message;if(MSe(t))return ag.JSON_RPC_SERVER_ERROR_MESSAGE}return e}ag.getMessageFromCode=Yee;function PSe(t){if(!Number.isInteger(t))return!1;let e=t.toString();return!!(oz.errorValues[e]||MSe(t))}ag.isValidCode=PSe;function Ntt(t,{fallbackError:e=Mtt,shouldIncludeStack:n=!1}={}){var r,o;if(!e||!Number.isInteger(e.code)||typeof e.message!=\"string\")throw new Error(\"Must provide fallback error with integer number code and string message.\");if(t instanceof Ott.EthereumRpcError)return t.serialize();let i={};if(t&&typeof t==\"object\"&&!Array.isArray(t)&&Zee(t,\"code\")&&PSe(t.code)){let c=t;i.code=c.code,c.message&&typeof c.message==\"string\"?(i.message=c.message,Zee(c,\"data\")&&(i.data=c.data)):(i.message=Yee(i.code),i.data={originalError:OSe(t)})}else{i.code=e.code;let c=(r=t)===null||r===void 0?void 0:r.message;i.message=c&&typeof c==\"string\"?c:e.message,i.data={originalError:OSe(t)}}let a=(o=t)===null||o===void 0?void 0:o.stack;return n&&t&&a&&typeof a==\"string\"&&(i.stack=a),i}ag.serializeError=Ntt;function MSe(t){return t>=-32099&&t<=-32e3}function OSe(t){return t&&typeof t==\"object\"&&!Array.isArray(t)?Object.assign({},t):t}function Zee(t,e){return Object.prototype.hasOwnProperty.call(t,e)}});var BSe=be(iz=>{\"use strict\";p();Object.defineProperty(iz,\"__esModule\",{value:!0});iz.ethErrors=void 0;var Jee=nz(),NSe=Qee(),yu=rz();iz.ethErrors={rpc:{parse:t=>mm(yu.errorCodes.rpc.parse,t),invalidRequest:t=>mm(yu.errorCodes.rpc.invalidRequest,t),invalidParams:t=>mm(yu.errorCodes.rpc.invalidParams,t),methodNotFound:t=>mm(yu.errorCodes.rpc.methodNotFound,t),internal:t=>mm(yu.errorCodes.rpc.internal,t),server:t=>{if(!t||typeof t!=\"object\"||Array.isArray(t))throw new Error(\"Ethereum RPC Server errors must provide single object argument.\");let{code:e}=t;if(!Number.isInteger(e)||e>-32005||e<-32099)throw new Error(\\'\"code\" must be an integer such that: -32099 <= code <= -32005\\');return mm(e,t)},invalidInput:t=>mm(yu.errorCodes.rpc.invalidInput,t),resourceNotFound:t=>mm(yu.errorCodes.rpc.resourceNotFound,t),resourceUnavailable:t=>mm(yu.errorCodes.rpc.resourceUnavailable,t),transactionRejected:t=>mm(yu.errorCodes.rpc.transactionRejected,t),methodNotSupported:t=>mm(yu.errorCodes.rpc.methodNotSupported,t),limitExceeded:t=>mm(yu.errorCodes.rpc.limitExceeded,t)},provider:{userRejectedRequest:t=>KI(yu.errorCodes.provider.userRejectedRequest,t),unauthorized:t=>KI(yu.errorCodes.provider.unauthorized,t),unsupportedMethod:t=>KI(yu.errorCodes.provider.unsupportedMethod,t),disconnected:t=>KI(yu.errorCodes.provider.disconnected,t),chainDisconnected:t=>KI(yu.errorCodes.provider.chainDisconnected,t),custom:t=>{if(!t||typeof t!=\"object\"||Array.isArray(t))throw new Error(\"Ethereum Provider custom errors must provide single object argument.\");let{code:e,message:n,data:r}=t;if(!n||typeof n!=\"string\")throw new Error(\\'\"message\" must be a nonempty string\\');return new Jee.EthereumProviderError(e,n,r)}}};function mm(t,e){let[n,r]=LSe(e);return new Jee.EthereumRpcError(t,n||NSe.getMessageFromCode(t),r)}function KI(t,e){let[n,r]=LSe(e);return new Jee.EthereumProviderError(t,n||NSe.getMessageFromCode(t),r)}function LSe(t){if(t){if(typeof t==\"string\")return[t];if(typeof t==\"object\"&&!Array.isArray(t)){let{message:e,data:n}=t;if(e&&typeof e!=\"string\")throw new Error(\"Must specify string message.\");return[e||void 0,n]}}return[]}});var USe=be(Af=>{\"use strict\";p();Object.defineProperty(Af,\"__esModule\",{value:!0});Af.getMessageFromCode=Af.serializeError=Af.EthereumProviderError=Af.EthereumRpcError=Af.ethErrors=Af.errorCodes=void 0;var DSe=nz();Object.defineProperty(Af,\"EthereumRpcError\",{enumerable:!0,get:function(){return DSe.EthereumRpcError}});Object.defineProperty(Af,\"EthereumProviderError\",{enumerable:!0,get:function(){return DSe.EthereumProviderError}});var FSe=Qee();Object.defineProperty(Af,\"serializeError\",{enumerable:!0,get:function(){return FSe.serializeError}});Object.defineProperty(Af,\"getMessageFromCode\",{enumerable:!0,get:function(){return FSe.getMessageFromCode}});var Ltt=BSe();Object.defineProperty(Af,\"ethErrors\",{enumerable:!0,get:function(){return Ltt.ethErrors}});var Btt=rz();Object.defineProperty(Af,\"errorCodes\",{enumerable:!0,get:function(){return Btt.errorCodes}})});var tte=be(H8=>{\"use strict\";p();var Dtt=H8&&H8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(H8,\"__esModule\",{value:!0});H8.JsonRpcEngine=void 0;var Ftt=Dtt(SSe()),gm=USe(),ete=class t extends Ftt.default{constructor(){super(),this._middleware=[]}push(e){this._middleware.push(e)}handle(e,n){if(n&&typeof n!=\"function\")throw new Error(\\'\"callback\" must be a function if provided.\\');return Array.isArray(e)?n?this._handleBatch(e,n):this._handleBatch(e):n?this._handle(e,n):this._promiseHandle(e)}asMiddleware(){return async(e,n,r,o)=>{try{let[i,a,c]=await t._runAllMiddleware(e,n,this._middleware);return a?(await t._runReturnHandlers(c),o(i)):r(async u=>{try{await t._runReturnHandlers(c)}catch(d){return u(d)}return u()})}catch(i){return o(i)}}}async _handleBatch(e,n){try{let r=await Promise.all(e.map(this._promiseHandle.bind(this)));return n?n(null,r):r}catch(r){if(n)return n(r);throw r}}_promiseHandle(e){return new Promise(n=>{this._handle(e,(r,o)=>{n(o)})})}async _handle(e,n){if(!e||Array.isArray(e)||typeof e!=\"object\"){let a=new gm.EthereumRpcError(gm.errorCodes.rpc.invalidRequest,`Requests must be plain objects. Received: ${typeof e}`,{request:e});return n(a,{id:void 0,jsonrpc:\"2.0\",error:a})}if(typeof e.method!=\"string\"){let a=new gm.EthereumRpcError(gm.errorCodes.rpc.invalidRequest,`Must specify a string method. Received: ${typeof e.method}`,{request:e});return n(a,{id:e.id,jsonrpc:\"2.0\",error:a})}let r=Object.assign({},e),o={id:r.id,jsonrpc:r.jsonrpc},i=null;try{await this._processRequest(r,o)}catch(a){i=a}return i&&(delete o.result,o.error||(o.error=gm.serializeError(i))),n(i,o)}async _processRequest(e,n){let[r,o,i]=await t._runAllMiddleware(e,n,this._middleware);if(t._checkForCompletion(e,n,o),await t._runReturnHandlers(i),r)throw r}static async _runAllMiddleware(e,n,r){let o=[],i=null,a=!1;for(let c of r)if([i,a]=await t._runMiddleware(e,n,c,o),a)break;return[i,a,o.reverse()]}static _runMiddleware(e,n,r,o){return new Promise(i=>{let a=u=>{let d=u||n.error;d&&(n.error=gm.serializeError(d)),i([d,!0])},c=u=>{n.error?a(n.error):(u&&(typeof u!=\"function\"&&a(new gm.EthereumRpcError(gm.errorCodes.rpc.internal,`JsonRpcEngine: \"next\" return handlers must be functions. Received \"${typeof u}\" for request:\\n${Xee(e)}`,{request:e})),o.push(u)),i([null,!1]))};try{r(e,n,c,a)}catch(u){a(u)}})}static async _runReturnHandlers(e){for(let n of e)await new Promise((r,o)=>{n(i=>i?o(i):r())})}static _checkForCompletion(e,n,r){if(!(\"result\"in n)&&!(\"error\"in n))throw new gm.EthereumRpcError(gm.errorCodes.rpc.internal,`JsonRpcEngine: Response has no error or result for request:\\n${Xee(e)}`,{request:e});if(!r)throw new gm.EthereumRpcError(gm.errorCodes.rpc.internal,`JsonRpcEngine: Nothing ended request:\\n${Xee(e)}`,{request:e})}};H8.JsonRpcEngine=ete;function Xee(t){return JSON.stringify(t,null,2)}});var jSe=be(sz=>{\"use strict\";p();Object.defineProperty(sz,\"__esModule\",{value:!0});sz.mergeMiddleware=void 0;var Utt=tte();function jtt(t){let e=new Utt.JsonRpcEngine;return t.forEach(n=>e.push(n)),e.asMiddleware()}sz.mergeMiddleware=jtt});var nte=be(ym=>{\"use strict\";p();var ztt=ym&&ym.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n),Object.defineProperty(t,r,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),q8=ym&&ym.__exportStar||function(t,e){for(var n in t)n!==\"default\"&&!Object.prototype.hasOwnProperty.call(e,n)&&ztt(e,t,n)};Object.defineProperty(ym,\"__esModule\",{value:!0});q8(vSe(),ym);q8(wSe(),ym);q8(xSe(),ym);q8(qee(),ym);q8(tte(),ym);q8(jSe(),ym)});var uz=be((qln,lz)=>{p();var zSe,HSe,qSe,WSe,VSe,$Se,KSe,GSe,ZSe,YSe,QSe,JSe,XSe,az,rte,eke,tke,nke,W8,rke,oke,ike,ske,ake,cke,lke,uke,dke,cz,fke,hke,pke;(function(t){var e=typeof globalThis==\"object\"?globalThis:typeof self==\"object\"?self:typeof this==\"object\"?this:{};typeof define==\"function\"&&define.amd?define(\"tslib\",[\"exports\"],function(r){t(n(e,n(r)))}):typeof lz==\"object\"&&typeof lz.exports==\"object\"?t(n(e,n(lz.exports))):t(n(e));function n(r,o){return r!==e&&(typeof Object.create==\"function\"?Object.defineProperty(r,\"__esModule\",{value:!0}):r.__esModule=!0),function(i,a){return r[i]=o?o(i,a):a}}})(function(t){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,a){i.__proto__=a}||function(i,a){for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(i[c]=a[c])};zSe=function(i,a){if(typeof a!=\"function\"&&a!==null)throw new TypeError(\"Class extends value \"+String(a)+\" is not a constructor or null\");e(i,a);function c(){this.constructor=i}i.prototype=a===null?Object.create(a):(c.prototype=a.prototype,new c)},HSe=Object.assign||function(i){for(var a,c=1,u=arguments.length;c<u;c++){a=arguments[c];for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&(i[d]=a[d])}return i},qSe=function(i,a){var c={};for(var u in i)Object.prototype.hasOwnProperty.call(i,u)&&a.indexOf(u)<0&&(c[u]=i[u]);if(i!=null&&typeof Object.getOwnPropertySymbols==\"function\")for(var d=0,u=Object.getOwnPropertySymbols(i);d<u.length;d++)a.indexOf(u[d])<0&&Object.prototype.propertyIsEnumerable.call(i,u[d])&&(c[u[d]]=i[u[d]]);return c},WSe=function(i,a,c,u){var d=arguments.length,h=d<3?a:u===null?u=Object.getOwnPropertyDescriptor(a,c):u,m;if(typeof Reflect==\"object\"&&typeof Reflect.decorate==\"function\")h=Reflect.decorate(i,a,c,u);else for(var g=i.length-1;g>=0;g--)(m=i[g])&&(h=(d<3?m(h):d>3?m(a,c,h):m(a,c))||h);return d>3&&h&&Object.defineProperty(a,c,h),h},VSe=function(i,a){return function(c,u){a(c,u,i)}},$Se=function(i,a,c,u,d,h){function m(J){if(J!==void 0&&typeof J!=\"function\")throw new TypeError(\"Function expected\");return J}for(var g=u.kind,b=g===\"getter\"?\"get\":g===\"setter\"?\"set\":\"value\",E=!a&&i?u.static?i:i.prototype:null,C=a||(E?Object.getOwnPropertyDescriptor(E,u.name):{}),T,R=!1,L=c.length-1;L>=0;L--){var D={};for(var G in u)D[G]=G===\"access\"?{}:u[G];for(var G in u.access)D.access[G]=u.access[G];D.addInitializer=function(J){if(R)throw new TypeError(\"Cannot add initializers after decoration has completed\");h.push(m(J||null))};var W=(0,c[L])(g===\"accessor\"?{get:C.get,set:C.set}:C[b],D);if(g===\"accessor\"){if(W===void 0)continue;if(W===null||typeof W!=\"object\")throw new TypeError(\"Object expected\");(T=m(W.get))&&(C.get=T),(T=m(W.set))&&(C.set=T),(T=m(W.init))&&d.unshift(T)}else(T=m(W))&&(g===\"field\"?d.unshift(T):C[b]=T)}E&&Object.defineProperty(E,u.name,C),R=!0},KSe=function(i,a,c){for(var u=arguments.length>2,d=0;d<a.length;d++)c=u?a[d].call(i,c):a[d].call(i);return u?c:void 0},GSe=function(i){return typeof i==\"symbol\"?i:\"\".concat(i)},ZSe=function(i,a,c){return typeof a==\"symbol\"&&(a=a.description?\"[\".concat(a.description,\"]\"):\"\"),Object.defineProperty(i,\"name\",{configurable:!0,value:c?\"\".concat(c,\" \",a):a})},YSe=function(i,a){if(typeof Reflect==\"object\"&&typeof Reflect.metadata==\"function\")return Reflect.metadata(i,a)},QSe=function(i,a,c,u){function d(h){return h instanceof c?h:new c(function(m){m(h)})}return new(c||(c=Promise))(function(h,m){function g(C){try{E(u.next(C))}catch(T){m(T)}}function b(C){try{E(u.throw(C))}catch(T){m(T)}}function E(C){C.done?h(C.value):d(C.value).then(g,b)}E((u=u.apply(i,a||[])).next())})},JSe=function(i,a){var c={label:0,sent:function(){if(h[0]&1)throw h[1];return h[1]},trys:[],ops:[]},u,d,h,m=Object.create((typeof Iterator==\"function\"?Iterator:Object).prototype);return m.next=g(0),m.throw=g(1),m.return=g(2),typeof Symbol==\"function\"&&(m[Symbol.iterator]=function(){return this}),m;function g(E){return function(C){return b([E,C])}}function b(E){if(u)throw new TypeError(\"Generator is already executing.\");for(;m&&(m=0,E[0]&&(c=0)),c;)try{if(u=1,d&&(h=E[0]&2?d.return:E[0]?d.throw||((h=d.return)&&h.call(d),0):d.next)&&!(h=h.call(d,E[1])).done)return h;switch(d=0,h&&(E=[E[0]&2,h.value]),E[0]){case 0:case 1:h=E;break;case 4:return c.label++,{value:E[1],done:!1};case 5:c.label++,d=E[1],E=[0];continue;case 7:E=c.ops.pop(),c.trys.pop();continue;default:if(h=c.trys,!(h=h.length>0&&h[h.length-1])&&(E[0]===6||E[0]===2)){c=0;continue}if(E[0]===3&&(!h||E[1]>h[0]&&E[1]<h[3])){c.label=E[1];break}if(E[0]===6&&c.label<h[1]){c.label=h[1],h=E;break}if(h&&c.label<h[2]){c.label=h[2],c.ops.push(E);break}h[2]&&c.ops.pop(),c.trys.pop();continue}E=a.call(i,c)}catch(C){E=[6,C],d=0}finally{u=h=0}if(E[0]&5)throw E[1];return{value:E[0]?E[1]:void 0,done:!0}}},XSe=function(i,a){for(var c in i)c!==\"default\"&&!Object.prototype.hasOwnProperty.call(a,c)&&cz(a,i,c)},cz=Object.create?function(i,a,c,u){u===void 0&&(u=c);var d=Object.getOwnPropertyDescriptor(a,c);(!d||(\"get\"in d?!a.__esModule:d.writable||d.configurable))&&(d={enumerable:!0,get:function(){return a[c]}}),Object.defineProperty(i,u,d)}:function(i,a,c,u){u===void 0&&(u=c),i[u]=a[c]},az=function(i){var a=typeof Symbol==\"function\"&&Symbol.iterator,c=a&&i[a],u=0;if(c)return c.call(i);if(i&&typeof i.length==\"number\")return{next:function(){return i&&u>=i.length&&(i=void 0),{value:i&&i[u++],done:!i}}};throw new TypeError(a?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")},rte=function(i,a){var c=typeof Symbol==\"function\"&&i[Symbol.iterator];if(!c)return i;var u=c.call(i),d,h=[],m;try{for(;(a===void 0||a-- >0)&&!(d=u.next()).done;)h.push(d.value)}catch(g){m={error:g}}finally{try{d&&!d.done&&(c=u.return)&&c.call(u)}finally{if(m)throw m.error}}return h},eke=function(){for(var i=[],a=0;a<arguments.length;a++)i=i.concat(rte(arguments[a]));return i},tke=function(){for(var i=0,a=0,c=arguments.length;a<c;a++)i+=arguments[a].length;for(var u=Array(i),d=0,a=0;a<c;a++)for(var h=arguments[a],m=0,g=h.length;m<g;m++,d++)u[d]=h[m];return u},nke=function(i,a,c){if(c||arguments.length===2)for(var u=0,d=a.length,h;u<d;u++)(h||!(u in a))&&(h||(h=Array.prototype.slice.call(a,0,u)),h[u]=a[u]);return i.concat(h||Array.prototype.slice.call(a))},W8=function(i){return this instanceof W8?(this.v=i,this):new W8(i)},rke=function(i,a,c){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var u=c.apply(i,a||[]),d,h=[];return d=Object.create((typeof AsyncIterator==\"function\"?AsyncIterator:Object).prototype),g(\"next\"),g(\"throw\"),g(\"return\",m),d[Symbol.asyncIterator]=function(){return this},d;function m(L){return function(D){return Promise.resolve(D).then(L,T)}}function g(L,D){u[L]&&(d[L]=function(G){return new Promise(function(W,J){h.push([L,G,W,J])>1||b(L,G)})},D&&(d[L]=D(d[L])))}function b(L,D){try{E(u[L](D))}catch(G){R(h[0][3],G)}}function E(L){L.value instanceof W8?Promise.resolve(L.value.v).then(C,T):R(h[0][2],L)}function C(L){b(\"next\",L)}function T(L){b(\"throw\",L)}function R(L,D){L(D),h.shift(),h.length&&b(h[0][0],h[0][1])}},oke=function(i){var a,c;return a={},u(\"next\"),u(\"throw\",function(d){throw d}),u(\"return\"),a[Symbol.iterator]=function(){return this},a;function u(d,h){a[d]=i[d]?function(m){return(c=!c)?{value:W8(i[d](m)),done:!1}:h?h(m):m}:h}},ike=function(i){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var a=i[Symbol.asyncIterator],c;return a?a.call(i):(i=typeof az==\"function\"?az(i):i[Symbol.iterator](),c={},u(\"next\"),u(\"throw\"),u(\"return\"),c[Symbol.asyncIterator]=function(){return this},c);function u(h){c[h]=i[h]&&function(m){return new Promise(function(g,b){m=i[h](m),d(g,b,m.done,m.value)})}}function d(h,m,g,b){Promise.resolve(b).then(function(E){h({value:E,done:g})},m)}},ske=function(i,a){return Object.defineProperty?Object.defineProperty(i,\"raw\",{value:a}):i.raw=a,i};var n=Object.create?function(i,a){Object.defineProperty(i,\"default\",{enumerable:!0,value:a})}:function(i,a){i.default=a},r=function(i){return r=Object.getOwnPropertyNames||function(a){var c=[];for(var u in a)Object.prototype.hasOwnProperty.call(a,u)&&(c[c.length]=u);return c},r(i)};ake=function(i){if(i&&i.__esModule)return i;var a={};if(i!=null)for(var c=r(i),u=0;u<c.length;u++)c[u]!==\"default\"&&cz(a,i,c[u]);return n(a,i),a},cke=function(i){return i&&i.__esModule?i:{default:i}},lke=function(i,a,c,u){if(c===\"a\"&&!u)throw new TypeError(\"Private accessor was defined without a getter\");if(typeof a==\"function\"?i!==a||!u:!a.has(i))throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");return c===\"m\"?u:c===\"a\"?u.call(i):u?u.value:a.get(i)},uke=function(i,a,c,u,d){if(u===\"m\")throw new TypeError(\"Private method is not writable\");if(u===\"a\"&&!d)throw new TypeError(\"Private accessor was defined without a setter\");if(typeof a==\"function\"?i!==a||!d:!a.has(i))throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");return u===\"a\"?d.call(i,c):d?d.value=c:a.set(i,c),c},dke=function(i,a){if(a===null||typeof a!=\"object\"&&typeof a!=\"function\")throw new TypeError(\"Cannot use \\'in\\' operator on non-object\");return typeof i==\"function\"?a===i:i.has(a)},fke=function(i,a,c){if(a!=null){if(typeof a!=\"object\"&&typeof a!=\"function\")throw new TypeError(\"Object expected.\");var u,d;if(c){if(!Symbol.asyncDispose)throw new TypeError(\"Symbol.asyncDispose is not defined.\");u=a[Symbol.asyncDispose]}if(u===void 0){if(!Symbol.dispose)throw new TypeError(\"Symbol.dispose is not defined.\");u=a[Symbol.dispose],c&&(d=u)}if(typeof u!=\"function\")throw new TypeError(\"Object not disposable.\");d&&(u=function(){try{d.call(this)}catch(h){return Promise.reject(h)}}),i.stack.push({value:a,dispose:u,async:c})}else c&&i.stack.push({async:!0});return a};var o=typeof SuppressedError==\"function\"?SuppressedError:function(i,a,c){var u=new Error(c);return u.name=\"SuppressedError\",u.error=i,u.suppressed=a,u};hke=function(i){function a(h){i.error=i.hasError?new o(h,i.error,\"An error was suppressed during disposal.\"):h,i.hasError=!0}var c,u=0;function d(){for(;c=i.stack.pop();)try{if(!c.async&&u===1)return u=0,i.stack.push(c),Promise.resolve().then(d);if(c.dispose){var h=c.dispose.call(c.value);if(c.async)return u|=2,Promise.resolve(h).then(d,function(m){return a(m),d()})}else u|=1}catch(m){a(m)}if(u===1)return i.hasError?Promise.reject(i.error):Promise.resolve();if(i.hasError)throw i.error}return d()},pke=function(i,a){return typeof i==\"string\"&&/^\\\\.\\\\.?\\\\//.test(i)?i.replace(/\\\\.(tsx)$|((?:\\\\.d)?)((?:\\\\.[^./]+?)?)\\\\.([cm]?)ts$/i,function(c,u,d,h,m){return u?a?\".jsx\":\".js\":d&&(!h||!m)?c:d+h+\".\"+m.toLowerCase()+\"js\"}):i},t(\"__extends\",zSe),t(\"__assign\",HSe),t(\"__rest\",qSe),t(\"__decorate\",WSe),t(\"__param\",VSe),t(\"__esDecorate\",$Se),t(\"__runInitializers\",KSe),t(\"__propKey\",GSe),t(\"__setFunctionName\",ZSe),t(\"__metadata\",YSe),t(\"__awaiter\",QSe),t(\"__generator\",JSe),t(\"__exportStar\",XSe),t(\"__createBinding\",cz),t(\"__values\",az),t(\"__read\",rte),t(\"__spread\",eke),t(\"__spreadArrays\",tke),t(\"__spreadArray\",nke),t(\"__await\",W8),t(\"__asyncGenerator\",rke),t(\"__asyncDelegator\",oke),t(\"__asyncValues\",ike),t(\"__makeTemplateObject\",ske),t(\"__importStar\",ake),t(\"__importDefault\",cke),t(\"__classPrivateFieldGet\",lke),t(\"__classPrivateFieldSet\",uke),t(\"__classPrivateFieldIn\",dke),t(\"__addDisposableResource\",fke),t(\"__disposeResources\",hke),t(\"__rewriteRelativeImportExtension\",pke)})});var ite=be(ote=>{\"use strict\";p();Object.defineProperty(ote,\"__esModule\",{value:!0});var mke=uz(),Htt=function(){function t(e){if(this._maxConcurrency=e,this._queue=[],e<=0)throw new Error(\"semaphore must be initialized to a positive value\");this._value=e}return t.prototype.acquire=function(){var e=this,n=this.isLocked(),r=new Promise(function(o){return e._queue.push(o)});return n||this._dispatch(),r},t.prototype.runExclusive=function(e){return mke.__awaiter(this,void 0,void 0,function(){var n,r,o;return mke.__generator(this,function(i){switch(i.label){case 0:return[4,this.acquire()];case 1:n=i.sent(),r=n[0],o=n[1],i.label=2;case 2:return i.trys.push([2,,4,5]),[4,e(r)];case 3:return[2,i.sent()];case 4:return o(),[7];case 5:return[2]}})})},t.prototype.isLocked=function(){return this._value<=0},t.prototype.release=function(){if(this._maxConcurrency>1)throw new Error(\"this method is unavailabel on semaphores with concurrency > 1; use the scoped release returned by acquire instead\");if(this._currentReleaser){var e=this._currentReleaser;this._currentReleaser=void 0,e()}},t.prototype._dispatch=function(){var e=this,n=this._queue.shift();if(n){var r=!1;this._currentReleaser=function(){r||(r=!0,e._value++,e._dispatch())},n([this._value--,this._currentReleaser])}},t}();ote.default=Htt});var yke=be(ste=>{\"use strict\";p();Object.defineProperty(ste,\"__esModule\",{value:!0});var gke=uz(),qtt=ite(),Wtt=function(){function t(){this._semaphore=new qtt.default(1)}return t.prototype.acquire=function(){return gke.__awaiter(this,void 0,void 0,function(){var e,n;return gke.__generator(this,function(r){switch(r.label){case 0:return[4,this._semaphore.acquire()];case 1:return e=r.sent(),n=e[1],[2,n]}})})},t.prototype.runExclusive=function(e){return this._semaphore.runExclusive(function(){return e()})},t.prototype.isLocked=function(){return this._semaphore.isLocked()},t.prototype.release=function(){this._semaphore.release()},t}();ste.default=Wtt});var bke=be(fz=>{\"use strict\";p();Object.defineProperty(fz,\"__esModule\",{value:!0});fz.withTimeout=void 0;var dz=uz();function Vtt(t,e,n){var r=this;return n===void 0&&(n=new Error(\"timeout\")),{acquire:function(){return new Promise(function(o,i){return dz.__awaiter(r,void 0,void 0,function(){var a,c,u;return dz.__generator(this,function(d){switch(d.label){case 0:return a=!1,setTimeout(function(){a=!0,i(n)},e),[4,t.acquire()];case 1:return c=d.sent(),a?(u=Array.isArray(c)?c[1]:c,u()):o(c),[2]}})})})},runExclusive:function(o){return dz.__awaiter(this,void 0,void 0,function(){var i,a;return dz.__generator(this,function(c){switch(c.label){case 0:i=function(){},c.label=1;case 1:return c.trys.push([1,,7,8]),[4,this.acquire()];case 2:return a=c.sent(),Array.isArray(a)?(i=a[1],[4,o(a[0])]):[3,4];case 3:return[2,c.sent()];case 4:return i=a,[4,o()];case 5:return[2,c.sent()];case 6:return[3,8];case 7:return i(),[7];case 8:return[2]}})})},release:function(){t.release()},isLocked:function(){return t.isLocked()}}}fz.withTimeout=Vtt});var vke=be(jx=>{\"use strict\";p();Object.defineProperty(jx,\"__esModule\",{value:!0});jx.withTimeout=jx.Semaphore=jx.Mutex=void 0;var $tt=yke();Object.defineProperty(jx,\"Mutex\",{enumerable:!0,get:function(){return $tt.default}});var Ktt=ite();Object.defineProperty(jx,\"Semaphore\",{enumerable:!0,get:function(){return Ktt.default}});var Gtt=bke();Object.defineProperty(jx,\"withTimeout\",{enumerable:!0,get:function(){return Gtt.withTimeout}})});var xke=be((Xln,wke)=>{p();wke.exports=Ytt;var Ztt=Object.prototype.hasOwnProperty;function Ytt(){for(var t={},e=0;e<arguments.length;e++){var n=arguments[e];for(var r in n)Ztt.call(n,r)&&(t[r]=n[r])}return t}});var Ske=be((tun,Eke)=>{p();var Qtt=xke(),Jtt=Rj()();Eke.exports=jn;function jn(t){let e=this;e.currentProvider=t}jn.prototype.getBalance=GI(2,\"eth_getBalance\");jn.prototype.getCode=GI(2,\"eth_getCode\");jn.prototype.getTransactionCount=GI(2,\"eth_getTransactionCount\");jn.prototype.getStorageAt=GI(3,\"eth_getStorageAt\");jn.prototype.call=GI(2,\"eth_call\");jn.prototype.protocolVersion=Or(\"eth_protocolVersion\");jn.prototype.syncing=Or(\"eth_syncing\");jn.prototype.coinbase=Or(\"eth_coinbase\");jn.prototype.mining=Or(\"eth_mining\");jn.prototype.hashrate=Or(\"eth_hashrate\");jn.prototype.gasPrice=Or(\"eth_gasPrice\");jn.prototype.accounts=Or(\"eth_accounts\");jn.prototype.blockNumber=Or(\"eth_blockNumber\");jn.prototype.getBlockTransactionCountByHash=Or(\"eth_getBlockTransactionCountByHash\");jn.prototype.getBlockTransactionCountByNumber=Or(\"eth_getBlockTransactionCountByNumber\");jn.prototype.getUncleCountByBlockHash=Or(\"eth_getUncleCountByBlockHash\");jn.prototype.getUncleCountByBlockNumber=Or(\"eth_getUncleCountByBlockNumber\");jn.prototype.sign=Or(\"eth_sign\");jn.prototype.sendTransaction=Or(\"eth_sendTransaction\");jn.prototype.sendRawTransaction=Or(\"eth_sendRawTransaction\");jn.prototype.estimateGas=Or(\"eth_estimateGas\");jn.prototype.getBlockByHash=Or(\"eth_getBlockByHash\");jn.prototype.getBlockByNumber=Or(\"eth_getBlockByNumber\");jn.prototype.getTransactionByHash=Or(\"eth_getTransactionByHash\");jn.prototype.getTransactionByBlockHashAndIndex=Or(\"eth_getTransactionByBlockHashAndIndex\");jn.prototype.getTransactionByBlockNumberAndIndex=Or(\"eth_getTransactionByBlockNumberAndIndex\");jn.prototype.getTransactionReceipt=Or(\"eth_getTransactionReceipt\");jn.prototype.getUncleByBlockHashAndIndex=Or(\"eth_getUncleByBlockHashAndIndex\");jn.prototype.getUncleByBlockNumberAndIndex=Or(\"eth_getUncleByBlockNumberAndIndex\");jn.prototype.getCompilers=Or(\"eth_getCompilers\");jn.prototype.compileLLL=Or(\"eth_compileLLL\");jn.prototype.compileSolidity=Or(\"eth_compileSolidity\");jn.prototype.compileSerpent=Or(\"eth_compileSerpent\");jn.prototype.newFilter=Or(\"eth_newFilter\");jn.prototype.newBlockFilter=Or(\"eth_newBlockFilter\");jn.prototype.newPendingTransactionFilter=Or(\"eth_newPendingTransactionFilter\");jn.prototype.uninstallFilter=Or(\"eth_uninstallFilter\");jn.prototype.getFilterChanges=Or(\"eth_getFilterChanges\");jn.prototype.getFilterLogs=Or(\"eth_getFilterLogs\");jn.prototype.getLogs=Or(\"eth_getLogs\");jn.prototype.getWork=Or(\"eth_getWork\");jn.prototype.submitWork=Or(\"eth_submitWork\");jn.prototype.submitHashrate=Or(\"eth_submitHashrate\");jn.prototype.sendAsync=function(t,e){this.currentProvider.sendAsync(Xtt(t),function(r,o){if(!r&&o.error&&(r=new Error(\"EthQuery - RPC Error - \"+o.error.message)),r)return e(r);e(null,o.result)})};function Or(t){return function(){let e=this;var n=[].slice.call(arguments),r=n.pop();e.sendAsync({method:t,params:n},r)}}function GI(t,e){return function(){let n=this;var r=[].slice.call(arguments),o=r.pop();r.length<t&&r.push(\"latest\"),n.sendAsync({method:e,params:r},o)}}function Xtt(t){return Qtt({id:Jtt(),jsonrpc:\"2.0\",params:[]},t)}});var Ake=be((run,Cke)=>{\"use strict\";p();var kke=(t,e,n,r)=>function(...o){let i=e.promiseModule;return new i((a,c)=>{e.multiArgs?o.push((...d)=>{e.errorFirst?d[0]?c(d):(d.shift(),a(d)):a(d)}):e.errorFirst?o.push((d,h)=>{d?c(d):a(h)}):o.push(a),Reflect.apply(t,this===n?r:this,o)})},_ke=new WeakMap;Cke.exports=(t,e)=>{e={exclude:[/.+(?:Sync|Stream)$/],errorFirst:!0,promiseModule:Promise,...e};let n=typeof t;if(!(t!==null&&(n===\"object\"||n===\"function\")))throw new TypeError(`Expected \\\\`input\\\\` to be a \\\\`Function\\\\` or \\\\`Object\\\\`, got \\\\`${t===null?\"null\":n}\\\\``);let r=(a,c)=>{let u=_ke.get(a);if(u||(u={},_ke.set(a,u)),c in u)return u[c];let d=E=>typeof E==\"string\"||typeof c==\"symbol\"?c===E:E.test(c),h=Reflect.getOwnPropertyDescriptor(a,c),m=h===void 0||h.writable||h.configurable,b=(e.include?e.include.some(d):!e.exclude.some(d))&&m;return u[c]=b,b},o=new WeakMap,i=new Proxy(t,{apply(a,c,u){let d=o.get(a);if(d)return Reflect.apply(d,c,u);let h=e.excludeMain?a:kke(a,e,i,a);return o.set(a,h),Reflect.apply(h,c,u)},get(a,c){let u=a[c];if(!r(a,c)||u===Function.prototype[c])return u;let d=o.get(u);if(d)return d;if(typeof u==\"function\"){let h=kke(u,e,i,a);return o.set(u,h),h}return u}});return i}});var hz=be((iun,Tke)=>{p();var ent=Ij().default,ate=class extends ent{constructor(){super(),this.updates=[]}async initialize(){}async update(){throw new Error(\"BaseFilter - no update method specified\")}addResults(e){this.updates=this.updates.concat(e),e.forEach(n=>this.emit(\"update\",n))}addInitialResults(e){}getChangesAndClear(){let e=this.updates;return this.updates=[],e}};Tke.exports=ate});var Ike=be((aun,Rke)=>{p();var tnt=hz(),cte=class extends tnt{constructor(){super(),this.allResults=[]}async update(){throw new Error(\"BaseFilterWithHistory - no update method specified\")}addResults(e){this.allResults=this.allResults.concat(e),super.addResults(e)}addInitialResults(e){this.allResults=this.allResults.concat(e),super.addInitialResults(e)}getAllResults(){return this.allResults}};Rke.exports=cte});var V8=be((lun,Mke)=>{p();Mke.exports={minBlockRef:nnt,maxBlockRef:rnt,sortBlockRefs:lte,bnToHex:ont,blockRefIsNumber:int,hexToInt:pz,incrementHexInt:snt,intToHex:Pke,unsafeRandomBytes:ant};function nnt(...t){return lte(t)[0]}function rnt(...t){let e=lte(t);return e[e.length-1]}function lte(t){return t.sort((e,n)=>e===\"latest\"||n===\"earliest\"?1:n===\"latest\"||e===\"earliest\"?-1:pz(e)-pz(n))}function ont(t){return\"0x\"+t.toString(16)}function int(t){return t&&![\"earliest\",\"latest\",\"pending\"].includes(t)}function pz(t){return t==null?t:Number.parseInt(t,16)}function snt(t){if(t==null)return t;let e=pz(t);return Pke(e+1)}function Pke(t){if(t==null)return t;let e=t.toString(16);return e.length%2&&(e=\"0\"+e),\"0x\"+e}function ant(t){let e=\"0x\";for(let n=0;n<t;n++)e+=Oke(),e+=Oke();return e}function Oke(){return Math.floor(Math.random()*16).toString(16)}});var Lke=be((fun,Nke)=>{p();var cnt=Ske(),lnt=Ake(),unt=Ike(),{bnToHex:dun,hexToInt:mz,incrementHexInt:dnt,minBlockRef:fnt,blockRefIsNumber:hnt}=V8(),ute=class extends unt{constructor({provider:e,params:n}){super(),this.type=\"log\",this.ethQuery=new cnt(e),this.params=Object.assign({fromBlock:\"latest\",toBlock:\"latest\",address:void 0,topics:[]},n),this.params.address&&(Array.isArray(this.params.address)||(this.params.address=[this.params.address]),this.params.address=this.params.address.map(r=>r.toLowerCase()))}async initialize({currentBlock:e}){let n=this.params.fromBlock;[\"latest\",\"pending\"].includes(n)&&(n=e),n===\"earliest\"&&(n=\"0x0\"),this.params.fromBlock=n;let r=fnt(this.params.toBlock,e),o=Object.assign({},this.params,{toBlock:r}),i=await this._fetchLogs(o);this.addInitialResults(i)}async update({oldBlock:e,newBlock:n}){let r=n,o;e?o=dnt(e):o=n;let i=Object.assign({},this.params,{fromBlock:o,toBlock:r}),c=(await this._fetchLogs(i)).filter(u=>this.matchLog(u));this.addResults(c)}async _fetchLogs(e){return await lnt(r=>this.ethQuery.getLogs(e,r))()}matchLog(e){if(mz(this.params.fromBlock)>=mz(e.blockNumber)||hnt(this.params.toBlock)&&mz(this.params.toBlock)<=mz(e.blockNumber))return!1;let n=e.address&&e.address.toLowerCase();return this.params.address&&n&&!this.params.address.includes(n)?!1:this.params.topics.every((o,i)=>{let a=e.topics[i];if(!a)return!1;a=a.toLowerCase();let c=Array.isArray(o)?o:[o];return c.includes(null)?!0:(c=c.map(h=>h.toLowerCase()),c.includes(a))})}};Nke.exports=ute});var gz=be((pun,Dke)=>{p();Dke.exports=pnt;async function pnt({provider:t,fromBlock:e,toBlock:n}){e||(e=n);let r=Bke(e),i=Bke(n)-r+1,a=Array(i).fill().map((u,d)=>r+d).map(mnt),c=await Promise.all(a.map(u=>ynt(t,\"eth_getBlockByNumber\",[u,!1])));return c=c.filter(u=>u!==null),c}function Bke(t){return t==null?t:Number.parseInt(t,16)}function mnt(t){return t==null?t:\"0x\"+t.toString(16)}function gnt(t,e){return new Promise((n,r)=>{t.sendAsync(e,(o,i)=>{o?r(o):i.error?r(i.error):i.result?n(i.result):r(new Error(\"Result was empty\"))})})}async function ynt(t,e,n){for(let r=0;r<3;r++)try{return await gnt(t,{id:1,jsonrpc:\"2.0\",method:e,params:n})}catch(o){console.error(`provider.sendAsync failed: ${o.stack||o.message||o}`)}return null}});var Uke=be((gun,Fke)=>{p();var bnt=hz(),vnt=gz(),{incrementHexInt:wnt}=V8(),dte=class extends bnt{constructor({provider:e,params:n}){super(),this.type=\"block\",this.provider=e}async update({oldBlock:e,newBlock:n}){let r=n,o=wnt(e),a=(await vnt({provider:this.provider,fromBlock:o,toBlock:r})).map(c=>c.hash);this.addResults(a)}};Fke.exports=dte});var zke=be((bun,jke)=>{p();var xnt=hz(),Ent=gz(),{incrementHexInt:Snt}=V8(),fte=class extends xnt{constructor({provider:e}){super(),this.type=\"tx\",this.provider=e}async update({oldBlock:e}){let n=e,r=Snt(e),o=await Ent({provider:this.provider,fromBlock:r,toBlock:n}),i=[];for(let a of o)i.push(...a.transactions);this.addResults(i)}};jke.exports=fte});var Wke=be((wun,qke)=>{p();var knt=vke().Mutex,{createAsyncMiddleware:_nt,createScaffoldMiddleware:Cnt}=nte(),Ant=Lke(),Tnt=Uke(),Rnt=zke(),{intToHex:Hke,hexToInt:hte}=V8();qke.exports=Int;function Int({blockTracker:t,provider:e}){let n=0,r={},o=new knt,i=Ont({mutex:o}),a=Cnt({eth_newFilter:i(pte(u)),eth_newBlockFilter:i(pte(d)),eth_newPendingTransactionFilter:i(pte(h)),eth_uninstallFilter:i(yz(b)),eth_getFilterChanges:i(yz(m)),eth_getFilterLogs:i(yz(g))}),c=async({oldBlock:L,newBlock:D})=>{if(r.length===0)return;let G=await o.acquire();try{await Promise.all($8(r).map(async W=>{try{await W.update({oldBlock:L,newBlock:D})}catch(J){console.error(J)}}))}catch(W){console.error(W)}G()};return a.newLogFilter=u,a.newBlockFilter=d,a.newPendingTransactionFilter=h,a.uninstallFilter=b,a.getFilterChanges=m,a.getFilterLogs=g,a.destroy=()=>{T()},a;async function u(L){let D=new Ant({provider:e,params:L}),G=await E(D);return D}async function d(){let L=new Tnt({provider:e}),D=await E(L);return L}async function h(){let L=new Rnt({provider:e}),D=await E(L);return L}async function m(L){let D=hte(L),G=r[D];if(!G)throw new Error(`No filter for index \"${D}\"`);return G.getChangesAndClear()}async function g(L){let D=hte(L),G=r[D];if(!G)throw new Error(`No filter for index \"${D}\"`);let W=[];return G.type===\"log\"&&(W=G.getAllResults()),W}async function b(L){let D=hte(L),W=!!r[D];return W&&await C(D),W}async function E(L){let D=$8(r).length,G=await t.getLatestBlock();await L.initialize({currentBlock:G}),n++,r[n]=L,L.id=n,L.idHex=Hke(n);let W=$8(r).length;return R({prevFilterCount:D,newFilterCount:W}),n}async function C(L){let D=$8(r).length;delete r[L];let G=$8(r).length;R({prevFilterCount:D,newFilterCount:G})}async function T(){let L=$8(r).length;r={},R({prevFilterCount:L,newFilterCount:0})}function R({prevFilterCount:L,newFilterCount:D}){if(L===0&&D>0){t.on(\"sync\",c);return}if(L>0&&D===0){t.removeListener(\"sync\",c);return}}}function pte(t){return yz(async(...e)=>{let n=await t(...e);return Hke(n.id)})}function yz(t){return _nt(async(e,n)=>{let r=await t.apply(null,e.params);n.result=r})}function Ont({mutex:t}){return e=>async(n,r,o,i)=>{(await t.acquire())(),e(n,r,o,i)}}function $8(t,e){let n=[];for(let r in t)n.push(t[r]);return n}});var Kke=be((Eun,$ke)=>{p();var Pnt=Ij().default,{createAsyncMiddleware:Vke,createScaffoldMiddleware:Mnt}=nte(),Nnt=Wke(),{unsafeRandomBytes:Lnt,incrementHexInt:Bnt}=V8(),Dnt=gz();$ke.exports=Fnt;function Fnt({blockTracker:t,provider:e}){let n={},r=Nnt({blockTracker:t,provider:e}),o=!1,i=new Pnt,a=Mnt({eth_subscribe:Vke(c),eth_unsubscribe:Vke(u)});return a.destroy=h,{events:i,middleware:a};async function c(m,g){if(o)throw new Error(\"SubscriptionManager - attempting to use after destroying\");let b=m.params[0],E=Lnt(16),C;switch(b){case\"newHeads\":C=T({subId:E});break;case\"logs\":let L=m.params[1],D=await r.newLogFilter(L);C=R({subId:E,filter:D});break;default:throw new Error(`SubscriptionManager - unsupported subscription type \"${b}\"`)}n[E]=C,g.result=E;return;function T({subId:L}){let D={type:b,destroy:async()=>{t.removeListener(\"sync\",D.update)},update:async({oldBlock:G,newBlock:W})=>{let J=W,ne=Bnt(G);(await Dnt({provider:e,fromBlock:ne,toBlock:J})).map(Unt).filter(ae=>ae!==null).forEach(ae=>{d(L,ae)})}};return t.on(\"sync\",D.update),D}function R({subId:L,filter:D}){return D.on(\"update\",W=>d(L,W)),{type:b,destroy:async()=>await r.uninstallFilter(D.idHex)}}}async function u(m,g){if(o)throw new Error(\"SubscriptionManager - attempting to use after destroying\");let b=m.params[0],E=n[b];if(!E){g.result=!1;return}delete n[b],await E.destroy(),g.result=!0}function d(m,g){i.emit(\"notification\",{jsonrpc:\"2.0\",method:\"eth_subscription\",params:{subscription:m,result:g}})}function h(){i.removeAllListeners();for(let m in n)n[m].destroy(),delete n[m];o=!0}}function Unt(t){return t==null?null:{hash:t.hash,parentHash:t.parentHash,sha3Uncles:t.sha3Uncles,miner:t.miner,stateRoot:t.stateRoot,transactionsRoot:t.transactionsRoot,receiptsRoot:t.receiptsRoot,logsBloom:t.logsBloom,difficulty:t.difficulty,number:t.number,gasLimit:t.gasLimit,gasUsed:t.gasUsed,nonce:t.nonce,mixHash:t.mixHash,timestamp:t.timestamp,extraData:t.extraData}}});var Zke=be(bz=>{\"use strict\";p();Object.defineProperty(bz,\"__esModule\",{value:!0});bz.SubscriptionManager=void 0;var jnt=ySe(),znt=Kke(),Gke=()=>{},mte=class{constructor(e){let n=new jnt.PollingBlockTracker({provider:e,pollingInterval:15e3,setSkipCacheFlag:!0}),{events:r,middleware:o}=znt({blockTracker:n,provider:e});this.events=r,this.subscriptionMiddleware=o}async handleRequest(e){let n={};return await this.subscriptionMiddleware(e,n,Gke,Gke),n}destroy(){this.subscriptionMiddleware.destroy()}};bz.SubscriptionManager=mte});var wz=be(K8=>{\"use strict\";p();var Xke=K8&&K8.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(K8,\"__esModule\",{value:!0});K8.CoinbaseWalletProvider=void 0;var Hnt=Xke(q6()),qnt=IQ(),ao=fI(),mr=Yy(),Wnt=TX(),Yke=BU(),vz=HU(),Ah=TU(),gte=Xke(uEe()),ZI=LU(),Vnt=mEe(),$nt=Zke(),Qke=\"DefaultChainId\",Jke=\"DefaultJsonRpcUrl\",yte=class extends qnt.EventEmitter{constructor(e){var n,r;super(),this._filterPolyfill=new Vnt.FilterPolyfill(this),this._subscriptionManager=new $nt.SubscriptionManager(this),this._relay=null,this._addresses=[],this.hasMadeFirstChainChangedEmission=!1,this.setProviderInfo=this.setProviderInfo.bind(this),this.updateProviderInfo=this.updateProviderInfo.bind(this),this.getChainId=this.getChainId.bind(this),this.setAppInfo=this.setAppInfo.bind(this),this.enable=this.enable.bind(this),this.close=this.close.bind(this),this.send=this.send.bind(this),this.sendAsync=this.sendAsync.bind(this),this.request=this.request.bind(this),this._setAddresses=this._setAddresses.bind(this),this.scanQRCode=this.scanQRCode.bind(this),this.genericRequest=this.genericRequest.bind(this),this._chainIdFromOpts=e.chainId,this._jsonRpcUrlFromOpts=e.jsonRpcUrl,this._overrideIsMetaMask=e.overrideIsMetaMask,this._relayProvider=e.relayProvider,this._storage=e.storage,this._relayEventManager=e.relayEventManager,this.diagnostic=e.diagnosticLogger,this.reloadOnDisconnect=!0,this.isCoinbaseWallet=(n=e.overrideIsCoinbaseWallet)!==null&&n!==void 0?n:!0,this.isCoinbaseBrowser=(r=e.overrideIsCoinbaseBrowser)!==null&&r!==void 0?r:!1,this.qrUrl=e.qrUrl;let o=this.getChainId(),i=(0,mr.prepend0x)(o.toString(16));this.emit(\"connect\",{chainIdStr:i});let a=this._storage.getItem(Yke.LOCAL_STORAGE_ADDRESSES_KEY);if(a){let c=a.split(\" \");c[0]!==\"\"&&(this._addresses=c.map(u=>(0,mr.ensureAddressString)(u)),this.emit(\"accountsChanged\",c))}this._subscriptionManager.events.on(\"notification\",c=>{this.emit(\"message\",{type:c.method,data:c.params})}),this._isAuthorized()&&this.initializeRelay(),window.addEventListener(\"message\",c=>{var u;if(!(c.origin!==location.origin||c.source!==window)&&c.data.type===\"walletLinkMessage\"&&c.data.data.action===\"dappChainSwitched\"){let d=c.data.data.chainId,h=(u=c.data.data.jsonRpcUrl)!==null&&u!==void 0?u:this.jsonRpcUrl;this.updateProviderInfo(h,Number(d))}})}get selectedAddress(){return this._addresses[0]||void 0}get networkVersion(){return this.getChainId().toString(10)}get chainId(){return(0,mr.prepend0x)(this.getChainId().toString(16))}get isWalletLink(){return!0}get isMetaMask(){return this._overrideIsMetaMask}get host(){return this.jsonRpcUrl}get connected(){return!0}isConnected(){return!0}get jsonRpcUrl(){var e;return(e=this._storage.getItem(Jke))!==null&&e!==void 0?e:this._jsonRpcUrlFromOpts}set jsonRpcUrl(e){this._storage.setItem(Jke,e)}disableReloadOnDisconnect(){this.reloadOnDisconnect=!1}setProviderInfo(e,n){this.isCoinbaseBrowser||(this._chainIdFromOpts=n,this._jsonRpcUrlFromOpts=e),this.updateProviderInfo(this.jsonRpcUrl,this.getChainId())}updateProviderInfo(e,n){this.jsonRpcUrl=e;let r=this.getChainId();this._storage.setItem(Qke,n.toString(10)),((0,mr.ensureIntNumber)(n)!==r||!this.hasMadeFirstChainChangedEmission)&&(this.emit(\"chainChanged\",this.getChainId()),this.hasMadeFirstChainChangedEmission=!0)}async watchAsset(e,n,r,o,i,a){let u=await(await this.initializeRelay()).watchAsset(e,n,r,o,i,a?.toString()).promise;return(0,Ah.isErrorResponse)(u)?!1:!!u.result}async addEthereumChain(e,n,r,o,i,a){var c,u;if((0,mr.ensureIntNumber)(e)===this.getChainId())return!1;let d=await this.initializeRelay(),h=d.inlineAddEthereumChain(e.toString());!this._isAuthorized()&&!h&&await d.requestEthereumAccounts().promise;let m=await d.addEthereumChain(e.toString(),n,i,r,o,a).promise;return(0,Ah.isErrorResponse)(m)?!1:(((c=m.result)===null||c===void 0?void 0:c.isApproved)===!0&&this.updateProviderInfo(n[0],e),((u=m.result)===null||u===void 0?void 0:u.isApproved)===!0)}async switchEthereumChain(e){let r=await(await this.initializeRelay()).switchEthereumChain(e.toString(10),this.selectedAddress||void 0).promise;if((0,Ah.isErrorResponse)(r)){if(!r.errorCode)return;throw r.errorCode===ao.standardErrorCodes.provider.unsupportedChain?ao.standardErrors.provider.unsupportedChain():ao.standardErrors.provider.custom({message:r.errorMessage,code:r.errorCode})}let o=r.result;o.isApproved&&o.rpcUrl.length>0&&this.updateProviderInfo(o.rpcUrl,e)}setAppInfo(e,n){this.initializeRelay().then(r=>r.setAppInfo(e,n))}async enable(){var e;return(e=this.diagnostic)===null||e===void 0||e.log(ZI.EVENTS.ETH_ACCOUNTS_STATE,{method:\"provider::enable\",addresses_length:this._addresses.length,sessionIdHash:this._relay?vz.Session.hash(this._relay.session.id):void 0}),this._isAuthorized()?[...this._addresses]:await this.send(\"eth_requestAccounts\")}async close(){(await this.initializeRelay()).resetAndReload()}send(e,n){try{let r=this._send(e,n);if(r instanceof Promise)return r.catch(o=>{throw(0,ao.serializeError)(o,e)})}catch(r){throw(0,ao.serializeError)(r,e)}}_send(e,n){if(typeof e==\"string\"){let o=e,i=Array.isArray(n)?n:n!==void 0?[n]:[],a={jsonrpc:\"2.0\",id:0,method:o,params:i};return this._sendRequestAsync(a).then(c=>c.result)}if(typeof n==\"function\"){let o=e,i=n;return this._sendAsync(o,i)}if(Array.isArray(e))return e.map(i=>this._sendRequest(i));let r=e;return this._sendRequest(r)}async sendAsync(e,n){try{return this._sendAsync(e,n).catch(r=>{throw(0,ao.serializeError)(r,e)})}catch(r){return Promise.reject((0,ao.serializeError)(r,e))}}async _sendAsync(e,n){if(typeof n!=\"function\")throw new Error(\"callback is required\");if(Array.isArray(e)){let o=n;this._sendMultipleRequestsAsync(e).then(i=>o(null,i)).catch(i=>o(i,null));return}let r=n;return this._sendRequestAsync(e).then(o=>r(null,o)).catch(o=>r(o,null))}async request(e){try{return this._request(e).catch(n=>{throw(0,ao.serializeError)(n,e.method)})}catch(n){return Promise.reject((0,ao.serializeError)(n,e.method))}}async _request(e){if(!e||typeof e!=\"object\"||Array.isArray(e))throw ao.standardErrors.rpc.invalidRequest({message:\"Expected a single, non-array, object argument.\",data:e});let{method:n,params:r}=e;if(typeof n!=\"string\"||n.length===0)throw ao.standardErrors.rpc.invalidRequest({message:\"\\'args.method\\' must be a non-empty string.\",data:e});if(r!==void 0&&!Array.isArray(r)&&(typeof r!=\"object\"||r===null))throw ao.standardErrors.rpc.invalidRequest({message:\"\\'args.params\\' must be an object or array if provided.\",data:e});let o=r===void 0?[]:r,i=this._relayEventManager.makeRequestId();return(await this._sendRequestAsync({method:n,params:o,jsonrpc:\"2.0\",id:i})).result}async scanQRCode(e){let r=await(await this.initializeRelay()).scanQRCode((0,mr.ensureRegExpString)(e)).promise;if((0,Ah.isErrorResponse)(r))throw(0,ao.serializeError)(r.errorMessage,\"scanQRCode\");if(typeof r.result!=\"string\")throw(0,ao.serializeError)(\"result was not a string\",\"scanQRCode\");return r.result}async genericRequest(e,n){let o=await(await this.initializeRelay()).genericRequest(e,n).promise;if((0,Ah.isErrorResponse)(o))throw(0,ao.serializeError)(o.errorMessage,\"generic\");if(typeof o.result!=\"string\")throw(0,ao.serializeError)(\"result was not a string\",\"generic\");return o.result}async connectAndSignIn(e){var n;(n=this.diagnostic)===null||n===void 0||n.log(ZI.EVENTS.ETH_ACCOUNTS_STATE,{method:\"provider::connectAndSignIn\",sessionIdHash:this._relay?vz.Session.hash(this._relay.session.id):void 0});let r;try{let i=await this.initializeRelay();if(!(i instanceof Wnt.MobileRelay))throw new Error(\"connectAndSignIn is only supported on mobile\");if(r=await i.connectAndSignIn(e).promise,(0,Ah.isErrorResponse)(r))throw new Error(r.errorMessage)}catch(i){throw typeof i.message==\"string\"&&i.message.match(/(denied|rejected)/i)?ao.standardErrors.provider.userRejectedRequest(\"User denied account authorization\"):i}if(!r.result)throw new Error(\"accounts received is empty\");let{accounts:o}=r.result;return this._setAddresses(o),this.isCoinbaseBrowser||await this.switchEthereumChain(this.getChainId()),r.result}async selectProvider(e){let r=await(await this.initializeRelay()).selectProvider(e).promise;if((0,Ah.isErrorResponse)(r))throw(0,ao.serializeError)(r.errorMessage,\"selectProvider\");if(typeof r.result!=\"string\")throw(0,ao.serializeError)(\"result was not a string\",\"selectProvider\");return r.result}supportsSubscriptions(){return!1}subscribe(){throw new Error(\"Subscriptions are not supported\")}unsubscribe(){throw new Error(\"Subscriptions are not supported\")}disconnect(){return!0}_sendRequest(e){let n={jsonrpc:\"2.0\",id:e.id},{method:r}=e;if(n.result=this._handleSynchronousMethods(e),n.result===void 0)throw new Error(`Coinbase Wallet does not support calling ${r} synchronously without a callback. Please provide a callback parameter to call ${r} asynchronously.`);return n}_setAddresses(e,n){if(!Array.isArray(e))throw new Error(\"addresses is not an array\");let r=e.map(o=>(0,mr.ensureAddressString)(o));JSON.stringify(r)!==JSON.stringify(this._addresses)&&(this._addresses=r,this.emit(\"accountsChanged\",this._addresses),this._storage.setItem(Yke.LOCAL_STORAGE_ADDRESSES_KEY,r.join(\" \")))}_sendRequestAsync(e){return new Promise((n,r)=>{try{let o=this._handleSynchronousMethods(e);if(o!==void 0)return n({jsonrpc:\"2.0\",id:e.id,result:o});let i=this._handleAsynchronousFilterMethods(e);if(i!==void 0){i.then(c=>n(Object.assign(Object.assign({},c),{id:e.id}))).catch(c=>r(c));return}let a=this._handleSubscriptionMethods(e);if(a!==void 0){a.then(c=>n({jsonrpc:\"2.0\",id:e.id,result:c.result})).catch(c=>r(c));return}}catch(o){return r(o)}this._handleAsynchronousMethods(e).then(o=>o&&n(Object.assign(Object.assign({},o),{id:e.id}))).catch(o=>r(o))})}_sendMultipleRequestsAsync(e){return Promise.all(e.map(n=>this._sendRequestAsync(n)))}_handleSynchronousMethods(e){let{method:n}=e,r=e.params||[];switch(n){case\"eth_accounts\":return this._eth_accounts();case\"eth_coinbase\":return this._eth_coinbase();case\"eth_uninstallFilter\":return this._eth_uninstallFilter(r);case\"net_version\":return this._net_version();case\"eth_chainId\":return this._eth_chainId();default:return}}async _handleAsynchronousMethods(e){let{method:n}=e,r=e.params||[];switch(n){case\"eth_requestAccounts\":return this._eth_requestAccounts();case\"eth_sign\":return this._eth_sign(r);case\"eth_ecRecover\":return this._eth_ecRecover(r);case\"personal_sign\":return this._personal_sign(r);case\"personal_ecRecover\":return this._personal_ecRecover(r);case\"eth_signTransaction\":return this._eth_signTransaction(r);case\"eth_sendRawTransaction\":return this._eth_sendRawTransaction(r);case\"eth_sendTransaction\":return this._eth_sendTransaction(r);case\"eth_signTypedData_v1\":return this._eth_signTypedData_v1(r);case\"eth_signTypedData_v2\":return this._throwUnsupportedMethodError();case\"eth_signTypedData_v3\":return this._eth_signTypedData_v3(r);case\"eth_signTypedData_v4\":case\"eth_signTypedData\":return this._eth_signTypedData_v4(r);case\"cbWallet_arbitrary\":return this._cbwallet_arbitrary(r);case\"wallet_addEthereumChain\":return this._wallet_addEthereumChain(r);case\"wallet_switchEthereumChain\":return this._wallet_switchEthereumChain(r);case\"wallet_watchAsset\":return this._wallet_watchAsset(r)}return(await this.initializeRelay()).makeEthereumJSONRPCRequest(e,this.jsonRpcUrl).catch(i=>{var a;throw(i.code===ao.standardErrorCodes.rpc.methodNotFound||i.code===ao.standardErrorCodes.rpc.methodNotSupported)&&((a=this.diagnostic)===null||a===void 0||a.log(ZI.EVENTS.METHOD_NOT_IMPLEMENTED,{method:e.method,sessionIdHash:this._relay?vz.Session.hash(this._relay.session.id):void 0})),i})}_handleAsynchronousFilterMethods(e){let{method:n}=e,r=e.params||[];switch(n){case\"eth_newFilter\":return this._eth_newFilter(r);case\"eth_newBlockFilter\":return this._eth_newBlockFilter();case\"eth_newPendingTransactionFilter\":return this._eth_newPendingTransactionFilter();case\"eth_getFilterChanges\":return this._eth_getFilterChanges(r);case\"eth_getFilterLogs\":return this._eth_getFilterLogs(r)}}_handleSubscriptionMethods(e){switch(e.method){case\"eth_subscribe\":case\"eth_unsubscribe\":return this._subscriptionManager.handleRequest(e)}}_isKnownAddress(e){try{let n=(0,mr.ensureAddressString)(e);return this._addresses.map(o=>(0,mr.ensureAddressString)(o)).includes(n)}catch{}return!1}_ensureKnownAddress(e){var n;if(!this._isKnownAddress(e))throw(n=this.diagnostic)===null||n===void 0||n.log(ZI.EVENTS.UNKNOWN_ADDRESS_ENCOUNTERED),new Error(\"Unknown Ethereum address\")}_prepareTransactionParams(e){let n=e.from?(0,mr.ensureAddressString)(e.from):this.selectedAddress;if(!n)throw new Error(\"Ethereum address is unavailable\");this._ensureKnownAddress(n);let r=e.to?(0,mr.ensureAddressString)(e.to):null,o=e.value!=null?(0,mr.ensureBN)(e.value):new Hnt.default(0),i=e.data?(0,mr.ensureBuffer)(e.data):globalThis.Buffer.alloc(0),a=e.nonce!=null?(0,mr.ensureIntNumber)(e.nonce):null,c=e.gasPrice!=null?(0,mr.ensureBN)(e.gasPrice):null,u=e.maxFeePerGas!=null?(0,mr.ensureBN)(e.maxFeePerGas):null,d=e.maxPriorityFeePerGas!=null?(0,mr.ensureBN)(e.maxPriorityFeePerGas):null,h=e.gas!=null?(0,mr.ensureBN)(e.gas):null,m=e.chainId?(0,mr.ensureIntNumber)(e.chainId):this.getChainId();return{fromAddress:n,toAddress:r,weiValue:o,data:i,nonce:a,gasPriceInWei:c,maxFeePerGas:u,maxPriorityFeePerGas:d,gasLimit:h,chainId:m}}_isAuthorized(){return this._addresses.length>0}_requireAuthorization(){if(!this._isAuthorized())throw ao.standardErrors.provider.unauthorized({})}_throwUnsupportedMethodError(){throw ao.standardErrors.provider.unsupportedMethod({})}async _signEthereumMessage(e,n,r,o){this._ensureKnownAddress(n);try{let a=await(await this.initializeRelay()).signEthereumMessage(e,n,r,o).promise;if((0,Ah.isErrorResponse)(a))throw new Error(a.errorMessage);return{jsonrpc:\"2.0\",id:0,result:a.result}}catch(i){throw typeof i.message==\"string\"&&i.message.match(/(denied|rejected)/i)?ao.standardErrors.provider.userRejectedRequest(\"User denied message signature\"):i}}async _ethereumAddressFromSignedMessage(e,n,r){let i=await(await this.initializeRelay()).ethereumAddressFromSignedMessage(e,n,r).promise;if((0,Ah.isErrorResponse)(i))throw new Error(i.errorMessage);return{jsonrpc:\"2.0\",id:0,result:i.result}}_eth_accounts(){return[...this._addresses]}_eth_coinbase(){return this.selectedAddress||null}_net_version(){return this.getChainId().toString(10)}_eth_chainId(){return(0,mr.hexStringFromIntNumber)(this.getChainId())}getChainId(){let e=this._storage.getItem(Qke);if(!e)return(0,mr.ensureIntNumber)(this._chainIdFromOpts);let n=parseInt(e,10);return(0,mr.ensureIntNumber)(n)}async _eth_requestAccounts(){var e;if((e=this.diagnostic)===null||e===void 0||e.log(ZI.EVENTS.ETH_ACCOUNTS_STATE,{method:\"provider::_eth_requestAccounts\",addresses_length:this._addresses.length,sessionIdHash:this._relay?vz.Session.hash(this._relay.session.id):void 0}),this._isAuthorized())return Promise.resolve({jsonrpc:\"2.0\",id:0,result:this._addresses});let n;try{if(n=await(await this.initializeRelay()).requestEthereumAccounts().promise,(0,Ah.isErrorResponse)(n))throw new Error(n.errorMessage)}catch(r){throw typeof r.message==\"string\"&&r.message.match(/(denied|rejected)/i)?ao.standardErrors.provider.userRejectedRequest(\"User denied account authorization\"):r}if(!n.result)throw new Error(\"accounts received is empty\");return this._setAddresses(n.result),this.isCoinbaseBrowser||await this.switchEthereumChain(this.getChainId()),{jsonrpc:\"2.0\",id:0,result:this._addresses}}_eth_sign(e){this._requireAuthorization();let n=(0,mr.ensureAddressString)(e[0]),r=(0,mr.ensureBuffer)(e[1]);return this._signEthereumMessage(r,n,!1)}_eth_ecRecover(e){let n=(0,mr.ensureBuffer)(e[0]),r=(0,mr.ensureBuffer)(e[1]);return this._ethereumAddressFromSignedMessage(n,r,!1)}_personal_sign(e){this._requireAuthorization();let n=(0,mr.ensureBuffer)(e[0]),r=(0,mr.ensureAddressString)(e[1]);return this._signEthereumMessage(n,r,!0)}_personal_ecRecover(e){let n=(0,mr.ensureBuffer)(e[0]),r=(0,mr.ensureBuffer)(e[1]);return this._ethereumAddressFromSignedMessage(n,r,!0)}async _eth_signTransaction(e){this._requireAuthorization();let n=this._prepareTransactionParams(e[0]||{});try{let o=await(await this.initializeRelay()).signEthereumTransaction(n).promise;if((0,Ah.isErrorResponse)(o))throw new Error(o.errorMessage);return{jsonrpc:\"2.0\",id:0,result:o.result}}catch(r){throw typeof r.message==\"string\"&&r.message.match(/(denied|rejected)/i)?ao.standardErrors.provider.userRejectedRequest(\"User denied transaction signature\"):r}}async _eth_sendRawTransaction(e){let n=(0,mr.ensureBuffer)(e[0]),o=await(await this.initializeRelay()).submitEthereumTransaction(n,this.getChainId()).promise;if((0,Ah.isErrorResponse)(o))throw new Error(o.errorMessage);return{jsonrpc:\"2.0\",id:0,result:o.result}}async _eth_sendTransaction(e){this._requireAuthorization();let n=this._prepareTransactionParams(e[0]||{});try{let o=await(await this.initializeRelay()).signAndSubmitEthereumTransaction(n).promise;if((0,Ah.isErrorResponse)(o))throw new Error(o.errorMessage);return{jsonrpc:\"2.0\",id:0,result:o.result}}catch(r){throw typeof r.message==\"string\"&&r.message.match(/(denied|rejected)/i)?ao.standardErrors.provider.userRejectedRequest(\"User denied transaction signature\"):r}}async _eth_signTypedData_v1(e){this._requireAuthorization();let n=(0,mr.ensureParsedJSONObject)(e[0]),r=(0,mr.ensureAddressString)(e[1]);this._ensureKnownAddress(r);let o=gte.default.hashForSignTypedDataLegacy({data:n}),i=JSON.stringify(n,null,2);return this._signEthereumMessage(o,r,!1,i)}async _eth_signTypedData_v3(e){this._requireAuthorization();let n=(0,mr.ensureAddressString)(e[0]),r=(0,mr.ensureParsedJSONObject)(e[1]);this._ensureKnownAddress(n);let o=gte.default.hashForSignTypedData_v3({data:r}),i=JSON.stringify(r,null,2);return this._signEthereumMessage(o,n,!1,i)}async _eth_signTypedData_v4(e){this._requireAuthorization();let n=(0,mr.ensureAddressString)(e[0]),r=(0,mr.ensureParsedJSONObject)(e[1]);this._ensureKnownAddress(n);let o=gte.default.hashForSignTypedData_v4({data:r}),i=JSON.stringify(r,null,2);return this._signEthereumMessage(o,n,!1,i)}async _cbwallet_arbitrary(e){let n=e[0],r=e[1];if(typeof r!=\"string\")throw new Error(\"parameter must be a string\");if(typeof n!=\"object\"||n===null)throw new Error(\"parameter must be an object\");return{jsonrpc:\"2.0\",id:0,result:await this.genericRequest(n,r)}}async _wallet_addEthereumChain(e){var n,r,o,i;let a=e[0];if(((n=a.rpcUrls)===null||n===void 0?void 0:n.length)===0)return{jsonrpc:\"2.0\",id:0,error:{code:2,message:\"please pass in at least 1 rpcUrl\"}};if(!a.chainName||a.chainName.trim()===\"\")throw ao.standardErrors.rpc.invalidParams(\"chainName is a required field\");if(!a.nativeCurrency)throw ao.standardErrors.rpc.invalidParams(\"nativeCurrency is a required field\");let c=parseInt(a.chainId,16);return await this.addEthereumChain(c,(r=a.rpcUrls)!==null&&r!==void 0?r:[],(o=a.blockExplorerUrls)!==null&&o!==void 0?o:[],a.chainName,(i=a.iconUrls)!==null&&i!==void 0?i:[],a.nativeCurrency)?{jsonrpc:\"2.0\",id:0,result:null}:{jsonrpc:\"2.0\",id:0,error:{code:2,message:\"unable to add ethereum chain\"}}}async _wallet_switchEthereumChain(e){let n=e[0];return await this.switchEthereumChain(parseInt(n.chainId,16)),{jsonrpc:\"2.0\",id:0,result:null}}async _wallet_watchAsset(e){let n=Array.isArray(e)?e[0]:e;if(!n.type)throw ao.standardErrors.rpc.invalidParams(\"Type is required\");if(n?.type!==\"ERC20\")throw ao.standardErrors.rpc.invalidParams(`Asset of type \\'${n.type}\\' is not supported`);if(!n?.options)throw ao.standardErrors.rpc.invalidParams(\"Options are required\");if(!n?.options.address)throw ao.standardErrors.rpc.invalidParams(\"Address is required\");let r=this.getChainId(),{address:o,symbol:i,image:a,decimals:c}=n.options;return{jsonrpc:\"2.0\",id:0,result:await this.watchAsset(n.type,o,i,c,a,r)}}_eth_uninstallFilter(e){let n=(0,mr.ensureHexString)(e[0]);return this._filterPolyfill.uninstallFilter(n)}async _eth_newFilter(e){let n=e[0];return{jsonrpc:\"2.0\",id:0,result:await this._filterPolyfill.newFilter(n)}}async _eth_newBlockFilter(){return{jsonrpc:\"2.0\",id:0,result:await this._filterPolyfill.newBlockFilter()}}async _eth_newPendingTransactionFilter(){return{jsonrpc:\"2.0\",id:0,result:await this._filterPolyfill.newPendingTransactionFilter()}}_eth_getFilterChanges(e){let n=(0,mr.ensureHexString)(e[0]);return this._filterPolyfill.getFilterChanges(n)}_eth_getFilterLogs(e){let n=(0,mr.ensureHexString)(e[0]);return this._filterPolyfill.getFilterLogs(n)}initializeRelay(){return this._relay?Promise.resolve(this._relay):this._relayProvider().then(e=>(e.setAccountsCallback((n,r)=>this._setAddresses(n,r)),e.setChainCallback((n,r)=>{this.updateProviderInfo(r,parseInt(n,10))}),e.setDappDefaultChainCallback(this._chainIdFromOpts),this._relay=e,e))}};K8.CoinbaseWalletProvider=yte});var e_e=be(xz=>{\"use strict\";p();Object.defineProperty(xz,\"__esModule\",{value:!0});xz.RelayEventManager=void 0;var Knt=Yy(),bte=class{constructor(){this._nextRequestId=0,this.callbacks=new Map}makeRequestId(){this._nextRequestId=(this._nextRequestId+1)%2147483647;let e=this._nextRequestId,n=(0,Knt.prepend0x)(e.toString(16));return this.callbacks.get(n)&&this.callbacks.delete(n),e}};xz.RelayEventManager=bte});var vte=be(Sz=>{\"use strict\";p();Object.defineProperty(Sz,\"__esModule\",{value:!0});Sz.CoinbaseWalletSDK=void 0;var Gnt=B2e(),Znt=D2e(),t_e=Yy(),Ynt=swe(),Qnt=wz(),Jnt=TX(),Xnt=CX(),ert=e_e(),trt=xX(),nrt=EX(),n_e=IU(),Ez=class t{constructor(e){var n,r,o;this._appName=\"\",this._appLogoUrl=null,this._relay=null,this._relayEventManager=null;let i=e.linkAPIUrl||Znt.LINK_API_URL;typeof e.overrideIsMetaMask>\"u\"?this._overrideIsMetaMask=!1:this._overrideIsMetaMask=e.overrideIsMetaMask,this._overrideIsCoinbaseWallet=(n=e.overrideIsCoinbaseWallet)!==null&&n!==void 0?n:!0,this._overrideIsCoinbaseBrowser=(r=e.overrideIsCoinbaseBrowser)!==null&&r!==void 0?r:!1,this._diagnosticLogger=e.diagnosticLogger,this._reloadOnDisconnect=(o=e.reloadOnDisconnect)!==null&&o!==void 0?o:!0;let a=new URL(i),c=`${a.protocol}//${a.host}`;if(this._storage=new Ynt.ScopedLocalStorage(`-walletlink:${c}`),this._storage.setItem(\"version\",t.VERSION),this.walletExtension||this.coinbaseBrowser)return;this._relayEventManager=new ert.RelayEventManager;let u=(0,t_e.isMobileWeb)(),d=e.uiConstructor||(m=>u?new Xnt.MobileRelayUI(m):new trt.WalletLinkRelayUI(m)),h={linkAPIUrl:i,version:n_e.LIB_VERSION,darkMode:!!e.darkMode,headlessMode:!!e.headlessMode,uiConstructor:d,storage:this._storage,relayEventManager:this._relayEventManager,diagnosticLogger:this._diagnosticLogger,reloadOnDisconnect:this._reloadOnDisconnect,enableMobileWalletLink:e.enableMobileWalletLink};this._relay=u?new Jnt.MobileRelay(h):new nrt.WalletLinkRelay(h),this.setAppInfo(e.appName,e.appLogoUrl),!e.headlessMode&&this._relay.attachUI()}makeWeb3Provider(e=\"\",n=1){let r=this.walletExtension;if(r)return this.isCipherProvider(r)||r.setProviderInfo(e,n),this._reloadOnDisconnect===!1&&typeof r.disableReloadOnDisconnect==\"function\"&&r.disableReloadOnDisconnect(),r;let o=this.coinbaseBrowser;if(o)return o;let i=this._relay;if(!i||!this._relayEventManager||!this._storage)throw new Error(\"Relay not initialized, should never happen\");return e||i.setConnectDisabled(!0),new Qnt.CoinbaseWalletProvider({relayProvider:()=>Promise.resolve(i),relayEventManager:this._relayEventManager,storage:this._storage,jsonRpcUrl:e,chainId:n,qrUrl:this.getQrUrl(),diagnosticLogger:this._diagnosticLogger,overrideIsMetaMask:this._overrideIsMetaMask,overrideIsCoinbaseWallet:this._overrideIsCoinbaseWallet,overrideIsCoinbaseBrowser:this._overrideIsCoinbaseBrowser})}setAppInfo(e,n){var r;this._appName=e||\"DApp\",this._appLogoUrl=n||(0,t_e.getFavicon)();let o=this.walletExtension;o?this.isCipherProvider(o)||o.setAppInfo(this._appName,this._appLogoUrl):(r=this._relay)===null||r===void 0||r.setAppInfo(this._appName,this._appLogoUrl)}disconnect(){var e;let n=this===null||this===void 0?void 0:this.walletExtension;n?n.close():(e=this._relay)===null||e===void 0||e.resetAndReload()}getQrUrl(){var e,n;return(n=(e=this._relay)===null||e===void 0?void 0:e.getQRCodeUrl())!==null&&n!==void 0?n:null}getCoinbaseWalletLogo(e,n=240){return(0,Gnt.walletLogo)(e,n)}get walletExtension(){var e;return(e=window.coinbaseWalletExtension)!==null&&e!==void 0?e:window.walletLinkExtension}get coinbaseBrowser(){var e,n;try{let r=(e=window.ethereum)!==null&&e!==void 0?e:(n=window.top)===null||n===void 0?void 0:n.ethereum;return r&&\"isCoinbaseBrowser\"in r&&r.isCoinbaseBrowser?r:void 0}catch{return}}isCipherProvider(e){return typeof e.isCipher==\"boolean\"&&e.isCipher}};Sz.CoinbaseWalletSDK=Ez;Ez.VERSION=n_e.LIB_VERSION});var o_e=be(hS=>{\"use strict\";p();Object.defineProperty(hS,\"__esModule\",{value:!0});hS.CoinbaseWalletProvider=hS.CoinbaseWalletSDK=void 0;var wte=vte(),r_e=wz(),rrt=vte();Object.defineProperty(hS,\"CoinbaseWalletSDK\",{enumerable:!0,get:function(){return rrt.CoinbaseWalletSDK}});var ort=wz();Object.defineProperty(hS,\"CoinbaseWalletProvider\",{enumerable:!0,get:function(){return ort.CoinbaseWalletProvider}});hS.default=wte.CoinbaseWalletSDK;typeof window<\"u\"&&(window.CoinbaseWalletSDK=wte.CoinbaseWalletSDK,window.CoinbaseWalletProvider=r_e.CoinbaseWalletProvider,window.WalletLink=wte.CoinbaseWalletSDK,window.WalletLinkProvider=r_e.CoinbaseWalletProvider)});var s_e=be((zx,i_e)=>{p();var kz=typeof globalThis<\"u\"&&globalThis||typeof self<\"u\"&&self||typeof globalThis<\"u\"&&globalThis,_z=function(){function t(){this.fetch=!1,this.DOMException=kz.DOMException}return t.prototype=kz,new t}();(function(t){var e=function(n){var r=typeof t<\"u\"&&t||typeof self<\"u\"&&self||typeof t<\"u\"&&t||{},o={searchParams:\"URLSearchParams\"in r,iterable:\"Symbol\"in r&&\"iterator\"in Symbol,blob:\"FileReader\"in r&&\"Blob\"in r&&function(){try{return new Blob,!0}catch{return!1}}(),formData:\"FormData\"in r,arrayBuffer:\"ArrayBuffer\"in r};function i(V){return V&&DataView.prototype.isPrototypeOf(V)}if(o.arrayBuffer)var a=[\"[object Int8Array]\",\"[object Uint8Array]\",\"[object Uint8ClampedArray]\",\"[object Int16Array]\",\"[object Uint16Array]\",\"[object Int32Array]\",\"[object Uint32Array]\",\"[object Float32Array]\",\"[object Float64Array]\"],c=ArrayBuffer.isView||function(V){return V&&a.indexOf(Object.prototype.toString.call(V))>-1};function u(V){if(typeof V!=\"string\"&&(V=String(V)),/[^a-z0-9\\\\-#$%&\\'*+.^_`|~!]/i.test(V)||V===\"\")throw new TypeError(\\'Invalid character in header field name: \"\\'+V+\\'\"\\');return V.toLowerCase()}function d(V){return typeof V!=\"string\"&&(V=String(V)),V}function h(V){var $={next:function(){var F=V.shift();return{done:F===void 0,value:F}}};return o.iterable&&($[Symbol.iterator]=function(){return $}),$}function m(V){this.map={},V instanceof m?V.forEach(function($,F){this.append(F,$)},this):Array.isArray(V)?V.forEach(function($){if($.length!=2)throw new TypeError(\"Headers constructor: expected name/value pair to be length 2, found\"+$.length);this.append($[0],$[1])},this):V&&Object.getOwnPropertyNames(V).forEach(function($){this.append($,V[$])},this)}m.prototype.append=function(V,$){V=u(V),$=d($);var F=this.map[V];this.map[V]=F?F+\", \"+$:$},m.prototype.delete=function(V){delete this.map[u(V)]},m.prototype.get=function(V){return V=u(V),this.has(V)?this.map[V]:null},m.prototype.has=function(V){return this.map.hasOwnProperty(u(V))},m.prototype.set=function(V,$){this.map[u(V)]=d($)},m.prototype.forEach=function(V,$){for(var F in this.map)this.map.hasOwnProperty(F)&&V.call($,this.map[F],F,this)},m.prototype.keys=function(){var V=[];return this.forEach(function($,F){V.push(F)}),h(V)},m.prototype.values=function(){var V=[];return this.forEach(function($){V.push($)}),h(V)},m.prototype.entries=function(){var V=[];return this.forEach(function($,F){V.push([F,$])}),h(V)},o.iterable&&(m.prototype[Symbol.iterator]=m.prototype.entries);function g(V){if(!V._noBody){if(V.bodyUsed)return Promise.reject(new TypeError(\"Already read\"));V.bodyUsed=!0}}function b(V){return new Promise(function($,F){V.onload=function(){$(V.result)},V.onerror=function(){F(V.error)}})}function E(V){var $=new FileReader,F=b($);return $.readAsArrayBuffer(V),F}function C(V){var $=new FileReader,F=b($),_=/charset=([A-Za-z0-9_-]+)/.exec(V.type),O=_?_[1]:\"utf-8\";return $.readAsText(V,O),F}function T(V){for(var $=new Uint8Array(V),F=new Array($.length),_=0;_<$.length;_++)F[_]=String.fromCharCode($[_]);return F.join(\"\")}function R(V){if(V.slice)return V.slice(0);var $=new Uint8Array(V.byteLength);return $.set(new Uint8Array(V)),$.buffer}function L(){return this.bodyUsed=!1,this._initBody=function(V){this.bodyUsed=this.bodyUsed,this._bodyInit=V,V?typeof V==\"string\"?this._bodyText=V:o.blob&&Blob.prototype.isPrototypeOf(V)?this._bodyBlob=V:o.formData&&FormData.prototype.isPrototypeOf(V)?this._bodyFormData=V:o.searchParams&&URLSearchParams.prototype.isPrototypeOf(V)?this._bodyText=V.toString():o.arrayBuffer&&o.blob&&i(V)?(this._bodyArrayBuffer=R(V.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(V)||c(V))?this._bodyArrayBuffer=R(V):this._bodyText=V=Object.prototype.toString.call(V):(this._noBody=!0,this._bodyText=\"\"),this.headers.get(\"content-type\")||(typeof V==\"string\"?this.headers.set(\"content-type\",\"text/plain;charset=UTF-8\"):this._bodyBlob&&this._bodyBlob.type?this.headers.set(\"content-type\",this._bodyBlob.type):o.searchParams&&URLSearchParams.prototype.isPrototypeOf(V)&&this.headers.set(\"content-type\",\"application/x-www-form-urlencoded;charset=UTF-8\"))},o.blob&&(this.blob=function(){var V=g(this);if(V)return V;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error(\"could not read FormData body as blob\");return Promise.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var V=g(this);return V||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer))}else{if(o.blob)return this.blob().then(E);throw new Error(\"could not read as ArrayBuffer\")}},this.text=function(){var V=g(this);if(V)return V;if(this._bodyBlob)return C(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(T(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error(\"could not read FormData body as text\");return Promise.resolve(this._bodyText)},o.formData&&(this.formData=function(){return this.text().then(J)}),this.json=function(){return this.text().then(JSON.parse)},this}var D=[\"CONNECT\",\"DELETE\",\"GET\",\"HEAD\",\"OPTIONS\",\"PATCH\",\"POST\",\"PUT\",\"TRACE\"];function G(V){var $=V.toUpperCase();return D.indexOf($)>-1?$:V}function W(V,$){if(!(this instanceof W))throw new TypeError(\\'Please use the \"new\" operator, this DOM object constructor cannot be called as a function.\\');$=$||{};var F=$.body;if(V instanceof W){if(V.bodyUsed)throw new TypeError(\"Already read\");this.url=V.url,this.credentials=V.credentials,$.headers||(this.headers=new m(V.headers)),this.method=V.method,this.mode=V.mode,this.signal=V.signal,!F&&V._bodyInit!=null&&(F=V._bodyInit,V.bodyUsed=!0)}else this.url=String(V);if(this.credentials=$.credentials||this.credentials||\"same-origin\",($.headers||!this.headers)&&(this.headers=new m($.headers)),this.method=G($.method||this.method||\"GET\"),this.mode=$.mode||this.mode||null,this.signal=$.signal||this.signal||function(){if(\"AbortController\"in r){var z=new AbortController;return z.signal}}(),this.referrer=null,(this.method===\"GET\"||this.method===\"HEAD\")&&F)throw new TypeError(\"Body not allowed for GET or HEAD requests\");if(this._initBody(F),(this.method===\"GET\"||this.method===\"HEAD\")&&($.cache===\"no-store\"||$.cache===\"no-cache\")){var _=/([?&])_=[^&]*/;if(_.test(this.url))this.url=this.url.replace(_,\"$1_=\"+new Date().getTime());else{var O=/\\\\?/;this.url+=(O.test(this.url)?\"&\":\"?\")+\"_=\"+new Date().getTime()}}}W.prototype.clone=function(){return new W(this,{body:this._bodyInit})};function J(V){var $=new FormData;return V.trim().split(\"&\").forEach(function(F){if(F){var _=F.split(\"=\"),O=_.shift().replace(/\\\\+/g,\" \"),z=_.join(\"=\").replace(/\\\\+/g,\" \");$.append(decodeURIComponent(O),decodeURIComponent(z))}}),$}function ne(V){var $=new m,F=V.replace(/\\\\r?\\\\n[\\\\t ]+/g,\" \");return F.split(\"\\\\r\").map(function(_){return _.indexOf(`\\n`)===0?_.substr(1,_.length):_}).forEach(function(_){var O=_.split(\":\"),z=O.shift().trim();if(z){var N=O.join(\":\").trim();try{$.append(z,N)}catch(B){console.warn(\"Response \"+B.message)}}}),$}L.call(W.prototype);function ie(V,$){if(!(this instanceof ie))throw new TypeError(\\'Please use the \"new\" operator, this DOM object constructor cannot be called as a function.\\');if($||($={}),this.type=\"default\",this.status=$.status===void 0?200:$.status,this.status<200||this.status>599)throw new RangeError(\"Failed to construct \\'Response\\': The status provided (0) is outside the range [200, 599].\");this.ok=this.status>=200&&this.status<300,this.statusText=$.statusText===void 0?\"\":\"\"+$.statusText,this.headers=new m($.headers),this.url=$.url||\"\",this._initBody(V)}L.call(ie.prototype),ie.prototype.clone=function(){return new ie(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},ie.error=function(){var V=new ie(null,{status:200,statusText:\"\"});return V.ok=!1,V.status=0,V.type=\"error\",V};var Z=[301,302,303,307,308];ie.redirect=function(V,$){if(Z.indexOf($)===-1)throw new RangeError(\"Invalid status code\");return new ie(null,{status:$,headers:{location:V}})},n.DOMException=r.DOMException;try{new n.DOMException}catch{n.DOMException=function($,F){this.message=$,this.name=F;var _=Error($);this.stack=_.stack},n.DOMException.prototype=Object.create(Error.prototype),n.DOMException.prototype.constructor=n.DOMException}function ae(V,$){return new Promise(function(F,_){var O=new W(V,$);if(O.signal&&O.signal.aborted)return _(new n.DOMException(\"Aborted\",\"AbortError\"));var z=new XMLHttpRequest;function N(){z.abort()}z.onload=function(){var q={statusText:z.statusText,headers:ne(z.getAllResponseHeaders()||\"\")};O.url.indexOf(\"file://\")===0&&(z.status<200||z.status>599)?q.status=200:q.status=z.status,q.url=\"responseURL\"in z?z.responseURL:q.headers.get(\"X-Request-URL\");var H=\"response\"in z?z.response:z.responseText;setTimeout(function(){F(new ie(H,q))},0)},z.onerror=function(){setTimeout(function(){_(new TypeError(\"Network request failed\"))},0)},z.ontimeout=function(){setTimeout(function(){_(new TypeError(\"Network request timed out\"))},0)},z.onabort=function(){setTimeout(function(){_(new n.DOMException(\"Aborted\",\"AbortError\"))},0)};function B(q){try{return q===\"\"&&r.location.href?r.location.href:q}catch{return q}}if(z.open(O.method,B(O.url),!0),O.credentials===\"include\"?z.withCredentials=!0:O.credentials===\"omit\"&&(z.withCredentials=!1),\"responseType\"in z&&(o.blob?z.responseType=\"blob\":o.arrayBuffer&&(z.responseType=\"arraybuffer\")),$&&typeof $.headers==\"object\"&&!($.headers instanceof m||r.Headers&&$.headers instanceof r.Headers)){var j=[];Object.getOwnPropertyNames($.headers).forEach(function(q){j.push(u(q)),z.setRequestHeader(q,d($.headers[q]))}),O.headers.forEach(function(q,H){j.indexOf(H)===-1&&z.setRequestHeader(H,q)})}else O.headers.forEach(function(q,H){z.setRequestHeader(H,q)});O.signal&&(O.signal.addEventListener(\"abort\",N),z.onreadystatechange=function(){z.readyState===4&&O.signal.removeEventListener(\"abort\",N)}),z.send(typeof O._bodyInit>\"u\"?null:O._bodyInit)})}return ae.polyfill=!0,r.fetch||(r.fetch=ae,r.Headers=m,r.Request=W,r.Response=ie),n.Headers=m,n.Request=W,n.Response=ie,n.fetch=ae,n}({})})(_z);_z.fetch.ponyfill=!0;delete _z.fetch.polyfill;var G8=kz.fetch?kz:_z;zx=G8.fetch;zx.default=G8.fetch;zx.fetch=G8.fetch;zx.Headers=G8.Headers;zx.Request=G8.Request;zx.Response=G8.Response;i_e.exports=zx});var l_e=be((a_e,c_e)=>{p();(function(t){var e=Object.hasOwnProperty,n=Array.isArray?Array.isArray:function(B){return Object.prototype.toString.call(B)===\"[object Array]\"},r=10,o=typeof process==\"object\"&&typeof process.nextTick==\"function\",i=typeof Symbol==\"function\",a=typeof Reflect==\"object\",c=typeof setImmediate==\"function\",u=c?setImmediate:setTimeout,d=i?a&&typeof Reflect.ownKeys==\"function\"?Reflect.ownKeys:function(N){var B=Object.getOwnPropertyNames(N);return B.push.apply(B,Object.getOwnPropertySymbols(N)),B}:Object.keys;function h(){this._events={},this._conf&&m.call(this,this._conf)}function m(N){N&&(this._conf=N,N.delimiter&&(this.delimiter=N.delimiter),N.maxListeners!==t&&(this._maxListeners=N.maxListeners),N.wildcard&&(this.wildcard=N.wildcard),N.newListener&&(this._newListener=N.newListener),N.removeListener&&(this._removeListener=N.removeListener),N.verboseMemoryLeak&&(this.verboseMemoryLeak=N.verboseMemoryLeak),N.ignoreErrors&&(this.ignoreErrors=N.ignoreErrors),this.wildcard&&(this.listenerTree={}))}function g(N,B){var j=\"(node) warning: possible EventEmitter memory leak detected. \"+N+\" listeners added. Use emitter.setMaxListeners() to increase limit.\";if(this.verboseMemoryLeak&&(j+=\" Event name: \"+B+\".\"),typeof process<\"u\"&&process.emitWarning){var q=new Error(j);q.name=\"MaxListenersExceededWarning\",q.emitter=this,q.count=N,process.emitWarning(q)}else console.error(j),console.trace&&console.trace()}var b=function(N,B,j){var q=arguments.length;switch(q){case 0:return[];case 1:return[N];case 2:return[N,B];case 3:return[N,B,j];default:for(var H=new Array(q);q--;)H[q]=arguments[q];return H}};function E(N,B){for(var j={},q,H=N.length,I=B?B.length:0,U=0;U<H;U++)q=N[U],j[q]=U<I?B[U]:t;return j}function C(N,B,j){this._emitter=N,this._target=B,this._listeners={},this._listenersCount=0;var q,H;if((j.on||j.off)&&(q=j.on,H=j.off),B.addEventListener?(q=B.addEventListener,H=B.removeEventListener):B.addListener?(q=B.addListener,H=B.removeListener):B.on&&(q=B.on,H=B.off),!q&&!H)throw Error(\"target does not implement any known event API\");if(typeof q!=\"function\")throw TypeError(\"on method must be a function\");if(typeof H!=\"function\")throw TypeError(\"off method must be a function\");this._on=q,this._off=H;var I=N._observers;I?I.push(this):N._observers=[this]}Object.assign(C.prototype,{subscribe:function(N,B,j){var q=this,H=this._target,I=this._emitter,U=this._listeners,X=function(){var ee=b.apply(null,arguments),se={data:ee,name:B,original:N};if(j){var pe=j.call(H,se);pe!==!1&&I.emit.apply(I,[se.name].concat(ee));return}I.emit.apply(I,[B].concat(ee))};if(U[N])throw Error(\"Event \\'\"+N+\"\\' is already listening\");this._listenersCount++,I._newListener&&I._removeListener&&!q._onNewListener?(this._onNewListener=function(ee){ee===B&&U[N]===null&&(U[N]=X,q._on.call(H,N,X))},I.on(\"newListener\",this._onNewListener),this._onRemoveListener=function(ee){ee===B&&!I.hasListeners(ee)&&U[N]&&(U[N]=null,q._off.call(H,N,X))},U[N]=null,I.on(\"removeListener\",this._onRemoveListener)):(U[N]=X,q._on.call(H,N,X))},unsubscribe:function(N){var B=this,j=this._listeners,q=this._emitter,H,I,U=this._off,X=this._target,ee;if(N&&typeof N!=\"string\")throw TypeError(\"event must be a string\");function se(){B._onNewListener&&(q.off(\"newListener\",B._onNewListener),q.off(\"removeListener\",B._onRemoveListener),B._onNewListener=null,B._onRemoveListener=null);var pe=J.call(q,B);q._observers.splice(pe,1)}if(N){if(H=j[N],!H)return;U.call(X,N,H),delete j[N],--this._listenersCount||se()}else{for(I=d(j),ee=I.length;ee-- >0;)N=I[ee],U.call(X,N,j[N]);this._listeners={},this._listenersCount=0,se()}}});function T(N,B,j,q){var H=Object.assign({},B);if(!N)return H;if(typeof N!=\"object\")throw TypeError(\"options must be an object\");var I=Object.keys(N),U=I.length,X,ee,se;function pe(xe){throw Error(\\'Invalid \"\\'+X+\\'\" option value\\'+(xe?\". Reason: \"+xe:\"\"))}for(var ye=0;ye<U;ye++){if(X=I[ye],!q&&!e.call(B,X))throw Error(\\'Unknown \"\\'+X+\\'\" option\\');ee=N[X],ee!==t&&(se=j[X],H[X]=se?se(ee,pe):ee)}return H}function R(N,B){return(typeof N!=\"function\"||!N.hasOwnProperty(\"prototype\"))&&B(\"value must be a constructor\"),N}function L(N){var B=\"value must be type of \"+N.join(\"|\"),j=N.length,q=N[0],H=N[1];return j===1?function(I,U){if(typeof I===q)return I;U(B)}:j===2?function(I,U){var X=typeof I;if(X===q||X===H)return I;U(B)}:function(I,U){for(var X=typeof I,ee=j;ee-- >0;)if(X===N[ee])return I;U(B)}}var D=L([\"function\"]),G=L([\"object\",\"function\"]);function W(N,B,j){var q,H,I=0,U,X=new N(function(ee,se,pe){j=T(j,{timeout:0,overload:!1},{timeout:function(Me,qe){return Me*=1,(typeof Me!=\"number\"||Me<0||!Number.isFinite(Me))&&qe(\"timeout must be a positive number\"),Me}}),q=!j.overload&&typeof N.prototype.cancel==\"function\"&&typeof pe==\"function\";function ye(){H&&(H=null),I&&(clearTimeout(I),I=0)}var xe=function(Me){ye(),ee(Me)},_e=function(Me){ye(),se(Me)};q?B(xe,_e,pe):(H=[function(Me){_e(Me||Error(\"canceled\"))}],B(xe,_e,function(Me){if(U)throw Error(\"Unable to subscribe on cancel event asynchronously\");if(typeof Me!=\"function\")throw TypeError(\"onCancel callback must be a function\");H.push(Me)}),U=!0),j.timeout>0&&(I=setTimeout(function(){var Me=Error(\"timeout\");Me.code=\"ETIMEDOUT\",I=0,X.cancel(Me),se(Me)},j.timeout))});return q||(X.cancel=function(ee){if(H){for(var se=H.length,pe=1;pe<se;pe++)H[pe](ee);H[0](ee),H=null}}),X}function J(N){var B=this._observers;if(!B)return-1;for(var j=B.length,q=0;q<j;q++)if(B[q]._target===N)return q;return-1}function ne(N,B,j,q,H){if(!j)return null;if(q===0){var I=typeof B;if(I===\"string\"){var U,X,ee=0,se=0,pe=this.delimiter,ye=pe.length;if((X=B.indexOf(pe))!==-1){U=new Array(5);do U[ee++]=B.slice(se,X),se=X+ye;while((X=B.indexOf(pe,se))!==-1);U[ee++]=B.slice(se),B=U,H=ee}else B=[B],H=1}else I===\"object\"?H=B.length:(B=[B],H=1)}var xe=null,_e,Me,qe,wt,Ge,ht=B[q],Ct=B[q+1],dt,Ze;if(q===H)j._listeners&&(typeof j._listeners==\"function\"?(N&&N.push(j._listeners),xe=[j]):(N&&N.push.apply(N,j._listeners),xe=[j]));else if(ht===\"*\"){for(dt=d(j),X=dt.length;X-- >0;)_e=dt[X],_e!==\"_listeners\"&&(Ze=ne(N,B,j[_e],q+1,H),Ze&&(xe?xe.push.apply(xe,Ze):xe=Ze));return xe}else if(ht===\"**\"){for(Ge=q+1===H||q+2===H&&Ct===\"*\",Ge&&j._listeners&&(xe=ne(N,B,j,H,H)),dt=d(j),X=dt.length;X-- >0;)_e=dt[X],_e!==\"_listeners\"&&(_e===\"*\"||_e===\"**\"?(j[_e]._listeners&&!Ge&&(Ze=ne(N,B,j[_e],H,H),Ze&&(xe?xe.push.apply(xe,Ze):xe=Ze)),Ze=ne(N,B,j[_e],q,H)):_e===Ct?Ze=ne(N,B,j[_e],q+2,H):Ze=ne(N,B,j[_e],q,H),Ze&&(xe?xe.push.apply(xe,Ze):xe=Ze));return xe}else j[ht]&&(xe=ne(N,B,j[ht],q+1,H));if(Me=j[\"*\"],Me&&ne(N,B,Me,q+1,H),qe=j[\"**\"],qe)if(q<H)for(qe._listeners&&ne(N,B,qe,H,H),dt=d(qe),X=dt.length;X-- >0;)_e=dt[X],_e!==\"_listeners\"&&(_e===Ct?ne(N,B,qe[_e],q+2,H):_e===ht?ne(N,B,qe[_e],q+1,H):(wt={},wt[_e]=qe[_e],ne(N,B,{\"**\":wt},q+1,H)));else qe._listeners?ne(N,B,qe,H,H):qe[\"*\"]&&qe[\"*\"]._listeners&&ne(N,B,qe[\"*\"],H,H);return xe}function ie(N,B,j){var q=0,H=0,I,U=this.delimiter,X=U.length,ee;if(typeof N==\"string\")if((I=N.indexOf(U))!==-1){ee=new Array(5);do ee[q++]=N.slice(H,I),H=I+X;while((I=N.indexOf(U,H))!==-1);ee[q++]=N.slice(H)}else ee=[N],q=1;else ee=N,q=N.length;if(q>1){for(I=0;I+1<q;I++)if(ee[I]===\"**\"&&ee[I+1]===\"**\")return}var se=this.listenerTree,pe;for(I=0;I<q;I++)if(pe=ee[I],se=se[pe]||(se[pe]={}),I===q-1)return se._listeners?(typeof se._listeners==\"function\"&&(se._listeners=[se._listeners]),j?se._listeners.unshift(B):se._listeners.push(B),!se._listeners.warned&&this._maxListeners>0&&se._listeners.length>this._maxListeners&&(se._listeners.warned=!0,g.call(this,se._listeners.length,pe))):se._listeners=B,!0;return!0}function Z(N,B,j,q){for(var H=d(N),I=H.length,U,X,ee,se=N._listeners,pe;I-- >0;)X=H[I],U=N[X],X===\"_listeners\"?ee=j:ee=j?j.concat(X):[X],pe=q||typeof X==\"symbol\",se&&B.push(pe?ee:ee.join(this.delimiter)),typeof U==\"object\"&&Z.call(this,U,B,ee,pe);return B}function ae(N){for(var B=d(N),j=B.length,q,H,I;j-- >0;)H=B[j],q=N[H],q&&(I=!0,H!==\"_listeners\"&&!ae(q)&&delete N[H]);return I}function V(N,B,j){this.emitter=N,this.event=B,this.listener=j}V.prototype.off=function(){return this.emitter.off(this.event,this.listener),this};function $(N,B,j){if(j===!0)H=!0;else if(j===!1)q=!0;else{if(!j||typeof j!=\"object\")throw TypeError(\"options should be an object or true\");var q=j.async,H=j.promisify,I=j.nextTick,U=j.objectify}if(q||I||H){var X=B,ee=B._origin||B;if(I&&!o)throw Error(\"process.nextTick is not supported\");H===t&&(H=B.constructor.name===\"AsyncFunction\"),B=function(){var se=arguments,pe=this,ye=this.event;return H?I?Promise.resolve():new Promise(function(xe){u(xe)}).then(function(){return pe.event=ye,X.apply(pe,se)}):(I?process.nextTick:u)(function(){pe.event=ye,X.apply(pe,se)})},B._async=!0,B._origin=ee}return[B,U?new V(this,N,B):this]}function F(N){this._events={},this._newListener=!1,this._removeListener=!1,this.verboseMemoryLeak=!1,m.call(this,N)}F.EventEmitter2=F,F.prototype.listenTo=function(N,B,j){if(typeof N!=\"object\")throw TypeError(\"target musts be an object\");var q=this;j=T(j,{on:t,off:t,reducers:t},{on:D,off:D,reducers:G});function H(I){if(typeof I!=\"object\")throw TypeError(\"events must be an object\");var U=j.reducers,X=J.call(q,N),ee;X===-1?ee=new C(q,N,j):ee=q._observers[X];for(var se=d(I),pe=se.length,ye,xe=typeof U==\"function\",_e=0;_e<pe;_e++)ye=se[_e],ee.subscribe(ye,I[ye]||ye,xe?U:U&&U[ye])}return n(B)?H(E(B)):H(typeof B==\"string\"?E(B.split(/\\\\s+/)):B),this},F.prototype.stopListeningTo=function(N,B){var j=this._observers;if(!j)return!1;var q=j.length,H,I=!1;if(N&&typeof N!=\"object\")throw TypeError(\"target should be an object\");for(;q-- >0;)H=j[q],(!N||H._target===N)&&(H.unsubscribe(B),I=!0);return I},F.prototype.delimiter=\".\",F.prototype.setMaxListeners=function(N){N!==t&&(this._maxListeners=N,this._conf||(this._conf={}),this._conf.maxListeners=N)},F.prototype.getMaxListeners=function(){return this._maxListeners},F.prototype.event=\"\",F.prototype.once=function(N,B,j){return this._once(N,B,!1,j)},F.prototype.prependOnceListener=function(N,B,j){return this._once(N,B,!0,j)},F.prototype._once=function(N,B,j,q){return this._many(N,1,B,j,q)},F.prototype.many=function(N,B,j,q){return this._many(N,B,j,!1,q)},F.prototype.prependMany=function(N,B,j,q){return this._many(N,B,j,!0,q)},F.prototype._many=function(N,B,j,q,H){var I=this;if(typeof j!=\"function\")throw new Error(\"many only accepts instances of Function\");function U(){return--B===0&&I.off(N,U),j.apply(this,arguments)}return U._origin=j,this._on(N,U,q,H)},F.prototype.emit=function(){if(!this._events&&!this._all)return!1;this._events||h.call(this);var N=arguments[0],B,j=this.wildcard,q,H,I,U,X;if(N===\"newListener\"&&!this._newListener&&!this._events.newListener)return!1;if(j&&(B=N,N!==\"newListener\"&&N!==\"removeListener\"&&typeof N==\"object\")){if(H=N.length,i){for(I=0;I<H;I++)if(typeof N[I]==\"symbol\"){X=!0;break}}X||(N=N.join(this.delimiter))}var ee=arguments.length,se;if(this._all&&this._all.length)for(se=this._all.slice(),I=0,H=se.length;I<H;I++)switch(this.event=N,ee){case 1:se[I].call(this,N);break;case 2:se[I].call(this,N,arguments[1]);break;case 3:se[I].call(this,N,arguments[1],arguments[2]);break;default:se[I].apply(this,arguments)}if(j)se=[],ne.call(this,se,B,this.listenerTree,0,H);else if(se=this._events[N],typeof se==\"function\"){switch(this.event=N,ee){case 1:se.call(this);break;case 2:se.call(this,arguments[1]);break;case 3:se.call(this,arguments[1],arguments[2]);break;default:for(q=new Array(ee-1),U=1;U<ee;U++)q[U-1]=arguments[U];se.apply(this,q)}return!0}else se&&(se=se.slice());if(se&&se.length){if(ee>3)for(q=new Array(ee-1),U=1;U<ee;U++)q[U-1]=arguments[U];for(I=0,H=se.length;I<H;I++)switch(this.event=N,ee){case 1:se[I].call(this);break;case 2:se[I].call(this,arguments[1]);break;case 3:se[I].call(this,arguments[1],arguments[2]);break;default:se[I].apply(this,q)}return!0}else if(!this.ignoreErrors&&!this._all&&N===\"error\")throw arguments[1]instanceof Error?arguments[1]:new Error(\"Uncaught, unspecified \\'error\\' event.\");return!!this._all},F.prototype.emitAsync=function(){if(!this._events&&!this._all)return!1;this._events||h.call(this);var N=arguments[0],B=this.wildcard,j,q,H,I,U,X;if(N===\"newListener\"&&!this._newListener&&!this._events.newListener)return Promise.resolve([!1]);if(B&&(j=N,N!==\"newListener\"&&N!==\"removeListener\"&&typeof N==\"object\")){if(I=N.length,i){for(U=0;U<I;U++)if(typeof N[U]==\"symbol\"){q=!0;break}}q||(N=N.join(this.delimiter))}var ee=[],se=arguments.length,pe;if(this._all)for(U=0,I=this._all.length;U<I;U++)switch(this.event=N,se){case 1:ee.push(this._all[U].call(this,N));break;case 2:ee.push(this._all[U].call(this,N,arguments[1]));break;case 3:ee.push(this._all[U].call(this,N,arguments[1],arguments[2]));break;default:ee.push(this._all[U].apply(this,arguments))}if(B?(pe=[],ne.call(this,pe,j,this.listenerTree,0)):pe=this._events[N],typeof pe==\"function\")switch(this.event=N,se){case 1:ee.push(pe.call(this));break;case 2:ee.push(pe.call(this,arguments[1]));break;case 3:ee.push(pe.call(this,arguments[1],arguments[2]));break;default:for(H=new Array(se-1),X=1;X<se;X++)H[X-1]=arguments[X];ee.push(pe.apply(this,H))}else if(pe&&pe.length){if(pe=pe.slice(),se>3)for(H=new Array(se-1),X=1;X<se;X++)H[X-1]=arguments[X];for(U=0,I=pe.length;U<I;U++)switch(this.event=N,se){case 1:ee.push(pe[U].call(this));break;case 2:ee.push(pe[U].call(this,arguments[1]));break;case 3:ee.push(pe[U].call(this,arguments[1],arguments[2]));break;default:ee.push(pe[U].apply(this,H))}}else if(!this.ignoreErrors&&!this._all&&N===\"error\")return arguments[1]instanceof Error?Promise.reject(arguments[1]):Promise.reject(\"Uncaught, unspecified \\'error\\' event.\");return Promise.all(ee)},F.prototype.on=function(N,B,j){return this._on(N,B,!1,j)},F.prototype.prependListener=function(N,B,j){return this._on(N,B,!0,j)},F.prototype.onAny=function(N){return this._onAny(N,!1)},F.prototype.prependAny=function(N){return this._onAny(N,!0)},F.prototype.addListener=F.prototype.on,F.prototype._onAny=function(N,B){if(typeof N!=\"function\")throw new Error(\"onAny only accepts instances of Function\");return this._all||(this._all=[]),B?this._all.unshift(N):this._all.push(N),this},F.prototype._on=function(N,B,j,q){if(typeof N==\"function\")return this._onAny(N,B),this;if(typeof B!=\"function\")throw new Error(\"on only accepts instances of Function\");this._events||h.call(this);var H=this,I;return q!==t&&(I=$.call(this,N,B,q),B=I[0],H=I[1]),this._newListener&&this.emit(\"newListener\",N,B),this.wildcard?(ie.call(this,N,B,j),H):(this._events[N]?(typeof this._events[N]==\"function\"&&(this._events[N]=[this._events[N]]),j?this._events[N].unshift(B):this._events[N].push(B),!this._events[N].warned&&this._maxListeners>0&&this._events[N].length>this._maxListeners&&(this._events[N].warned=!0,g.call(this,this._events[N].length,N))):this._events[N]=B,H)},F.prototype.off=function(N,B){if(typeof B!=\"function\")throw new Error(\"removeListener only takes instances of Function\");var j,q=[];if(this.wildcard){var H=typeof N==\"string\"?N.split(this.delimiter):N.slice();if(q=ne.call(this,null,H,this.listenerTree,0),!q)return this}else{if(!this._events[N])return this;j=this._events[N],q.push({_listeners:j})}for(var I=0;I<q.length;I++){var U=q[I];if(j=U._listeners,n(j)){for(var X=-1,ee=0,se=j.length;ee<se;ee++)if(j[ee]===B||j[ee].listener&&j[ee].listener===B||j[ee]._origin&&j[ee]._origin===B){X=ee;break}if(X<0)continue;return this.wildcard?U._listeners.splice(X,1):this._events[N].splice(X,1),j.length===0&&(this.wildcard?delete U._listeners:delete this._events[N]),this._removeListener&&this.emit(\"removeListener\",N,B),this}else(j===B||j.listener&&j.listener===B||j._origin&&j._origin===B)&&(this.wildcard?delete U._listeners:delete this._events[N],this._removeListener&&this.emit(\"removeListener\",N,B))}return this.listenerTree&&ae(this.listenerTree),this},F.prototype.offAny=function(N){var B=0,j=0,q;if(N&&this._all&&this._all.length>0){for(q=this._all,B=0,j=q.length;B<j;B++)if(N===q[B])return q.splice(B,1),this._removeListener&&this.emit(\"removeListenerAny\",N),this}else{if(q=this._all,this._removeListener)for(B=0,j=q.length;B<j;B++)this.emit(\"removeListenerAny\",q[B]);this._all=[]}return this},F.prototype.removeListener=F.prototype.off,F.prototype.removeAllListeners=function(N){if(N===t)return!this._events||h.call(this),this;if(this.wildcard){var B=ne.call(this,null,N,this.listenerTree,0),j,q;if(!B)return this;for(q=0;q<B.length;q++)j=B[q],j._listeners=null;this.listenerTree&&ae(this.listenerTree)}else this._events&&(this._events[N]=null);return this},F.prototype.listeners=function(N){var B=this._events,j,q,H,I,U;if(N===t){if(this.wildcard)throw Error(\"event name required for wildcard emitter\");if(!B)return[];for(j=d(B),I=j.length,H=[];I-- >0;)q=B[j[I]],typeof q==\"function\"?H.push(q):H.push.apply(H,q);return H}else{if(this.wildcard){if(U=this.listenerTree,!U)return[];var X=[],ee=typeof N==\"string\"?N.split(this.delimiter):N.slice();return ne.call(this,X,ee,U,0),X}return B?(q=B[N],q?typeof q==\"function\"?[q]:q:[]):[]}},F.prototype.eventNames=function(N){var B=this._events;return this.wildcard?Z.call(this,this.listenerTree,[],null,N):B?d(B):[]},F.prototype.listenerCount=function(N){return this.listeners(N).length},F.prototype.hasListeners=function(N){if(this.wildcard){var B=[],j=typeof N==\"string\"?N.split(this.delimiter):N.slice();return ne.call(this,B,j,this.listenerTree,0),B.length>0}var q=this._events,H=this._all;return!!(H&&H.length||q&&(N===t?d(q).length:q[N]))},F.prototype.listenersAny=function(){return this._all?this._all:[]},F.prototype.waitFor=function(N,B){var j=this,q=typeof B;return q===\"number\"?B={timeout:B}:q===\"function\"&&(B={filter:B}),B=T(B,{timeout:0,filter:t,handleError:!1,Promise,overload:!1},{filter:D,Promise:R}),W(B.Promise,function(H,I,U){function X(){var ee=B.filter;if(!(ee&&!ee.apply(j,arguments)))if(j.off(N,X),B.handleError){var se=arguments[0];se?I(se):H(b.apply(null,arguments).slice(1))}else H(b.apply(null,arguments))}U(function(){j.off(N,X)}),j._on(N,X,!1)},{timeout:B.timeout,overload:B.overload})};function _(N,B,j){j=T(j,{Promise,timeout:0,overload:!1},{Promise:R});var q=j.Promise;return W(q,function(H,I,U){var X;if(typeof N.addEventListener==\"function\"){X=function(){H(b.apply(null,arguments))},U(function(){N.removeEventListener(B,X)}),N.addEventListener(B,X,{once:!0});return}var ee=function(){se&&N.removeListener(\"error\",se),H(b.apply(null,arguments))},se;B!==\"error\"&&(se=function(pe){N.removeListener(B,ee),I(pe)},N.once(\"error\",se)),U(function(){se&&N.removeListener(\"error\",se),N.removeListener(B,ee)}),N.once(B,ee)},{timeout:j.timeout,overload:j.overload})}var O=F.prototype;if(Object.defineProperties(F,{defaultMaxListeners:{get:function(){return O._maxListeners},set:function(N){if(typeof N!=\"number\"||N<0||Number.isNaN(N))throw TypeError(\"n must be a non-negative number\");O._maxListeners=N},enumerable:!0},once:{value:_,writable:!0,configurable:!0}}),Object.defineProperties(O,{_maxListeners:{value:r,writable:!0,configurable:!0},_observers:{value:null,writable:!0,configurable:!0}}),typeof define==\"function\"&&define.amd)define(function(){return F});else if(typeof a_e==\"object\")c_e.exports=F;else{var z=new Function(\"\",\"return this\")();z.EventEmitter2=F}})()});function YI(){if(!Cz&&(Cz=typeof crypto<\"u\"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<\"u\"&&typeof msCrypto.getRandomValues==\"function\"&&msCrypto.getRandomValues.bind(msCrypto),!Cz))throw new Error(\"crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported\");return Cz(art)}var Cz,art,xte=ce(()=>{p();art=new Uint8Array(16)});var u_e,d_e=ce(()=>{p();u_e=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i});function crt(t){return typeof t==\"string\"&&u_e.test(t)}var cg,QI=ce(()=>{p();d_e();cg=crt});function lrt(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=(kl[t[e+0]]+kl[t[e+1]]+kl[t[e+2]]+kl[t[e+3]]+\"-\"+kl[t[e+4]]+kl[t[e+5]]+\"-\"+kl[t[e+6]]+kl[t[e+7]]+\"-\"+kl[t[e+8]]+kl[t[e+9]]+\"-\"+kl[t[e+10]]+kl[t[e+11]]+kl[t[e+12]]+kl[t[e+13]]+kl[t[e+14]]+kl[t[e+15]]).toLowerCase();if(!cg(n))throw TypeError(\"Stringified UUID is invalid\");return n}var kl,Az,Hx,JI=ce(()=>{p();QI();kl=[];for(Az=0;Az<256;++Az)kl.push((Az+256).toString(16).substr(1));Hx=lrt});function urt(t,e,n){var r=e&&n||0,o=e||new Array(16);t=t||{};var i=t.node||f_e,a=t.clockseq!==void 0?t.clockseq:Ete;if(i==null||a==null){var c=t.random||(t.rng||YI)();i==null&&(i=f_e=[c[0]|1,c[1],c[2],c[3],c[4],c[5]]),a==null&&(a=Ete=(c[6]<<8|c[7])&16383)}var u=t.msecs!==void 0?t.msecs:Date.now(),d=t.nsecs!==void 0?t.nsecs:kte+1,h=u-Ste+(d-kte)/1e4;if(h<0&&t.clockseq===void 0&&(a=a+1&16383),(h<0||u>Ste)&&t.nsecs===void 0&&(d=0),d>=1e4)throw new Error(\"uuid.v1(): Can\\'t create more than 10M uuids/sec\");Ste=u,kte=d,Ete=a,u+=122192928e5;var m=((u&268435455)*1e4+d)%4294967296;o[r++]=m>>>24&255,o[r++]=m>>>16&255,o[r++]=m>>>8&255,o[r++]=m&255;var g=u/4294967296*1e4&268435455;o[r++]=g>>>8&255,o[r++]=g&255,o[r++]=g>>>24&15|16,o[r++]=g>>>16&255,o[r++]=a>>>8|128,o[r++]=a&255;for(var b=0;b<6;++b)o[r+b]=i[b];return e||Hx(o)}var f_e,Ete,Ste,kte,h_e,p_e=ce(()=>{p();xte();JI();Ste=0,kte=0;h_e=urt});function drt(t){if(!cg(t))throw TypeError(\"Invalid UUID\");var e,n=new Uint8Array(16);return n[0]=(e=parseInt(t.slice(0,8),16))>>>24,n[1]=e>>>16&255,n[2]=e>>>8&255,n[3]=e&255,n[4]=(e=parseInt(t.slice(9,13),16))>>>8,n[5]=e&255,n[6]=(e=parseInt(t.slice(14,18),16))>>>8,n[7]=e&255,n[8]=(e=parseInt(t.slice(19,23),16))>>>8,n[9]=e&255,n[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,n[11]=e/4294967296&255,n[12]=e>>>24&255,n[13]=e>>>16&255,n[14]=e>>>8&255,n[15]=e&255,n}var Tz,_te=ce(()=>{p();QI();Tz=drt});function frt(t){t=unescape(encodeURIComponent(t));for(var e=[],n=0;n<t.length;++n)e.push(t.charCodeAt(n));return e}function Rz(t,e,n){function r(o,i,a,c){if(typeof o==\"string\"&&(o=frt(o)),typeof i==\"string\"&&(i=Tz(i)),i.length!==16)throw TypeError(\"Namespace must be array-like (16 iterable integer values, 0-255)\");var u=new Uint8Array(16+o.length);if(u.set(i),u.set(o,i.length),u=n(u),u[6]=u[6]&15|e,u[8]=u[8]&63|128,a){c=c||0;for(var d=0;d<16;++d)a[c+d]=u[d];return a}return Hx(u)}try{r.name=t}catch{}return r.DNS=hrt,r.URL=prt,r}var hrt,prt,Cte=ce(()=>{p();JI();_te();hrt=\"6ba7b810-9dad-11d1-80b4-00c04fd430c8\",prt=\"6ba7b811-9dad-11d1-80b4-00c04fd430c8\"});function mrt(t){if(typeof t==\"string\"){var e=unescape(encodeURIComponent(t));t=new Uint8Array(e.length);for(var n=0;n<e.length;++n)t[n]=e.charCodeAt(n)}return grt(yrt(brt(t),t.length*8))}function grt(t){for(var e=[],n=t.length*32,r=\"0123456789abcdef\",o=0;o<n;o+=8){var i=t[o>>5]>>>o%32&255,a=parseInt(r.charAt(i>>>4&15)+r.charAt(i&15),16);e.push(a)}return e}function m_e(t){return(t+64>>>9<<4)+14+1}function yrt(t,e){t[e>>5]|=128<<e%32,t[m_e(e)-1]=e;for(var n=1732584193,r=-271733879,o=-1732584194,i=271733878,a=0;a<t.length;a+=16){var c=n,u=r,d=o,h=i;n=bu(n,r,o,i,t[a],7,-680876936),i=bu(i,n,r,o,t[a+1],12,-389564586),o=bu(o,i,n,r,t[a+2],17,606105819),r=bu(r,o,i,n,t[a+3],22,-1044525330),n=bu(n,r,o,i,t[a+4],7,-176418897),i=bu(i,n,r,o,t[a+5],12,1200080426),o=bu(o,i,n,r,t[a+6],17,-1473231341),r=bu(r,o,i,n,t[a+7],22,-45705983),n=bu(n,r,o,i,t[a+8],7,1770035416),i=bu(i,n,r,o,t[a+9],12,-1958414417),o=bu(o,i,n,r,t[a+10],17,-42063),r=bu(r,o,i,n,t[a+11],22,-1990404162),n=bu(n,r,o,i,t[a+12],7,1804603682),i=bu(i,n,r,o,t[a+13],12,-40341101),o=bu(o,i,n,r,t[a+14],17,-1502002290),r=bu(r,o,i,n,t[a+15],22,1236535329),n=vu(n,r,o,i,t[a+1],5,-165796510),i=vu(i,n,r,o,t[a+6],9,-1069501632),o=vu(o,i,n,r,t[a+11],14,643717713),r=vu(r,o,i,n,t[a],20,-373897302),n=vu(n,r,o,i,t[a+5],5,-701558691),i=vu(i,n,r,o,t[a+10],9,38016083),o=vu(o,i,n,r,t[a+15],14,-660478335),r=vu(r,o,i,n,t[a+4],20,-405537848),n=vu(n,r,o,i,t[a+9],5,568446438),i=vu(i,n,r,o,t[a+14],9,-1019803690),o=vu(o,i,n,r,t[a+3],14,-187363961),r=vu(r,o,i,n,t[a+8],20,1163531501),n=vu(n,r,o,i,t[a+13],5,-1444681467),i=vu(i,n,r,o,t[a+2],9,-51403784),o=vu(o,i,n,r,t[a+7],14,1735328473),r=vu(r,o,i,n,t[a+12],20,-1926607734),n=wu(n,r,o,i,t[a+5],4,-378558),i=wu(i,n,r,o,t[a+8],11,-2022574463),o=wu(o,i,n,r,t[a+11],16,1839030562),r=wu(r,o,i,n,t[a+14],23,-35309556),n=wu(n,r,o,i,t[a+1],4,-1530992060),i=wu(i,n,r,o,t[a+4],11,1272893353),o=wu(o,i,n,r,t[a+7],16,-155497632),r=wu(r,o,i,n,t[a+10],23,-1094730640),n=wu(n,r,o,i,t[a+13],4,681279174),i=wu(i,n,r,o,t[a],11,-358537222),o=wu(o,i,n,r,t[a+3],16,-722521979),r=wu(r,o,i,n,t[a+6],23,76029189),n=wu(n,r,o,i,t[a+9],4,-640364487),i=wu(i,n,r,o,t[a+12],11,-421815835),o=wu(o,i,n,r,t[a+15],16,530742520),r=wu(r,o,i,n,t[a+2],23,-995338651),n=xu(n,r,o,i,t[a],6,-198630844),i=xu(i,n,r,o,t[a+7],10,1126891415),o=xu(o,i,n,r,t[a+14],15,-1416354905),r=xu(r,o,i,n,t[a+5],21,-57434055),n=xu(n,r,o,i,t[a+12],6,1700485571),i=xu(i,n,r,o,t[a+3],10,-1894986606),o=xu(o,i,n,r,t[a+10],15,-1051523),r=xu(r,o,i,n,t[a+1],21,-2054922799),n=xu(n,r,o,i,t[a+8],6,1873313359),i=xu(i,n,r,o,t[a+15],10,-30611744),o=xu(o,i,n,r,t[a+6],15,-1560198380),r=xu(r,o,i,n,t[a+13],21,1309151649),n=xu(n,r,o,i,t[a+4],6,-145523070),i=xu(i,n,r,o,t[a+11],10,-1120210379),o=xu(o,i,n,r,t[a+2],15,718787259),r=xu(r,o,i,n,t[a+9],21,-343485551),n=qx(n,c),r=qx(r,u),o=qx(o,d),i=qx(i,h)}return[n,r,o,i]}function brt(t){if(t.length===0)return[];for(var e=t.length*8,n=new Uint32Array(m_e(e)),r=0;r<e;r+=8)n[r>>5]|=(t[r/8]&255)<<r%32;return n}function qx(t,e){var n=(t&65535)+(e&65535),r=(t>>16)+(e>>16)+(n>>16);return r<<16|n&65535}function vrt(t,e){return t<<e|t>>>32-e}function Iz(t,e,n,r,o,i){return qx(vrt(qx(qx(e,t),qx(r,i)),o),n)}function bu(t,e,n,r,o,i,a){return Iz(e&n|~e&r,t,e,o,i,a)}function vu(t,e,n,r,o,i,a){return Iz(e&r|n&~r,t,e,o,i,a)}function wu(t,e,n,r,o,i,a){return Iz(e^n^r,t,e,o,i,a)}function xu(t,e,n,r,o,i,a){return Iz(n^(e|~r),t,e,o,i,a)}var g_e,y_e=ce(()=>{p();g_e=mrt});var wrt,b_e,v_e=ce(()=>{p();Cte();y_e();wrt=Rz(\"v3\",48,g_e),b_e=wrt});function xrt(t,e,n){t=t||{};var r=t.random||(t.rng||YI)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){n=n||0;for(var o=0;o<16;++o)e[n+o]=r[o];return e}return Hx(r)}var Z8,w_e=ce(()=>{p();xte();JI();Z8=xrt});function Ert(t,e,n,r){switch(t){case 0:return e&n^~e&r;case 1:return e^n^r;case 2:return e&n^e&r^n&r;case 3:return e^n^r}}function Ate(t,e){return t<<e|t>>>32-e}function Srt(t){var e=[1518500249,1859775393,2400959708,3395469782],n=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t==\"string\"){var r=unescape(encodeURIComponent(t));t=[];for(var o=0;o<r.length;++o)t.push(r.charCodeAt(o))}else Array.isArray(t)||(t=Array.prototype.slice.call(t));t.push(128);for(var i=t.length/4+2,a=Math.ceil(i/16),c=new Array(a),u=0;u<a;++u){for(var d=new Uint32Array(16),h=0;h<16;++h)d[h]=t[u*64+h*4]<<24|t[u*64+h*4+1]<<16|t[u*64+h*4+2]<<8|t[u*64+h*4+3];c[u]=d}c[a-1][14]=(t.length-1)*8/Math.pow(2,32),c[a-1][14]=Math.floor(c[a-1][14]),c[a-1][15]=(t.length-1)*8&4294967295;for(var m=0;m<a;++m){for(var g=new Uint32Array(80),b=0;b<16;++b)g[b]=c[m][b];for(var E=16;E<80;++E)g[E]=Ate(g[E-3]^g[E-8]^g[E-14]^g[E-16],1);for(var C=n[0],T=n[1],R=n[2],L=n[3],D=n[4],G=0;G<80;++G){var W=Math.floor(G/20),J=Ate(C,5)+Ert(W,T,R,L)+D+e[W]+g[G]>>>0;D=L,L=R,R=Ate(T,30)>>>0,T=C,C=J}n[0]=n[0]+C>>>0,n[1]=n[1]+T>>>0,n[2]=n[2]+R>>>0,n[3]=n[3]+L>>>0,n[4]=n[4]+D>>>0}return[n[0]>>24&255,n[0]>>16&255,n[0]>>8&255,n[0]&255,n[1]>>24&255,n[1]>>16&255,n[1]>>8&255,n[1]&255,n[2]>>24&255,n[2]>>16&255,n[2]>>8&255,n[2]&255,n[3]>>24&255,n[3]>>16&255,n[3]>>8&255,n[3]&255,n[4]>>24&255,n[4]>>16&255,n[4]>>8&255,n[4]&255]}var x_e,E_e=ce(()=>{p();x_e=Srt});var krt,S_e,k_e=ce(()=>{p();Cte();E_e();krt=Rz(\"v5\",80,x_e),S_e=krt});var __e,C_e=ce(()=>{p();__e=\"00000000-0000-0000-0000-000000000000\"});function _rt(t){if(!cg(t))throw TypeError(\"Invalid UUID\");return parseInt(t.substr(14,1),16)}var A_e,T_e=ce(()=>{p();QI();A_e=_rt});var Tte={};ld(Tte,{NIL:()=>__e,parse:()=>Tz,stringify:()=>Hx,v1:()=>h_e,v3:()=>b_e,v4:()=>Z8,v5:()=>S_e,validate:()=>cg,version:()=>A_e});var Oz=ce(()=>{p();p_e();v_e();w_e();k_e();C_e();T_e();QI();JI();_te()});var lg,XI,eO,Pz=ce(()=>{p();lg=Object.create(null);lg.open=\"0\";lg.close=\"1\";lg.ping=\"2\";lg.pong=\"3\";lg.message=\"4\";lg.upgrade=\"5\";lg.noop=\"6\";XI=Object.create(null);Object.keys(lg).forEach(t=>{XI[lg[t]]=t});eO={type:\"error\",data:\"parser error\"}});function I_e(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}function N_e(t,e){if(O_e&&t.data instanceof Blob)return t.data.arrayBuffer().then(I_e).then(e);if(P_e&&(t.data instanceof ArrayBuffer||M_e(t.data)))return e(I_e(t.data));tO(t,!1,n=>{Rte||(Rte=new TextEncoder),e(Rte.encode(n))})}var O_e,P_e,M_e,tO,R_e,Rte,L_e=ce(()=>{p();Pz();O_e=typeof Blob==\"function\"||typeof Blob<\"u\"&&Object.prototype.toString.call(Blob)===\"[object BlobConstructor]\",P_e=typeof ArrayBuffer==\"function\",M_e=t=>typeof ArrayBuffer.isView==\"function\"?ArrayBuffer.isView(t):t&&t.buffer instanceof ArrayBuffer,tO=({type:t,data:e},n,r)=>O_e&&e instanceof Blob?n?r(e):R_e(e,r):P_e&&(e instanceof ArrayBuffer||M_e(e))?n?r(e):R_e(new Blob([e]),r):r(lg[t]+(e||\"\")),R_e=(t,e)=>{let n=new FileReader;return n.onload=function(){let r=n.result.split(\",\")[1];e(\"b\"+(r||\"\"))},n.readAsDataURL(t)}});var B_e,nO,D_e,F_e=ce(()=>{p();B_e=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",nO=typeof Uint8Array>\"u\"?[]:new Uint8Array(256);for(let t=0;t<B_e.length;t++)nO[B_e.charCodeAt(t)]=t;D_e=t=>{let e=t.length*.75,n=t.length,r,o=0,i,a,c,u;t[t.length-1]===\"=\"&&(e--,t[t.length-2]===\"=\"&&e--);let d=new ArrayBuffer(e),h=new Uint8Array(d);for(r=0;r<n;r+=4)i=nO[t.charCodeAt(r)],a=nO[t.charCodeAt(r+1)],c=nO[t.charCodeAt(r+2)],u=nO[t.charCodeAt(r+3)],h[o++]=i<<2|a>>4,h[o++]=(a&15)<<4|c>>2,h[o++]=(c&3)<<6|u&63;return d}});var Crt,rO,Art,U_e,j_e=ce(()=>{p();Pz();F_e();Crt=typeof ArrayBuffer==\"function\",rO=(t,e)=>{if(typeof t!=\"string\")return{type:\"message\",data:U_e(t,e)};let n=t.charAt(0);return n===\"b\"?{type:\"message\",data:Art(t.substring(1),e)}:XI[n]?t.length>1?{type:XI[n],data:t.substring(1)}:{type:XI[n]}:eO},Art=(t,e)=>{if(Crt){let n=D_e(t);return U_e(n,e)}else return{base64:!0,data:t}},U_e=(t,e)=>{switch(e){case\"blob\":return t instanceof Blob?t:new Blob([t]);case\"arraybuffer\":default:return t instanceof ArrayBuffer?t:t.buffer}}});function W_e(){return new TransformStream({transform(t,e){N_e(t,n=>{let r=n.length,o;if(r<126)o=new Uint8Array(1),new DataView(o.buffer).setUint8(0,r);else if(r<65536){o=new Uint8Array(3);let i=new DataView(o.buffer);i.setUint8(0,126),i.setUint16(1,r)}else{o=new Uint8Array(9);let i=new DataView(o.buffer);i.setUint8(0,127),i.setBigUint64(1,BigInt(r))}t.data&&typeof t.data!=\"string\"&&(o[0]|=128),e.enqueue(o),e.enqueue(n)})}})}function Mz(t){return t.reduce((e,n)=>e+n.length,0)}function Nz(t,e){if(t[0].length===e)return t.shift();let n=new Uint8Array(e),r=0;for(let o=0;o<e;o++)n[o]=t[0][r++],r===t[0].length&&(t.shift(),r=0);return t.length&&r<t[0].length&&(t[0]=t[0].slice(r)),n}function V_e(t,e){Ite||(Ite=new TextDecoder);let n=[],r=0,o=-1,i=!1;return new TransformStream({transform(a,c){for(n.push(a);;){if(r===0){if(Mz(n)<1)break;let u=Nz(n,1);i=(u[0]&128)===128,o=u[0]&127,o<126?r=3:o===126?r=1:r=2}else if(r===1){if(Mz(n)<2)break;let u=Nz(n,2);o=new DataView(u.buffer,u.byteOffset,u.length).getUint16(0),r=3}else if(r===2){if(Mz(n)<8)break;let u=Nz(n,8),d=new DataView(u.buffer,u.byteOffset,u.length),h=d.getUint32(0);if(h>Math.pow(2,21)-1){c.enqueue(eO);break}o=h*Math.pow(2,32)+d.getUint32(4),r=3}else{if(Mz(n)<o)break;let u=Nz(n,o);c.enqueue(rO(i?u:Ite.decode(u),e)),r=0}if(o===0||o>t){c.enqueue(eO);break}}}})}var z_e,H_e,q_e,Ite,Ote,Y8=ce(()=>{p();L_e();j_e();Pz();z_e=\"\\u001e\",H_e=(t,e)=>{let n=t.length,r=new Array(n),o=0;t.forEach((i,a)=>{tO(i,!1,c=>{r[a]=c,++o===n&&e(r.join(z_e))})})},q_e=(t,e)=>{let n=t.split(z_e),r=[];for(let o=0;o<n.length;o++){let i=rO(n[o],e);if(r.push(i),i.type===\"error\")break}return r};Ote=4});function Bi(t){if(t)return Trt(t)}function Trt(t){for(var e in Bi.prototype)t[e]=Bi.prototype[e];return t}var pS=ce(()=>{p();Bi.prototype.on=Bi.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[\"$\"+t]=this._callbacks[\"$\"+t]||[]).push(e),this};Bi.prototype.once=function(t,e){function n(){this.off(t,n),e.apply(this,arguments)}return n.fn=e,this.on(t,n),this};Bi.prototype.off=Bi.prototype.removeListener=Bi.prototype.removeAllListeners=Bi.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var n=this._callbacks[\"$\"+t];if(!n)return this;if(arguments.length==1)return delete this._callbacks[\"$\"+t],this;for(var r,o=0;o<n.length;o++)if(r=n[o],r===e||r.fn===e){n.splice(o,1);break}return n.length===0&&delete this._callbacks[\"$\"+t],this};Bi.prototype.emit=function(t){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),n=this._callbacks[\"$\"+t],r=1;r<arguments.length;r++)e[r-1]=arguments[r];if(n){n=n.slice(0);for(var r=0,o=n.length;r<o;++r)n[r].apply(this,e)}return this};Bi.prototype.emitReserved=Bi.prototype.emit;Bi.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[\"$\"+t]||[]};Bi.prototype.hasListeners=function(t){return!!this.listeners(t).length}});var Bv,_d,$_e,mS=ce(()=>{p();Bv=typeof Promise==\"function\"&&typeof Promise.resolve==\"function\"?e=>Promise.resolve().then(e):(e,n)=>n(e,0),_d=typeof self<\"u\"?self:typeof window<\"u\"?window:Function(\"return this\")(),$_e=\"arraybuffer\"});function Lz(t,...e){return e.reduce((n,r)=>(t.hasOwnProperty(r)&&(n[r]=t[r]),n),{})}function Dv(t,e){e.useNativeTimers?(t.setTimeoutFn=Rrt.bind(_d),t.clearTimeoutFn=Irt.bind(_d)):(t.setTimeoutFn=_d.setTimeout.bind(_d),t.clearTimeoutFn=_d.clearTimeout.bind(_d))}function K_e(t){return typeof t==\"string\"?Prt(t):Math.ceil((t.byteLength||t.size)*Ort)}function Prt(t){let e=0,n=0;for(let r=0,o=t.length;r<o;r++)e=t.charCodeAt(r),e<128?n+=1:e<2048?n+=2:e<55296||e>=57344?n+=3:(r++,n+=4);return n}function Bz(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}var Rrt,Irt,Ort,gS=ce(()=>{p();mS();Rrt=_d.setTimeout,Irt=_d.clearTimeout;Ort=1.33});function G_e(t){let e=\"\";for(let n in t)t.hasOwnProperty(n)&&(e.length&&(e+=\"&\"),e+=encodeURIComponent(n)+\"=\"+encodeURIComponent(t[n]));return e}function Z_e(t){let e={},n=t.split(\"&\");for(let r=0,o=n.length;r<o;r++){let i=n[r].split(\"=\");e[decodeURIComponent(i[0])]=decodeURIComponent(i[1])}return e}var Pte=ce(()=>{p()});var Dz,Fv,oO=ce(()=>{p();Y8();pS();gS();Pte();Dz=class extends Error{constructor(e,n,r){super(e),this.description=n,this.context=r,this.type=\"TransportError\"}},Fv=class extends Bi{constructor(e){super(),this.writable=!1,Dv(this,e),this.opts=e,this.query=e.query,this.socket=e.socket,this.supportsBinary=!e.forceBase64}onError(e,n,r){return super.emitReserved(\"error\",new Dz(e,n,r)),this}open(){return this.readyState=\"opening\",this.doOpen(),this}close(){return(this.readyState===\"opening\"||this.readyState===\"open\")&&(this.doClose(),this.onClose()),this}send(e){this.readyState===\"open\"&&this.write(e)}onOpen(){this.readyState=\"open\",this.writable=!0,super.emitReserved(\"open\")}onData(e){let n=rO(e,this.socket.binaryType);this.onPacket(n)}onPacket(e){super.emitReserved(\"packet\",e)}onClose(e){this.readyState=\"closed\",super.emitReserved(\"close\",e)}pause(e){}createUri(e,n={}){return e+\"://\"+this._hostname()+this._port()+this.opts.path+this._query(n)}_hostname(){let e=this.opts.hostname;return e.indexOf(\":\")===-1?e:\"[\"+e+\"]\"}_port(){return this.opts.port&&(this.opts.secure&&+(this.opts.port!==443)||!this.opts.secure&&Number(this.opts.port)!==80)?\":\"+this.opts.port:\"\"}_query(e){let n=G_e(e);return n.length?\"?\"+n:\"\"}}});var iO,Mte=ce(()=>{p();oO();gS();Y8();iO=class extends Fv{constructor(){super(...arguments),this._polling=!1}get name(){return\"polling\"}doOpen(){this._poll()}pause(e){this.readyState=\"pausing\";let n=()=>{this.readyState=\"paused\",e()};if(this._polling||!this.writable){let r=0;this._polling&&(r++,this.once(\"pollComplete\",function(){--r||n()})),this.writable||(r++,this.once(\"drain\",function(){--r||n()}))}else n()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved(\"poll\")}onData(e){let n=r=>{if(this.readyState===\"opening\"&&r.type===\"open\"&&this.onOpen(),r.type===\"close\")return this.onClose({description:\"transport closed by the server\"}),!1;this.onPacket(r)};q_e(e,this.socket.binaryType).forEach(n),this.readyState!==\"closed\"&&(this._polling=!1,this.emitReserved(\"pollComplete\"),this.readyState===\"open\"&&this._poll())}doClose(){let e=()=>{this.write([{type:\"close\"}])};this.readyState===\"open\"?e():this.once(\"open\",e)}write(e){this.writable=!1,H_e(e,n=>{this.doWrite(n,()=>{this.writable=!0,this.emitReserved(\"drain\")})})}uri(){let e=this.opts.secure?\"https\":\"http\",n=this.query||{};return this.opts.timestampRequests!==!1&&(n[this.opts.timestampParam]=Bz()),!this.supportsBinary&&!n.sid&&(n.b64=1),this.createUri(e,n)}}});var Y_e,Q_e,J_e=ce(()=>{p();Y_e=!1;try{Y_e=typeof XMLHttpRequest<\"u\"&&\"withCredentials\"in new XMLHttpRequest}catch{}Q_e=Y_e});function Mrt(){}function X_e(){for(let t in Wx.requests)Wx.requests.hasOwnProperty(t)&&Wx.requests[t].abort()}function e4e(t){let e=t.xdomain;try{if(typeof XMLHttpRequest<\"u\"&&(!e||Q_e))return new XMLHttpRequest}catch{}if(!e)try{return new _d[[\"Active\"].concat(\"Object\").join(\"X\")](\"Microsoft.XMLHTTP\")}catch{}}var Nte,Wx,Nrt,Vx,Fz=ce(()=>{p();Mte();pS();gS();mS();J_e();Nte=class extends iO{constructor(e){if(super(e),typeof location<\"u\"){let n=location.protocol===\"https:\",r=location.port;r||(r=n?\"443\":\"80\"),this.xd=typeof location<\"u\"&&e.hostname!==location.hostname||r!==e.port}}doWrite(e,n){let r=this.request({method:\"POST\",data:e});r.on(\"success\",n),r.on(\"error\",(o,i)=>{this.onError(\"xhr post error\",o,i)})}doPoll(){let e=this.request();e.on(\"data\",this.onData.bind(this)),e.on(\"error\",(n,r)=>{this.onError(\"xhr poll error\",n,r)}),this.pollXhr=e}},Wx=class t extends Bi{constructor(e,n,r){super(),this.createRequest=e,Dv(this,r),this._opts=r,this._method=r.method||\"GET\",this._uri=n,this._data=r.data!==void 0?r.data:null,this._create()}_create(){var e;let n=Lz(this._opts,\"agent\",\"pfx\",\"key\",\"passphrase\",\"cert\",\"ca\",\"ciphers\",\"rejectUnauthorized\",\"autoUnref\");n.xdomain=!!this._opts.xd;let r=this._xhr=this.createRequest(n);try{r.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){r.setDisableHeaderCheck&&r.setDisableHeaderCheck(!0);for(let o in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(o)&&r.setRequestHeader(o,this._opts.extraHeaders[o])}}catch{}if(this._method===\"POST\")try{r.setRequestHeader(\"Content-type\",\"text/plain;charset=UTF-8\")}catch{}try{r.setRequestHeader(\"Accept\",\"*/*\")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(r),\"withCredentials\"in r&&(r.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(r.timeout=this._opts.requestTimeout),r.onreadystatechange=()=>{var o;r.readyState===3&&((o=this._opts.cookieJar)===null||o===void 0||o.parseCookies(r.getResponseHeader(\"set-cookie\"))),r.readyState===4&&(r.status===200||r.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof r.status==\"number\"?r.status:0)},0))},r.send(this._data)}catch(o){this.setTimeoutFn(()=>{this._onError(o)},0);return}typeof document<\"u\"&&(this._index=t.requestsCount++,t.requests[this._index]=this)}_onError(e){this.emitReserved(\"error\",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>\"u\"||this._xhr===null)){if(this._xhr.onreadystatechange=Mrt,e)try{this._xhr.abort()}catch{}typeof document<\"u\"&&delete t.requests[this._index],this._xhr=null}}_onLoad(){let e=this._xhr.responseText;e!==null&&(this.emitReserved(\"data\",e),this.emitReserved(\"success\"),this._cleanup())}abort(){this._cleanup()}};Wx.requestsCount=0;Wx.requests={};if(typeof document<\"u\"){if(typeof attachEvent==\"function\")attachEvent(\"onunload\",X_e);else if(typeof addEventListener==\"function\"){let t=\"onpagehide\"in _d?\"pagehide\":\"unload\";addEventListener(t,X_e,!1)}}Nrt=function(){let t=e4e({xdomain:!1});return t&&t.responseType!==null}(),Vx=class extends Nte{constructor(e){super(e);let n=e&&e.forceBase64;this.supportsBinary=Nrt&&!n}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new Wx(e4e,this.uri(),e)}}});var t4e,Bte,Lte,$x,Uz=ce(()=>{p();oO();gS();Y8();mS();t4e=typeof navigator<\"u\"&&typeof navigator.product==\"string\"&&navigator.product.toLowerCase()===\"reactnative\",Bte=class extends Fv{get name(){return\"websocket\"}doOpen(){let e=this.uri(),n=this.opts.protocols,r=t4e?{}:Lz(this.opts,\"agent\",\"perMessageDeflate\",\"pfx\",\"key\",\"passphrase\",\"cert\",\"ca\",\"ciphers\",\"rejectUnauthorized\",\"localAddress\",\"protocolVersion\",\"origin\",\"maxPayload\",\"family\",\"checkServerIdentity\");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,n,r)}catch(o){return this.emitReserved(\"error\",o)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:\"websocket connection closed\",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError(\"websocket error\",e)}write(e){this.writable=!1;for(let n=0;n<e.length;n++){let r=e[n],o=n===e.length-1;tO(r,this.supportsBinary,i=>{try{this.doWrite(r,i)}catch{}o&&Bv(()=>{this.writable=!0,this.emitReserved(\"drain\")},this.setTimeoutFn)})}}doClose(){typeof this.ws<\"u\"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){let e=this.opts.secure?\"wss\":\"ws\",n=this.query||{};return this.opts.timestampRequests&&(n[this.opts.timestampParam]=Bz()),this.supportsBinary||(n.b64=1),this.createUri(e,n)}},Lte=_d.WebSocket||_d.MozWebSocket,$x=class extends Bte{createSocket(e,n,r){return t4e?new Lte(e,n,r):n?new Lte(e,n):new Lte(e)}doWrite(e,n){this.ws.send(n)}}});var Q8,Dte=ce(()=>{p();oO();mS();Y8();Q8=class extends Fv{get name(){return\"webtransport\"}doOpen(){try{this._transport=new WebTransport(this.createUri(\"https\"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved(\"error\",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError(\"webtransport error\",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{let n=V_e(Number.MAX_SAFE_INTEGER,this.socket.binaryType),r=e.readable.pipeThrough(n).getReader(),o=W_e();o.readable.pipeTo(e.writable),this._writer=o.writable.getWriter();let i=()=>{r.read().then(({done:c,value:u})=>{c||(this.onPacket(u),i())}).catch(c=>{})};i();let a={type:\"open\"};this.query.sid&&(a.data=`{\"sid\":\"${this.query.sid}\"}`),this._writer.write(a).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let n=0;n<e.length;n++){let r=e[n],o=n===e.length-1;this._writer.write(r).then(()=>{o&&Bv(()=>{this.writable=!0,this.emitReserved(\"drain\")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}});var Fte,Ute=ce(()=>{p();Fz();Uz();Dte();Fte={websocket:$x,webtransport:Q8,polling:Vx}});function J8(t){if(t.length>8e3)throw\"URI too long\";let e=t,n=t.indexOf(\"[\"),r=t.indexOf(\"]\");n!=-1&&r!=-1&&(t=t.substring(0,n)+t.substring(n,r).replace(/:/g,\";\")+t.substring(r,t.length));let o=Lrt.exec(t||\"\"),i={},a=14;for(;a--;)i[Brt[a]]=o[a]||\"\";return n!=-1&&r!=-1&&(i.source=e,i.host=i.host.substring(1,i.host.length-1).replace(/;/g,\":\"),i.authority=i.authority.replace(\"[\",\"\").replace(\"]\",\"\").replace(/;/g,\":\"),i.ipv6uri=!0),i.pathNames=Drt(i,i.path),i.queryKey=Frt(i,i.query),i}function Drt(t,e){let n=/\\\\/{2,9}/g,r=e.replace(n,\"/\").split(\"/\");return(e.slice(0,1)==\"/\"||e.length===0)&&r.splice(0,1),e.slice(-1)==\"/\"&&r.splice(r.length-1,1),r}function Frt(t,e){let n={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(r,o,i){o&&(n[o]=i)}),n}var Lrt,Brt,jte=ce(()=>{p();Lrt=/^(?:(?![^:@\\\\/?#]+:[^:@\\\\/]*@)(http|https|ws|wss):\\\\/\\\\/)?((?:(([^:@\\\\/?#]*)(?::([^:@\\\\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\\\\/?#]*)(?::(\\\\d*))?)(((\\\\/(?:[^?#](?![^?#\\\\/]*\\\\.[^?#\\\\/.]+(?:[?#]|$)))*\\\\/?)?([^?#\\\\/]*))(?:\\\\?([^#]*))?(?:#(.*))?)/,Brt=[\"source\",\"protocol\",\"authority\",\"userInfo\",\"user\",\"password\",\"host\",\"port\",\"relative\",\"path\",\"directory\",\"file\",\"query\",\"anchor\"]});var zte,jz,yS,zz,X8,Hte=ce(()=>{p();Ute();gS();Pte();jte();pS();Y8();mS();zte=typeof addEventListener==\"function\"&&typeof removeEventListener==\"function\",jz=[];zte&&addEventListener(\"offline\",()=>{jz.forEach(t=>t())},!1);yS=class t extends Bi{constructor(e,n){if(super(),this.binaryType=$_e,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e==\"object\"&&(n=e,e=null),e){let r=J8(e);n.hostname=r.host,n.secure=r.protocol===\"https\"||r.protocol===\"wss\",n.port=r.port,r.query&&(n.query=r.query)}else n.host&&(n.hostname=J8(n.host).host);Dv(this,n),this.secure=n.secure!=null?n.secure:typeof location<\"u\"&&location.protocol===\"https:\",n.hostname&&!n.port&&(n.port=this.secure?\"443\":\"80\"),this.hostname=n.hostname||(typeof location<\"u\"?location.hostname:\"localhost\"),this.port=n.port||(typeof location<\"u\"&&location.port?location.port:this.secure?\"443\":\"80\"),this.transports=[],this._transportsByName={},n.transports.forEach(r=>{let o=r.prototype.name;this.transports.push(o),this._transportsByName[o]=r}),this.opts=Object.assign({path:\"/engine.io\",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:\"t\",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},n),this.opts.path=this.opts.path.replace(/\\\\/$/,\"\")+(this.opts.addTrailingSlash?\"/\":\"\"),typeof this.opts.query==\"string\"&&(this.opts.query=Z_e(this.opts.query)),zte&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener(\"beforeunload\",this._beforeunloadEventListener,!1)),this.hostname!==\"localhost\"&&(this._offlineEventListener=()=>{this._onClose(\"transport close\",{description:\"network connection lost\"})},jz.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){let n=Object.assign({},this.opts.query);n.EIO=Ote,n.transport=e,this.id&&(n.sid=this.id);let r=Object.assign({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](r)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved(\"error\",\"No transports available\")},0);return}let e=this.opts.rememberUpgrade&&t.priorWebsocketSuccess&&this.transports.indexOf(\"websocket\")!==-1?\"websocket\":this.transports[0];this.readyState=\"opening\";let n=this.createTransport(e);n.open(),this.setTransport(n)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on(\"drain\",this._onDrain.bind(this)).on(\"packet\",this._onPacket.bind(this)).on(\"error\",this._onError.bind(this)).on(\"close\",n=>this._onClose(\"transport close\",n))}onOpen(){this.readyState=\"open\",t.priorWebsocketSuccess=this.transport.name===\"websocket\",this.emitReserved(\"open\"),this.flush()}_onPacket(e){if(this.readyState===\"opening\"||this.readyState===\"open\"||this.readyState===\"closing\")switch(this.emitReserved(\"packet\",e),this.emitReserved(\"heartbeat\"),e.type){case\"open\":this.onHandshake(JSON.parse(e.data));break;case\"ping\":this._sendPacket(\"pong\"),this.emitReserved(\"ping\"),this.emitReserved(\"pong\"),this._resetPingTimeout();break;case\"error\":let n=new Error(\"server error\");n.code=e.data,this._onError(n);break;case\"message\":this.emitReserved(\"data\",e.data),this.emitReserved(\"message\",e.data);break}}onHandshake(e){this.emitReserved(\"handshake\",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!==\"closed\"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);let e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose(\"ping timeout\")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved(\"drain\"):this.flush()}flush(){if(this.readyState!==\"closed\"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){let e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved(\"flush\")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name===\"polling\"&&this.writeBuffer.length>1))return this.writeBuffer;let n=1;for(let r=0;r<this.writeBuffer.length;r++){let o=this.writeBuffer[r].data;if(o&&(n+=K_e(o)),r>0&&n>this._maxPayload)return this.writeBuffer.slice(0,r);n+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;let e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,Bv(()=>{this._onClose(\"ping timeout\")},this.setTimeoutFn)),e}write(e,n,r){return this._sendPacket(\"message\",e,n,r),this}send(e,n,r){return this._sendPacket(\"message\",e,n,r),this}_sendPacket(e,n,r,o){if(typeof n==\"function\"&&(o=n,n=void 0),typeof r==\"function\"&&(o=r,r=null),this.readyState===\"closing\"||this.readyState===\"closed\")return;r=r||{},r.compress=r.compress!==!1;let i={type:e,data:n,options:r};this.emitReserved(\"packetCreate\",i),this.writeBuffer.push(i),o&&this.once(\"flush\",o),this.flush()}close(){let e=()=>{this._onClose(\"forced close\"),this.transport.close()},n=()=>{this.off(\"upgrade\",n),this.off(\"upgradeError\",n),e()},r=()=>{this.once(\"upgrade\",n),this.once(\"upgradeError\",n)};return(this.readyState===\"opening\"||this.readyState===\"open\")&&(this.readyState=\"closing\",this.writeBuffer.length?this.once(\"drain\",()=>{this.upgrading?r():e()}):this.upgrading?r():e()),this}_onError(e){if(t.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState===\"opening\")return this.transports.shift(),this._open();this.emitReserved(\"error\",e),this._onClose(\"transport error\",e)}_onClose(e,n){if(this.readyState===\"opening\"||this.readyState===\"open\"||this.readyState===\"closing\"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners(\"close\"),this.transport.close(),this.transport.removeAllListeners(),zte&&(this._beforeunloadEventListener&&removeEventListener(\"beforeunload\",this._beforeunloadEventListener,!1),this._offlineEventListener)){let r=jz.indexOf(this._offlineEventListener);r!==-1&&jz.splice(r,1)}this.readyState=\"closed\",this.id=null,this.emitReserved(\"close\",e,n),this.writeBuffer=[],this._prevBufferLen=0}}};yS.protocol=Ote;zz=class extends yS{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState===\"open\"&&this.opts.upgrade)for(let e=0;e<this._upgrades.length;e++)this._probe(this._upgrades[e])}_probe(e){let n=this.createTransport(e),r=!1;yS.priorWebsocketSuccess=!1;let o=()=>{r||(n.send([{type:\"ping\",data:\"probe\"}]),n.once(\"packet\",m=>{if(!r)if(m.type===\"pong\"&&m.data===\"probe\"){if(this.upgrading=!0,this.emitReserved(\"upgrading\",n),!n)return;yS.priorWebsocketSuccess=n.name===\"websocket\",this.transport.pause(()=>{r||this.readyState!==\"closed\"&&(h(),this.setTransport(n),n.send([{type:\"upgrade\"}]),this.emitReserved(\"upgrade\",n),n=null,this.upgrading=!1,this.flush())})}else{let g=new Error(\"probe error\");g.transport=n.name,this.emitReserved(\"upgradeError\",g)}}))};function i(){r||(r=!0,h(),n.close(),n=null)}let a=m=>{let g=new Error(\"probe error: \"+m);g.transport=n.name,i(),this.emitReserved(\"upgradeError\",g)};function c(){a(\"transport closed\")}function u(){a(\"socket closed\")}function d(m){n&&m.name!==n.name&&i()}let h=()=>{n.removeListener(\"open\",o),n.removeListener(\"error\",a),n.removeListener(\"close\",c),this.off(\"close\",u),this.off(\"upgrading\",d)};n.once(\"open\",o),n.once(\"error\",a),n.once(\"close\",c),this.once(\"close\",u),this.once(\"upgrading\",d),this._upgrades.indexOf(\"webtransport\")!==-1&&e!==\"webtransport\"?this.setTimeoutFn(()=>{r||n.open()},200):n.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){let n=[];for(let r=0;r<e.length;r++)~this.transports.indexOf(e[r])&&n.push(e[r]);return n}},X8=class extends zz{constructor(e,n={}){let r=typeof e==\"object\"?e:n;(!r.transports||r.transports&&typeof r.transports[0]==\"string\")&&(r.transports=(r.transports||[\"polling\",\"websocket\",\"webtransport\"]).map(o=>Fte[o]).filter(o=>!!o)),super(e,r)}}});var n4e=ce(()=>{p();Mte()});var ahn,Hz=ce(()=>{p();Hte();Hte();oO();Ute();gS();jte();mS();n4e();Fz();Fz();Uz();Uz();Dte();ahn=X8.protocol});function r4e(t,e=\"\",n){let r=t;n=n||typeof location<\"u\"&&location,t==null&&(t=n.protocol+\"//\"+n.host),typeof t==\"string\"&&(t.charAt(0)===\"/\"&&(t.charAt(1)===\"/\"?t=n.protocol+t:t=n.host+t),/^(https?|wss?):\\\\/\\\\//.test(t)||(typeof n<\"u\"?t=n.protocol+\"//\"+t:t=\"https://\"+t),r=J8(t)),r.port||(/^(http|ws)$/.test(r.protocol)?r.port=\"80\":/^(http|ws)s$/.test(r.protocol)&&(r.port=\"443\")),r.path=r.path||\"/\";let i=r.host.indexOf(\":\")!==-1?\"[\"+r.host+\"]\":r.host;return r.id=r.protocol+\"://\"+i+\":\"+r.port+e,r.href=r.protocol+\"://\"+i+(n&&n.port===r.port?\"\":\":\"+r.port),r}var o4e=ce(()=>{p();Hz()});function aO(t){return jrt&&(t instanceof ArrayBuffer||zrt(t))||Hrt&&t instanceof Blob||qrt&&t instanceof File}function sO(t,e){if(!t||typeof t!=\"object\")return!1;if(Array.isArray(t)){for(let n=0,r=t.length;n<r;n++)if(sO(t[n]))return!0;return!1}if(aO(t))return!0;if(t.toJSON&&typeof t.toJSON==\"function\"&&arguments.length===1)return sO(t.toJSON(),!0);for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&sO(t[n]))return!0;return!1}var jrt,zrt,i4e,Hrt,qrt,qte=ce(()=>{p();jrt=typeof ArrayBuffer==\"function\",zrt=t=>typeof ArrayBuffer.isView==\"function\"?ArrayBuffer.isView(t):t.buffer instanceof ArrayBuffer,i4e=Object.prototype.toString,Hrt=typeof Blob==\"function\"||typeof Blob<\"u\"&&i4e.call(Blob)===\"[object BlobConstructor]\",qrt=typeof File==\"function\"||typeof File<\"u\"&&i4e.call(File)===\"[object FileConstructor]\"});function s4e(t){let e=[],n=t.data,r=t;return r.data=Wte(n,e),r.attachments=e.length,{packet:r,buffers:e}}function Wte(t,e){if(!t)return t;if(aO(t)){let n={_placeholder:!0,num:e.length};return e.push(t),n}else if(Array.isArray(t)){let n=new Array(t.length);for(let r=0;r<t.length;r++)n[r]=Wte(t[r],e);return n}else if(typeof t==\"object\"&&!(t instanceof Date)){let n={};for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=Wte(t[r],e));return n}return t}function a4e(t,e){return t.data=Vte(t.data,e),delete t.attachments,t}function Vte(t,e){if(!t)return t;if(t&&t._placeholder===!0){if(typeof t.num==\"number\"&&t.num>=0&&t.num<e.length)return e[t.num];throw new Error(\"illegal attachments\")}else if(Array.isArray(t))for(let n=0;n<t.length;n++)t[n]=Vte(t[n],e);else if(typeof t==\"object\")for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&(t[n]=Vte(t[n],e));return t}var c4e=ce(()=>{p();qte()});var Zte={};ld(Zte,{Decoder:()=>Kte,Encoder:()=>$te,PacketType:()=>Wr,protocol:()=>u4e});function l4e(t){return Object.prototype.toString.call(t)===\"[object Object]\"}var Wrt,u4e,Wr,$te,Kte,Gte,qz=ce(()=>{p();pS();c4e();qte();Wrt=[\"connect\",\"connect_error\",\"disconnect\",\"disconnecting\",\"newListener\",\"removeListener\"],u4e=5;(function(t){t[t.CONNECT=0]=\"CONNECT\",t[t.DISCONNECT=1]=\"DISCONNECT\",t[t.EVENT=2]=\"EVENT\",t[t.ACK=3]=\"ACK\",t[t.CONNECT_ERROR=4]=\"CONNECT_ERROR\",t[t.BINARY_EVENT=5]=\"BINARY_EVENT\",t[t.BINARY_ACK=6]=\"BINARY_ACK\"})(Wr||(Wr={}));$te=class{constructor(e){this.replacer=e}encode(e){return(e.type===Wr.EVENT||e.type===Wr.ACK)&&sO(e)?this.encodeAsBinary({type:e.type===Wr.EVENT?Wr.BINARY_EVENT:Wr.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let n=\"\"+e.type;return(e.type===Wr.BINARY_EVENT||e.type===Wr.BINARY_ACK)&&(n+=e.attachments+\"-\"),e.nsp&&e.nsp!==\"/\"&&(n+=e.nsp+\",\"),e.id!=null&&(n+=e.id),e.data!=null&&(n+=JSON.stringify(e.data,this.replacer)),n}encodeAsBinary(e){let n=s4e(e),r=this.encodeAsString(n.packet),o=n.buffers;return o.unshift(r),o}};Kte=class t extends Bi{constructor(e){super(),this.reviver=e}add(e){let n;if(typeof e==\"string\"){if(this.reconstructor)throw new Error(\"got plaintext data when reconstructing a packet\");n=this.decodeString(e);let r=n.type===Wr.BINARY_EVENT;r||n.type===Wr.BINARY_ACK?(n.type=r?Wr.EVENT:Wr.ACK,this.reconstructor=new Gte(n),n.attachments===0&&super.emitReserved(\"decoded\",n)):super.emitReserved(\"decoded\",n)}else if(aO(e)||e.base64)if(this.reconstructor)n=this.reconstructor.takeBinaryData(e),n&&(this.reconstructor=null,super.emitReserved(\"decoded\",n));else throw new Error(\"got binary data when not reconstructing a packet\");else throw new Error(\"Unknown type: \"+e)}decodeString(e){let n=0,r={type:Number(e.charAt(0))};if(Wr[r.type]===void 0)throw new Error(\"unknown packet type \"+r.type);if(r.type===Wr.BINARY_EVENT||r.type===Wr.BINARY_ACK){let i=n+1;for(;e.charAt(++n)!==\"-\"&&n!=e.length;);let a=e.substring(i,n);if(a!=Number(a)||e.charAt(n)!==\"-\")throw new Error(\"Illegal attachments\");r.attachments=Number(a)}if(e.charAt(n+1)===\"/\"){let i=n+1;for(;++n&&!(e.charAt(n)===\",\"||n===e.length););r.nsp=e.substring(i,n)}else r.nsp=\"/\";let o=e.charAt(n+1);if(o!==\"\"&&Number(o)==o){let i=n+1;for(;++n;){let a=e.charAt(n);if(a==null||Number(a)!=a){--n;break}if(n===e.length)break}r.id=Number(e.substring(i,n+1))}if(e.charAt(++n)){let i=this.tryParse(e.substr(n));if(t.isPayloadValid(r.type,i))r.data=i;else throw new Error(\"invalid payload\")}return r}tryParse(e){try{return JSON.parse(e,this.reviver)}catch{return!1}}static isPayloadValid(e,n){switch(e){case Wr.CONNECT:return l4e(n);case Wr.DISCONNECT:return n===void 0;case Wr.CONNECT_ERROR:return typeof n==\"string\"||l4e(n);case Wr.EVENT:case Wr.BINARY_EVENT:return Array.isArray(n)&&(typeof n[0]==\"number\"||typeof n[0]==\"string\"&&Wrt.indexOf(n[0])===-1);case Wr.ACK:case Wr.BINARY_ACK:return Array.isArray(n)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}},Gte=class{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){let n=a4e(this.reconPack,this.buffers);return this.finishedReconstruction(),n}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}});function Th(t,e,n){return t.on(e,n),function(){t.off(e,n)}}var Yte=ce(()=>{p()});var Vrt,eA,Qte=ce(()=>{p();qz();Yte();pS();Vrt=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1}),eA=class extends Bi{constructor(e,n,r){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=n,r&&r.auth&&(this.auth=r.auth),this._opts=Object.assign({},r),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;let e=this.io;this.subs=[Th(e,\"open\",this.onopen.bind(this)),Th(e,\"packet\",this.onpacket.bind(this)),Th(e,\"error\",this.onerror.bind(this)),Th(e,\"close\",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState===\"open\"&&this.onopen(),this)}open(){return this.connect()}send(...e){return e.unshift(\"message\"),this.emit.apply(this,e),this}emit(e,...n){var r,o,i;if(Vrt.hasOwnProperty(e))throw new Error(\\'\"\\'+e.toString()+\\'\" is a reserved event name\\');if(n.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(n),this;let a={type:Wr.EVENT,data:n};if(a.options={},a.options.compress=this.flags.compress!==!1,typeof n[n.length-1]==\"function\"){let h=this.ids++,m=n.pop();this._registerAckCallback(h,m),a.id=h}let c=(o=(r=this.io.engine)===null||r===void 0?void 0:r.transport)===null||o===void 0?void 0:o.writable,u=this.connected&&!(!((i=this.io.engine)===null||i===void 0)&&i._hasPingExpired());return this.flags.volatile&&!c||(u?(this.notifyOutgoingListeners(a),this.packet(a)):this.sendBuffer.push(a)),this.flags={},this}_registerAckCallback(e,n){var r;let o=(r=this.flags.timeout)!==null&&r!==void 0?r:this._opts.ackTimeout;if(o===void 0){this.acks[e]=n;return}let i=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let c=0;c<this.sendBuffer.length;c++)this.sendBuffer[c].id===e&&this.sendBuffer.splice(c,1);n.call(this,new Error(\"operation has timed out\"))},o),a=(...c)=>{this.io.clearTimeoutFn(i),n.apply(this,c)};a.withError=!0,this.acks[e]=a}emitWithAck(e,...n){return new Promise((r,o)=>{let i=(a,c)=>a?o(a):r(c);i.withError=!0,n.push(i),this.emit(e,...n)})}_addToQueue(e){let n;typeof e[e.length-1]==\"function\"&&(n=e.pop());let r={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((o,...i)=>r!==this._queue[0]?void 0:(o!==null?r.tryCount>this._opts.retries&&(this._queue.shift(),n&&n(o)):(this._queue.shift(),n&&n(null,...i)),r.pending=!1,this._drainQueue())),this._queue.push(r),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;let n=this._queue[0];n.pending&&!e||(n.pending=!0,n.tryCount++,this.flags=n.flags,this.emit.apply(this,n.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth==\"function\"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:Wr.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved(\"connect_error\",e)}onclose(e,n){this.connected=!1,delete this.id,this.emitReserved(\"disconnect\",e,n),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(r=>String(r.id)===e)){let r=this.acks[e];delete this.acks[e],r.withError&&r.call(this,new Error(\"socket has been disconnected\"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case Wr.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved(\"connect_error\",new Error(\"It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)\"));break;case Wr.EVENT:case Wr.BINARY_EVENT:this.onevent(e);break;case Wr.ACK:case Wr.BINARY_ACK:this.onack(e);break;case Wr.DISCONNECT:this.ondisconnect();break;case Wr.CONNECT_ERROR:this.destroy();let r=new Error(e.data.message);r.data=e.data.data,this.emitReserved(\"connect_error\",r);break}}onevent(e){let n=e.data||[];e.id!=null&&n.push(this.ack(e.id)),this.connected?this.emitEvent(n):this.receiveBuffer.push(Object.freeze(n))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){let n=this._anyListeners.slice();for(let r of n)r.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]==\"string\"&&(this._lastOffset=e[e.length-1])}ack(e){let n=this,r=!1;return function(...o){r||(r=!0,n.packet({type:Wr.ACK,id:e,data:o}))}}onack(e){let n=this.acks[e.id];typeof n==\"function\"&&(delete this.acks[e.id],n.withError&&e.data.unshift(null),n.apply(this,e.data))}onconnect(e,n){this.id=e,this.recovered=n&&this._pid===n,this._pid=n,this.connected=!0,this.emitBuffered(),this.emitReserved(\"connect\"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose(\"io server disconnect\")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:Wr.DISCONNECT}),this.destroy(),this.connected&&this.onclose(\"io client disconnect\"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){let n=this._anyListeners;for(let r=0;r<n.length;r++)if(e===n[r])return n.splice(r,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){let n=this._anyOutgoingListeners;for(let r=0;r<n.length;r++)if(e===n[r])return n.splice(r,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){let n=this._anyOutgoingListeners.slice();for(let r of n)r.apply(this,e.data)}}}});function bS(t){t=t||{},this.ms=t.min||100,this.max=t.max||1e4,this.factor=t.factor||2,this.jitter=t.jitter>0&&t.jitter<=1?t.jitter:0,this.attempts=0}var d4e=ce(()=>{p();bS.prototype.duration=function(){var t=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),n=Math.floor(e*this.jitter*t);t=(Math.floor(e*10)&1)==0?t-n:t+n}return Math.min(t,this.max)|0};bS.prototype.reset=function(){this.attempts=0};bS.prototype.setMin=function(t){this.ms=t};bS.prototype.setMax=function(t){this.max=t};bS.prototype.setJitter=function(t){this.jitter=t}});var tA,f4e=ce(()=>{p();Hz();Qte();qz();Yte();d4e();pS();tA=class extends Bi{constructor(e,n){var r;super(),this.nsps={},this.subs=[],e&&typeof e==\"object\"&&(n=e,e=void 0),n=n||{},n.path=n.path||\"/socket.io\",this.opts=n,Dv(this,n),this.reconnection(n.reconnection!==!1),this.reconnectionAttempts(n.reconnectionAttempts||1/0),this.reconnectionDelay(n.reconnectionDelay||1e3),this.reconnectionDelayMax(n.reconnectionDelayMax||5e3),this.randomizationFactor((r=n.randomizationFactor)!==null&&r!==void 0?r:.5),this.backoff=new bS({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(n.timeout==null?2e4:n.timeout),this._readyState=\"closed\",this.uri=e;let o=n.parser||Zte;this.encoder=new o.Encoder,this.decoder=new o.Decoder,this._autoConnect=n.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var n;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(n=this.backoff)===null||n===void 0||n.setMin(e),this)}randomizationFactor(e){var n;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(n=this.backoff)===null||n===void 0||n.setJitter(e),this)}reconnectionDelayMax(e){var n;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(n=this.backoff)===null||n===void 0||n.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf(\"open\"))return this;this.engine=new X8(this.uri,this.opts);let n=this.engine,r=this;this._readyState=\"opening\",this.skipReconnect=!1;let o=Th(n,\"open\",function(){r.onopen(),e&&e()}),i=c=>{this.cleanup(),this._readyState=\"closed\",this.emitReserved(\"error\",c),e?e(c):this.maybeReconnectOnOpen()},a=Th(n,\"error\",i);if(this._timeout!==!1){let c=this._timeout,u=this.setTimeoutFn(()=>{o(),i(new Error(\"timeout\")),n.close()},c);this.opts.autoUnref&&u.unref(),this.subs.push(()=>{this.clearTimeoutFn(u)})}return this.subs.push(o),this.subs.push(a),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState=\"open\",this.emitReserved(\"open\");let e=this.engine;this.subs.push(Th(e,\"ping\",this.onping.bind(this)),Th(e,\"data\",this.ondata.bind(this)),Th(e,\"error\",this.onerror.bind(this)),Th(e,\"close\",this.onclose.bind(this)),Th(this.decoder,\"decoded\",this.ondecoded.bind(this)))}onping(){this.emitReserved(\"ping\")}ondata(e){try{this.decoder.add(e)}catch(n){this.onclose(\"parse error\",n)}}ondecoded(e){Bv(()=>{this.emitReserved(\"packet\",e)},this.setTimeoutFn)}onerror(e){this.emitReserved(\"error\",e)}socket(e,n){let r=this.nsps[e];return r?this._autoConnect&&!r.active&&r.connect():(r=new eA(this,e,n),this.nsps[e]=r),r}_destroy(e){let n=Object.keys(this.nsps);for(let r of n)if(this.nsps[r].active)return;this._close()}_packet(e){let n=this.encoder.encode(e);for(let r=0;r<n.length;r++)this.engine.write(n[r],e.options)}cleanup(){this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose(\"forced close\")}disconnect(){return this._close()}onclose(e,n){var r;this.cleanup(),(r=this.engine)===null||r===void 0||r.close(),this.backoff.reset(),this._readyState=\"closed\",this.emitReserved(\"close\",e,n),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;let e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved(\"reconnect_failed\"),this._reconnecting=!1;else{let n=this.backoff.duration();this._reconnecting=!0;let r=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved(\"reconnect_attempt\",e.backoff.attempts),!e.skipReconnect&&e.open(o=>{o?(e._reconnecting=!1,e.reconnect(),this.emitReserved(\"reconnect_error\",o)):e.onreconnect()}))},n);this.opts.autoUnref&&r.unref(),this.subs.push(()=>{this.clearTimeoutFn(r)})}}onreconnect(){let e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved(\"reconnect\",e)}}});function lO(t,e){typeof t==\"object\"&&(e=t,t=void 0),e=e||{};let n=r4e(t,e.path||\"/socket.io\"),r=n.source,o=n.id,i=n.path,a=cO[o]&&i in cO[o].nsps,c=e.forceNew||e[\"force new connection\"]||e.multiplex===!1||a,u;return c?u=new tA(r,e):(cO[o]||(cO[o]=new tA(r,e)),u=cO[o]),n.query&&!e.query&&(e.query=n.queryKey),u.socket(n.path,e)}var cO,h4e=ce(()=>{p();o4e();f4e();Qte();qz();Hz();cO={};Object.assign(lO,{Manager:tA,Socket:eA,io:lO,connect:lO})});var $rt,Jte=ce(()=>{$rt=Aue({})});var b7e={};ld(b7e,{CommunicationLayerPreference:()=>p3,ConnectionStatus:()=>Wc,DEFAULT_SERVER_URL:()=>RS,EventType:()=>vt,MessageType:()=>hs,MetaMaskSDK:()=>Sre,MetaMaskSDKEvent:()=>Rd,PROVIDER_UPDATE_TYPE:()=>mg,PlatformType:()=>Al,SDKProvider:()=>nq,default:()=>Sre});function ct(t,e,n,r){return new(n||(n=Promise))(function(o,i){function a(d){try{u(r.next(d))}catch(h){i(h)}}function c(d){try{u(r.throw(d))}catch(h){i(h)}}function u(d){var h;d.done?o(d.value):(h=d.value,h instanceof n?h:new n(function(m){m(h)})).then(a,c)}u((r=r.apply(t,e||[])).next())})}function I8e(){Ire=!0;for(var t=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",e=0;e<64;++e)g1[e]=t[e],Em[t.charCodeAt(e)]=e;Em[45]=62,Em[95]=63}function Grt(t,e,n){for(var r,o,i=[],a=e;a<n;a+=3)r=(t[a]<<16)+(t[a+1]<<8)+t[a+2],i.push(g1[(o=r)>>18&63]+g1[o>>12&63]+g1[o>>6&63]+g1[63&o]);return i.join(\"\")}function p4e(t){var e;Ire||I8e();for(var n=t.length,r=n%3,o=\"\",i=[],a=16383,c=0,u=n-r;c<u;c+=a)i.push(Grt(t,c,c+a>u?u:c+a));return r===1?(e=t[n-1],o+=g1[e>>2],o+=g1[e<<4&63],o+=\"==\"):r===2&&(e=(t[n-2]<<8)+t[n-1],o+=g1[e>>10],o+=g1[e>>4&63],o+=g1[e<<2&63],o+=\"=\"),i.push(o),i.join(\"\")}function Wz(t,e,n,r,o){var i,a,c=8*o-r-1,u=(1<<c)-1,d=u>>1,h=-7,m=n?o-1:0,g=n?-1:1,b=t[e+m];for(m+=g,i=b&(1<<-h)-1,b>>=-h,h+=c;h>0;i=256*i+t[e+m],m+=g,h-=8);for(a=i&(1<<-h)-1,i>>=-h,h+=r;h>0;a=256*a+t[e+m],m+=g,h-=8);if(i===0)i=1-d;else{if(i===u)return a?NaN:1/0*(b?-1:1);a+=Math.pow(2,r),i-=d}return(b?-1:1)*a*Math.pow(2,i-r)}function O8e(t,e,n,r,o,i){var a,c,u,d=8*i-o-1,h=(1<<d)-1,m=h>>1,g=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,b=r?0:i-1,E=r?1:-1,C=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,a=h):(a=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-a))<1&&(a--,u*=2),(e+=a+m>=1?g/u:g*Math.pow(2,1-m))*u>=2&&(a++,u/=2),a+m>=h?(c=0,a=h):a+m>=1?(c=(e*u-1)*Math.pow(2,o),a+=m):(c=e*Math.pow(2,m-1)*Math.pow(2,o),a=0));o>=8;t[n+b]=255&c,b+=E,c/=256,o-=8);for(a=a<<o|c,d+=o;d>0;t[n+b]=255&a,b+=E,a/=256,d-=8);t[n+b-E]|=128*C}function TH(){return at.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function Vv(t,e){if(TH()<e)throw new RangeError(\"Invalid typed array length\");return at.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(e)).__proto__=at.prototype:(t===null&&(t=new at(e)),t.length=e),t}function at(t,e,n){if(!(at.TYPED_ARRAY_SUPPORT||this instanceof at))return new at(t,e,n);if(typeof t==\"number\"){if(typeof e==\"string\")throw new Error(\"If encoding is specified then the first argument must be a string\");return Fne(this,t)}return M8e(this,t,e,n)}function M8e(t,e,n,r){if(typeof e==\"number\")throw new TypeError(\\'\"value\" argument must not be a number\\');return typeof ArrayBuffer<\"u\"&&e instanceof ArrayBuffer?function(o,i,a,c){if(i.byteLength,a<0||i.byteLength<a)throw new RangeError(\"\\'offset\\' is out of bounds\");if(i.byteLength<a+(c||0))throw new RangeError(\"\\'length\\' is out of bounds\");return i=a===void 0&&c===void 0?new Uint8Array(i):c===void 0?new Uint8Array(i,a):new Uint8Array(i,a,c),at.TYPED_ARRAY_SUPPORT?(o=i).__proto__=at.prototype:o=Xte(o,i),o}(t,e,n,r):typeof e==\"string\"?function(o,i,a){if(typeof a==\"string\"&&a!==\"\"||(a=\"utf8\"),!at.isEncoding(a))throw new TypeError(\\'\"encoding\" must be a valid string encoding\\');var c=0|L8e(i,a);o=Vv(o,c);var u=o.write(i,a);return u!==c&&(o=o.slice(0,u)),o}(t,e,n):function(o,i){if(y1(i)){var a=0|Ore(i.length);return(o=Vv(o,a)).length===0||i.copy(o,0,0,a),o}if(i){if(typeof ArrayBuffer<\"u\"&&i.buffer instanceof ArrayBuffer||\"length\"in i)return typeof i.length!=\"number\"||(c=i.length)!=c?Vv(o,0):Xte(o,i);if(i.type===\"Buffer\"&&P8e(i.data))return Xte(o,i.data)}var c;throw new TypeError(\"First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.\")}(t,e)}function N8e(t){if(typeof t!=\"number\")throw new TypeError(\\'\"size\" argument must be a number\\');if(t<0)throw new RangeError(\\'\"size\" argument must not be negative\\')}function Fne(t,e){if(N8e(e),t=Vv(t,e<0?0:0|Ore(e)),!at.TYPED_ARRAY_SUPPORT)for(var n=0;n<e;++n)t[n]=0;return t}function Xte(t,e){var n=e.length<0?0:0|Ore(e.length);t=Vv(t,n);for(var r=0;r<n;r+=1)t[r]=255&e[r];return t}function Ore(t){if(t>=TH())throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+TH().toString(16)+\" bytes\");return 0|t}function y1(t){return!(t==null||!t._isBuffer)}function L8e(t,e){if(y1(t))return t.length;if(typeof ArrayBuffer<\"u\"&&typeof ArrayBuffer.isView==\"function\"&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;typeof t!=\"string\"&&(t=\"\"+t);var n=t.length;if(n===0)return 0;for(var r=!1;;)switch(e){case\"ascii\":case\"latin1\":case\"binary\":return n;case\"utf8\":case\"utf-8\":case void 0:return RH(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*n;case\"hex\":return n>>>1;case\"base64\":return U8e(t).length;default:if(r)return RH(t).length;e=(\"\"+e).toLowerCase(),r=!0}}function Qrt(t,e,n){var r=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(e>>>=0))return\"\";for(t||(t=\"utf8\");;)switch(t){case\"hex\":return sot(this,e,n);case\"utf8\":case\"utf-8\":return D8e(this,e,n);case\"ascii\":return oot(this,e,n);case\"latin1\":case\"binary\":return iot(this,e,n);case\"base64\":return rot(this,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return aot(this,e,n);default:if(r)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),r=!0}}function vS(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function m4e(t,e,n,r,o){if(t.length===0)return-1;if(typeof n==\"string\"?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(o)return-1;n=t.length-1}else if(n<0){if(!o)return-1;n=0}if(typeof e==\"string\"&&(e=at.from(e,r)),y1(e))return e.length===0?-1:g4e(t,e,n,r,o);if(typeof e==\"number\")return e&=255,at.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf==\"function\"?o?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):g4e(t,[e],n,r,o);throw new TypeError(\"val must be string, number or Buffer\")}function g4e(t,e,n,r,o){var i,a=1,c=t.length,u=e.length;if(r!==void 0&&((r=String(r).toLowerCase())===\"ucs2\"||r===\"ucs-2\"||r===\"utf16le\"||r===\"utf-16le\")){if(t.length<2||e.length<2)return-1;a=2,c/=2,u/=2,n/=2}function d(b,E){return a===1?b[E]:b.readUInt16BE(E*a)}if(o){var h=-1;for(i=n;i<c;i++)if(d(t,i)===d(e,h===-1?0:i-h)){if(h===-1&&(h=i),i-h+1===u)return h*a}else h!==-1&&(i-=i-h),h=-1}else for(n+u>c&&(n=c-u),i=n;i>=0;i--){for(var m=!0,g=0;g<u;g++)if(d(t,i+g)!==d(e,g)){m=!1;break}if(m)return i}return-1}function Jrt(t,e,n,r){n=Number(n)||0;var o=t.length-n;r?(r=Number(r))>o&&(r=o):r=o;var i=e.length;if(i%2!=0)throw new TypeError(\"Invalid hex string\");r>i/2&&(r=i/2);for(var a=0;a<r;++a){var c=parseInt(e.substr(2*a,2),16);if(isNaN(c))return a;t[n+a]=c}return a}function Xrt(t,e,n,r){return lq(RH(e,t.length-n),t,n,r)}function B8e(t,e,n,r){return lq(function(o){for(var i=[],a=0;a<o.length;++a)i.push(255&o.charCodeAt(a));return i}(e),t,n,r)}function eot(t,e,n,r){return B8e(t,e,n,r)}function tot(t,e,n,r){return lq(U8e(e),t,n,r)}function not(t,e,n,r){return lq(function(o,i){for(var a,c,u,d=[],h=0;h<o.length&&!((i-=2)<0);++h)c=(a=o.charCodeAt(h))>>8,u=a%256,d.push(u),d.push(c);return d}(e,t.length-n),t,n,r)}function rot(t,e,n){return e===0&&n===t.length?p4e(t):p4e(t.slice(e,n))}function D8e(t,e,n){n=Math.min(t.length,n);for(var r=[],o=e;o<n;){var i,a,c,u,d=t[o],h=null,m=d>239?4:d>223?3:d>191?2:1;if(o+m<=n)switch(m){case 1:d<128&&(h=d);break;case 2:(192&(i=t[o+1]))==128&&(u=(31&d)<<6|63&i)>127&&(h=u);break;case 3:i=t[o+1],a=t[o+2],(192&i)==128&&(192&a)==128&&(u=(15&d)<<12|(63&i)<<6|63&a)>2047&&(u<55296||u>57343)&&(h=u);break;case 4:i=t[o+1],a=t[o+2],c=t[o+3],(192&i)==128&&(192&a)==128&&(192&c)==128&&(u=(15&d)<<18|(63&i)<<12|(63&a)<<6|63&c)>65535&&u<1114112&&(h=u)}h===null?(h=65533,m=1):h>65535&&(h-=65536,r.push(h>>>10&1023|55296),h=56320|1023&h),r.push(h),o+=m}return function(g){var b=g.length;if(b<=y4e)return String.fromCharCode.apply(String,g);for(var E=\"\",C=0;C<b;)E+=String.fromCharCode.apply(String,g.slice(C,C+=y4e));return E}(r)}function oot(t,e,n){var r=\"\";n=Math.min(t.length,n);for(var o=e;o<n;++o)r+=String.fromCharCode(127&t[o]);return r}function iot(t,e,n){var r=\"\";n=Math.min(t.length,n);for(var o=e;o<n;++o)r+=String.fromCharCode(t[o]);return r}function sot(t,e,n){var r=t.length;(!e||e<0)&&(e=0),(!n||n<0||n>r)&&(n=r);for(var o=\"\",i=e;i<n;++i)o+=lot(t[i]);return o}function aot(t,e,n){for(var r=t.slice(e,n),o=\"\",i=0;i<r.length;i+=2)o+=String.fromCharCode(r[i]+256*r[i+1]);return o}function jc(t,e,n){if(t%1!=0||t<0)throw new RangeError(\"offset is not uint\");if(t+e>n)throw new RangeError(\"Trying to access beyond buffer length\")}function Tf(t,e,n,r,o,i){if(!y1(t))throw new TypeError(\\'\"buffer\" argument must be a Buffer instance\\');if(e>o||e<i)throw new RangeError(\\'\"value\" argument is out of bounds\\');if(n+r>t.length)throw new RangeError(\"Index out of range\")}function Vz(t,e,n,r){e<0&&(e=65535+e+1);for(var o=0,i=Math.min(t.length-n,2);o<i;++o)t[n+o]=(e&255<<8*(r?o:1-o))>>>8*(r?o:1-o)}function $z(t,e,n,r){e<0&&(e=4294967295+e+1);for(var o=0,i=Math.min(t.length-n,4);o<i;++o)t[n+o]=e>>>8*(r?o:3-o)&255}function F8e(t,e,n,r,o,i){if(n+r>t.length)throw new RangeError(\"Index out of range\");if(n<0)throw new RangeError(\"Index out of range\")}function b4e(t,e,n,r,o){return o||F8e(t,0,n,4),O8e(t,e,n,r,23,4),n+4}function v4e(t,e,n,r,o){return o||F8e(t,0,n,8),O8e(t,e,n,r,52,8),n+8}function lot(t){return t<16?\"0\"+t.toString(16):t.toString(16)}function RH(t,e){var n;e=e||1/0;for(var r=t.length,o=null,i=[],a=0;a<r;++a){if((n=t.charCodeAt(a))>55295&&n<57344){if(!o){if(n>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(e-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((e-=1)<0)break;i.push(n)}else if(n<2048){if((e-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error(\"Invalid code point\");if((e-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function U8e(t){return function(e){var n,r,o,i,a,c;Ire||I8e();var u=e.length;if(u%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");a=e[u-2]===\"=\"?2:e[u-1]===\"=\"?1:0,c=new Krt(3*u/4-a),o=a>0?u-4:u;var d=0;for(n=0,r=0;n<o;n+=4,r+=3)i=Em[e.charCodeAt(n)]<<18|Em[e.charCodeAt(n+1)]<<12|Em[e.charCodeAt(n+2)]<<6|Em[e.charCodeAt(n+3)],c[d++]=i>>16&255,c[d++]=i>>8&255,c[d++]=255&i;return a===2?(i=Em[e.charCodeAt(n)]<<2|Em[e.charCodeAt(n+1)]>>4,c[d++]=255&i):a===1&&(i=Em[e.charCodeAt(n)]<<10|Em[e.charCodeAt(n+1)]<<4|Em[e.charCodeAt(n+2)]>>2,c[d++]=i>>8&255,c[d++]=255&i),c}(function(e){if((e=function(n){return n.trim?n.trim():n.replace(/^\\\\s+|\\\\s+$/g,\"\")}(e).replace(cot,\"\")).length<2)return\"\";for(;e.length%4!=0;)e+=\"=\";return e}(t))}function lq(t,e,n,r){for(var o=0;o<r&&!(o+n>=e.length||o>=t.length);++o)e[o+n]=t[o];return o}function j8e(t){return t!=null&&(!!t._isBuffer||w4e(t)||function(e){return typeof e.readFloatLE==\"function\"&&typeof e.slice==\"function\"&&w4e(e.slice(0,0))}(t))}function w4e(t){return!!t.constructor&&typeof t.constructor.isBuffer==\"function\"&&t.constructor.isBuffer(t)}function uq(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}function WO(t){if(t.__esModule)return t;var e=t.default;if(typeof e==\"function\"){var n=function r(){return this instanceof r?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,\"__esModule\",{value:!0}),Object.keys(t).forEach(function(r){var o=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:function(){return t[r]}})}),n}function IH(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`positive integer expected, not ${t}`)}function z8e(t){if(typeof t!=\"boolean\")throw new Error(`boolean expected, not ${t}`)}function H8e(t){return t instanceof Uint8Array||t!=null&&typeof t==\"object\"&&t.constructor.name===\"Uint8Array\"}function Pre(t,...e){if(!H8e(t))throw new Error(\"Uint8Array expected\");if(e.length>0&&!e.includes(t.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${t.length}`)}function q8e(t){if(typeof t!=\"function\"||typeof t.create!=\"function\")throw new Error(\"hash must be wrapped by utils.wrapConstructor\");IH(t.outputLen),IH(t.blockLen)}function W8e(t,e=!0){if(t.destroyed)throw new Error(\"Hash instance has been destroyed\");if(e&&t.finished)throw new Error(\"Hash#digest() has already been called\")}function V8e(t,e){Pre(t);let n=e.outputLen;if(t.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}function PH(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`positive integer expected, not ${t}`)}function G8e(t){if(typeof t!=\"boolean\")throw new Error(`boolean expected, not ${t}`)}function Z8e(t){return t instanceof Uint8Array||t!=null&&typeof t==\"object\"&&t.constructor.name===\"Uint8Array\"}function Nre(t,...e){if(!Z8e(t))throw new Error(\"Uint8Array expected\");if(e.length>0&&!e.includes(t.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${t.length}`)}function Y8e(t){if(typeof t!=\"function\"||typeof t.create!=\"function\")throw new Error(\"Hash should be wrapped by utils.wrapConstructor\");PH(t.outputLen),PH(t.blockLen)}function Q8e(t,e=!0){if(t.destroyed)throw new Error(\"Hash instance has been destroyed\");if(e&&t.finished)throw new Error(\"Hash#digest() has already been called\")}function J8e(t,e){Nre(t);let n=e.outputLen;if(t.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}function Lre(t,e=!1){return e?{h:Number(t&Zz),l:Number(t>>Une&Zz)}:{h:0|Number(t>>Une&Zz),l:0|Number(t&Zz)}}function X8e(t,e=!1){let n=new Uint32Array(t.length),r=new Uint32Array(t.length);for(let o=0;o<t.length;o++){let{h:i,l:a}=Lre(t[o],e);[n[o],r[o]]=[i,a]}return[n,r]}function hAe(t,e,n,r){let o=(e>>>0)+(r>>>0);return{h:t+n+(o/2**32|0)|0,l:0|o}}function BH(t){return t instanceof Uint8Array||t!=null&&typeof t==\"object\"&&t.constructor.name===\"Uint8Array\"}function DH(t){if(!BH(t))throw new Error(\"Uint8Array expected\")}function nne(t){DH(t);let e=\"\";for(let n=0;n<t.length;n++)e+=bot[t[n]];return e}function x4e(t){let e=t.toString(16);return 1&e.length?`0${e}`:e}function rne(t){if(typeof t!=\"string\")throw new Error(\"hex string expected, got \"+typeof t);return BigInt(t===\"\"?\"0\":`0x${t}`)}function E4e(t){return t>=Uv._0&&t<=Uv._9?t-Uv._0:t>=Uv._A&&t<=Uv._F?t-(Uv._A-10):t>=Uv._a&&t<=Uv._f?t-(Uv._a-10):void 0}function fH(t){if(typeof t!=\"string\")throw new Error(\"hex string expected, got \"+typeof t);let e=t.length,n=e/2;if(e%2)throw new Error(\"padded hex string expected, got unpadded hex of length \"+e);let r=new Uint8Array(n);for(let o=0,i=0;o<n;o++,i+=2){let a=E4e(t.charCodeAt(i)),c=E4e(t.charCodeAt(i+1));if(a===void 0||c===void 0){let u=t[i]+t[i+1];throw new Error(\\'hex string expected, got non-hex character \"\\'+u+\\'\" at index \\'+i)}r[o]=16*a+c}return r}function S4e(t,e){return fH(t.toString(16).padStart(2*e,\"0\"))}function k4e(...t){let e=0;for(let r=0;r<t.length;r++){let o=t[r];DH(o),e+=o.length}let n=new Uint8Array(e);for(let r=0,o=0;r<t.length;r++){let i=t[r];n.set(i,o),o+=i.length}return n}function _4e(t,e,n){return one(t)&&one(e)&&one(n)&&e<=t&&t<n}function Oh(t,e){let n=t%e;return n>=qc?n:e+n}function wAe(t,e,n){if(n<=qc||e<qc)throw new Error(\"Expected power/modulo > 0\");if(n===Di)return qc;let r=Di;for(;e>qc;)e&Di&&(r=r*t%n),t=t*t%n,e>>=Di;return r}function Qz(t,e){if(t===qc||e<=qc)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let n=Oh(t,e),r=e,o=qc,i=Di;for(;n!==qc;){let a=r%n,c=o-i*(r/n);r=n,n=a,o=i,i=c}if(r!==Di)throw new Error(\"invert: does not exist\");return Oh(o,e)}function xAe(t){let e=(t-Di)/a3,n,r,o;for(n=t-Di,r=0;n%a3===qc;n/=a3,r++);for(o=a3;o<t&&wAe(o,e,t)!==t-Di;o++);if(r===1){let a=(t+Di)/Hne;return function(c,u){let d=c.pow(u,a);if(!c.eql(c.sqr(d),u))throw new Error(\"Cannot find square root\");return d}}let i=(n+Di)/a3;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error(\"Cannot find square root\");let u=r,d=a.pow(a.mul(a.ONE,o),n),h=a.pow(c,i),m=a.pow(c,n);for(;!a.eql(m,a.ONE);){if(a.eql(m,a.ZERO))return a.ZERO;let g=1;for(let E=a.sqr(m);g<u&&!a.eql(E,a.ONE);g++)E=a.sqr(E);let b=a.pow(d,Di<<BigInt(u-g-1));d=a.sqr(b),h=a.mul(h,b),m=a.mul(m,d),u=g}return h}}function R4e(t){if(t%Hne===wot){let e=(t+Di)/Hne;return function(n,r){let o=n.pow(r,e);if(!n.eql(n.sqr(o),r))throw new Error(\"Cannot find square root\");return o}}if(t%T4e===A4e){let e=(t-A4e)/T4e;return function(n,r){let o=n.mul(r,a3),i=n.pow(o,e),a=n.mul(r,i),c=n.mul(n.mul(a,a3),i),u=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(u),r))throw new Error(\"Cannot find square root\");return u}}return xAe(t)}function I4e(t,e,n){if(n<qc)throw new Error(\"Expected power > 0\");if(n===qc)return t.ONE;if(n===Di)return e;let r=t.ONE,o=e;for(;n>qc;)n&Di&&(r=t.mul(r,o)),o=t.sqr(o),n>>=Di;return r}function O4e(t,e){let n=new Array(e.length),r=e.reduce((i,a,c)=>t.is0(a)?i:(n[c]=i,t.mul(i,a)),t.ONE),o=t.inv(r);return e.reduceRight((i,a,c)=>t.is0(a)?i:(n[c]=t.mul(i,n[c]),t.mul(i,a)),o),n}function P4e(t){let e=(t-Di)/a3;return(n,r)=>n.pow(r,e)}function sne(t,e){let n=e!==void 0?e:t.toString(2).length;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function qne(t){if(typeof t!=\"bigint\")throw new Error(\"field order must be bigint\");let e=t.toString(2).length;return Math.ceil(e/8)}function M4e(t){let e=qne(t);return e+Math.ceil(e/2)}function r3(t,e){if(IO(t),IO(e),t<0||t>=1<<8*e)throw new Error(`bad I2OSP call: value=${t} length=${e}`);let n=Array.from({length:e}).fill(0);for(let r=e-1;r>=0;r--)n[r]=255&t,t>>>=8;return new Uint8Array(n)}function Aot(t,e){let n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t[r]^e[r];return n}function IO(t){if(!Number.isSafeInteger(t))throw new Error(\"number expected\")}function EAe(t,e,n,r){(0,Su.abytes)(t),(0,Su.abytes)(e),IO(n),e.length>255&&(e=r((0,Su.concatBytes)((0,Su.utf8ToBytes)(\"H2C-OVERSIZE-DST-\"),e)));let{outputLen:o,blockLen:i}=r,a=Math.ceil(n/o);if(n>65535||a>255)throw new Error(\"expand_message_xmd: invalid lenInBytes\");let c=(0,Su.concatBytes)(e,r3(e.length,1)),u=r3(0,i),d=r3(n,2),h=new Array(a),m=r((0,Su.concatBytes)(u,t,d,r3(0,1),c));h[0]=r((0,Su.concatBytes)(m,r3(1,1),c));for(let g=1;g<=a;g++){let b=[Aot(m,h[g-1]),r3(g+1,1),c];h[g]=r((0,Su.concatBytes)(...b))}return(0,Su.concatBytes)(...h).slice(0,n)}function SAe(t,e,n,r,o){if((0,Su.abytes)(t),(0,Su.abytes)(e),IO(n),e.length>255){let i=Math.ceil(2*r/8);e=o.create({dkLen:i}).update((0,Su.utf8ToBytes)(\"H2C-OVERSIZE-DST-\")).update(e).digest()}if(n>65535||e.length>255)throw new Error(\"expand_message_xof: invalid lenInBytes\");return o.create({dkLen:n}).update(t).update(r3(n,2)).update(e).update(r3(e.length,1)).digest()}function une(t,e,n){(0,Su.validateObject)(n,{DST:\"stringOrUint8Array\",p:\"bigint\",m:\"isSafeInteger\",k:\"isSafeInteger\",hash:\"hash\"});let{p:r,k:o,m:i,hash:a,expand:c,DST:u}=n;(0,Su.abytes)(t),IO(e);let d=typeof u==\"string\"?(0,Su.utf8ToBytes)(u):u,h=r.toString(2).length,m=Math.ceil((h+o)/8),g=e*i*m,b;if(c===\"xmd\")b=EAe(t,d,g,a);else if(c===\"xof\")b=SAe(t,d,g,o,a);else{if(c!==\"_internal_pass\")throw new Error(\\'expand must be \"xmd\" or \"xof\"\\');b=t}let E=new Array(e);for(let C=0;C<e;C++){let T=new Array(i);for(let R=0;R<i;R++){let L=m*(R+C*i),D=b.subarray(L,L+m);T[R]=(0,_ot.mod)(Cot(D),r)}E[C]=T}return E}function j4e(t){return{hash:t,hmac:(e,...n)=>(0,Rot.hmac)(t,e,(0,U4e.concatBytes)(...n)),randomBytes:U4e.randomBytes}}function AAe(t,e,n){return(0,Kne.hash)(t),n===void 0&&(n=new Uint8Array(t.outputLen)),(0,CAe.hmac)(t,(0,z4e.toBytes)(n),(0,z4e.toBytes)(e))}function TAe(t,e,n,r=32){if((0,Kne.hash)(t),(0,Kne.number)(r),r>255*t.outputLen)throw new Error(\"Length should be <= 255*HashLen\");let o=Math.ceil(r/t.outputLen);n===void 0&&(n=H4e);let i=new Uint8Array(o*t.outputLen),a=CAe.hmac.create(t,e),c=a._cloneInto(),u=new Uint8Array(a.outputLen);for(let d=0;d<o;d++)hne[0]=d+1,c.update(d===0?H4e:u).update(n).update(hne).digestInto(u),i.set(u,t.outputLen*d),a._cloneInto(c);return a.destroy(),c.destroy(),u.fill(0),hne.fill(0),i.slice(0,r)}function RAe(t){t.reverse();let e=1&t[15],n=0;for(let r=0;r<t.length;r++){let o=t[r];t[r]=o>>>1|n,n=(1&o)<<7}return t[0]^=225&-e,t}function W4e(t){let e=(r,o)=>t(o,r.length).update((0,Ad.toBytes)(r)).digest(),n=t(new Uint8Array(16),0);return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=(r,o)=>t(r,o),e}function Ure(t){return t<<1^Oot&-(t>>7)}function uA(t,e){let n=0;for(;e>0;e>>=1)n^=t&-(1&e),t=Ure(t);return n}function IAe(t,e){if(t.length!==256)throw new Error(\"Wrong sbox length\");let n=new Uint32Array(256).map((d,h)=>e(t[h])),r=n.map(pne),o=r.map(pne),i=o.map(pne),a=new Uint32Array(65536),c=new Uint32Array(65536),u=new Uint16Array(65536);for(let d=0;d<256;d++)for(let h=0;h<256;h++){let m=256*d+h;a[m]=n[d]^r[h],c[m]=o[d]^i[h],u[m]=t[d]<<8|t[h]}return{sbox:t,sbox2:u,T0:n,T1:r,T2:o,T3:i,T01:a,T23:c}}function hg(t){(0,eo.bytes)(t);let e=t.length;if(![16,24,32].includes(e))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${e}`);let{sbox2:n}=jre,r=[];(0,yt.isAligned32)(t)||r.push(t=(0,yt.copyBytes)(t));let o=(0,yt.u32)(t),i=o.length,a=u=>w1(n,u,u,u,u),c=new Uint32Array(e+28);c.set(o);for(let u=i;u<c.length;u++){let d=c[u-1];u%i==0?d=a(Mot(d))^Not[u/i-1]:i>6&&u%i==4&&(d=a(d)),c[u]=c[u-i]^d}return(0,yt.clean)(...r),c}function PO(t){let e=hg(t),n=e.slice(),r=e.length,{sbox2:o}=jre,{T0:i,T1:a,T2:c,T3:u}=OAe;for(let d=0;d<r;d+=4)for(let h=0;h<4;h++)n[d+h]=e[r-d-4+h];(0,yt.clean)(e);for(let d=4;d<r-4;d++){let h=n[d],m=w1(o,h,h,h,h);n[d]=i[255&m]^a[m>>>8&255]^c[m>>>16&255]^u[m>>>24]}return n}function l3(t,e,n,r,o,i){return t[n<<8&65280|r>>>8&255]^e[o>>>8&65280|i>>>24&255]}function w1(t,e,n,r,o){return t[255&e|65280&n]|t[r>>>16&255|o>>>16&65280]<<16}function Td(t,e,n,r,o){let{sbox2:i,T01:a,T23:c}=jre,u=0;e^=t[u++],n^=t[u++],r^=t[u++],o^=t[u++];let d=t.length/4-2;for(let h=0;h<d;h++){let m=t[u++]^l3(a,c,e,n,r,o),g=t[u++]^l3(a,c,n,r,o,e),b=t[u++]^l3(a,c,r,o,e,n),E=t[u++]^l3(a,c,o,e,n,r);e=m,n=g,r=b,o=E}return{s0:t[u++]^w1(i,e,n,r,o),s1:t[u++]^w1(i,n,r,o,e),s2:t[u++]^w1(i,r,o,e,n),s3:t[u++]^w1(i,o,e,n,r)}}function MO(t,e,n,r,o){let{sbox2:i,T01:a,T23:c}=OAe,u=0;e^=t[u++],n^=t[u++],r^=t[u++],o^=t[u++];let d=t.length/4-2;for(let h=0;h<d;h++){let m=t[u++]^l3(a,c,e,o,r,n),g=t[u++]^l3(a,c,n,e,o,r),b=t[u++]^l3(a,c,r,n,e,o),E=t[u++]^l3(a,c,o,r,n,e);e=m,n=g,r=b,o=E}return{s0:t[u++]^w1(i,e,o,r,n),s1:t[u++]^w1(i,n,e,o,r),s2:t[u++]^w1(i,r,n,e,o),s3:t[u++]^w1(i,o,r,n,e)}}function gA(t,e){if(e===void 0)return new Uint8Array(t);if((0,eo.bytes)(e),e.length<t)throw new Error(`aes: wrong destination length, expected at least ${t}, got: ${e.length}`);if(!(0,yt.isAligned32)(e))throw new Error(\"unaligned dst\");return e}function PAe(t,e,n,r){(0,eo.bytes)(e,Of),(0,eo.bytes)(n);let o=n.length;r=gA(o,r);let i=e,a=(0,yt.u32)(i),{s0:c,s1:u,s2:d,s3:h}=Td(t,a[0],a[1],a[2],a[3]),m=(0,yt.u32)(n),g=(0,yt.u32)(r);for(let E=0;E+4<=m.length;E+=4){g[E+0]=m[E+0]^c,g[E+1]=m[E+1]^u,g[E+2]=m[E+2]^d,g[E+3]=m[E+3]^h;let C=1;for(let T=i.length-1;T>=0;T--)C=C+(255&i[T])|0,i[T]=255&C,C>>>=8;({s0:c,s1:u,s2:d,s3:h}=Td(t,a[0],a[1],a[2],a[3]))}let b=Of*Math.floor(m.length/4);if(b<o){let E=new Uint32Array([c,u,d,h]),C=(0,yt.u8)(E);for(let T=b,R=0;T<o;T++,R++)r[T]=n[T]^C[R];(0,yt.clean)(E)}return r}function dA(t,e,n,r,o){(0,eo.bytes)(n,Of),(0,eo.bytes)(r),o=gA(r.length,o);let i=n,a=(0,yt.u32)(i),c=(0,yt.createView)(i),u=(0,yt.u32)(r),d=(0,yt.u32)(o),h=e?0:12,m=r.length,g=c.getUint32(h,e),{s0:b,s1:E,s2:C,s3:T}=Td(t,a[0],a[1],a[2],a[3]);for(let L=0;L+4<=u.length;L+=4)d[L+0]=u[L+0]^b,d[L+1]=u[L+1]^E,d[L+2]=u[L+2]^C,d[L+3]=u[L+3]^T,g=g+1>>>0,c.setUint32(h,g,e),{s0:b,s1:E,s2:C,s3:T}=Td(t,a[0],a[1],a[2],a[3]);let R=Of*Math.floor(u.length/4);if(R<m){let L=new Uint32Array([b,E,C,T]),D=(0,yt.u8)(L);for(let G=R,W=0;G<m;G++,W++)o[G]=r[G]^D[W];(0,yt.clean)(L)}return o}function V4e(t){if((0,eo.bytes)(t),t.length%Of!=0)throw new Error(\"aes/(cbc-ecb).decrypt ciphertext should consist of blocks with size 16\")}function $4e(t,e,n){(0,eo.bytes)(t);let r=t.length,o=r%Of;if(!e&&o!==0)throw new Error(\"aec/(cbc-ecb): unpadded plaintext with disabled padding\");(0,yt.isAligned32)(t)||(t=(0,yt.copyBytes)(t));let i=(0,yt.u32)(t);if(e){let c=Of-o;c||(c=Of),r+=c}let a=gA(r,n);return{b:i,o:(0,yt.u32)(a),out:a}}function K4e(t,e){if(!e)return t;let n=t.length;if(!n)throw new Error(\"aes/pcks5: empty ciphertext not allowed\");let r=t[n-1];if(r<=0||r>16)throw new Error(\"aes/pcks5: wrong padding\");let o=t.subarray(0,-r);for(let i=0;i<r;i++)if(t[n-i-1]!==r)throw new Error(\"aes/pcks5: wrong padding\");return o}function G4e(t){let e=new Uint8Array(16),n=(0,yt.u32)(e);e.set(t);let r=Of-t.length;for(let o=Of-r;o<Of;o++)e[o]=r;return n}function MAe(t,e,n,r,o){let i=o==null?0:o.length,a=t.create(n,r.length+i);o&&a.update(o),a.update(r);let c=new Uint8Array(16),u=(0,yt.createView)(c);o&&(0,yt.setBigUint64)(u,0,BigInt(8*i),e),(0,yt.setBigUint64)(u,8,BigInt(8*r.length),e),a.update(c);let d=a.digest();return(0,yt.clean)(c),d}function NAe(t){return t!=null&&typeof t==\"object\"&&(t instanceof Uint32Array||t.constructor.name===\"Uint32Array\")}function LAe(t,e){if((0,eo.bytes)(e,16),!NAe(t))throw new Error(\"_encryptBlock accepts result of expandKeyLE\");let n=(0,yt.u32)(e),{s0:r,s1:o,s2:i,s3:a}=Td(t,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=o,n[2]=i,n[3]=a,e}function BAe(t,e){if((0,eo.bytes)(e,16),!NAe(t))throw new Error(\"_decryptBlock accepts result of expandKeyLE\");let n=(0,yt.u32)(e),{s0:r,s1:o,s2:i,s3:a}=MO(t,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=o,n[2]=i,n[3]=a,e}function mne(t){return t.byteOffset%4==0}function zAe(t){let e=(r,o)=>t(o).update((0,mO.toBytes)(r)).digest(),n=t(new Uint8Array(32));return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}function $Ae(t){let{context:e}=t;He.RemoteCommunication(`[RemoteCommunication: clean()] context=${e}`),t.channelConfig=void 0,t.ready=!1,t.originatorConnectStarted=!1}function KAe(t,e){return ct(this,void 0,void 0,function*(){var n;let r=(n=t.state.keyExchange)===null||n===void 0?void 0:n.encryptMessage(JSON.stringify(e)),o={id:t.state.channelId,context:t.state.context,clientType:t.state.isOriginator?\"dapp\":\"wallet\",message:r,plaintext:t.state.hasPlaintext?JSON.stringify(e):void 0};return He.SocketService(`[SocketService: encryptAndSendMessage()] context=${t.state.context}`,o),e.type===hs.TERMINATE&&(t.state.manualDisconnect=!0),new Promise((i,a)=>{var c;(c=t.state.socket)===null||c===void 0||c.emit(vt.MESSAGE,o,(u,d)=>{var h;u&&(He.SocketService(`[SocketService: encryptAndSendMessage()] error=${u}`),a(u)),He.SocketService(\"[encryptAndSendMessage] response\",d),i((h=d?.success)!==null&&h!==void 0&&h)})})})}function rCe(t,e){He.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} setting socket listeners for channel ${e}...`);let{socket:n}=t.state,{keyExchange:r}=t.state;n&&t.state.isOriginator&&(t.state.debug&&(n?.io.on(\"error\",o=>{He.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} socket event=error`,o)}),n?.io.on(\"reconnect\",o=>{He.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} socket event=reconnect`,o),Xne(t).catch(i=>{})}),n?.io.on(\"reconnect_error\",o=>{He.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} socket event=reconnect_error`,o)}),n?.io.on(\"reconnect_failed\",()=>{He.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} socket event=reconnect_failed`)})),n?.on(\"disconnect\",o=>(He.SocketService(`[SocketService: setupChannelListener()] on \\'disconnect\\' -- MetaMaskSDK socket disconnected \\'${o}\\' begin recovery...`),function(i){return a=>{He.SocketService(`[SocketService: handleDisconnect()] on \\'disconnect\\' manualDisconnect=${i.state.manualDisconnect}`,a),i.state.manualDisconnect||(i.emit(vt.SOCKET_DISCONNECTED),Xne(i).catch(c=>{}))}}(t)(o)))),$ot.forEach(({event:o,handler:i})=>{n?.on(`${o}-${e}`,i(t,e))}),Kot.forEach(({event:o,handler:i})=>{r?.on(o,i(t))}),t.state.setupChannelListeners=!0}function Got(t){return()=>ct(this,void 0,void 0,function*(){var e,n,r;let{state:o}=t;if(o.authorized)return;yield ct(this,void 0,void 0,function*(){for(;!o.walletInfo;)yield yA(500)});let i=\"7.3\".localeCompare(((e=o.walletInfo)===null||e===void 0?void 0:e.version)||\"\");if(He.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK \\'authorized\\' version=${(n=o.walletInfo)===null||n===void 0?void 0:n.version} compareValue=${i}`),i!==1)return;let a=o.platformType===Al.MobileWeb||o.platformType===Al.ReactNative||o.platformType===Al.MetaMaskMobileWebview;He.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK \\'authorized\\' platform=${o.platformType} secure=${a} channel=${o.channelId} walletVersion=${(r=o.walletInfo)===null||r===void 0?void 0:r.version}`),a&&(o.authorized=!0,t.emit(vt.AUTHORIZED))})}function Zot(t){return e=>{let{state:n}=t;He.RemoteCommunication(`[RemoteCommunication: handleChannelCreatedEvent()] context=${n.context} on \\'channel_created\\' channelId=${e}`),t.emit(vt.CHANNEL_CREATED,e)}}function Yot(t,e){return()=>{var n,r,o,i;let{state:a}=t;He.RemoteCommunication(`[RemoteCommunication: handleClientsConnectedEvent()] on \\'clients_connected\\' channel=${a.channelId} keysExchanged=${(r=(n=a.communicationLayer)===null||n===void 0?void 0:n.getKeyInfo())===null||r===void 0?void 0:r.keysExchanged}`),a.analytics&&Yv(Object.assign(Object.assign({id:(o=a.channelId)!==null&&o!==void 0?o:\"\",event:a.reconnection?pa.RECONNECT:a.isOriginator?pa.REQUEST:pa.REQUEST_MOBILE},a.originatorInfo),{commLayer:e,sdkVersion:a.sdkVersion,walletVersion:(i=a.walletInfo)===null||i===void 0?void 0:i.version,commLayerVersion:h3.version}),a.communicationServerUrl).catch(c=>{}),a.clientsConnected=!0,a.originatorInfoSent=!1,t.emit(vt.CLIENTS_CONNECTED)}}function Qot(t){return e=>{let{state:n}=t;He.RemoteCommunication(`[RemoteCommunication: handleClientsDisconnectedEvent()] context=${n.context} on \\'clients_disconnected\\' channelId=${e}`),n.relayPersistence||(n.clientsConnected=!1,n.ready=!1,n.authorized=!1),t.emit(vt.CLIENTS_DISCONNECTED,n.channelId),t.setConnectionStatus(Wc.DISCONNECTED)}}function Jot(t){return e=>{var n;let{state:r}=t;if(He.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] context=${r.context} on \\'clients_waiting\\' numberUsers=${e} ready=${r.ready} autoStarted=${r.originatorConnectStarted}`),t.setConnectionStatus(Wc.WAITING),t.emit(vt.CLIENTS_WAITING,e),r.originatorConnectStarted){He.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] on \\'clients_waiting\\' watch autoStarted=${r.originatorConnectStarted} timeout`,r.autoConnectOptions);let o=((n=r.autoConnectOptions)===null||n===void 0?void 0:n.timeout)||3e3,i=setTimeout(()=>{He.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] setTimeout(${o}) terminate channelConfig`,r.autoConnectOptions),r.originatorConnectStarted=!1,r.ready||t.setConnectionStatus(Wc.TIMEOUT),clearTimeout(i)},o)}}}function Xot(t,e){return n=>{var r,o,i,a,c,u,d,h;let{state:m}=t;if(He.RemoteCommunication(`[RemoteCommunication: handleKeysExchangedEvent()] context=${m.context} on commLayer.\\'keys_exchanged\\' channel=${m.channelId}`,n),(o=(r=m.communicationLayer)===null||r===void 0?void 0:r.getKeyInfo())===null||o===void 0?void 0:o.keysExchanged){let g=Object.assign(Object.assign({},m.channelConfig),{channelId:(i=m.channelId)!==null&&i!==void 0?i:\"\",validUntil:((a=m.channelConfig)===null||a===void 0?void 0:a.validUntil)||wA,localKey:m.communicationLayer.getKeyInfo().ecies.private,otherKey:m.communicationLayer.getKeyInfo().ecies.otherPubKey});(c=m.storageManager)===null||c===void 0||c.persistChannelConfig(g).catch(b=>{}),t.setConnectionStatus(Wc.LINKED)}(function(g,b){var E,C,T,R,L,D,G,W;let{state:J}=g;He.RemoteCommunication(`[RemoteCommunication: setLastActiveDate()] channel=${J.channelId}`,b);let ne=Object.assign(Object.assign({},J.channelConfig),{channelId:(E=J.channelId)!==null&&E!==void 0?E:\"\",validUntil:(T=(C=J.channelConfig)===null||C===void 0?void 0:C.validUntil)!==null&&T!==void 0?T:0,relayPersistence:J.relayPersistence,localKey:(L=(R=J.communicationLayer)===null||R===void 0?void 0:R.state.keyExchange)===null||L===void 0?void 0:L.getKeyInfo().ecies.private,otherKey:(G=(D=J.communicationLayer)===null||D===void 0?void 0:D.state.keyExchange)===null||G===void 0?void 0:G.getKeyInfo().ecies.otherPubKey,lastActive:b.getTime()});(W=J.storageManager)===null||W===void 0||W.persistChannelConfig(ne)})(t,new Date),m.analytics&&m.channelId&&Yv(Object.assign(Object.assign({id:m.channelId,event:n.isOriginator?pa.CONNECTED:pa.CONNECTED_MOBILE},m.originatorInfo),{sdkVersion:m.sdkVersion,commLayer:e,commLayerVersion:h3.version,walletVersion:(u=m.walletInfo)===null||u===void 0?void 0:u.version}),m.communicationServerUrl).catch(g=>{}),m.isOriginator=n.isOriginator,n.isOriginator||((d=m.communicationLayer)===null||d===void 0||d.sendMessage({type:hs.READY}),m.ready=!0,m.paused=!1),n.isOriginator&&!m.originatorInfoSent&&((h=m.communicationLayer)===null||h===void 0||h.sendMessage({type:hs.ORIGINATOR_INFO,originatorInfo:m.originatorInfo,originator:m.originatorInfo}),m.originatorInfoSent=!0)}}function eit(t){return e=>{let n=e;e.message&&(n=n.message),function(r,o){let{state:i}=o;if(He.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] context=${i.context} on \\'message\\' typeof=${typeof r}`,r),o.state.ready=!0,i.isOriginator||r.type!==hs.ORIGINATOR_INFO)if(i.isOriginator&&r.type===hs.WALLET_INFO)(function(a,c){let{state:u}=a;u.walletInfo=c.walletInfo,u.paused=!1})(o,r);else{if(i.isOriginator&&r.type===hs.WALLET_INIT)(function(a,c){return ct(this,void 0,void 0,function*(){var u,d,h;let{state:m}=a;if(m.isOriginator){let g=c.data||{};if(typeof g==\"object\"&&\"accounts\"in g&&\"chainId\"in g&&\"walletKey\"in g)try{let{channelConfig:b}=a.state;if(He.RemoteCommunication(\"WALLET_INIT: channelConfig\",JSON.stringify(b,null,2)),b){let E=g.accounts,C=g.chainId,T=g.walletKey,R,L=!1;\"deeplinkProtocol\"in g&&(L=!!g.deeplinkProtocol,a.state.deeplinkProtocolAvailable=L),\"walletVersion\"in g&&(R=g.walletVersion),yield(u=a.state.storageManager)===null||u===void 0?void 0:u.persistChannelConfig(Object.assign(Object.assign({},b),{otherKey:T,walletVersion:R,deeplinkProtocolAvailable:L,relayPersistence:!0})),yield(d=a.state.storageManager)===null||d===void 0?void 0:d.persistAccounts(E),yield(h=a.state.storageManager)===null||h===void 0?void 0:h.persistChainId(C)}a.emit(vt.WALLET_INIT,{accounts:g.accounts,chainId:g.chainId})}catch{}}})})(o,r).catch(a=>{He.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${a}`)});else if(r.type===hs.TERMINATE)(function(a){return ct(this,void 0,void 0,function*(){let{state:c}=a;c.isOriginator&&(yield ZAe({options:{terminate:!0,sendMessage:!1},instance:a}),a.emit(vt.TERMINATE))})})(o).catch(a=>{He.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${a}`)});else if(r.type===hs.PAUSE)(function(a){let{state:c}=a;c.paused=!0,a.setConnectionStatus(Wc.PAUSED)})(o);else if(r.type===hs.READY&&i.isOriginator)(function(a){let{state:c}=a;a.setConnectionStatus(Wc.LINKED);let u=c.paused;c.paused=!1,a.emit(vt.CLIENTS_READY,{isOriginator:c.isOriginator,walletInfo:c.walletInfo}),u&&(c.authorized=!0,a.emit(vt.AUTHORIZED))})(o);else{if(r.type===hs.OTP&&i.isOriginator)return void function(a,c){var u;let{state:d}=a;a.emit(vt.OTP,c.otpAnswer),\"6.6\".localeCompare(((u=d.walletInfo)===null||u===void 0?void 0:u.version)||\"\")===1&&a.emit(vt.SDK_RPC_CALL,{method:Vot.ETH_REQUESTACCOUNTS,params:[]})}(o,r);r.type===hs.AUTHORIZED&&i.isOriginator&&function(a){let{state:c}=a;c.authorized=!0,a.emit(vt.AUTHORIZED)}(o)}o.emit(vt.MESSAGE,r)}else(function(a,c){var u;let{state:d}=a;(u=d.communicationLayer)===null||u===void 0||u.sendMessage({type:hs.WALLET_INFO,walletInfo:d.walletInfo}),d.originatorInfo=c.originatorInfo||c.originator,a.emit(vt.CLIENTS_READY,{isOriginator:d.isOriginator,originatorInfo:d.originatorInfo}),d.paused=!1})(o,r)}(n,t)}}function tit(t){return()=>{let{state:e}=t;He.RemoteCommunication(\"[RemoteCommunication: handleSocketReconnectEvent()] on \\'socket_reconnect\\' -- reset key exchange status / set ready to false\"),e.ready=!1,e.authorized=!1,$Ae(e),t.emitServiceStatusEvent({context:\"socket_reconnect\"})}}function nit(t){return()=>{let{state:e}=t;He.RemoteCommunication(\"[RemoteCommunication: handleSocketDisconnectedEvent()] on \\'socket_Disconnected\\' set ready to false\"),e.ready=!1}}function rit(t){return()=>ct(this,void 0,void 0,function*(){var e,n,r,o,i,a,c;let{state:u}=t;He.RemoteCommunication(`[RemoteCommunication: handleFullPersistenceEvent()] context=${u.context}`),t.state.ready=!0,t.state.clientsConnected=!0,t.state.authorized=!0,t.state.relayPersistence=!0,(e=t.state.communicationLayer)===null||e===void 0||e.getKeyExchange().setKeysExchanged(!0),t.emit(vt.KEYS_EXCHANGED,{keysExchanged:!0,isOriginator:!0}),t.emit(vt.AUTHORIZED),t.emit(vt.CLIENTS_READY),t.emit(vt.CHANNEL_PERSISTENCE);try{u.channelConfig=Object.assign(Object.assign({},u.channelConfig),{localKey:(n=u.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange().getKeyInfo().ecies.private,otherKey:(r=u.communicationLayer)===null||r===void 0?void 0:r.getKeyExchange().getOtherPublicKey(),channelId:(o=u.channelId)!==null&&o!==void 0?o:\"\",validUntil:(a=(i=u.channelConfig)===null||i===void 0?void 0:i.validUntil)!==null&&a!==void 0?a:wA,relayPersistence:!0}),yield(c=u.storageManager)===null||c===void 0?void 0:c.persistChannelConfig(u.channelConfig)}catch{}})}function iCe({communicationLayerPreference:t,otherPublicKey:e,reconnect:n,ecies:r,communicationServerUrl:o=RS,instance:i}){var a,c,u,d,h,m,g,b,E,C,T;let{state:R}=i;if(He.RemoteCommunication(\"[initCommunicationLayer()] \",JSON.stringify(R,null,2)),t!==p3.SOCKET)throw new Error(\"Invalid communication protocol\");R.communicationLayer=new ere({communicationLayerPreference:t,otherPublicKey:e,reconnect:n,transports:R.transports,communicationServerUrl:o,context:R.context,ecies:r,logging:R.logging,remote:i});let L=typeof document<\"u\"&&document.URL||\"\",D=typeof document<\"u\"&&document.title||\"\";!((a=R.dappMetadata)===null||a===void 0)&&a.url&&(L=R.dappMetadata.url),!((c=R.dappMetadata)===null||c===void 0)&&c.name&&(D=R.dappMetadata.name);let G=(m=(d=(u=R.dappMetadata)===null||u===void 0?void 0:u.name)!==null&&d!==void 0?d:(h=R.dappMetadata)===null||h===void 0?void 0:h.url)!==null&&m!==void 0?m:\"N/A\",W=typeof window<\"u\"&&window.location!==void 0&&(g=window.location.hostname)!==null&&g!==void 0?g:G,J={url:L,title:D,source:(b=R.dappMetadata)===null||b===void 0?void 0:b.source,dappId:W,icon:((E=R.dappMetadata)===null||E===void 0?void 0:E.iconUrl)||((C=R.dappMetadata)===null||C===void 0?void 0:C.base64Icon),platform:R.platformType,apiVersion:h3.version,connector:(T=R.dappMetadata)===null||T===void 0?void 0:T.connector};R.originatorInfo=J;let ne={[vt.AUTHORIZED]:Got(i),[vt.MESSAGE]:eit(i),[vt.CHANNEL_PERSISTENCE]:rit(i),[vt.CLIENTS_CONNECTED]:Yot(i,t),[vt.KEYS_EXCHANGED]:Xot(i,t),[vt.SOCKET_DISCONNECTED]:nit(i),[vt.SOCKET_RECONNECT]:tit(i),[vt.CLIENTS_DISCONNECTED]:Qot(i),[vt.KEY_INFO]:()=>{},[vt.CHANNEL_CREATED]:Zot(i),[vt.CLIENTS_WAITING]:Jot(i),[vt.RPC_UPDATE]:ie=>{i.emit(vt.RPC_UPDATE,ie)}};for(let[ie,Z]of Object.entries(ne))try{R.communicationLayer.on(ie,Z)}catch{}}function ZAe(t){return ct(this,arguments,void 0,function*({options:e,instance:n}){let{state:r}=n;return He.RemoteCommunication(`[RemoteCommunication: disconnect()] channel=${r.channelId}`,e),new Promise((o,i)=>{var a,c,u,d,h,m;e?.terminate?(n.state.ready&&Yv({id:(a=n.state.channelId)!==null&&a!==void 0?a:\"\",event:pa.TERMINATED},n.state.communicationServerUrl).catch(g=>{}),r.ready=!1,r.paused=!1,(c=r.storageManager)===null||c===void 0||c.terminate((u=r.channelId)!==null&&u!==void 0?u:\"\"),n.state.terminated=!0,e.sendMessage?!((d=r.communicationLayer)===null||d===void 0)&&d.getKeyInfo().keysExchanged&&n.state.communicationLayer&&KAe(n.state.communicationLayer,{type:hs.TERMINATE}).then(()=>{o(!0)}).catch(g=>{i(g)}):o(!0),r.authorized=!1,r.relayPersistence=!1,r.channelId=Z8(),e.channelId=r.channelId,r.channelConfig=void 0,r.originatorConnectStarted=!1,(h=r.communicationLayer)===null||h===void 0||h.disconnect(e),n.setConnectionStatus(Wc.TERMINATED)):((m=r.communicationLayer)===null||m===void 0||m.disconnect(e),n.setConnectionStatus(Wc.DISCONNECTED),o(!0))})})}function sit(t){let e={ethDecryptDeprecation:!1,ethGetEncryptionPublicKeyDeprecation:!1,walletWatchAssetNFTExperimental:!1};return(n,r,o)=>{e.ethDecryptDeprecation||n.method!==\"eth_decrypt\"?e.ethGetEncryptionPublicKeyDeprecation||n.method!==\"eth_getEncryptionPublicKey\"?!e.walletWatchAssetNFTExperimental&&n.method===\"wallet_watchAsset\"&&[oit,iit].includes(n.params?.type||\"\")&&(t.warn(Vs.warnings.rpc.walletWatchAssetNFTExperimental),e.walletWatchAssetNFTExperimental=!0):(t.warn(Vs.warnings.rpc.ethGetEncryptionPublicKeyDeprecation),e.ethGetEncryptionPublicKeyDeprecation=!0):(t.warn(Vs.warnings.rpc.ethDecryptDeprecation),e.ethDecryptDeprecation=!0),o()}}function ait(){return(t,e,n,r)=>{let o=t.id,i=sCe=(sCe+1)%YAe;t.id=i,e.id=i,n(a=>{t.id=o,e.id=o,a()})}}function cCe(t){return!!t&&typeof t==\"object\"&&!Array.isArray(t)}function Zv(t){return typeof t==\"object\"&&t!=null}function k1(t){return typeof t==\"symbol\"?t.toString():typeof t==\"string\"?JSON.stringify(t):`${t}`}function cit(t,e,n,r){if(t===!0)return;t===!1?t={}:typeof t==\"string\"&&(t={message:t});let{path:o,branch:i}=e,{type:a}=n,{refinement:c,message:u=`Expected a value of type \\\\`${a}\\\\`${c?` with refinement \\\\`${c}\\\\``:\"\"}, but received: \\\\`${k1(r)}\\\\``}=t;return{value:r,type:a,refinement:c,key:o[o.length-1],path:o,branch:i,...t,message:u}}function*lCe(t,e,n,r){(function(o){return Zv(o)&&typeof o[Symbol.iterator]==\"function\"})(t)||(t=[t]);for(let o of t){let i=cit(o,e,n,r);i&&(yield i)}}function*Hre(t,e,n={}){let{path:r=[],branch:o=[t],coerce:i=!1,mask:a=!1}=n,c={path:r,branch:o};if(i&&(t=e.coercer(t,c),a&&e.type!==\"type\"&&Zv(e.schema)&&Zv(t)&&!Array.isArray(t)))for(let d in t)e.schema[d]===void 0&&delete t[d];let u=\"valid\";for(let d of e.validator(t,c))d.explanation=n.message,u=\"not_valid\",yield[d,void 0];for(let[d,h,m]of e.entries(t,c)){let g=Hre(h,m,{path:d===void 0?r:[...r,d],branch:d===void 0?o:[...o,h],coerce:i,mask:a,message:n.message});for(let b of g)b[0]?(u=b[0].refinement!=null?\"not_refined\":\"not_valid\",yield[b[0],void 0]):i&&(h=b[1],d===void 0?t=h:t instanceof Map?t.set(d,h):t instanceof Set?t.add(h):Zv(t)&&(h!==void 0||d in t)&&(t[d]=h))}if(u!==\"not_valid\")for(let d of e.refiner(t,c))d.explanation=n.message,u=\"not_refined\",yield[d,void 0];u===\"valid\"&&(yield[void 0,t])}function QAe(t,e,n){let r=LO(t,e,{message:n});if(r[0])throw r[0]}function JAe(t,e,n){let r=LO(t,e,{coerce:!0,message:n});if(r[0])throw r[0];return r[1]}function kA(t,e){return!LO(t,e)[0]}function LO(t,e,n={}){let r=Hre(t,e,n),o=function(i){let{done:a,value:c}=i.next();return a?void 0:c}(r);return o[0]?[new nre(o[0],function*(){for(let a of r)a[0]&&(yield a[0])}),void 0]:[void 0,o[1]]}function m3(t,e){return new Nh({type:t,schema:null,validator:e})}function uCe(t){let e;return new Nh({type:\"lazy\",schema:null,*entries(n,r){e??(e=t()),yield*e.entries(n,r)},validator:(n,r)=>(e??(e=t()),e.validator(n,r)),coercer:(n,r)=>(e??(e=t()),e.coercer(n,r)),refiner:(n,r)=>(e??(e=t()),e.refiner(n,r))})}function XAe(t){return new Nh({type:\"array\",schema:t,*entries(e){if(t&&Array.isArray(e))for(let[n,r]of e.entries())yield[n,r,t]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||`Expected an array value, but received: ${k1(e)}`})}function eTe(t){let e=k1(t),n=typeof t;return new Nh({type:\"literal\",schema:n===\"string\"||n===\"number\"||n===\"boolean\"?t:null,validator:r=>r===t||`Expected the literal \\\\`${e}\\\\`, but received: ${k1(r)}`})}function tTe(){return m3(\"number\",t=>typeof t==\"number\"&&!isNaN(t)||`Expected a number, but received: ${k1(t)}`)}function nTe(t){let e=t?Object.keys(t):[],n=m3(\"never\",()=>!1);return new Nh({type:\"object\",schema:t||null,*entries(r){if(t&&Zv(r)){let o=new Set(Object.keys(r));for(let i of e)o.delete(i),yield[i,r[i],t[i]];for(let i of o)yield[i,r[i],n]}},validator:r=>Zv(r)||`Expected an object, but received: ${k1(r)}`,coercer:r=>Zv(r)?{...r}:r})}function dCe(t){return new Nh({...t,validator:(e,n)=>e===void 0||t.validator(e,n),refiner:(e,n)=>e===void 0||t.refiner(e,n)})}function rTe(t,e){return new Nh({type:\"record\",schema:null,*entries(n){if(Zv(n))for(let r in n){let o=n[r];yield[r,r,t],yield[r,o,e]}},validator:n=>Zv(n)||`Expected an object, but received: ${k1(n)}`})}function g3(){return m3(\"string\",t=>typeof t==\"string\"||`Expected a string, but received: ${k1(t)}`)}function fq(t){let e=t.map(n=>n.type).join(\" | \");return new Nh({type:\"union\",schema:null,coercer(n){for(let r of t){let[o,i]=r.validate(n,{coerce:!0});if(!o)return i}return n},validator(n,r){let o=[];for(let i of t){let[...a]=Hre(n,i,r),[c]=a;if(!c[0])return[];for(let[u]of a)u&&o.push(u)}return[`Expected the value to satisfy a union of \\\\`${e}\\\\`, but received: ${k1(n)}`,...o]}})}function lit(t){return function(e){return function(n){return typeof n==\"object\"&&n!==null&&\"message\"in n}(e)&&typeof e.message==\"string\"?e.message:e==null?\"\":String(e)}(t).replace(/\\\\.$/u,\"\")}function uit(t,e){return n=t,typeof n?.prototype?.constructor?.name==\"string\"?new t({message:e}):t({message:e});var n}function oTe(){throw new Error(\"setTimeout has not been defined\")}function iTe(){throw new Error(\"clearTimeout has not been defined\")}function sTe(t){if(Jx===setTimeout)return setTimeout(t,0);if((Jx===oTe||!Jx)&&setTimeout)return Jx=setTimeout,setTimeout(t,0);try{return Jx(t,0)}catch{try{return Jx.call(null,t,0)}catch{return Jx.call(this,t,0)}}}function fit(){bA&&_S&&(bA=!1,_S.length?Gv=_S.concat(Gv):mH=-1,Gv.length&&aTe())}function aTe(){if(!bA){var t=sTe(fit);bA=!0;for(var e=Gv.length;e;){for(_S=Gv,Gv=[];++mH<e;)_S&&_S[mH].run();mH=-1,e=Gv.length}_S=null,bA=!1,function(n){if(Xx===clearTimeout)return clearTimeout(n);if((Xx===iTe||!Xx)&&clearTimeout)return Xx=clearTimeout,clearTimeout(n);try{return Xx(n)}catch{try{return Xx.call(null,n)}catch{return Xx.call(this,n)}}}(t)}}function cTe(t,e){this.fun=t,this.array=e}function OS(){}function fCe({path:t,branch:e}){let n=t[t.length-1];return qH(e[e.length-2],n)}function WH(t){return new Nh({...t,type:`optional ${t.type}`,validator:(e,n)=>!fCe(n)||t.validator(e,n),refiner:(e,n)=>!fCe(n)||t.refiner(e,n)})}function rre(t){try{return function(e){JAe(e,DO)}(t),!0}catch{return!1}}function mCe(t){return kA(t,Eit)}function gCe(t){return kA(t,ore)}function uTe(t,e=kit){if(function(n){return Number.isInteger(n)}(t)){let n=t.toString();if(qH(aCe,n))return aCe[n].message;if(function(r){return r>=-32099&&r<=-32e3}(t))return Cit}return e}function bCe(t,{fallbackError:e=_it,shouldIncludeStack:n=!0}={}){if(!gCe(e))throw new Error(\"Must provide fallback error with integer number code and string message.\");let r=function(o,i){if(o&&typeof o==\"object\"&&\"serialize\"in o&&typeof o.serialize==\"function\")return o.serialize();if(gCe(o))return o;let a=dTe(o);return{...i,data:{cause:a}}}(t,e);return n||delete r.stack,r}function dTe(t){return Array.isArray(t)?t.map(e=>rre(e)?e:cCe(e)?vCe(e):null):cCe(t)?vCe(t):rre(t)?t:null}function vCe(t){return Object.getOwnPropertyNames(t).reduce((e,n)=>{let r=t[n];return rre(r)&&(e[n]=r),e},{})}function pTe(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function gO(t,e,n,r){var o;r===void 0&&(r=pTe()),ire(t,\"\",0,[],void 0,0,r);try{o=CS.length===0?JSON.stringify(t,e,n):JSON.stringify(t,mTe(e),n)}catch{return JSON.stringify(\"[unable to serialize, circular reference is too complex to analyze]\")}finally{for(;IS.length!==0;){var i=IS.pop();i.length===4?Object.defineProperty(i[0],i[1],i[3]):i[0][i[1]]=i[2]}}return o}function vA(t,e,n,r){var o=Object.getOwnPropertyDescriptor(r,n);o.get!==void 0?o.configurable?(Object.defineProperty(r,n,{value:t}),IS.push([r,n,e,o])):CS.push([e,n,t]):(r[n]=t,IS.push([r,n,e]))}function ire(t,e,n,r,o,i,a){var c;if(i+=1,typeof t==\"object\"&&t!==null){for(c=0;c<r.length;c++)if(r[c]===t)return void vA(hTe,t,e,o);if(a.depthLimit!==void 0&&i>a.depthLimit||a.edgesLimit!==void 0&&n+1>a.edgesLimit)return void vA($H,t,e,o);if(r.push(t),Array.isArray(t))for(c=0;c<t.length;c++)ire(t[c],c,c,r,t,i,a);else{var u=Object.keys(t);for(c=0;c<u.length;c++){var d=u[c];ire(t[d],d,c,r,t,i,a)}}r.pop()}}function Ait(t,e){return t<e?-1:t>e?1:0}function wCe(t,e,n,r){r===void 0&&(r=pTe());var o,i=sre(t,\"\",0,[],void 0,0,r)||t;try{o=CS.length===0?JSON.stringify(i,e,n):JSON.stringify(i,mTe(e),n)}catch{return JSON.stringify(\"[unable to serialize, circular reference is too complex to analyze]\")}finally{for(;IS.length!==0;){var a=IS.pop();a.length===4?Object.defineProperty(a[0],a[1],a[3]):a[0][a[1]]=a[2]}}return o}function sre(t,e,n,r,o,i,a){var c;if(i+=1,typeof t==\"object\"&&t!==null){for(c=0;c<r.length;c++)if(r[c]===t)return void vA(hTe,t,e,o);try{if(typeof t.toJSON==\"function\")return}catch{return}if(a.depthLimit!==void 0&&i>a.depthLimit||a.edgesLimit!==void 0&&n+1>a.edgesLimit)return void vA($H,t,e,o);if(r.push(t),Array.isArray(t))for(c=0;c<t.length;c++)sre(t[c],c,c,r,t,i,a);else{var u={},d=Object.keys(t).sort(Ait);for(c=0;c<d.length;c++){var h=d[c];sre(t[h],h,c,r,t,i,a),u[h]=t[h]}if(o===void 0)return u;IS.push([o,e,t]),o[e]=u}r.pop()}}function mTe(t){return t=t!==void 0?t:function(e,n){return n},function(e,n){if(CS.length>0)for(var r=0;r<CS.length;r++){var o=CS[r];if(o[1]===e&&o[0]===n){n=o[2],CS.splice(r,1);break}}return t.call(this,e,n)}}function Rit(t,e){if(e!==\"[Circular]\")return e}function Iit(t,e){let[n,r]=function(o){if(o){if(typeof o==\"string\")return[o];if(typeof o==\"object\"&&!Array.isArray(o)){let{message:i,data:a}=o;if(i&&typeof i!=\"string\")throw new Error(\"Must specify string message.\");return[i??void 0,a]}}return[]}(e);return new Hv(t,n??uTe(t),r)}function e3(){}function Wo(){Wo.init.call(this)}function yTe(t){return t._maxListeners===void 0?Wo.defaultMaxListeners:t._maxListeners}function xCe(t,e,n,r){var o,i,a;if(typeof n!=\"function\")throw new TypeError(\\'\"listener\" argument must be a function\\');if((i=t._events)?(i.newListener&&(t.emit(\"newListener\",e,n.listener?n.listener:n),i=t._events),a=i[e]):(i=t._events=new e3,t._eventsCount=0),a){if(typeof a==\"function\"?a=i[e]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),!a.warned&&(o=yTe(t))&&o>0&&a.length>o){a.warned=!0;var c=new Error(\"Possible EventEmitter memory leak detected. \"+a.length+\" \"+e+\" listeners added. Use emitter.setMaxListeners() to increase limit\");c.name=\"MaxListenersExceededWarning\",c.emitter=t,c.type=e,c.count=a.length,function(u){typeof console.warn==\"function\"?console.warn(u):console.log(u)}(c)}}else a=i[e]=n,++t._eventsCount;return t}function ECe(t,e,n){var r=!1;function o(){t.removeListener(e,o),r||(r=!0,n.apply(t,arguments))}return o.listener=n,o}function SCe(t){var e=this._events;if(e){var n=e[t];if(typeof n==\"function\")return 1;if(n)return n.length}return 0}function hO(t,e){for(var n=new Array(e);e--;)n[e]=t[e];return n}function kCe(t,e,n){try{Reflect.apply(t,e,n)}catch(r){setTimeout(()=>{throw r})}}function wne(t){return JSON.stringify(t,null,2)}function Lit(t){return(e,n,r)=>{typeof e.method==\"string\"&&e.method||(n.error=EO({message:\"The request \\'method\\' must be a non-empty string.\",data:e})),r(o=>{let{error:i}=n;return i&&t.error(`MetaMask - RPC Error: ${i.message}`,i),o()})}}async function TCe(t,e){try{let n=await async function(){return{name:Bit(window),icon:await Dit(window)}}();t.handle({jsonrpc:\"2.0\",id:1,method:\"metamask_sendDomainMetadata\",params:n},xTe)}catch(n){e.error({message:Vs.errors.sendSiteMetadata(),originalError:n})}}function Bit(t){let{document:e}=t,n=e.querySelector(\\'head > meta[property=\"og:site_name\"]\\');if(n)return n.content;let r=e.querySelector(\\'head > meta[name=\"title\"]\\');return r?r.content:e.title&&e.title.length>0?e.title:window.location.hostname}async function Dit(t){let{document:e}=t,n=e.querySelectorAll(\\'head > link[rel~=\"icon\"]\\');for(let r of Array.from(n))if(r&&await Fit(r.href))return r.href;return null}async function Fit(t){return new Promise((e,n)=>{try{let r=document.createElement(\"img\");r.onload=()=>e(!0),r.onerror=()=>e(!1),r.src=t}catch(r){n(r)}})}function RCe(t,e,n){try{Reflect.apply(t,e,n)}catch(r){setTimeout(()=>{throw r})}}function _Te(){return OCe?ICe:(OCe=1,ICe=qre.EventEmitter)}function hq(t){if(!FO(t)){for(var e=[],n=0;n<arguments.length;n++)e.push(S1(arguments[n]));return e.join(\" \")}n=1;for(var r=arguments,o=r.length,i=String(t).replace(Hit,function(c){if(c===\"%%\")return\"%\";if(n>=o)return c;switch(c){case\"%s\":return String(r[n++]);case\"%d\":return Number(r[n++]);case\"%j\":try{return JSON.stringify(r[n++])}catch{return\"[Circular]\"}default:return c}}),a=r[n];n<o;a=r[++n])VO(a)||!PS(a)?i+=\" \"+a:i+=\" \"+S1(a);return i}function $re(t,e){if(x1(Id.process))return function(){return $re(t,e).apply(this,arguments)};if(co.noDeprecation===!0)return t;var n=!1;return function(){if(!n){if(co.throwDeprecation)throw new Error(e);co.traceDeprecation?console.trace(e):console.error(e),n=!0}return t.apply(this,arguments)}}function ATe(t){return x1(xne)&&(xne=co.env.NODE_DEBUG||\"\"),t=t.toUpperCase(),!aH[t]&&(new RegExp(\"\\\\\\\\b\"+t+\"\\\\\\\\b\",\"i\").test(xne)?aH[t]=function(){var e=hq.apply(null,arguments);console.error(\"%s %d: %s\",t,0,e)}:aH[t]=function(){}),aH[t]}function S1(t,e){var n={seen:[],stylize:Wit};return arguments.length>=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),pq(e)?n.showHidden=e:e&&Yre(n,e),x1(n.showHidden)&&(n.showHidden=!1),x1(n.depth)&&(n.depth=2),x1(n.colors)&&(n.colors=!1),x1(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=qit),ZH(n,t,n.depth)}function qit(t,e){var n=S1.styles[e];return n?\"\\\\x1B[\"+S1.colors[n][0]+\"m\"+t+\"\\\\x1B[\"+S1.colors[n][1]+\"m\":t}function Wit(t,e){return t}function ZH(t,e,n){if(t.customInspect&&e&&CO(e.inspect)&&e.inspect!==S1&&(!e.constructor||e.constructor.prototype!==e)){var r=e.inspect(n,t);return FO(r)||(r=ZH(t,r,n)),r}var o=function(g,b){if(x1(b))return g.stylize(\"undefined\",\"undefined\");if(FO(b)){var E=\"\\'\"+JSON.stringify(b).replace(/^\"|\"$/g,\"\").replace(/\\'/g,\"\\\\\\\\\\'\").replace(/\\\\\\\\\"/g,\\'\"\\')+\"\\'\";return g.stylize(E,\"string\")}if(Gre(b))return g.stylize(\"\"+b,\"number\");if(pq(b))return g.stylize(\"\"+b,\"boolean\");if(VO(b))return g.stylize(\"null\",\"null\")}(t,e);if(o)return o;var i=Object.keys(e),a=function(g){var b={};return g.forEach(function(E,C){b[E]=!0}),b}(i);if(t.showHidden&&(i=Object.getOwnPropertyNames(e)),_O(e)&&(i.indexOf(\"message\")>=0||i.indexOf(\"description\")>=0))return Ene(e);if(i.length===0){if(CO(e)){var c=e.name?\": \"+e.name:\"\";return t.stylize(\"[Function\"+c+\"]\",\"special\")}if(kO(e))return t.stylize(RegExp.prototype.toString.call(e),\"regexp\");if(YH(e))return t.stylize(Date.prototype.toString.call(e),\"date\");if(_O(e))return Ene(e)}var u,d=\"\",h=!1,m=[\"{\",\"}\"];return Kre(e)&&(h=!0,m=[\"[\",\"]\"]),CO(e)&&(d=\" [Function\"+(e.name?\": \"+e.name:\"\")+\"]\"),kO(e)&&(d=\" \"+RegExp.prototype.toString.call(e)),YH(e)&&(d=\" \"+Date.prototype.toUTCString.call(e)),_O(e)&&(d=\" \"+Ene(e)),i.length!==0||h&&e.length!=0?n<0?kO(e)?t.stylize(RegExp.prototype.toString.call(e),\"regexp\"):t.stylize(\"[Object]\",\"special\"):(t.seen.push(e),u=h?function(g,b,E,C,T){for(var R=[],L=0,D=b.length;L<D;++L)MTe(b,String(L))?R.push(Sne(g,b,E,C,String(L),!0)):R.push(\"\");return T.forEach(function(G){G.match(/^\\\\d+$/)||R.push(Sne(g,b,E,C,G,!0))}),R}(t,e,n,a,i):i.map(function(g){return Sne(t,e,n,a,g,h)}),t.seen.pop(),function(g,b,E){var C=g.reduce(function(T,R){return R.indexOf(`\\n`),T+R.replace(/\\\\u001b\\\\[\\\\d\\\\d?m/g,\"\").length+1},0);return C>60?E[0]+(b===\"\"?\"\":b+`\\n `)+\" \"+g.join(`,\\n  `)+\" \"+E[1]:E[0]+b+\" \"+g.join(\", \")+\" \"+E[1]}(u,d,m)):m[0]+d+m[1]}function Ene(t){return\"[\"+Error.prototype.toString.call(t)+\"]\"}function Sne(t,e,n,r,o,i){var a,c,u;if((u=Object.getOwnPropertyDescriptor(e,o)||{value:e[o]}).get?c=u.set?t.stylize(\"[Getter/Setter]\",\"special\"):t.stylize(\"[Getter]\",\"special\"):u.set&&(c=t.stylize(\"[Setter]\",\"special\")),MTe(r,o)||(a=\"[\"+o+\"]\"),c||(t.seen.indexOf(u.value)<0?(c=VO(n)?ZH(t,u.value,null):ZH(t,u.value,n-1)).indexOf(`\\n`)>-1&&(c=i?c.split(`\\n`).map(function(d){return\"  \"+d}).join(`\\n`).substr(2):`\\n`+c.split(`\\n`).map(function(d){return\"   \"+d}).join(`\\n`)):c=t.stylize(\"[Circular]\",\"special\")),x1(a)){if(i&&o.match(/^\\\\d+$/))return c;(a=JSON.stringify(\"\"+o)).match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,\"name\")):(a=a.replace(/\\'/g,\"\\\\\\\\\\'\").replace(/\\\\\\\\\"/g,\\'\"\\').replace(/(^\"|\"$)/g,\"\\'\"),a=t.stylize(a,\"string\"))}return a+\": \"+c}function Kre(t){return Array.isArray(t)}function pq(t){return typeof t==\"boolean\"}function VO(t){return t===null}function TTe(t){return t==null}function Gre(t){return typeof t==\"number\"}function FO(t){return typeof t==\"string\"}function RTe(t){return typeof t==\"symbol\"}function x1(t){return t===void 0}function kO(t){return PS(t)&&Zre(t)===\"[object RegExp]\"}function PS(t){return typeof t==\"object\"&&t!==null}function YH(t){return PS(t)&&Zre(t)===\"[object Date]\"}function _O(t){return PS(t)&&(Zre(t)===\"[object Error]\"||t instanceof Error)}function CO(t){return typeof t==\"function\"}function ITe(t){return t===null||typeof t==\"boolean\"||typeof t==\"number\"||typeof t==\"string\"||typeof t==\"symbol\"||t===void 0}function OTe(t){return at.isBuffer(t)}function Zre(t){return Object.prototype.toString.call(t)}function kne(t){return t<10?\"0\"+t.toString(10):t.toString(10)}function PTe(){console.log(\"%s - %s\",function(){var t=new Date,e=[kne(t.getHours()),kne(t.getMinutes()),kne(t.getSeconds())].join(\":\");return[t.getDate(),Vit[t.getMonth()],e].join(\" \")}(),hq.apply(null,arguments))}function Yre(t,e){if(!e||!PS(e))return t;for(var n=Object.keys(e),r=n.length;r--;)t[n[r]]=e[n[r]];return t}function MTe(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function Qre(t){if(typeof t!=\"function\")throw new TypeError(\\'The \"original\" argument must be of type Function\\');if(ES&&t[ES]){var e;if(typeof(e=t[ES])!=\"function\")throw new TypeError(\\'The \"util.promisify.custom\" argument must be of type Function\\');return Object.defineProperty(e,ES,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var n,r,o=new Promise(function(c,u){n=c,r=u}),i=[],a=0;a<arguments.length;a++)i.push(arguments[a]);i.push(function(c,u){c?r(c):n(u)});try{t.apply(this,i)}catch(c){r(c)}return o}return Object.setPrototypeOf(e,Object.getPrototypeOf(t)),ES&&Object.defineProperty(e,ES,{value:e,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(e,CTe(t))}function $it(t,e){if(!t){var n=new Error(\"Promise was rejected with a falsy value\");n.reason=t,t=n}return e(t)}function NTe(t){if(typeof t!=\"function\")throw new TypeError(\\'The \"original\" argument must be of type Function\\');function e(){for(var n=[],r=0;r<arguments.length;r++)n.push(arguments[r]);var o=n.pop();if(typeof o!=\"function\")throw new TypeError(\"The last argument must be of type Function\");var i=this,a=function(){return o.apply(i,arguments)};t.apply(this,n).then(function(c){co.nextTick(a.bind(null,null,c))},function(c){co.nextTick($it.bind(null,c,a))})}return Object.setPrototypeOf(e,Object.getPrototypeOf(t)),Object.defineProperties(e,CTe(t)),e}function Git(){if(PCe)return _ne;function t(u,d){var h=Object.keys(u);if(Object.getOwnPropertySymbols){var m=Object.getOwnPropertySymbols(u);d&&(m=m.filter(function(g){return Object.getOwnPropertyDescriptor(u,g).enumerable})),h.push.apply(h,m)}return h}function e(u){for(var d=1;d<arguments.length;d++){var h=arguments[d]!=null?arguments[d]:{};d%2?t(Object(h),!0).forEach(function(m){n(u,m,h[m])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(h)):t(Object(h)).forEach(function(m){Object.defineProperty(u,m,Object.getOwnPropertyDescriptor(h,m))})}return u}function n(u,d,h){return(d=o(d))in u?Object.defineProperty(u,d,{value:h,enumerable:!0,configurable:!0,writable:!0}):u[d]=h,u}function r(u,d,h){return d&&function(m,g){for(var b=0;b<g.length;b++){var E=g[b];E.enumerable=E.enumerable||!1,E.configurable=!0,\"value\"in E&&(E.writable=!0),Object.defineProperty(m,o(E.key),E)}}(u.prototype,d),Object.defineProperty(u,\"prototype\",{writable:!1}),u}function o(u){var d=function(h,m){if(typeof h!=\"object\"||h===null)return h;var g=h[Symbol.toPrimitive];if(g!==void 0){var b=g.call(h,m||\"default\");if(typeof b!=\"object\")return b;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(m===\"string\"?String:Number)(h)}(u,\"string\");return typeof d==\"symbol\"?d:String(d)}PCe=1;var i=Vre.Buffer,a=LTe.inspect,c=a&&a.custom||\"inspect\";return _ne=function(){function u(){(function(d,h){if(!(d instanceof h))throw new TypeError(\"Cannot call a class as a function\")})(this,u),this.head=null,this.tail=null,this.length=0}return r(u,[{key:\"push\",value:function(d){var h={data:d,next:null};this.length>0?this.tail.next=h:this.head=h,this.tail=h,++this.length}},{key:\"unshift\",value:function(d){var h={data:d,next:this.head};this.length===0&&(this.tail=h),this.head=h,++this.length}},{key:\"shift\",value:function(){if(this.length!==0){var d=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,d}}},{key:\"clear\",value:function(){this.head=this.tail=null,this.length=0}},{key:\"join\",value:function(d){if(this.length===0)return\"\";for(var h=this.head,m=\"\"+h.data;h=h.next;)m+=d+h.data;return m}},{key:\"concat\",value:function(d){if(this.length===0)return i.alloc(0);for(var h,m,g,b=i.allocUnsafe(d>>>0),E=this.head,C=0;E;)h=E.data,m=b,g=C,i.prototype.copy.call(h,m,g),C+=E.data.length,E=E.next;return b}},{key:\"consume\",value:function(d,h){var m;return d<this.head.data.length?(m=this.head.data.slice(0,d),this.head.data=this.head.data.slice(d)):m=d===this.head.data.length?this.shift():h?this._getString(d):this._getBuffer(d),m}},{key:\"first\",value:function(){return this.head.data}},{key:\"_getString\",value:function(d){var h=this.head,m=1,g=h.data;for(d-=g.length;h=h.next;){var b=h.data,E=d>b.length?b.length:d;if(E===b.length?g+=b:g+=b.slice(0,d),(d-=E)===0){E===b.length?(++m,h.next?this.head=h.next:this.head=this.tail=null):(this.head=h,h.data=b.slice(E));break}++m}return this.length-=m,g}},{key:\"_getBuffer\",value:function(d){var h=i.allocUnsafe(d),m=this.head,g=1;for(m.data.copy(h),d-=m.data.length;m=m.next;){var b=m.data,E=d>b.length?b.length:d;if(b.copy(h,h.length-d,0,E),(d-=E)===0){E===b.length?(++g,m.next?this.head=m.next:this.head=this.tail=null):(this.head=m,m.data=b.slice(E));break}++g}return this.length-=g,h}},{key:c,value:function(d,h){return a(this,e(e({},h),{},{depth:0,customInspect:!1}))}}]),u}(),_ne}function BTe(){if(MCe)return Cne;function t(r,o){n(r,o),e(r)}function e(r){r._writableState&&!r._writableState.emitClose||r._readableState&&!r._readableState.emitClose||r.emit(\"close\")}function n(r,o){r.emit(\"error\",o)}return MCe=1,Cne={destroy:function(r,o){var i=this,a=this._readableState&&this._readableState.destroyed,c=this._writableState&&this._writableState.destroyed;return a||c?(o?o(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,co.nextTick(n,this,r)):co.nextTick(n,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,function(u){!o&&u?i._writableState?i._writableState.errorEmitted?co.nextTick(e,i):(i._writableState.errorEmitted=!0,co.nextTick(t,i,u)):co.nextTick(t,i,u):o?(co.nextTick(e,i),o(u)):co.nextTick(e,i)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(r,o){var i=r._readableState,a=r._writableState;i&&i.autoDestroy||a&&a.autoDestroy?r.destroy(o):r.emit(\"error\",o)}},Cne}function bm(t,e,n){n||(n=Error);var r=function(o){var i,a;function c(u,d,h){return o.call(this,function(m,g,b){return typeof e==\"string\"?e:e(m,g,b)}(u,d,h))||this}return a=o,(i=c).prototype=Object.create(a.prototype),i.prototype.constructor=i,i.__proto__=a,c}(n);r.prototype.name=n.name,r.prototype.code=t,DTe[t]=r}function BCe(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map(function(r){return String(r)}),n>2?\"one of \".concat(e,\" \").concat(t.slice(0,n-1).join(\", \"),\", or \")+t[n-1]:n===2?\"one of \".concat(e,\" \").concat(t[0],\" or \").concat(t[1]):\"of \".concat(e,\" \").concat(t[0])}return\"of \".concat(e,\" \").concat(String(t))}function FTe(){if(LCe)return NCe;LCe=1;var t=MS.codes.ERR_INVALID_OPT_VALUE;return NCe={getHighWaterMark:function(e,n,r,o){var i=function(a,c,u){return a.highWaterMark!=null?a.highWaterMark:c?a[u]:null}(n,o,r);if(i!=null){if(!isFinite(i)||Math.floor(i)!==i||i<0)throw new t(o?r:\"highWaterMark\",i);return Math.floor(i)}return e.objectMode?16:16384}}}function Yit(){if(DCe)return Ane;function t(e){try{if(!_m.localStorage)return!1}catch{return!1}var n=_m.localStorage[e];return n!=null&&String(n).toLowerCase()===\"true\"}return DCe=1,Ane=function(e,n){if(t(\"noDeprecation\"))return e;var r=!1;return function(){if(!r){if(t(\"throwDeprecation\"))throw new Error(n);t(\"traceDeprecation\")?console.trace(n):console.warn(n),r=!0}return e.apply(this,arguments)}},Ane}function UTe(){if(FCe)return Tne;function t($){var F=this;this.next=null,this.entry=null,this.finish=function(){(function(_,O,z){var N=_.entry;for(_.entry=null;N;){var B=N.callback;O.pendingcb--,B(z),N=N.next}O.corkedRequestsFree.next=_})(F,$)}}var e;FCe=1,Tne=W,W.WritableState=G;var n={deprecate:Yit()},r=_Te(),o=Vre.Buffer,i=(_m!==void 0?_m:typeof window<\"u\"?window:typeof self<\"u\"?self:{}).Uint8Array||function(){},a,c=BTe(),u=FTe().getHighWaterMark,d=MS.codes,h=d.ERR_INVALID_ARG_TYPE,m=d.ERR_METHOD_NOT_IMPLEMENTED,g=d.ERR_MULTIPLE_CALLBACK,b=d.ERR_STREAM_CANNOT_PIPE,E=d.ERR_STREAM_DESTROYED,C=d.ERR_STREAM_NULL_VALUES,T=d.ERR_STREAM_WRITE_AFTER_END,R=d.ERR_UNKNOWN_ENCODING,L=c.errorOrDestroy;function D(){}function G($,F,_){e=e||xA(),$=$||{},typeof _!=\"boolean\"&&(_=F instanceof e),this.objectMode=!!$.objectMode,_&&(this.objectMode=this.objectMode||!!$.writableObjectMode),this.highWaterMark=u(this,$,\"writableHighWaterMark\",_),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var O=$.decodeStrings===!1;this.decodeStrings=!O,this.defaultEncoding=$.defaultEncoding||\"utf8\",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(z){(function(N,B){var j=N._writableState,q=j.sync,H=j.writecb;if(typeof H!=\"function\")throw new g;if(function(U){U.writing=!1,U.writecb=null,U.length-=U.writelen,U.writelen=0}(j),B)(function(U,X,ee,se,pe){--X.pendingcb,ee?(co.nextTick(pe,se),co.nextTick(V,U,X),U._writableState.errorEmitted=!0,L(U,se)):(pe(se),U._writableState.errorEmitted=!0,L(U,se),V(U,X))})(N,j,q,B,H);else{var I=Z(j)||N.destroyed;I||j.corked||j.bufferProcessing||!j.bufferedRequest||ie(N,j),q?co.nextTick(ne,N,j,I,H):ne(N,j,I,H)}})(F,z)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=$.emitClose!==!1,this.autoDestroy=!!$.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new t(this)}function W($){var F=this instanceof(e=e||xA());if(!F&&!a.call(W,this))return new W($);this._writableState=new G($,this,F),this.writable=!0,$&&(typeof $.write==\"function\"&&(this._write=$.write),typeof $.writev==\"function\"&&(this._writev=$.writev),typeof $.destroy==\"function\"&&(this._destroy=$.destroy),typeof $.final==\"function\"&&(this._final=$.final)),r.call(this)}function J($,F,_,O,z,N,B){F.writelen=O,F.writecb=B,F.writing=!0,F.sync=!0,F.destroyed?F.onwrite(new E(\"write\")):_?$._writev(z,F.onwrite):$._write(z,N,F.onwrite),F.sync=!1}function ne($,F,_,O){_||function(z,N){N.length===0&&N.needDrain&&(N.needDrain=!1,z.emit(\"drain\"))}($,F),F.pendingcb--,O(),V($,F)}function ie($,F){F.bufferProcessing=!0;var _=F.bufferedRequest;if($._writev&&_&&_.next){var O=F.bufferedRequestCount,z=new Array(O),N=F.corkedRequestsFree;N.entry=_;for(var B=0,j=!0;_;)z[B]=_,_.isBuf||(j=!1),_=_.next,B+=1;z.allBuffers=j,J($,F,!0,F.length,z,\"\",N.finish),F.pendingcb++,F.lastBufferedRequest=null,N.next?(F.corkedRequestsFree=N.next,N.next=null):F.corkedRequestsFree=new t(F),F.bufferedRequestCount=0}else{for(;_;){var q=_.chunk,H=_.encoding,I=_.callback;if(J($,F,!1,F.objectMode?1:q.length,q,H,I),_=_.next,F.bufferedRequestCount--,F.writing)break}_===null&&(F.lastBufferedRequest=null)}F.bufferedRequest=_,F.bufferProcessing=!1}function Z($){return $.ending&&$.length===0&&$.bufferedRequest===null&&!$.finished&&!$.writing}function ae($,F){$._final(function(_){F.pendingcb--,_&&L($,_),F.prefinished=!0,$.emit(\"prefinish\"),V($,F)})}function V($,F){var _=Z(F);if(_&&(function(z,N){N.prefinished||N.finalCalled||(typeof z._final!=\"function\"||N.destroyed?(N.prefinished=!0,z.emit(\"prefinish\")):(N.pendingcb++,N.finalCalled=!0,co.nextTick(ae,z,N)))}($,F),F.pendingcb===0&&(F.finished=!0,$.emit(\"finish\"),F.autoDestroy))){var O=$._readableState;(!O||O.autoDestroy&&O.endEmitted)&&$.destroy()}return _}return $O(W,r),G.prototype.getBuffer=function(){for(var $=this.bufferedRequest,F=[];$;)F.push($),$=$.next;return F},function(){try{Object.defineProperty(G.prototype,\"buffer\",{get:n.deprecate(function(){return this.getBuffer()},\"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.\",\"DEP0003\")})}catch{}}(),typeof Symbol==\"function\"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]==\"function\"?(a=Function.prototype[Symbol.hasInstance],Object.defineProperty(W,Symbol.hasInstance,{value:function($){return!!a.call(this,$)||this===W&&$&&$._writableState instanceof G}})):a=function($){return $ instanceof this},W.prototype.pipe=function(){L(this,new b)},W.prototype.write=function($,F,_){var O,z=this._writableState,N=!1,B=!z.objectMode&&(O=$,o.isBuffer(O)||O instanceof i);return B&&!o.isBuffer($)&&($=function(j){return o.from(j)}($)),typeof F==\"function\"&&(_=F,F=null),B?F=\"buffer\":F||(F=z.defaultEncoding),typeof _!=\"function\"&&(_=D),z.ending?function(j,q){var H=new T;L(j,H),co.nextTick(q,H)}(this,_):(B||function(j,q,H,I){var U;return H===null?U=new C:typeof H==\"string\"||q.objectMode||(U=new h(\"chunk\",[\"string\",\"Buffer\"],H)),!U||(L(j,U),co.nextTick(I,U),!1)}(this,z,$,_))&&(z.pendingcb++,N=function(j,q,H,I,U,X){if(!H){var ee=function(xe,_e,Me){return xe.objectMode||xe.decodeStrings===!1||typeof _e!=\"string\"||(_e=o.from(_e,Me)),_e}(q,I,U);I!==ee&&(H=!0,U=\"buffer\",I=ee)}var se=q.objectMode?1:I.length;q.length+=se;var pe=q.length<q.highWaterMark;if(pe||(q.needDrain=!0),q.writing||q.corked){var ye=q.lastBufferedRequest;q.lastBufferedRequest={chunk:I,encoding:U,isBuf:H,callback:X,next:null},ye?ye.next=q.lastBufferedRequest:q.bufferedRequest=q.lastBufferedRequest,q.bufferedRequestCount+=1}else J(j,q,!1,se,I,U,X);return pe}(this,z,B,$,F,_)),N},W.prototype.cork=function(){this._writableState.corked++},W.prototype.uncork=function(){var $=this._writableState;$.corked&&($.corked--,$.writing||$.corked||$.bufferProcessing||!$.bufferedRequest||ie(this,$))},W.prototype.setDefaultEncoding=function($){if(typeof $==\"string\"&&($=$.toLowerCase()),!([\"hex\",\"utf8\",\"utf-8\",\"ascii\",\"binary\",\"base64\",\"ucs2\",\"ucs-2\",\"utf16le\",\"utf-16le\",\"raw\"].indexOf(($+\"\").toLowerCase())>-1))throw new R($);return this._writableState.defaultEncoding=$,this},Object.defineProperty(W.prototype,\"writableBuffer\",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(W.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),W.prototype._write=function($,F,_){_(new m(\"_write()\"))},W.prototype._writev=null,W.prototype.end=function($,F,_){var O=this._writableState;return typeof $==\"function\"?(_=$,$=null,F=null):typeof F==\"function\"&&(_=F,F=null),$!=null&&this.write($,F),O.corked&&(O.corked=1,this.uncork()),O.ending||function(z,N,B){N.ending=!0,V(z,N),B&&(N.finished?co.nextTick(B):z.once(\"finish\",B)),N.ended=!0,z.writable=!1}(this,O,_),this},Object.defineProperty(W.prototype,\"writableLength\",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(W.prototype,\"destroyed\",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function($){this._writableState&&(this._writableState.destroyed=$)}}),W.prototype.destroy=c.destroy,W.prototype._undestroy=c.undestroy,W.prototype._destroy=function($,F){F($)},Tne}function xA(){if(UCe)return Rne;UCe=1;var t=Object.keys||function(d){var h=[];for(var m in d)h.push(m);return h};Rne=a;var e=jTe(),n=UTe();$O(a,e);for(var r=t(n.prototype),o=0;o<r.length;o++){var i=r[o];a.prototype[i]||(a.prototype[i]=n.prototype[i])}function a(d){if(!(this instanceof a))return new a(d);e.call(this,d),n.call(this,d),this.allowHalfOpen=!0,d&&(d.readable===!1&&(this.readable=!1),d.writable===!1&&(this.writable=!1),d.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once(\"end\",c)))}function c(){this._writableState.ended||co.nextTick(u,this)}function u(d){d.end()}return Object.defineProperty(a.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(a.prototype,\"writableBuffer\",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(a.prototype,\"writableLength\",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(a.prototype,\"destroyed\",{enumerable:!1,get:function(){return this._readableState!==void 0&&this._writableState!==void 0&&this._readableState.destroyed&&this._writableState.destroyed},set:function(d){this._readableState!==void 0&&this._writableState!==void 0&&(this._readableState.destroyed=d,this._writableState.destroyed=d)}}),Rne}function SH(t){switch(this.encoding=(t||\"utf8\").toLowerCase().replace(/[-_]/,\"\"),function(e){if(e&&!Qit(e))throw new Error(\"Unknown encoding: \"+e)}(t),this.encoding){case\"utf8\":this.surrogateSize=3;break;case\"ucs2\":case\"utf16le\":this.surrogateSize=2,this.detectIncompleteChar=Xit;break;case\"base64\":this.surrogateSize=3,this.detectIncompleteChar=est;break;default:return void(this.write=Jit)}this.charBuffer=new at(6),this.charReceived=0,this.charLength=0}function Jit(t){return t.toString(this.encoding)}function Xit(t){this.charReceived=t.length%2,this.charLength=this.charReceived?2:0}function est(t){this.charReceived=t.length%3,this.charLength=this.charReceived?3:0}function tst(){}function nst(){if(HCe)return Ine;var t;function e(C,T,R){return(T=function(L){var D=function(G,W){if(typeof G!=\"object\"||G===null)return G;var J=G[Symbol.toPrimitive];if(J!==void 0){var ne=J.call(G,W||\"default\");if(typeof ne!=\"object\")return ne;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(W===\"string\"?String:Number)(G)}(L,\"string\");return typeof D==\"symbol\"?D:String(D)}(T))in C?Object.defineProperty(C,T,{value:R,enumerable:!0,configurable:!0,writable:!0}):C[T]=R,C}HCe=1;var n=Jre,r=Symbol(\"lastResolve\"),o=Symbol(\"lastReject\"),i=Symbol(\"error\"),a=Symbol(\"ended\"),c=Symbol(\"lastPromise\"),u=Symbol(\"handlePromise\"),d=Symbol(\"stream\");function h(C,T){return{value:C,done:T}}function m(C){var T=C[r];if(T!==null){var R=C[d].read();R!==null&&(C[c]=null,C[r]=null,C[o]=null,T(h(R,!1)))}}function g(C){co.nextTick(m,C)}var b=Object.getPrototypeOf(function(){}),E=Object.setPrototypeOf((e(t={get stream(){return this[d]},next:function(){var C=this,T=this[i];if(T!==null)return Promise.reject(T);if(this[a])return Promise.resolve(h(void 0,!0));if(this[d].destroyed)return new Promise(function(G,W){co.nextTick(function(){C[i]?W(C[i]):G(h(void 0,!0))})});var R,L=this[c];if(L)R=new Promise(function(G,W){return function(J,ne){G.then(function(){W[a]?J(h(void 0,!0)):W[u](J,ne)},ne)}}(L,this));else{var D=this[d].read();if(D!==null)return Promise.resolve(h(D,!1));R=new Promise(this[u])}return this[c]=R,R}},Symbol.asyncIterator,function(){return this}),e(t,\"return\",function(){var C=this;return new Promise(function(T,R){C[d].destroy(null,function(L){L?R(L):T(h(void 0,!0))})})}),t),b);return Ine=function(C){var T,R=Object.create(E,(e(T={},d,{value:C,writable:!0}),e(T,r,{value:null,writable:!0}),e(T,o,{value:null,writable:!0}),e(T,i,{value:null,writable:!0}),e(T,a,{value:C._readableState.endEmitted,writable:!0}),e(T,u,{value:function(L,D){var G=R[d].read();G?(R[c]=null,R[r]=null,R[o]=null,L(h(G,!1))):(R[r]=L,R[o]=D)},writable:!0}),T));return R[c]=null,n(C,function(L){if(L&&L.code!==\"ERR_STREAM_PREMATURE_CLOSE\"){var D=R[o];return D!==null&&(R[c]=null,R[r]=null,R[o]=null,D(L)),void(R[i]=L)}var G=R[r];G!==null&&(R[c]=null,R[r]=null,R[o]=null,G(h(void 0,!0))),R[a]=!0}),C.on(\"readable\",g.bind(null,R)),R},Ine}function jTe(){if(VCe)return One;var t;VCe=1,One=W,W.ReadableState=G,qre.EventEmitter;var e=function(I,U){return I.listeners(U).length},n=_Te(),r=Vre.Buffer,o=(_m!==void 0?_m:typeof window<\"u\"?window:typeof self<\"u\"?self:{}).Uint8Array||function(){},i,a=LTe;i=a&&a.debuglog?a.debuglog(\"stream\"):function(){};var c,u,d,h=Git(),m=BTe(),g=FTe().getHighWaterMark,b=MS.codes,E=b.ERR_INVALID_ARG_TYPE,C=b.ERR_STREAM_PUSH_AFTER_EOF,T=b.ERR_METHOD_NOT_IMPLEMENTED,R=b.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;$O(W,n);var L=m.errorOrDestroy,D=[\"error\",\"close\",\"destroy\",\"pause\",\"resume\"];function G(I,U,X){t=t||xA(),I=I||{},typeof X!=\"boolean\"&&(X=U instanceof t),this.objectMode=!!I.objectMode,X&&(this.objectMode=this.objectMode||!!I.readableObjectMode),this.highWaterMark=g(this,I,\"readableHighWaterMark\",X),this.buffer=new h,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=I.emitClose!==!1,this.autoDestroy=!!I.autoDestroy,this.destroyed=!1,this.defaultEncoding=I.defaultEncoding||\"utf8\",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,I.encoding&&(c||(c=jCe.StringDecoder),this.decoder=new c(I.encoding),this.encoding=I.encoding)}function W(I){if(t=t||xA(),!(this instanceof W))return new W(I);var U=this instanceof t;this._readableState=new G(I,this,U),this.readable=!0,I&&(typeof I.read==\"function\"&&(this._read=I.read),typeof I.destroy==\"function\"&&(this._destroy=I.destroy)),n.call(this)}function J(I,U,X,ee,se){i(\"readableAddChunk\",U);var pe,ye=I._readableState;if(U===null)ye.reading=!1,function(xe,_e){if(i(\"onEofChunk\"),!_e.ended){if(_e.decoder){var Me=_e.decoder.end();Me&&Me.length&&(_e.buffer.push(Me),_e.length+=_e.objectMode?1:Me.length)}_e.ended=!0,_e.sync?ae(xe):(_e.needReadable=!1,_e.emittedReadable||(_e.emittedReadable=!0,V(xe)))}}(I,ye);else if(se||(pe=function(xe,_e){var Me;qe=_e,r.isBuffer(qe)||qe instanceof o||typeof _e==\"string\"||_e===void 0||xe.objectMode||(Me=new E(\"chunk\",[\"string\",\"Buffer\",\"Uint8Array\"],_e));var qe;return Me}(ye,U)),pe)L(I,pe);else if(ye.objectMode||U&&U.length>0)if(typeof U==\"string\"||ye.objectMode||Object.getPrototypeOf(U)===r.prototype||(U=function(xe){return r.from(xe)}(U)),ee)ye.endEmitted?L(I,new R):ne(I,ye,U,!0);else if(ye.ended)L(I,new C);else{if(ye.destroyed)return!1;ye.reading=!1,ye.decoder&&!X?(U=ye.decoder.write(U),ye.objectMode||U.length!==0?ne(I,ye,U,!1):$(I,ye)):ne(I,ye,U,!1)}else ee||(ye.reading=!1,$(I,ye));return!ye.ended&&(ye.length<ye.highWaterMark||ye.length===0)}function ne(I,U,X,ee){U.flowing&&U.length===0&&!U.sync?(U.awaitDrain=0,I.emit(\"data\",X)):(U.length+=U.objectMode?1:X.length,ee?U.buffer.unshift(X):U.buffer.push(X),U.needReadable&&ae(I)),$(I,U)}Object.defineProperty(W.prototype,\"destroyed\",{enumerable:!1,get:function(){return this._readableState!==void 0&&this._readableState.destroyed},set:function(I){this._readableState&&(this._readableState.destroyed=I)}}),W.prototype.destroy=m.destroy,W.prototype._undestroy=m.undestroy,W.prototype._destroy=function(I,U){U(I)},W.prototype.push=function(I,U){var X,ee=this._readableState;return ee.objectMode?X=!0:typeof I==\"string\"&&((U=U||ee.defaultEncoding)!==ee.encoding&&(I=r.from(I,U),U=\"\"),X=!0),J(this,I,U,!1,X)},W.prototype.unshift=function(I){return J(this,I,null,!0,!1)},W.prototype.isPaused=function(){return this._readableState.flowing===!1},W.prototype.setEncoding=function(I){c||(c=jCe.StringDecoder);var U=new c(I);this._readableState.decoder=U,this._readableState.encoding=this._readableState.decoder.encoding;for(var X=this._readableState.buffer.head,ee=\"\";X!==null;)ee+=U.write(X.data),X=X.next;return this._readableState.buffer.clear(),ee!==\"\"&&this._readableState.buffer.push(ee),this._readableState.length=ee.length,this};var ie=1073741824;function Z(I,U){return I<=0||U.length===0&&U.ended?0:U.objectMode?1:I!=I?U.flowing&&U.length?U.buffer.head.data.length:U.length:(I>U.highWaterMark&&(U.highWaterMark=function(X){return X>=ie?X=ie:(X--,X|=X>>>1,X|=X>>>2,X|=X>>>4,X|=X>>>8,X|=X>>>16,X++),X}(I)),I<=U.length?I:U.ended?U.length:(U.needReadable=!0,0))}function ae(I){var U=I._readableState;i(\"emitReadable\",U.needReadable,U.emittedReadable),U.needReadable=!1,U.emittedReadable||(i(\"emitReadable\",U.flowing),U.emittedReadable=!0,co.nextTick(V,I))}function V(I){var U=I._readableState;i(\"emitReadable_\",U.destroyed,U.length,U.ended),U.destroyed||!U.length&&!U.ended||(I.emit(\"readable\"),U.emittedReadable=!1),U.needReadable=!U.flowing&&!U.ended&&U.length<=U.highWaterMark,N(I)}function $(I,U){U.readingMore||(U.readingMore=!0,co.nextTick(F,I,U))}function F(I,U){for(;!U.reading&&!U.ended&&(U.length<U.highWaterMark||U.flowing&&U.length===0);){var X=U.length;if(i(\"maybeReadMore read 0\"),I.read(0),X===U.length)break}U.readingMore=!1}function _(I){var U=I._readableState;U.readableListening=I.listenerCount(\"readable\")>0,U.resumeScheduled&&!U.paused?U.flowing=!0:I.listenerCount(\"data\")>0&&I.resume()}function O(I){i(\"readable nexttick read 0\"),I.read(0)}function z(I,U){i(\"resume\",U.reading),U.reading||I.read(0),U.resumeScheduled=!1,I.emit(\"resume\"),N(I),U.flowing&&!U.reading&&I.read(0)}function N(I){var U=I._readableState;for(i(\"flow\",U.flowing);U.flowing&&I.read()!==null;);}function B(I,U){return U.length===0?null:(U.objectMode?X=U.buffer.shift():!I||I>=U.length?(X=U.decoder?U.buffer.join(\"\"):U.buffer.length===1?U.buffer.first():U.buffer.concat(U.length),U.buffer.clear()):X=U.buffer.consume(I,U.decoder),X);var X}function j(I){var U=I._readableState;i(\"endReadable\",U.endEmitted),U.endEmitted||(U.ended=!0,co.nextTick(q,U,I))}function q(I,U){if(i(\"endReadableNT\",I.endEmitted,I.length),!I.endEmitted&&I.length===0&&(I.endEmitted=!0,U.readable=!1,U.emit(\"end\"),I.autoDestroy)){var X=U._writableState;(!X||X.autoDestroy&&X.finished)&&U.destroy()}}function H(I,U){for(var X=0,ee=I.length;X<ee;X++)if(I[X]===U)return X;return-1}return W.prototype.read=function(I){i(\"read\",I),I=parseInt(I,10);var U=this._readableState,X=I;if(I!==0&&(U.emittedReadable=!1),I===0&&U.needReadable&&((U.highWaterMark!==0?U.length>=U.highWaterMark:U.length>0)||U.ended))return i(\"read: emitReadable\",U.length,U.ended),U.length===0&&U.ended?j(this):ae(this),null;if((I=Z(I,U))===0&&U.ended)return U.length===0&&j(this),null;var ee,se=U.needReadable;return i(\"need readable\",se),(U.length===0||U.length-I<U.highWaterMark)&&i(\"length less than watermark\",se=!0),U.ended||U.reading?i(\"reading or ended\",se=!1):se&&(i(\"do read\"),U.reading=!0,U.sync=!0,U.length===0&&(U.needReadable=!0),this._read(U.highWaterMark),U.sync=!1,U.reading||(I=Z(X,U))),(ee=I>0?B(I,U):null)===null?(U.needReadable=U.length<=U.highWaterMark,I=0):(U.length-=I,U.awaitDrain=0),U.length===0&&(U.ended||(U.needReadable=!0),X!==I&&U.ended&&j(this)),ee!==null&&this.emit(\"data\",ee),ee},W.prototype._read=function(I){L(this,new T(\"_read()\"))},W.prototype.pipe=function(I,U){var X=this,ee=this._readableState;switch(ee.pipesCount){case 0:ee.pipes=I;break;case 1:ee.pipes=[ee.pipes,I];break;default:ee.pipes.push(I)}ee.pipesCount+=1,i(\"pipe count=%d opts=%j\",ee.pipesCount,U);var se=(!U||U.end!==!1)&&I!==co.stdout&&I!==co.stderr?ye:ht;function pe(Ct,dt){i(\"onunpipe\"),Ct===X&&dt&&dt.hasUnpiped===!1&&(dt.hasUnpiped=!0,i(\"cleanup\"),I.removeListener(\"close\",wt),I.removeListener(\"finish\",Ge),I.removeListener(\"drain\",xe),I.removeListener(\"error\",qe),I.removeListener(\"unpipe\",pe),X.removeListener(\"end\",ye),X.removeListener(\"end\",ht),X.removeListener(\"data\",Me),_e=!0,!ee.awaitDrain||I._writableState&&!I._writableState.needDrain||xe())}function ye(){i(\"onend\"),I.end()}ee.endEmitted?co.nextTick(se):X.once(\"end\",se),I.on(\"unpipe\",pe);var xe=function(Ct){return function(){var dt=Ct._readableState;i(\"pipeOnDrain\",dt.awaitDrain),dt.awaitDrain&&dt.awaitDrain--,dt.awaitDrain===0&&e(Ct,\"data\")&&(dt.flowing=!0,N(Ct))}}(X);I.on(\"drain\",xe);var _e=!1;function Me(Ct){i(\"ondata\");var dt=I.write(Ct);i(\"dest.write\",dt),dt===!1&&((ee.pipesCount===1&&ee.pipes===I||ee.pipesCount>1&&H(ee.pipes,I)!==-1)&&!_e&&(i(\"false write response, pause\",ee.awaitDrain),ee.awaitDrain++),X.pause())}function qe(Ct){i(\"onerror\",Ct),ht(),I.removeListener(\"error\",qe),e(I,\"error\")===0&&L(I,Ct)}function wt(){I.removeListener(\"finish\",Ge),ht()}function Ge(){i(\"onfinish\"),I.removeListener(\"close\",wt),ht()}function ht(){i(\"unpipe\"),X.unpipe(I)}return X.on(\"data\",Me),function(Ct,dt,Ze){if(typeof Ct.prependListener==\"function\")return Ct.prependListener(dt,Ze);Ct._events&&Ct._events[dt]?Array.isArray(Ct._events[dt])?Ct._events[dt].unshift(Ze):Ct._events[dt]=[Ze,Ct._events[dt]]:Ct.on(dt,Ze)}(I,\"error\",qe),I.once(\"close\",wt),I.once(\"finish\",Ge),I.emit(\"pipe\",X),ee.flowing||(i(\"pipe resume\"),X.resume()),I},W.prototype.unpipe=function(I){var U=this._readableState,X={hasUnpiped:!1};if(U.pipesCount===0)return this;if(U.pipesCount===1)return I&&I!==U.pipes||(I||(I=U.pipes),U.pipes=null,U.pipesCount=0,U.flowing=!1,I&&I.emit(\"unpipe\",this,X)),this;if(!I){var ee=U.pipes,se=U.pipesCount;U.pipes=null,U.pipesCount=0,U.flowing=!1;for(var pe=0;pe<se;pe++)ee[pe].emit(\"unpipe\",this,{hasUnpiped:!1});return this}var ye=H(U.pipes,I);return ye===-1||(U.pipes.splice(ye,1),U.pipesCount-=1,U.pipesCount===1&&(U.pipes=U.pipes[0]),I.emit(\"unpipe\",this,X)),this},W.prototype.on=function(I,U){var X=n.prototype.on.call(this,I,U),ee=this._readableState;return I===\"data\"?(ee.readableListening=this.listenerCount(\"readable\")>0,ee.flowing!==!1&&this.resume()):I===\"readable\"&&(ee.endEmitted||ee.readableListening||(ee.readableListening=ee.needReadable=!0,ee.flowing=!1,ee.emittedReadable=!1,i(\"on readable\",ee.length,ee.reading),ee.length?ae(this):ee.reading||co.nextTick(O,this))),X},W.prototype.addListener=W.prototype.on,W.prototype.removeListener=function(I,U){var X=n.prototype.removeListener.call(this,I,U);return I===\"readable\"&&co.nextTick(_,this),X},W.prototype.removeAllListeners=function(I){var U=n.prototype.removeAllListeners.apply(this,arguments);return I!==\"readable\"&&I!==void 0||co.nextTick(_,this),U},W.prototype.resume=function(){var I=this._readableState;return I.flowing||(i(\"resume\"),I.flowing=!I.readableListening,function(U,X){X.resumeScheduled||(X.resumeScheduled=!0,co.nextTick(z,U,X))}(this,I)),I.paused=!1,this},W.prototype.pause=function(){return i(\"call pause flowing=%j\",this._readableState.flowing),this._readableState.flowing!==!1&&(i(\"pause\"),this._readableState.flowing=!1,this.emit(\"pause\")),this._readableState.paused=!0,this},W.prototype.wrap=function(I){var U=this,X=this._readableState,ee=!1;for(var se in I.on(\"end\",function(){if(i(\"wrapped end\"),X.decoder&&!X.ended){var ye=X.decoder.end();ye&&ye.length&&U.push(ye)}U.push(null)}),I.on(\"data\",function(ye){i(\"wrapped data\"),X.decoder&&(ye=X.decoder.write(ye)),X.objectMode&&ye==null||(X.objectMode||ye&&ye.length)&&(U.push(ye)||(ee=!0,I.pause()))}),I)this[se]===void 0&&typeof I[se]==\"function\"&&(this[se]=function(ye){return function(){return I[ye].apply(I,arguments)}}(se));for(var pe=0;pe<D.length;pe++)I.on(D[pe],this.emit.bind(this,D[pe]));return this._read=function(ye){i(\"wrapped _read\",ye),ee&&(ee=!1,I.resume())},this},typeof Symbol==\"function\"&&(W.prototype[Symbol.asyncIterator]=function(){return u===void 0&&(u=nst()),u(this)}),Object.defineProperty(W.prototype,\"readableHighWaterMark\",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(W.prototype,\"readableBuffer\",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(W.prototype,\"readableFlowing\",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(I){this._readableState&&(this._readableState.flowing=I)}}),W._fromList=B,Object.defineProperty(W.prototype,\"readableLength\",{enumerable:!1,get:function(){return this._readableState.length}}),typeof Symbol==\"function\"&&(W.from=function(I,U){return d===void 0&&(d=WCe?qCe:(WCe=1,qCe=function(){throw new Error(\"Readable.from is not available in the browser\")})),d(W,I,U)}),One}function ast(t,e){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(r===null)return this.emit(\"error\",new ost);n.writechunk=null,n.writecb=null,e!=null&&this.push(e),r(t);var o=this._readableState;o.reading=!1,(o.needReadable||o.length<o.highWaterMark)&&this._read(o.highWaterMark)}function Wv(t){if(!(this instanceof Wv))return new Wv(t);kH.call(this,t),this._transformState={afterTransform:ast.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,t&&(typeof t.transform==\"function\"&&(this._transform=t.transform),typeof t.flush==\"function\"&&(this._flush=t.flush)),this.on(\"prefinish\",cst)}function cst(){var t=this;typeof this._flush!=\"function\"||this._readableState.destroyed?$Ce(this,null,null):this._flush(function(e,n){$Ce(t,e,n)})}function $Ce(t,e,n){if(e)return t.emit(\"error\",e);if(n!=null&&t.push(n),t._writableState.length)throw new sst;if(t._transformState.transforming)throw new ist;return t.push(null)}function UO(t){if(!(this instanceof UO))return new UO(t);HTe.call(this,t)}function KCe(t){if(t)throw t}function GCe(t){t()}function fst(t,e){return t.pipe(e)}function pst(t={}){let e={},n=new EA.Duplex({objectMode:!0,read:()=>{},write:function(i,a,c){let u=null;try{i.id?function(d){let{id:h}=d;if(h===null)return;let m=e[h];if(!m)return void console.warn(`StreamMiddleware - Unknown response id \"${h}\"`);delete e[h],Object.assign(m.res,d),setTimeout(m.end)}(i):function(d){t?.retryOnMessage&&d.method===t.retryOnMessage&&Object.values(e).forEach(({req:h,retryCount:m=0})=>{if(!h.id)return;if(m>=3)throw new Error(`StreamMiddleware - Retry limit exceeded for request id \"${h.id}\"`);let g=e[h.id];g&&(g.retryCount=m+1),o(h)}),r.emit(\"notification\",d)}(i)}catch(d){u=d}c(u)}}),r=new bTe;return{events:r,middleware:(i,a,c,u)=>{e[i.id]={req:i,res:a,next:c,end:u},o(i)},stream:n};function o(i){n.push(i)}}function cH(t){var e=function(){return e.called?e.value:(e.called=!0,e.value=t.apply(this,arguments))};return e.called=!1,e}function YCe(t){var e=function(){if(e.called)throw new Error(e.onceError);return e.called=!0,e.value=t.apply(this,arguments)},n=t.name||\"Function wrapped with `once`\";return e.onceError=n+\" shouldn\\'t be called more than once\",e.called=!1,e}function Ast(t,e){if(e!==\"[Circular]\")return e}function vm(t,e){let[n,r]=$Te(e);return new eoe.EthereumRpcError(t,n||VTe.getMessageFromCode(t),r)}function pO(t,e){let[n,r]=$Te(e);return new eoe.EthereumProviderError(t,n||VTe.getMessageFromCode(t),r)}function $Te(t){if(t){if(typeof t==\"string\")return[t];if(typeof t==\"object\"&&!Array.isArray(t)){let{message:e,data:n}=t;if(e&&typeof e!=\"string\")throw new Error(\"Must specify string message.\");return[e||void 0,n]}}return[]}function Pst({instance:t,msg:e}){return ct(this,void 0,void 0,function*(){if(t._initialized||(Ve(\"[MetaMaskSDK: connectAndSign()] provider not ready -- wait for init()\"),yield t.init()),Ve(`[MetaMaskSDK: connectAndSign()] activeProvider=${t.activeProvider}`),!t.activeProvider)throw new Error(\"SDK state invalid -- undefined provider\");let n=/^0x([0-9A-Fa-f]{2})*$/u.test(e)?e:function(r){let o;if(at!==void 0)o=at.from(r,\"utf8\").toString(\"hex\");else if(typeof TextEncoder<\"u\"){let i=new TextEncoder().encode(r);o=Array.from(i).map(a=>a.toString(16).padStart(2,\"0\")).join(\"\")}else{if(typeof Id!=\"object\"||!(\"Buffer\"in Id))throw new Error(\"Unable to convert string to hex: No available method.\");o=Id.Buffer.from(r,\"utf8\").toString(\"hex\")}return`0x${o}`}(e);return t.activeProvider.request({method:yn.METAMASK_CONNECTWITH,params:[{method:yn.PERSONAL_SIGN,params:[n]}]})})}function e8e(t){var e,n;return ct(this,void 0,void 0,function*(){Ve(\"[MetaMaskSDK: connectWithExtensionProvider()] \",t),t.sdkProvider=t.activeProvider,t.activeProvider=window.extension,window.ethereum=window.extension;try{let r=yield(e=window.extension)===null||e===void 0?void 0:e.request({method:\"eth_requestAccounts\"});Ve(`[MetaMaskSDK: connectWithExtensionProvider()] accounts=${r}`)}catch(r){return void console.warn(\"[MetaMaskSDK: connectWithExtensionProvider()] can\\'t request accounts error\",r)}localStorage.setItem(oq,\"extension\"),t.extensionActive=!0,t.emit(Rd.ProviderUpdate,mg.EXTENSION),t.options.enableAnalytics&&((n=t.analytics)===null||n===void 0||n.send({event:pa.SDK_USE_EXTENSION}))})}function iq(t){let e;if(at!==void 0)e=at.from(t,\"utf8\").toString(\"base64\");else if(typeof btoa==\"function\")e=btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/gu,(n,r)=>String.fromCharCode(parseInt(r,16))));else{if(typeof Id!=\"object\"||!(\"Buffer\"in Id))throw new Error(\"Unable to base64 encode: No available method.\");e=Id.Buffer.from(t,\"utf8\").toString(\"base64\")}return e}function Mst(t,e,n,r){var o,i,a,c,u,d,h,m,g,b,E,C,T,R,L,D,G,W,J,ne;return ct(this,void 0,void 0,function*(){let ie=(o=t.state.remote)===null||o===void 0?void 0:o.isReady(),Z=(i=t.state.remote)===null||i===void 0?void 0:i.isConnected(),ae=(a=t.state.remote)===null||a===void 0?void 0:a.isPaused(),V=pg.getProvider(),$=(c=t.state.remote)===null||c===void 0?void 0:c.getChannelId(),F=(u=t.state.remote)===null||u===void 0?void 0:u.isAuthorized(),{deeplinkProtocol:_}=t.state,{method:O,data:z,triggeredInstaller:N}=(H=>{var I,U,X,ee;let se;at.isBuffer(H)?(se=H.toJSON(),se._isBuffer=!0):se=H;let pe=(I=se?.data)===null||I===void 0?void 0:I.method,ye=!1;return typeof((U=se?.data)===null||U===void 0?void 0:U.params)==\"object\"&&((ee=(X=se?.data)===null||X===void 0?void 0:X.params)===null||ee===void 0?void 0:ee.__triggeredInstaller)===!0&&(ye=!0,se.data.params=se.data.params.wrappedParams),{method:pe,data:se,triggeredInstaller:ye}})(e);if(Ve(`[RCPMS: write()] method=\\'${O}\\' isRemoteReady=${ie} channelId=${$} isSocketConnected=${Z} isRemotePaused=${ae} providerConnected=${V.isConnected()}`,e),!$)return O!==yn.METAMASK_GETPROVIDERSTATE&&Ve(`[RCPMS: write()] ${O} --> channelId is undefined`),r(new Error(\"disconnected\"));Ve(`[RCPMS: write()] remote.isPaused()=${(d=t.state.remote)===null||d===void 0?void 0:d.isPaused()} authorized=${F} ready=${ie} socketConnected=${Z}`,e);let B=(h=t.state.platformManager)===null||h===void 0?void 0:h.isSecure(),j=(g=(m=t.state.platformManager)===null||m===void 0?void 0:m.isMobileWeb())!==null&&g!==void 0&&g,q=(E=(b=t.state.remote)===null||b===void 0?void 0:b.hasDeeplinkProtocol())!==null&&E!==void 0&&E&&j&&F;try{if(!N){let U=JSON.stringify(z?.data);if(U.length>Ist)return r(new Error(`Message size ${U.length} exceeds maximum allowed size of 1000000 bytes`));(C=t.state.remote)===null||C===void 0||C.sendMessage(z?.data).then(()=>{Ve(`[RCPMS: _write()] ${O} sent successfully`)}).catch(X=>{Ve(\"[RCPMS: _write()] error sending message\",X)})}if(!B)return Ve(`[RCPMS: _write()] unsecure platform for method ${O} -- return callback`),r();if(N)return Ve(\"[RCPMS: _write()] prevent deeplink -- installation completed separately.\"),r();let H=(L=(R=(T=t.state.remote)===null||T===void 0?void 0:T.getKeyInfo())===null||R===void 0?void 0:R.ecies.public)!==null&&L!==void 0?L:\"\",I=encodeURI(`channelId=${$}&pubkey=${H}&comm=socket&t=d&v=2`);if(q){let U=JSON.stringify(z?.data),X=(D=t.state.remote)===null||D===void 0?void 0:D.encrypt(U);if(!X)return Ve(\"[RCPMS: _write()] error encrypting message\"),r(new Error(\"RemoteCommunicationPostMessageStream - disconnected\"));I+=`&scheme=${_}&rpc=${iq(X)}`}if(!(!((G=t.state.platformManager)===null||G===void 0)&&G.isMetaMaskInstalled()))return Ve(\"[RCPMS: _write()] prevent deeplink until installation is completed.\"),r();rq[O]?(Ve(`[RCPMS: _write()] redirect link for \\'${O}\\' socketConnected=${Z} connect?${I}`),(W=t.state.platformManager)===null||W===void 0||W.openDeeplink(`${zO}?${I}`,`${HO}?${I}`,\"_self\")):!((J=t.state.remote)===null||J===void 0)&&J.isPaused()?(Ve(`[RCPMS: _write()] MM is PAUSED! deeplink with connect! targetMethod=${O}`),(ne=t.state.platformManager)===null||ne===void 0||ne.openDeeplink(`${zO}?redirect=true&${I}`,`${HO}?redirect=true&${I}`,\"_self\")):Ve(`[RCPMS: _write()] method ${O} doesn\\'t need redirect.`)}catch(H){return Ve(\"[RCPMS: _write()] error sending message\",H),r(new Error(\"RemoteCommunicationPostMessageStream - disconnected\"))}return r()})}function Lst(t){var e,n,r,o;return ct(this,void 0,void 0,function*(){let{options:i}=t,a={communicationLayerPreference:(e=i.communicationLayerPreference)!==null&&e!==void 0?e:p3.SOCKET,platformManager:t.platformManager,sdk:t,checkInstallationOnAllCalls:i.checkInstallationOnAllCalls,injectProvider:(n=i.injectProvider)===null||n===void 0||n,shouldShimWeb3:(r=i.shouldShimWeb3)===null||r===void 0||r,extensionOnly:(o=i.extensionOnly)===null||o===void 0||o,installer:t.installer,remoteConnection:t.remoteConnection,debug:t.debug},c=yield Nst(a);t.activeProvider=c,function(u){var d,h,m,g;(h=(d=u.remoteConnection)===null||d===void 0?void 0:d.getConnector())===null||h===void 0||h.on(Rd.ConnectionStatus,b=>{u.emit(Rd.ConnectionStatus,b)}),(g=(m=u.remoteConnection)===null||m===void 0?void 0:m.getConnector())===null||g===void 0||g.on(Rd.ServiceStatus,b=>{u.emit(Rd.ServiceStatus,b)})}(t)})}function n8e(t){var e,n,r;let{dappMetadata:o}=t,i=function({url:h,name:m}){var g;let b=h+m,E=iq(b);if(!localStorage)return\"\";let C=(g=localStorage.getItem(E))!==null&&g!==void 0?g:\"\";if(!C){C=Z8();try{localStorage.setItem(E,C)}catch{return\"\"}}return C}({url:(e=o?.url)!==null&&e!==void 0?e:\"no_url\",name:(n=o?.name)!==null&&n!==void 0?n:\"no_name\"}),a=(r=t.platformManager)===null||r===void 0?void 0:r.getPlatformType(),c=a===Al.DesktopWeb,u=a===Al.MetaMaskMobileWebview,d=\"N/A\";return c?d=\"extension\":u&&(d=\"mobile\"),{id:i,from:d}}function Ust({mustBeMetaMask:t,sdkInstance:e}){return ct(this,void 0,void 0,function*(){if(typeof window>\"u\")throw new Error(\"window not available\");try{let n=yield new Promise((r,o)=>{let i=setTimeout(()=>{o(new Error(\"eip6963RequestProvider timed out\"))},500);window.addEventListener(sq.Announce,a=>{let c=a,{detail:{info:u,provider:d}={}}=c,{name:h,rdns:m,uuid:g}=u??{};Tst.test(g)&&h.startsWith(XCe.NAME)&&XCe.RDNS.includes(m)&&(clearTimeout(i),r(d))}),window.dispatchEvent(new Event(sq.Request))});return vre({provider:n,sdkInstance:e})}catch{if(!t&&window.ethereum)return vre({provider:window.ethereum,sdkInstance:e});throw new Error(\"Provider not found\")}})}function Hst(t,e,n,r){return new(n||(n=Promise))(function(o,i){function a(d){try{u(r.next(d))}catch(h){i(h)}}function c(d){try{u(r.throw(d))}catch(h){i(h)}}function u(d){var h;d.done?o(d.value):(h=d.value,h instanceof n?h:new n(function(m){m(h)})).then(a,c)}u((r=r.apply(t,[])).next())})}function qst(t,e){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},typeof Symbol==\"function\"&&(i[Symbol.iterator]=function(){return this}),i;function c(u){return function(d){return function(h){if(n)throw new TypeError(\"Generator is already executing.\");for(;a;)try{if(n=1,r&&(o=2&h[0]?r.return:h[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,h[1])).done)return o;switch(r=0,o&&(h=[2&h[0],o.value]),h[0]){case 0:case 1:o=h;break;case 4:return a.label++,{value:h[1],done:!1};case 5:a.label++,r=h[1],h=[0];continue;case 7:h=a.ops.pop(),a.trys.pop();continue;default:if(o=a.trys,!((o=o.length>0&&o[o.length-1])||h[0]!==6&&h[0]!==2)){a=0;continue}if(h[0]===3&&(!o||h[1]>o[0]&&h[1]<o[3])){a.label=h[1];break}if(h[0]===6&&a.label<o[1]){a.label=o[1],o=h;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(h);break}o[2]&&a.ops.pop(),a.trys.pop();continue}h=e.call(t,a)}catch(m){h=[6,m],r=0}finally{n=o=0}if(5&h[0])throw h[1];return{value:h[0]?h[1]:void 0,done:!0}}([u,d])}}}function Vst(t,{wait:e=!1}){return ct(this,void 0,void 0,function*(){return Ve(`[MetamaskInstaller: startInstaller()] wait=${e}`),e&&(yield QTe(1e3)),yield t.checkInstallation()})}function JTe(t,e){var n,r,o,i;t.connector||(Ve(\"[RemoteConnection: initializeConnector()] initialize connector\"),t.connector=new tre({platformType:e.platformManager.getPlatformType(),communicationLayerPreference:e.communicationLayerPreference,transports:e.transports,dappMetadata:Object.assign(Object.assign({},e.dappMetadata),{source:e._source}),analytics:e.enableAnalytics,communicationServerUrl:e.communicationServerUrl,sdkVersion:NS.version,context:\"dapp\",ecies:e.ecies,storage:e.storage,logging:e.logging}),e.timer&&(Ve(\"[RemoteConnection: initializeConnector()] reset background timer\",e.timer),(r=(n=e.timer)===null||n===void 0?void 0:n.stopBackgroundTimer)===null||r===void 0||r.call(n),(i=(o=e.timer)===null||o===void 0?void 0:o.runBackgroundTimer)===null||i===void 0||i.call(o,()=>!1,1e4)))}function xre(t){t.listeners.forEach(({event:e,handler:n})=>{var r;(r=t.connector)===null||r===void 0||r.off(e,n)}),t.listeners=[]}function Gst(t,e,n){return ct(this,void 0,void 0,function*(){return new Promise((r,o)=>{if(!t.connector)return void o(new Error(\"No connector available\"));Ve(\"[RemoteConnection: connectWithModalInstaller()]\",{state:t,options:e,linkParams:n});let i=`${t.useDeeplink?HO:zO}?${n}`;(function(a,c,u){var d,h,m,g;a.installModal=(h=(d=c.modals).install)===null||h===void 0?void 0:h.call(d,{link:u,preferDesktop:a.preferDesktop,installer:c.getMetaMaskInstaller(),terminate:()=>{Ve(\"[RemoteConnection: showInstallModal() => terminate()] terminate connection\"),c.sdk.terminate().catch(b=>{console.warn(\"[MMSDK] failed to terminate connection\",b)})},debug:a.developerMode,connectWithExtension:()=>{var b;return(b=c.connectWithExtensionProvider)===null||b===void 0||b.call(c),!1},onAnalyticsEvent:({event:b,params:E})=>{var C,T,R;let L=Object.assign(Object.assign({},E),{sdkVersion:c.sdk.getVersion(),dappId:(C=c.dappMetadata)===null||C===void 0?void 0:C.name,source:c._source,url:(T=c.dappMetadata)===null||T===void 0?void 0:T.url});(R=a.analytics)===null||R===void 0||R.send({event:b,params:L})}}),(g=(m=a.installModal)===null||m===void 0?void 0:m.mount)===null||g===void 0||g.call(m,u)})(t,e,i),e.sdk.once(vt.PROVIDER_UPDATE,a=>ct(this,void 0,void 0,function*(){Ve(\"[RemoteConnection: connectWithModalInstaller()] once provider_update -- resolving startConnection promise\"),a!==mg.TERMINATE?o(a):o({code:4001,message:\"User rejected the request.\"})})),t.connector.once(vt.AUTHORIZED,()=>{r()}),t.connector.once(vt.REJECTED,()=>{o(vt.REJECTED)}),t.connector.once(vt.CLIENTS_READY,()=>ct(this,void 0,void 0,function*(){Ve(\"[RemoteConnection: connectWithModalInstaller()] once clients_ready -- resolving startConnection promise\"),r()}))})})}function XTe(t,e){function n(r,o){var i;(i=t.connector)===null||i===void 0||i.on(r,o),t.listeners.push({event:r,handler:o})}t.connector&&(xre(t),n(vt.WALLET_INIT,({accounts:r,chainId:o})=>ct(this,void 0,void 0,function*(){Ve(`[RemoteConnection: setupListeners() => EventType.WALLET_INIT] \\'wallet_init\\' accounts=${r} chainId=${o}`);let i=pg.getProvider();i._setConnected();let a={accounts:r,chainId:o,isUnlocked:!1};i._initializeState(a),i.emit(\"chainChanged\",o),i.emit(\"accountsChanged\",r)})),n(vt.AUTHORIZED,()=>ct(this,void 0,void 0,function*(){var r,o,i,a;try{Ve(\"[RemoteConnection: setupListeners() => EventType.AUTHORIZED] \\'authorized\\' closing modals\",t.pendingModal,t.installModal);let c=pg.getProvider();c._setConnected(),(o=(r=t.pendingModal)===null||r===void 0?void 0:r.unmount)===null||o===void 0||o.call(r),(a=(i=t.installModal)===null||i===void 0?void 0:i.unmount)===null||a===void 0||a.call(i,!1),t.otpAnswer=void 0,t.authorized=!0,Ve(\"[RemoteConnection: setupListeners() => EventType.AUTHORIZED] \\'authorized\\' provider.state\",c.getState()),yield c.forceInitializeState()}catch{}})),n(vt.TERMINATE,()=>{var r,o,i,a,c;(o=(r=t.pendingModal)===null||r===void 0?void 0:r.unmount)===null||o===void 0||o.call(r),(a=(i=t.installModal)===null||i===void 0?void 0:i.unmount)===null||a===void 0||a.call(i,!0),t.pendingModal=void 0,t.installModal=void 0,t.otpAnswer=void 0,(c=t.connector)===null||c===void 0||c.disconnect({terminate:!0}),t.authorized=!1,pg.getProvider().handleDisconnect({terminate:!0}),xre(t),Ve(\"[RemoteConnection: setupListeners()] All listeners cleaned up\")}))}function Zst(t,e,{initialCheck:n,connectWith:r}={}){var o,i,a,c,u,d,h,m,g,b,E,C,T,R,L,D,G,W,J;return ct(this,void 0,void 0,function*(){try{if(JTe(t,e),!t.connector)throw new Error(\"no connector defined\");XTe(t);let ne=pg.getProvider();t.authorized=!1,ne.emit(\"connecting\");let ie=yield(o=t.connector)===null||o===void 0?void 0:o.originatorSessionConnect();Ve(`[RemoteConnection: startConnection()] after originatorSessionConnect initialCheck=${n}`,ie);let Z=(i=ie?.channelId)!==null&&i!==void 0?i:\"\",ae=(c=(a=t.connector.getKeyInfo())===null||a===void 0?void 0:a.ecies.public)!==null&&c!==void 0?c:\"\",V=(d=(u=t.connector.getKeyInfo())===null||u===void 0?void 0:u.ecies.private)!==null&&d!==void 0?d:\"\";if(n&&!ie)return Promise.resolve();if(!ie&&!n){let ee=yield t.connector.generateChannelIdConnect();Z=(h=ee.channelId)!==null&&h!==void 0?h:\"\",ae=(m=ee.pubKey)!==null&&m!==void 0?m:\"\",V=(g=ee.privKey)!==null&&g!==void 0?g:\"\";let se=Date.now();(b=t.connector.state.storageManager)===null||b===void 0||b.persistChannelConfig({channelId:Z,localKey:V,lastActive:se,validUntil:se+wA})}if(n&&ie?.channelId)return!((E=t.connector)===null||E===void 0)&&E.isConnected()||(Ve(`[RemoteConnection: startConnection()] reconnecting to channel initialCheck=${n}`,ie),yield(C=t.connector)===null||C===void 0?void 0:C.connectToChannel({channelId:Z})),Promise.resolve();ie&&!(!((T=t.connector)===null||T===void 0)&&T.isConnected())&&(Ve(\"[RemoteConnection: startConnection()] reconnecting to channel\",ie),yield(R=t.connector)===null||R===void 0?void 0:R.connectToChannel({channelId:Z}));let $=!((L=t.platformManager)===null||L===void 0)&&L.isSecure()?\"\":\"&t=q\",F=NS.version,{iconUrl:_,name:O,url:z,scheme:N}=e.dappMetadata||{},B=(D=t.platformManager)===null||D===void 0?void 0:D.getPlatformType(),j=\"N/A\";typeof window<\"u\"&&window.location&&window.location.hostname?j=window.location.hostname:O!==void 0?j=O:z!==void 0&&(j=z);let q={url:z??\"\",title:O??\"\",icon:_,scheme:N??\"\",apiVersion:F,dappId:j||z||\"N/A\",platform:B??\"\",source:(G=e._source)!==null&&G!==void 0?G:\"\"},H=iq(JSON.stringify(q)),I=`channelId=${Z}&v=2&comm=${(W=t.communicationLayerPreference)!==null&&W!==void 0?W:\"\"}&pubkey=${ae}${$}&originatorInfo=${H}`;if(r){I+=`&rpc=${iq(JSON.stringify(r))}`;let ee=t.connector.getRPCMethodTracker();ee&&(ee[`${r.id}`]=Object.assign(Object.assign({},r),{id:`${r.id}`,timestamp:Date.now()}))}let U=encodeURI(I),X=`${t.useDeeplink?HO:zO}?${I}`;return t.qrcodeLink=X,t.developerMode&&Ve(`[RemoteConnection: startConnection()] qrcodeLink=${U}`),ne.emit(\"display_uri\",X),!((J=t.platformManager)===null||J===void 0)&&J.isSecure()?(yield function(ee,se){var pe,ye;return ct(this,void 0,void 0,function*(){let xe=`${zO}?${se}`,_e=`${HO}?${se}`;(ye=(pe=ee.platformManager)===null||pe===void 0?void 0:pe.openDeeplink)===null||ye===void 0||ye.call(pe,xe,_e,\"_self\")})}(t,U),new Promise((ee,se)=>{var pe,ye,xe;!((pe=t.connector)===null||pe===void 0)&&pe.isAuthorized()?ee():((ye=t.connector)===null||ye===void 0||ye.once(vt.AUTHORIZED,()=>{ee()}),(xe=t.connector)===null||xe===void 0||xe.once(vt.REJECTED,()=>{se(vt.REJECTED)}))})):Gst(t,e,U)}catch(ne){throw console.error(\"[startConnection] error\",ne),ne}})}function Yst(t){var e,n,r,o,i,a,c,u,d,h,m;return ct(this,void 0,void 0,function*(){let{options:g}=t;if(g.logging=(e=g.logging)!==null&&e!==void 0?e:{},g.communicationLayerPreference=(n=g.communicationLayerPreference)!==null&&n!==void 0?n:p3.SOCKET,g.enableDebug!==void 0&&(Cu.default.enable(\"MM_SDK\"),console.warn(\"enableDebug is removed. Please use enableAnalytics instead.\")),g.enableAnalytics=(r=g.enableAnalytics)===null||r===void 0||r,g.injectProvider=(o=g.injectProvider)===null||o===void 0||o,g.shouldShimWeb3=(i=g.shouldShimWeb3)===null||i===void 0||i,g.extensionOnly=(a=g.extensionOnly)===null||a===void 0||a,g.useDeeplink=(c=g.useDeeplink)===null||c===void 0||c,g.storage=(u=g.storage)!==null&&u!==void 0?u:{enabled:!0},g.headless){(0,Cu.default)(\"[MetaMaskSDK: performSDKInitialization()] headless mode enabled\");let L=()=>{},D={install:()=>({mount:L,unmount:L})},G={installer:L};g.modals=D,g.ui=G}let b=((d=g.logging)===null||d===void 0?void 0:d.developerMode)===!0;t.debug=((h=g.logging)===null||h===void 0?void 0:h.sdk)||b,Ve(\"[MetaMaskSDK: performSDKInitialization()] options\",t.options);let E=Object.assign({},g.logging);b&&(E.sdk=!0,E.eciesLayer=!0,E.keyExchangeLayer=!0,E.remoteLayer=!0,E.serviceLayer=!0,E.plaintext=!0),yield function(L){var D;return ct(this,void 0,void 0,function*(){let{options:G}=L;L.platformManager=new tq({useDeepLink:(D=G.useDeeplink)!==null&&D!==void 0&&D,preferredOpenLink:G.openDeeplink,debug:L.debug})})}(t),yield function(L){var D,G,W,J,ne,ie,Z,ae,V;return ct(this,void 0,void 0,function*(){let{options:$}=L,F=(D=L.platformManager)===null||D===void 0?void 0:D.getPlatformType();L.analytics=new bre({serverUrl:(G=$.communicationServerUrl)!==null&&G!==void 0?G:RS,enabled:$.enableAnalytics,originatorInfo:{url:(W=$.dappMetadata.url)!==null&&W!==void 0?W:\"\",title:(J=$.dappMetadata.name)!==null&&J!==void 0?J:\"\",dappId:typeof window>\"u\"||window.location===void 0?(ae=(ie=(ne=$.dappMetadata)===null||ne===void 0?void 0:ne.name)!==null&&ie!==void 0?ie:(Z=$.dappMetadata)===null||Z===void 0?void 0:Z.url)!==null&&ae!==void 0?ae:\"N/A\":window.location.hostname,platform:F??\"\",source:(V=$._source)!==null&&V!==void 0?V:\"\"}})})}(t),yield function(L){var D;return ct(this,void 0,void 0,function*(){let{options:G}=L;((D=G.storage)===null||D===void 0?void 0:D.enabled)!==!0||G.storage.storageManager||(G.storage.storageManager=yield ZTe(G.storage))})}(t),yield function(L){return ct(this,void 0,void 0,function*(){let{options:D}=L,G=/^(http|https):\\\\/\\\\/[^\\\\s]*$/;if(D.dappMetadata){D.dappMetadata.iconUrl&&!G.test(D.dappMetadata.iconUrl)&&(console.warn(\"Invalid dappMetadata.iconUrl: URL must start with http:// or https://\"),D.dappMetadata.iconUrl=void 0),D.dappMetadata.base64Icon&&D.dappMetadata.base64Icon.length>Fst&&(console.warn(\"Invalid dappMetadata.base64Icon: Base64-encoded icon string length must be less than 163400 characters\"),D.dappMetadata.base64Icon=void 0),D.dappMetadata.url&&!G.test(D.dappMetadata.url)&&console.warn(\"Invalid dappMetadata.url: URL must start with http:// or https://\");let W=Dst();if(W&&!D.dappMetadata.iconUrl&&!D.dappMetadata.base64Icon){let J=`${window.location.protocol}//${window.location.host}${W}`;D.dappMetadata.iconUrl=J}}L.dappMetadata=D.dappMetadata})}(t),yield jst(t),yield zst(t);let{metamaskBrowserExtension:C,preferExtension:T,shouldReturn:R}=yield function(L){var D,G,W,J;return ct(this,void 0,void 0,function*(){let{options:ne}=L,ie,Z=!1,ae=!1;if(typeof window<\"u\"&&window.ethereum&&!(!((D=L.platformManager)===null||D===void 0)&&D.isMetaMaskMobileWebView())){Z=localStorage.getItem(oq)===\"extension\";try{ie=yield Ust({mustBeMetaMask:!0,sdkInstance:L}),window.extension=ie,ie.on(h1.CHAIN_CHANGED,V=>{Ve(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE chainChanged chainId=${V}`),L.sdkProvider&&L.getMobileProvider().emit(h1.CHAIN_CHANGED,V)}),ie.on(h1.ACCOUNTS_CHANGED,V=>ct(this,void 0,void 0,function*(){var $;Ve(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE accountsChanged accounts=${V}`);let F=!!L.sdkProvider,_=!!L.extensionActive;if(F&&L.getMobileProvider().emit(h1.ACCOUNTS_CHANGED,V),_&&V?.length===0&&(yield($=L.getProvider())===null||$===void 0?void 0:$.request({method:yn.WALLET_GETPERMISSIONS,params:[]})).length===0)try{yield L.terminate()}catch(O){Ve(\"[MetaMaskSDK: setupExtensionPreferences()] error terminating on permissions revoked\",O)}})),ie.on(h1.DISCONNECT,V=>{Ve(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE disconnect error=${V}`),L.sdkProvider&&L.getMobileProvider().emit(h1.DISCONNECT,V)}),ie.on(h1.CONNECT,V=>{Ve(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connect args=${V}`),L.sdkProvider&&L.getMobileProvider().emit(h1.CONNECT,V)}),ie.on(h1.CONNECTED,V=>{Ve(\"[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connected\",V),L.sdkProvider&&L.getMobileProvider().emit(h1.CONNECTED,V)})}catch{window.extension=void 0}}else!((G=L.platformManager)===null||G===void 0)&&G.isMetaMaskMobileWebView()&&((W=L.analytics)===null||W===void 0||W.send({event:pa.SDK_USE_INAPP_BROWSER}),L.activeProvider=vre({provider:window.ethereum,sdkInstance:L}),L._initialized=!0,ae=!0);return ie&&ne.extensionOnly&&(Ve(\"[MetaMaskSDK: setupExtensionPreferences()] EXTENSION ONLY --- prevent sdk initialization\"),(J=L.analytics)===null||J===void 0||J.send({event:pa.SDK_USE_EXTENSION}),L.activeProvider=ie,L.extensionActive=!0,L.extension=ie,L._initialized=!0,ae=!0),{preferExtension:Z,shouldReturn:ae,metamaskBrowserExtension:ie}})}(t);if(R)Ve(\"[MetaMaskSDK: performSDKInitialization()] shouldReturn=true --- prevent sdk initialization\");else{yield function(L,D){var G,W,J,ne,ie;return ct(this,void 0,void 0,function*(){let{options:Z}=L,ae=Object.assign({},Z.logging);L.remoteConnection=new Ere({preferDesktop:(G=Z.preferDesktop)!==null&&G!==void 0&&G,communicationLayerPreference:(W=Z.communicationLayerPreference)!==null&&W!==void 0?W:p3.SOCKET,analytics:L.analytics,dappMetadata:Z.dappMetadata,_source:Z._source,enableAnalytics:(J=Z.enableAnalytics)===null||J===void 0||J,timer:Z.timer,sdk:L,platformManager:L.platformManager,transports:Z.transports,communicationServerUrl:Z.communicationServerUrl,storage:(ne=Z.storage)!==null&&ne!==void 0?ne:{enabled:!0},getMetaMaskInstaller:()=>{if(!L.installer)throw new Error(\"Invalid SDK status -- installer not initialized\");return L.installer},logging:ae,connectWithExtensionProvider:D===void 0?void 0:()=>e8e(L),modals:Object.assign(Object.assign({},Z.modals),{onPendingModalDisconnect:L.terminate.bind(L)})}),yield L.remoteConnection.initRemoteCommunication({sdkInstance:L}),L.installer=new wre({remote:L.remoteConnection,preferDesktop:(ie=Z.preferDesktop)!==null&&ie!==void 0&&ie,platformManager:L.platformManager,debug:L.debug})})}(t,C),yield Lst(t),yield function(L,D){var G,W;return ct(this,void 0,void 0,function*(){let{options:J}=L;D?(Ve(\"[MetaMaskSDK: handleAutoAndExtensionConnections()] preferExtension is detected -- connect with it.\"),(G=L.analytics)===null||G===void 0||G.send({event:pa.SDK_EXTENSION_UTILIZED}),e8e(L).catch(ne=>{console.warn(\"Can\\'t connect with MetaMask extension...\",ne),localStorage.removeItem(oq)})):J.checkInstallationImmediately&&(!((W=L.platformManager)===null||W===void 0)&&W.isDesktopWeb()?(Ve(\"[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately\"),L.connect().catch(ne=>{Ve(`[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- error on autoconnect _err=${ne}`)})):console.warn(\"[handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- only for web desktop\")),L._initialized=!0})}(t,T);try{yield(m=t.remoteConnection)===null||m===void 0?void 0:m.startConnection({initialCheck:!0})}catch(L){console.error(\"[MetaMaskSDK: setupRemoteConnectionAndInstaller()] Error while checking installation\",L)}t.emit(Rd.ProviderUpdate,mg.INITIALIZED)}})}function r7e(t){var e,n,r;return(r=(n=(e=t.head)==null?void 0:e.querySelector(\\'meta[name=\"csp-nonce\"]\\'))==null?void 0:n.getAttribute(\"content\"))!=null?r:void 0}function iat(t,e){if(t.isOk){let n=e(t.value);return n instanceof Promise?n.then(r=>Cre(r)):Cre(n)}if(t.isErr){let n=t.value;return o7e(n)}throw\"should never get here\"}function b8e(t){return t.includes(\"ref\")?[...t.filter(e=>e!==\"ref\"),\"ref\"]:t}function uoe({version:t}){return ve(\"div\",{style:{textAlign:\"center\",color:\"#BBC0C5\",fontSize:\"12\"}},\"SDK Version \",t?`v${t}`:\"unknown\")}function wS(t,e){return t.toString(2).padStart(e,\"0\")}function E8e(t,e){let n=t%e;return n>=0?n:e+n}function Mh(t,e){return new Array(t).fill(e)}function S8e(...t){let e=0;for(let r of t)e=Math.max(e,r.length);let n=[];for(let r=0;r<e;r++)for(let o of t)r>=o.length||n.push(o[r]);return new Uint8Array(n)}function k8e(t,e,n){if(n<0||n+e.length>t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[n+r])return!1;return!0}function _8e(t){return{has:e=>t.includes(e),decode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!=\"string\")throw new Error(\"alphabet.decode input should be array of strings\");return e.map(n=>{if(typeof n!=\"string\")throw new Error(`alphabet.decode: not string element=${n}`);let r=t.indexOf(n);if(r===-1)throw new Error(`Unknown letter: \"${n}\". Allowed: ${t}`);return r})},encode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!=\"number\")throw new Error(\"alphabet.encode input should be an array of numbers\");return e.map(n=>{if(function(r){if(!Number.isSafeInteger(r))throw new Error(`Wrong integer: ${r}`)}(n),n<0||n>=t.length)throw new Error(`Digit index outside alphabet: ${n} (alphabet: ${t.length})`);return t[n]})}}}function Mat(t,e){let{words:n,shortBlocks:r,numBlocks:o,blockLen:i,total:a}=_u.capacity(t,e),c=(u=n,{encode(d){let h=Xt.divisorPoly(u),m=Array.from(d);return m.push(...h.slice(0,-1).fill(0)),Uint8Array.from(Xt.remainderPoly(m,h))},decode(d){let h=d.slice(),m=Xt.polynomial(Array.from(d)),g=Mh(u,0),b=!1;for(let D=0;D<u;D++){let G=Xt.evalPoly(m,Xt.exp(D));g[g.length-1-D]=G,G!==0&&(b=!0)}if(!b)return h;g=Xt.polynomial(g);let E=Xt.monomial(u,1),[C,T]=Xt.euclidian(E,g,u),R=Mh(Xt.degree(C),0),L=0;for(let D=1;D<256&&L<R.length;D++)Xt.evalPoly(C,D)===0&&(R[L++]=Xt.inv(D));if(L!==R.length)throw new Error(\"RS.decode: wrong errors number\");for(let D=0;D<R.length;D++){let G=h.length-1-Xt.log(R[D]);if(G<0)throw new Error(\"RS.decode: wrong error location\");let W=Xt.inv(R[D]),J=1;for(let ne=0;ne<R.length;ne++)D!==ne&&(J=Xt.mul(J,Xt.add(1,Xt.mul(R[ne],W))));h[G]=Xt.add(h[G],Xt.mul(Xt.evalPoly(T,W),Xt.inv(J)))}return h}});var u;return{encode(d){let h=[],m=[];for(let C=0;C<o;C++){let T=i+(C<r?0:1);h.push(d.subarray(0,T)),m.push(c.encode(d.subarray(0,T))),d=d.subarray(T)}let g=S8e(...h),b=S8e(...m),E=new Uint8Array(g.length+b.length);return E.set(g),E.set(b,g.length),E},decode(d){if(d.length!==a)throw new Error(`interleave.decode: len(data)=${d.length}, total=${a}`);let h=[];for(let b=0;b<o;b++){let E=b<r;h.push(new Uint8Array(n+i+(E?0:1)))}let m=0;for(let b=0;b<i;b++)for(let E=0;E<o;E++)h[E][b]=d[m++];for(let b=r;b<o;b++)h[b][i]=d[m++];for(let b=i;b<i+n;b++)for(let E=0;E<o;E++){let C=E<r;h[E][b+(C?0:1)]=d[m++]}let g=[];for(let b of h)g.push(...Array.from(c.decode(b)).slice(0,-n));return Uint8Array.from(g)}}}function T8e(t,e,n,r){let o=\"\",i=n.length;if(r===\"numeric\"){let m=_u.alphabet.numeric.decode(n.split(\"\")),g=m.length;for(let b=0;b<g-2;b+=3)o+=wS(100*m[b]+10*m[b+1]+m[b+2],10);g%3==1?o+=wS(m[g-1],4):g%3==2&&(o+=wS(10*m[g-2]+m[g-1],7))}else if(r===\"alphanumeric\"){let m=_u.alphabet.alphanumerc.decode(n.split(\"\")),g=m.length;for(let b=0;b<g-1;b+=2)o+=wS(45*m[b]+m[b+1],11);g%2==1&&(o+=wS(m[g-1],6))}else{if(r!==\"byte\")throw new Error(\"encode: unsupported type\");{let m=function(g){if(typeof g!=\"string\")throw new Error(\"utf8ToBytes expected string, got \"+typeof g);return new Uint8Array(new TextEncoder().encode(g))}(n);i=m.length,o=Array.from(m).map(g=>wS(g,8)).join(\"\")}}let{capacity:a}=_u.capacity(t,e),c=wS(i,_u.lengthBits(t,r)),u=_u.modeBits[r]+c+o;if(u.length>a)throw new Error(\"Capacity overflow\");u+=\"0\".repeat(Math.min(4,Math.max(0,a-u.length))),u.length%8&&(u+=\"0\".repeat(8-u.length%8));let d=\"1110110000010001\";for(let m=0;u.length!==a;m++)u+=d[m%16];let h=Uint8Array.from(u.match(/(.{8})/g).map(m=>+`0b${m}`));return Mat(t,e).encode(h)}function R8e(t,e,n,r,o=!1){let i=function(u,d,h,m=!1){let g=_u.size.encode(u),b=new AO(g+2),E=new AO(3).rect(0,3,!0).border(1,!1).border(1,!0).border(1,!1);b=b.embed(0,E).embed({x:-E.width,y:0},E).embed({x:0,y:-E.height},E),b=b.rectSlice(1,g);let C=new AO(1).rect(0,1,!0).border(1,!1).border(1,!0),T=_u.alignmentPatterns(u);for(let R of T)for(let L of T)b.data[R][L]===void 0&&b.embed({x:L-2,y:R-2},C);b=b.hLine({x:0,y:6},1/0,({x:R},L)=>L===void 0?R%2==0:L).vLine({x:6,y:0},1/0,({y:R},L)=>L===void 0?R%2==0:L);{let R=_u.formatBits(d,h),L=D=>!m&&(R>>D&1)==1;for(let D=0;D<6;D++)b.data[D][8]=L(D);for(let D=6;D<8;D++)b.data[D+1][8]=L(D);for(let D=8;D<15;D++)b.data[g-15+D][8]=L(D);for(let D=0;D<8;D++)b.data[8][g-D-1]=L(D);for(let D=8;D<9;D++)b.data[8][15-D-1+1]=L(D);for(let D=9;D<15;D++)b.data[8][15-D-1]=L(D);b.data[g-8][8]=!m}if(u>=7){let R=_u.versionBits(u);for(let L=0;L<18;L+=1){let D=!m&&(R>>L&1)==1,G=Math.floor(L/3),W=L%3+g-8-3;b.data[G][W]=D,b.data[W][G]=D}}return b}(t,e,r,o),a=0,c=8*n.length;if(function(u,d,h){let m=u.height,g=Tre[d],b=-1,E=m-1;for(let C=m-1;C>0;C-=2){for(C==6&&(C=5);;E+=b){for(let T=0;T<2;T+=1){let R=C-T;u.data[E][R]===void 0&&h(R,E,g(R,E))}if(E+b<0||E+b>=m)break}b=-b}}(i,r,(u,d,h)=>{let m=!1;a<c&&(m=(n[a>>>3]>>(7-a&7)&1)!=0,a++),i.data[d][u]=m!==h}),a!==c)throw new Error(\"QR: bytes left after draw\");return i}function Nat(t){let e=t.inverse(),n=b=>{let E=0;for(let C,T=0,R=1;T<b.length;T++)C===b[T]&&(R++,T!==b.length-1)||(R>=5&&(E+=R-5+3),C=b[T],R=1);return E},r=0;t.data.forEach(b=>r+=n(b)),e.data.forEach(b=>r+=n(b));let o=0,i=t.data,a=t.width-1,c=t.height-1;for(let b=0;b<a;b++)for(let E=0;E<c;E++){let C=b+1,T=E+1;i[b][E]===i[C][E]&&i[C][E]===i[b][T]&&i[C][E]===i[C][T]&&(o+=3)}let u=b=>{let E=[!0,!1,!0,!0,!0,!1,!0],C=[!1,!1,!1,!1],T=[...E,...C],R=[...C,...E],L=0;for(let D=0;D<b.length;D++)k8e(b,T,D)&&(L+=40),k8e(b,R,D)&&(L+=40);return L},d=0;for(let b of t.data)d+=u(b);for(let b of e.data)d+=u(b);let h=0;t.rectRead(0,1/0,(b,E)=>h+=E?1:0);let m=h/(t.height*t.width)*100,g=10*Math.floor(Math.abs(m-50)/5);return r+o+d+g}function p7e(t,e=\"raw\",n={}){let r=n.ecc!==void 0?n.ecc:\"medium\";(function(h){if(!C8e.includes(h))throw new Error(`Invalid error correction mode=${h}. Expected: ${C8e}`)})(r);let o=n.encoding!==void 0?n.encoding:function(h){let m=\"numeric\";for(let g of h)if(!_u.alphabet.numeric.has(g)&&(m=\"alphanumeric\",!_u.alphabet.alphanumerc.has(g)))return\"byte\";return m}(t);(function(h){if(!A8e.includes(h))throw new Error(`Encoding: invalid mode=${h}. Expected: ${A8e}`);if(h===\"kanji\"||h===\"eci\")throw new Error(`Encoding: ${h} is not supported (yet?).`)})(o),n.mask!==void 0&&function(h){if(![0,1,2,3,4,5,6,7].includes(h)||!Tre[h])throw new Error(`Invalid mask=${h}. Expected number [0..7]`)}(n.mask);let i,a=n.version,c=new Error(\"Unknown error\");if(a!==void 0)(function(h){if(!Number.isSafeInteger(h)||h<1||h>40)throw new Error(`Invalid version=${h}. Expected number [1..40]`)})(a),i=T8e(a,r,t,o);else for(let h=1;h<=40;h++)try{i=T8e(h,r,t,o),a=h;break}catch(m){c=m}if(!a||!i)throw c;let u=function(h,m,g,b){if(b===void 0){let E=function(){let C,T=1/0;return{add(R,L){R>=T||(C=L,T=R)},get:()=>C,score:()=>T}}();for(let C=0;C<Tre.length;C++)E.add(Nat(R8e(h,m,g,C,!0)),C);b=E.get()}if(b===void 0)throw new Error(\"Cannot find mask\");return R8e(h,m,g,b)}(a,r,i,n.mask);u.assertDrawn();let d=n.border===void 0?2:n.border;if(!Number.isSafeInteger(d))throw new Error(\"Wrong border type=\"+typeof d);if(u=u.border(d,!1),n.scale!==void 0&&(u=u.scale(n.scale)),e===\"raw\")return u.data;if(e===\"ascii\")return u.toASCII();if(e===\"svg\")return u.toSVG();if(e===\"gif\")return u.toGIF();if(e===\"term\")return u.toTerm();throw new Error(`Unknown output: ${e}`)}var Rre,Cu,SA,Id,g1,Em,Krt,Ire,Zrt,P8e,Yrt,y4e,cot,uot,_m,sA,Lh,ku,dot,RO,zc,ene,OH,dq,$8e,Mre,Kz,K8e,Hc,$v,Ph,fot,Qv,Gz,tne,uO,$n,Zz,Une,eAe,tAe,nAe,rAe,oAe,iAe,sAe,aAe,cAe,lAe,uAe,dAe,fAe,pAe,mAe,gAe,yAe,bAe,vAe,hot,pot,gr,Yz,mot,got,Kx,Gx,TS,MH,NH,LH,jne,cA,$o,_r,zne,dH,yot,bot,Uv,one,ine,C4e,vot,Rh,qc,Di,a3,wot,Hne,A4e,T4e,xot,N4e,L4e,Eot,ane,cne,B4e,lne,D4e,Rf,Ih,ug,If,Jz,Sot,kot,n3,_ot,Su,Cot,Wne,F4e,Zx,nA,dne,kAe,Kv,fne,wm,Tot,Yx,Qx,OO,Vne,hH,Bre,Dre,Rot,U4e,Iot,$ne,_Ae,lA,Kne,z4e,CAe,hne,H4e,q4e,mA,Ws,SS,kS,Ad,zv,Fre,b1,Sm,FH,Gne,eo,Zne,yt,Of,Xz,Oot,Yne,Pot,Mot,pne,UH,jre,OAe,Not,eH,jH,Z4e,Y4e,DAe,zH,FAe,fA,jv,xm,UAe,Lot,Bot,Dot,jAe,tH,Fot,Q4e,J4e,vO,nH,mO,_l,Qne,rA,X4e,dO,Uot,NO,eCe,rH,jot,tCe,oA,zot,Hot,HAe,qAe,WAe,VAe,He,fO,oH,gne,Yv,wO,h3,RS,qot,wA,Wot,Vot,Wc,vt,HH,Vo,hs,pa,iA,Jne,pH,yA,nCe,Xne,hA,GAe,$ot,Kot,ere,p3,Al,oCe,tre,oit,iit,Vs,YAe,sCe,zre,c3,fg,iH,Cd,o3,aCe,qH,nre,Nh,dit,Jx,Xx,_S,Gv,bA,mH,hit,pit,mit,git,yit,bit,vit,aA,wit,xit,co,BO,sH,hCe,pCe,VH,DO,xO,gH,ore,lTe,Eit,Sit,yCe,kit,_it,Cit,fTe,$H,hTe,IS,CS,Tit,Hv,EO,gTe,qre,Oit,Pit,KH,i3,pA,yO,yH,bH,are,vH,cre,yne,_Ce,wH,lre,bne,CCe,SO,GH,vne,ACe,bTe,dg,Mit,vTe,Nit,EH,wTe,xTe,ETe,v1,ure,qv,dre,t3,xS,Uit,jit,STe,ICe,OCe,zit,fre,Wre,Vre,CTe,Hit,xne,aH,Vit,ES,_ne,PCe,Cne,MCe,Kit,LTe,MS,NCe,LCe,DTe,Ane,DCe,Tne,FCe,Rne,UCe,Zit,$O,Qit,jCe,zCe,Ine,HCe,qCe,WCe,One,VCe,Jre,zTe,mq,rst,ost,ist,sst,kH,Pne,lst,HTe,qTe,ust,dst,hst,EA,QH,hre,mst,ZCe,gst,JH,yst,pre,bst,Mne,vst,wst,QCe,xst,Est,p1,m1,Sst,kst,_st,Ve,WTe,d3,Cst,XH,Xre,s3,eq,eoe,VTe,Eu,KTe,GTe,Rd,pg,tq,ZTe,nq,jO,NS,JCe,zO,HO,XCe,Tst,yn,rq,Rst,YTe,Nne,oq,mre,gre,h1,Ist,mg,Ost,yre,t8e,QTe,Nst,Bst,bre,Dst,Fst,vre,sq,jst,zst,r8e,o8e,i8e,s8e,a8e,c8e,lH,l8e,Wst,wre,aq,$st,Kst,Ere,Sre,Qst,Jst,Xst,eat,tat,nat,toe,u3,noe,u8e,AS,Lne,_H,e7e,gq,E1,Cl,t7e,kre,d8e,n7e,rat,f8e,_re,roe,oat,h8e,ooe,Cre,o7e,CH,ioe,sat,aat,ve,cq,cat,lat,p8e,uat,yq,f3,i7e,m8e,dat,s7e,g8e,fat,y8e,a7e,hat,c7e,l7e,km,soe,v8e,w8e,uH,bO,AH,pat,u7e,aoe,mat,gat,yat,bat,vat,wat,d7e,coe,f7e,xat,h7e,Eat,Are,x8e,Sat,kat,_at,loe,Bne,Cat,Aat,Tat,Rat,doe,foe,AO,C8e,A8e,Iat,Oat,Pat,_u,Tre,Xt,Dne,qO,TO,m7e,g7e,Lat,Bat,y7e,Dat,v7e=ce(()=>{p();Rre=he(s_e()),Cu=he(xee()),SA=he(l_e());Oz();h4e();Jte();Id=typeof globalThis<\"u\"?globalThis:typeof self<\"u\"?self:typeof window<\"u\"?window:{},g1=[],Em=[],Krt=typeof Uint8Array<\"u\"?Uint8Array:Array,Ire=!1;Zrt={}.toString,P8e=Array.isArray||function(t){return Zrt.call(t)==\"[object Array]\"};at.TYPED_ARRAY_SUPPORT=Id.TYPED_ARRAY_SUPPORT===void 0||Id.TYPED_ARRAY_SUPPORT;Yrt=TH();at.poolSize=8192,at._augment=function(t){return t.__proto__=at.prototype,t},at.from=function(t,e,n){return M8e(null,t,e,n)},at.TYPED_ARRAY_SUPPORT&&(at.prototype.__proto__=Uint8Array.prototype,at.__proto__=Uint8Array,typeof Symbol<\"u\"&&Symbol.species&&at[Symbol.species]),at.alloc=function(t,e,n){return function(r,o,i,a){return N8e(o),o<=0?Vv(r,o):i!==void 0?typeof a==\"string\"?Vv(r,o).fill(i,a):Vv(r,o).fill(i):Vv(r,o)}(null,t,e,n)},at.allocUnsafe=function(t){return Fne(null,t)},at.allocUnsafeSlow=function(t){return Fne(null,t)},at.isBuffer=j8e,at.compare=function(t,e){if(!y1(t)||!y1(e))throw new TypeError(\"Arguments must be Buffers\");if(t===e)return 0;for(var n=t.length,r=e.length,o=0,i=Math.min(n,r);o<i;++o)if(t[o]!==e[o]){n=t[o],r=e[o];break}return n<r?-1:r<n?1:0},at.isEncoding=function(t){switch(String(t).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"latin1\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}},at.concat=function(t,e){if(!P8e(t))throw new TypeError(\\'\"list\" argument must be an Array of Buffers\\');if(t.length===0)return at.alloc(0);var n;if(e===void 0)for(e=0,n=0;n<t.length;++n)e+=t[n].length;var r=at.allocUnsafe(e),o=0;for(n=0;n<t.length;++n){var i=t[n];if(!y1(i))throw new TypeError(\\'\"list\" argument must be an Array of Buffers\\');i.copy(r,o),o+=i.length}return r},at.byteLength=L8e,at.prototype._isBuffer=!0,at.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError(\"Buffer size must be a multiple of 16-bits\");for(var e=0;e<t;e+=2)vS(this,e,e+1);return this},at.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError(\"Buffer size must be a multiple of 32-bits\");for(var e=0;e<t;e+=4)vS(this,e,e+3),vS(this,e+1,e+2);return this},at.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError(\"Buffer size must be a multiple of 64-bits\");for(var e=0;e<t;e+=8)vS(this,e,e+7),vS(this,e+1,e+6),vS(this,e+2,e+5),vS(this,e+3,e+4);return this},at.prototype.toString=function(){var t=0|this.length;return t===0?\"\":arguments.length===0?D8e(this,0,t):Qrt.apply(this,arguments)},at.prototype.equals=function(t){if(!y1(t))throw new TypeError(\"Argument must be a Buffer\");return this===t||at.compare(this,t)===0},at.prototype.inspect=function(){var t=\"\";return this.length>0&&(t=this.toString(\"hex\",0,50).match(/.{2}/g).join(\" \"),this.length>50&&(t+=\" ... \")),\"<Buffer \"+t+\">\"},at.prototype.compare=function(t,e,n,r,o){if(!y1(t))throw new TypeError(\"Argument must be a Buffer\");if(e===void 0&&(e=0),n===void 0&&(n=t?t.length:0),r===void 0&&(r=0),o===void 0&&(o=this.length),e<0||n>t.length||r<0||o>this.length)throw new RangeError(\"out of range index\");if(r>=o&&e>=n)return 0;if(r>=o)return-1;if(e>=n)return 1;if(this===t)return 0;for(var i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0),c=Math.min(i,a),u=this.slice(r,o),d=t.slice(e,n),h=0;h<c;++h)if(u[h]!==d[h]){i=u[h],a=d[h];break}return i<a?-1:a<i?1:0},at.prototype.includes=function(t,e,n){return this.indexOf(t,e,n)!==-1},at.prototype.indexOf=function(t,e,n){return m4e(this,t,e,n,!0)},at.prototype.lastIndexOf=function(t,e,n){return m4e(this,t,e,n,!1)},at.prototype.write=function(t,e,n,r){if(e===void 0)r=\"utf8\",n=this.length,e=0;else if(n===void 0&&typeof e==\"string\")r=e,n=this.length,e=0;else{if(!isFinite(e))throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");e|=0,isFinite(n)?(n|=0,r===void 0&&(r=\"utf8\")):(r=n,n=void 0)}var o=this.length-e;if((n===void 0||n>o)&&(n=o),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");r||(r=\"utf8\");for(var i=!1;;)switch(r){case\"hex\":return Jrt(this,t,e,n);case\"utf8\":case\"utf-8\":return Xrt(this,t,e,n);case\"ascii\":return B8e(this,t,e,n);case\"latin1\":case\"binary\":return eot(this,t,e,n);case\"base64\":return tot(this,t,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return not(this,t,e,n);default:if(i)throw new TypeError(\"Unknown encoding: \"+r);r=(\"\"+r).toLowerCase(),i=!0}},at.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};y4e=4096;at.prototype.slice=function(t,e){var n,r=this.length;if((t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=e===void 0?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e<t&&(e=t),at.TYPED_ARRAY_SUPPORT)(n=this.subarray(t,e)).__proto__=at.prototype;else{var o=e-t;n=new at(o,void 0);for(var i=0;i<o;++i)n[i]=this[i+t]}return n},at.prototype.readUIntLE=function(t,e,n){t|=0,e|=0,n||jc(t,e,this.length);for(var r=this[t],o=1,i=0;++i<e&&(o*=256);)r+=this[t+i]*o;return r},at.prototype.readUIntBE=function(t,e,n){t|=0,e|=0,n||jc(t,e,this.length);for(var r=this[t+--e],o=1;e>0&&(o*=256);)r+=this[t+--e]*o;return r},at.prototype.readUInt8=function(t,e){return e||jc(t,1,this.length),this[t]},at.prototype.readUInt16LE=function(t,e){return e||jc(t,2,this.length),this[t]|this[t+1]<<8},at.prototype.readUInt16BE=function(t,e){return e||jc(t,2,this.length),this[t]<<8|this[t+1]},at.prototype.readUInt32LE=function(t,e){return e||jc(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},at.prototype.readUInt32BE=function(t,e){return e||jc(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},at.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||jc(t,e,this.length);for(var r=this[t],o=1,i=0;++i<e&&(o*=256);)r+=this[t+i]*o;return r>=(o*=128)&&(r-=Math.pow(2,8*e)),r},at.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||jc(t,e,this.length);for(var r=e,o=1,i=this[t+--r];r>0&&(o*=256);)i+=this[t+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*e)),i},at.prototype.readInt8=function(t,e){return e||jc(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},at.prototype.readInt16LE=function(t,e){e||jc(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},at.prototype.readInt16BE=function(t,e){e||jc(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},at.prototype.readInt32LE=function(t,e){return e||jc(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},at.prototype.readInt32BE=function(t,e){return e||jc(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},at.prototype.readFloatLE=function(t,e){return e||jc(t,4,this.length),Wz(this,t,!0,23,4)},at.prototype.readFloatBE=function(t,e){return e||jc(t,4,this.length),Wz(this,t,!1,23,4)},at.prototype.readDoubleLE=function(t,e){return e||jc(t,8,this.length),Wz(this,t,!0,52,8)},at.prototype.readDoubleBE=function(t,e){return e||jc(t,8,this.length),Wz(this,t,!1,52,8)},at.prototype.writeUIntLE=function(t,e,n,r){t=+t,e|=0,n|=0,r||Tf(this,t,e,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[e]=255&t;++i<n&&(o*=256);)this[e+i]=t/o&255;return e+n},at.prototype.writeUIntBE=function(t,e,n,r){t=+t,e|=0,n|=0,r||Tf(this,t,e,n,Math.pow(2,8*n)-1,0);var o=n-1,i=1;for(this[e+o]=255&t;--o>=0&&(i*=256);)this[e+o]=t/i&255;return e+n},at.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,1,255,0),at.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},at.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,2,65535,0),at.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):Vz(this,t,e,!0),e+2},at.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,2,65535,0),at.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):Vz(this,t,e,!1),e+2},at.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,4,4294967295,0),at.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):$z(this,t,e,!0),e+4},at.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,4,4294967295,0),at.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):$z(this,t,e,!1),e+4},at.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e|=0,!r){var o=Math.pow(2,8*n-1);Tf(this,t,e,n,o-1,-o)}var i=0,a=1,c=0;for(this[e]=255&t;++i<n&&(a*=256);)t<0&&c===0&&this[e+i-1]!==0&&(c=1),this[e+i]=(t/a>>0)-c&255;return e+n},at.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e|=0,!r){var o=Math.pow(2,8*n-1);Tf(this,t,e,n,o-1,-o)}var i=n-1,a=1,c=0;for(this[e+i]=255&t;--i>=0&&(a*=256);)t<0&&c===0&&this[e+i+1]!==0&&(c=1),this[e+i]=(t/a>>0)-c&255;return e+n},at.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,1,127,-128),at.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},at.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,2,32767,-32768),at.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):Vz(this,t,e,!0),e+2},at.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,2,32767,-32768),at.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):Vz(this,t,e,!1),e+2},at.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,4,2147483647,-2147483648),at.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):$z(this,t,e,!0),e+4},at.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||Tf(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),at.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):$z(this,t,e,!1),e+4},at.prototype.writeFloatLE=function(t,e,n){return b4e(this,t,e,!0,n)},at.prototype.writeFloatBE=function(t,e,n){return b4e(this,t,e,!1,n)},at.prototype.writeDoubleLE=function(t,e,n){return v4e(this,t,e,!0,n)},at.prototype.writeDoubleBE=function(t,e,n){return v4e(this,t,e,!1,n)},at.prototype.copy=function(t,e,n,r){if(n||(n=0),r||r===0||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r<n&&(r=n),r===n||t.length===0||this.length===0)return 0;if(e<0)throw new RangeError(\"targetStart out of bounds\");if(n<0||n>=this.length)throw new RangeError(\"sourceStart out of bounds\");if(r<0)throw new RangeError(\"sourceEnd out of bounds\");r>this.length&&(r=this.length),t.length-e<r-n&&(r=t.length-e+n);var o,i=r-n;if(this===t&&n<e&&e<r)for(o=i-1;o>=0;--o)t[o+e]=this[o+n];else if(i<1e3||!at.TYPED_ARRAY_SUPPORT)for(o=0;o<i;++o)t[o+e]=this[o+n];else Uint8Array.prototype.set.call(t,this.subarray(n,n+i),e);return i},at.prototype.fill=function(t,e,n,r){if(typeof t==\"string\"){if(typeof e==\"string\"?(r=e,e=0,n=this.length):typeof n==\"string\"&&(r=n,n=this.length),t.length===1){var o=t.charCodeAt(0);o<256&&(t=o)}if(r!==void 0&&typeof r!=\"string\")throw new TypeError(\"encoding must be a string\");if(typeof r==\"string\"&&!at.isEncoding(r))throw new TypeError(\"Unknown encoding: \"+r)}else typeof t==\"number\"&&(t&=255);if(e<0||this.length<e||this.length<n)throw new RangeError(\"Out of range index\");if(n<=e)return this;var i;if(e>>>=0,n=n===void 0?this.length:n>>>0,t||(t=0),typeof t==\"number\")for(i=e;i<n;++i)this[i]=t;else{var a=y1(t)?t:RH(new at(t,r).toString()),c=a.length;for(i=0;i<n-e;++i)this[i+e]=a[i%c]}return this};cot=/[^+\\\\/0-9A-Za-z-_]/g;uot=Object.freeze({__proto__:null,Buffer:at,INSPECT_MAX_BYTES:50,SlowBuffer:function(t){return+t!=t&&(t=0),at.alloc(+t)},isBuffer:j8e,kMaxLength:Yrt}),_m=typeof globalThis<\"u\"?globalThis:typeof window<\"u\"?window:typeof globalThis<\"u\"?globalThis:typeof self<\"u\"?self:{};sA={},Lh={},ku={};Object.defineProperty(ku,\"__esModule\",{value:!0}),ku.isBytes=H8e,ku.number=IH,ku.bool=z8e,ku.bytes=Pre,ku.hash=q8e,ku.exists=W8e,ku.output=V8e;dot={number:IH,bool:z8e,bytes:Pre,hash:q8e,exists:W8e,output:V8e};ku.default=dot,function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.wrapCipher=t.Hash=t.nextTick=t.isLE=t.createView=t.u32=t.u16=t.u8=void 0,t.bytesToHex=r,t.hexToBytes=a,t.hexToNumber=c,t.bytesToNumberBE=function(m){return c(r(m))},t.numberToBytesBE=function(m,g){return a(m.toString(16).padStart(2*g,\"0\"))},t.asyncLoop=async function(m,g,b){let E=Date.now();for(let C=0;C<m;C++){b(C);let T=Date.now()-E;T>=0&&T<g||(await(0,t.nextTick)(),E+=T)}},t.utf8ToBytes=u,t.bytesToUtf8=function(m){return new TextDecoder().decode(m)},t.toBytes=function(m){if(typeof m==\"string\")m=u(m);else{if(!(0,e.isBytes)(m))throw new Error(\"Uint8Array expected, got \"+typeof m);m=h(m)}return m},t.concatBytes=function(...m){let g=0;for(let E=0;E<m.length;E++){let C=m[E];(0,e.bytes)(C),g+=C.length}let b=new Uint8Array(g);for(let E=0,C=0;E<m.length;E++){let T=m[E];b.set(T,C),C+=T.length}return b},t.checkOpts=function(m,g){if(g==null||typeof g!=\"object\")throw new Error(\"options must be defined\");return Object.assign(m,g)},t.equalBytes=function(m,g){if(m.length!==g.length)return!1;let b=0;for(let E=0;E<m.length;E++)b|=m[E]^g[E];return b===0},t.setBigUint64=d,t.u64Lengths=function(m,g){let b=new Uint8Array(16),E=(0,t.createView)(b);return d(E,0,BigInt(g?g.length:0),!0),d(E,8,BigInt(m.length),!0),b},t.isAligned32=function(m){return m.byteOffset%4==0},t.copyBytes=h,t.clean=function(...m){for(let g=0;g<m.length;g++)m[g].fill(0)};let e=ku;if(t.u8=m=>new Uint8Array(m.buffer,m.byteOffset,m.byteLength),t.u16=m=>new Uint16Array(m.buffer,m.byteOffset,Math.floor(m.byteLength/2)),t.u32=m=>new Uint32Array(m.buffer,m.byteOffset,Math.floor(m.byteLength/4)),t.createView=m=>new DataView(m.buffer,m.byteOffset,m.byteLength),t.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,!t.isLE)throw new Error(\"Non little-endian hardware is not supported\");let n=Array.from({length:256},(m,g)=>g.toString(16).padStart(2,\"0\"));function r(m){(0,e.bytes)(m);let g=\"\";for(let b=0;b<m.length;b++)g+=n[m[b]];return g}let o={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function i(m){return m>=o._0&&m<=o._9?m-o._0:m>=o._A&&m<=o._F?m-(o._A-10):m>=o._a&&m<=o._f?m-(o._a-10):void 0}function a(m){if(typeof m!=\"string\")throw new Error(\"hex string expected, got \"+typeof m);let g=m.length,b=g/2;if(g%2)throw new Error(\"padded hex string expected, got unpadded hex of length \"+g);let E=new Uint8Array(b);for(let C=0,T=0;C<b;C++,T+=2){let R=i(m.charCodeAt(T)),L=i(m.charCodeAt(T+1));if(R===void 0||L===void 0){let D=m[T]+m[T+1];throw new Error(\\'hex string expected, got non-hex character \"\\'+D+\\'\" at index \\'+T)}E[C]=16*R+L}return E}function c(m){if(typeof m!=\"string\")throw new Error(\"hex string expected, got \"+typeof m);return BigInt(m===\"\"?\"0\":`0x${m}`)}function u(m){if(typeof m!=\"string\")throw new Error(\"string expected, got \"+typeof m);return new Uint8Array(new TextEncoder().encode(m))}t.nextTick=async()=>{},t.Hash=class{};function d(m,g,b,E){if(typeof m.setBigUint64==\"function\")return m.setBigUint64(g,b,E);let C=BigInt(32),T=BigInt(4294967295),R=Number(b>>C&T),L=Number(b&T),D=E?4:0,G=E?0:4;m.setUint32(g+D,R,E),m.setUint32(g+G,L,E)}function h(m){return Uint8Array.from(m)}t.wrapCipher=(m,g)=>(Object.assign(g,m),g)}(Lh);RO={},zc={};Object.defineProperty(zc,\"__esModule\",{value:!0}),zc.AEAD_TAG_LENGTH=zc.XCHACHA20_NONCE_LENGTH=zc.CURVE25519_PUBLIC_KEY_SIZE=zc.ETH_PUBLIC_KEY_SIZE=zc.UNCOMPRESSED_PUBLIC_KEY_SIZE=zc.COMPRESSED_PUBLIC_KEY_SIZE=zc.SECRET_KEY_LENGTH=void 0,zc.SECRET_KEY_LENGTH=32,zc.COMPRESSED_PUBLIC_KEY_SIZE=33,zc.UNCOMPRESSED_PUBLIC_KEY_SIZE=65,zc.ETH_PUBLIC_KEY_SIZE=64,zc.CURVE25519_PUBLIC_KEY_SIZE=32,zc.XCHACHA20_NONCE_LENGTH=24,zc.AEAD_TAG_LENGTH=16,function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.ephemeralKeySize=t.symmetricNonceLength=t.symmetricAlgorithm=t.isHkdfKeyCompressed=t.isEphemeralKeyCompressed=t.ellipticCurve=t.ECIES_CONFIG=void 0;var e=zc,n=function(){this.ellipticCurve=\"secp256k1\",this.isEphemeralKeyCompressed=!1,this.isHkdfKeyCompressed=!1,this.symmetricAlgorithm=\"aes-256-gcm\",this.symmetricNonceLength=16};t.ECIES_CONFIG=new n,t.ellipticCurve=function(){return t.ECIES_CONFIG.ellipticCurve},t.isEphemeralKeyCompressed=function(){return t.ECIES_CONFIG.isEphemeralKeyCompressed},t.isHkdfKeyCompressed=function(){return t.ECIES_CONFIG.isHkdfKeyCompressed},t.symmetricAlgorithm=function(){return t.ECIES_CONFIG.symmetricAlgorithm},t.symmetricNonceLength=function(){return t.ECIES_CONFIG.symmetricNonceLength},t.ephemeralKeySize=function(){var r={secp256k1:t.ECIES_CONFIG.isEphemeralKeyCompressed?e.COMPRESSED_PUBLIC_KEY_SIZE:e.UNCOMPRESSED_PUBLIC_KEY_SIZE,x25519:e.CURVE25519_PUBLIC_KEY_SIZE,ed25519:e.CURVE25519_PUBLIC_KEY_SIZE};if(t.ECIES_CONFIG.ellipticCurve in r)return r[t.ECIES_CONFIG.ellipticCurve];throw new Error(\"Not implemented\")}}(RO);ene={},OH={},dq={},$8e={},Mre={},Kz={};Object.defineProperty(Kz,\"__esModule\",{value:!0}),Kz.crypto=void 0,Kz.crypto=typeof globalThis==\"object\"&&\"crypto\"in globalThis?globalThis.crypto:void 0,function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.gcm=t.ctr=t.cbc=t.utils=void 0,t.randomBytes=o,t.getWebcryptoSubtle=i,t.managedNonce=function(u){return(0,n.number)(u.nonceLength),(d,...h)=>({encrypt(m,...g){let{nonceLength:b}=u,E=o(b),C=u(d,E,...h).encrypt(m,...g),T=(0,r.concatBytes)(E,C);return C.fill(0),T},decrypt(m,...g){let{nonceLength:b}=u,E=m.subarray(0,b),C=m.subarray(b);return u(d,E,...h).decrypt(C,...g)}})};let e=Kz,n=ku,r=Lh;function o(u=32){if(e.crypto&&typeof e.crypto.getRandomValues==\"function\")return e.crypto.getRandomValues(new Uint8Array(u));if(e.crypto&&typeof e.crypto.randomBytes==\"function\")return e.crypto.randomBytes(u);throw new Error(\"crypto.getRandomValues must be defined\")}function i(){if(e.crypto&&typeof e.crypto.subtle==\"object\"&&e.crypto.subtle!=null)return e.crypto.subtle;throw new Error(\"crypto.subtle must be defined\")}t.utils={async encrypt(u,d,h,m){let g=i(),b=await g.importKey(\"raw\",u,d,!0,[\"encrypt\"]),E=await g.encrypt(h,b,m);return new Uint8Array(E)},async decrypt(u,d,h,m){let g=i(),b=await g.importKey(\"raw\",u,d,!0,[\"decrypt\"]),E=await g.decrypt(h,b,m);return new Uint8Array(E)}};let a={CBC:\"AES-CBC\",CTR:\"AES-CTR\",GCM:\"AES-GCM\"};function c(u){return(d,h,m)=>{(0,n.bytes)(d),(0,n.bytes)(h);let g={name:u,length:8*d.length},b=function(E,C,T){if(E===a.CBC)return{name:a.CBC,iv:C};if(E===a.CTR)return{name:a.CTR,counter:C,length:64};if(E===a.GCM)return T?{name:a.GCM,iv:C,additionalData:T}:{name:a.GCM,iv:C};throw new Error(\"unknown aes block mode\")}(u,h,m);return{encrypt:E=>((0,n.bytes)(E),t.utils.encrypt(d,g,b,E)),decrypt:E=>((0,n.bytes)(E),t.utils.decrypt(d,g,b,E))}}}t.cbc=c(a.CBC),t.ctr=c(a.CTR),t.gcm=c(a.GCM)}(Mre);K8e={},Hc={},$v={},Ph={};Object.defineProperty(Ph,\"__esModule\",{value:!0}),Ph.isBytes=Z8e,Ph.number=PH,Ph.bool=G8e,Ph.bytes=Nre,Ph.hash=Y8e,Ph.exists=Q8e,Ph.output=J8e;fot={number:PH,bool:G8e,bytes:Nre,hash:Y8e,exists:Q8e,output:J8e};Ph.default=fot;Qv={},Gz={};Object.defineProperty(Gz,\"__esModule\",{value:!0}),Gz.crypto=void 0,Gz.crypto=typeof globalThis==\"object\"&&\"crypto\"in globalThis?globalThis.crypto:void 0,function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.Hash=t.nextTick=t.byteSwapIfBE=t.byteSwap=t.isLE=t.rotl=t.rotr=t.createView=t.u32=t.u8=void 0,t.isBytes=function(d){return d instanceof Uint8Array||d!=null&&typeof d==\"object\"&&d.constructor.name===\"Uint8Array\"},t.byteSwap32=function(d){for(let h=0;h<d.length;h++)d[h]=(0,t.byteSwap)(d[h])},t.bytesToHex=function(d){(0,n.bytes)(d);let h=\"\";for(let m=0;m<d.length;m++)h+=r[d[m]];return h},t.hexToBytes=function(d){if(typeof d!=\"string\")throw new Error(\"hex string expected, got \"+typeof d);let h=d.length,m=h/2;if(h%2)throw new Error(\"padded hex string expected, got unpadded hex of length \"+h);let g=new Uint8Array(m);for(let b=0,E=0;b<m;b++,E+=2){let C=i(d.charCodeAt(E)),T=i(d.charCodeAt(E+1));if(C===void 0||T===void 0){let R=d[E]+d[E+1];throw new Error(\\'hex string expected, got non-hex character \"\\'+R+\\'\" at index \\'+E)}g[b]=16*C+T}return g},t.asyncLoop=async function(d,h,m){let g=Date.now();for(let b=0;b<d;b++){m(b);let E=Date.now()-g;E>=0&&E<h||(await(0,t.nextTick)(),g+=E)}},t.utf8ToBytes=a,t.toBytes=c,t.concatBytes=function(...d){let h=0;for(let g=0;g<d.length;g++){let b=d[g];(0,n.bytes)(b),h+=b.length}let m=new Uint8Array(h);for(let g=0,b=0;g<d.length;g++){let E=d[g];m.set(E,b),b+=E.length}return m},t.checkOpts=function(d,h){if(h!==void 0&&u.call(h)!==\"[object Object]\")throw new Error(\"Options should be object or undefined\");return Object.assign(d,h)},t.wrapConstructor=function(d){let h=g=>d().update(c(g)).digest(),m=d();return h.outputLen=m.outputLen,h.blockLen=m.blockLen,h.create=()=>d(),h},t.wrapConstructorWithOpts=function(d){let h=(g,b)=>d(b).update(c(g)).digest(),m=d({});return h.outputLen=m.outputLen,h.blockLen=m.blockLen,h.create=g=>d(g),h},t.wrapXOFConstructorWithOpts=function(d){let h=(g,b)=>d(b).update(c(g)).digest(),m=d({});return h.outputLen=m.outputLen,h.blockLen=m.blockLen,h.create=g=>d(g),h},t.randomBytes=function(d=32){if(e.crypto&&typeof e.crypto.getRandomValues==\"function\")return e.crypto.getRandomValues(new Uint8Array(d));if(e.crypto&&typeof e.crypto.randomBytes==\"function\")return e.crypto.randomBytes(d);throw new Error(\"crypto.getRandomValues must be defined\")};let e=Gz,n=Ph;t.u8=d=>new Uint8Array(d.buffer,d.byteOffset,d.byteLength),t.u32=d=>new Uint32Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/4)),t.createView=d=>new DataView(d.buffer,d.byteOffset,d.byteLength),t.rotr=(d,h)=>d<<32-h|d>>>h,t.rotl=(d,h)=>d<<h|d>>>32-h>>>0,t.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,t.byteSwap=d=>d<<24&4278190080|d<<8&16711680|d>>>8&65280|d>>>24&255,t.byteSwapIfBE=t.isLE?d=>d:d=>(0,t.byteSwap)(d);let r=Array.from({length:256},(d,h)=>h.toString(16).padStart(2,\"0\")),o={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function i(d){return d>=o._0&&d<=o._9?d-o._0:d>=o._A&&d<=o._F?d-(o._A-10):d>=o._a&&d<=o._f?d-(o._a-10):void 0}function a(d){if(typeof d!=\"string\")throw new Error(\"utf8ToBytes expected string, got \"+typeof d);return new Uint8Array(new TextEncoder().encode(d))}function c(d){return typeof d==\"string\"&&(d=a(d)),(0,n.bytes)(d),d}t.nextTick=async()=>{},t.Hash=class{clone(){return this._cloneInto()}};let u={}.toString}(Qv),Object.defineProperty($v,\"__esModule\",{value:!0}),$v.HashMD=$v.Maj=$v.Chi=void 0;tne=Ph,uO=Qv;$v.Chi=(t,e,n)=>t&e^~t&n;$v.Maj=(t,e,n)=>t&e^t&n^e&n;$v.HashMD=class extends uO.Hash{constructor(t,e,n,r){super(),this.blockLen=t,this.outputLen=e,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=(0,uO.createView)(this.buffer)}update(t){(0,tne.exists)(this);let{view:e,buffer:n,blockLen:r}=this,o=(t=(0,uO.toBytes)(t)).length;for(let i=0;i<o;){let a=Math.min(r-this.pos,o-i);if(a!==r)n.set(t.subarray(i,i+a),this.pos),this.pos+=a,i+=a,this.pos===r&&(this.process(e,0),this.pos=0);else{let c=(0,uO.createView)(t);for(;r<=o-i;i+=r)this.process(c,i)}}return this.length+=t.length,this.roundClean(),this}digestInto(t){(0,tne.exists)(this),(0,tne.output)(t,this),this.finished=!0;let{buffer:e,view:n,blockLen:r,isLE:o}=this,{pos:i}=this;e[i++]=128,this.buffer.subarray(i).fill(0),this.padOffset>r-i&&(this.process(n,0),i=0);for(let h=i;h<r;h++)e[h]=0;(function(h,m,g,b){if(typeof h.setBigUint64==\"function\")return h.setBigUint64(m,g,b);let E=BigInt(32),C=BigInt(4294967295),T=Number(g>>E&C),R=Number(g&C),L=b?4:0,D=b?0:4;h.setUint32(m+L,T,b),h.setUint32(m+D,R,b)})(n,r-8,BigInt(8*this.length),o),this.process(n,0);let a=(0,uO.createView)(t),c=this.outputLen;if(c%4)throw new Error(\"_sha2: outputLen should be aligned to 32bit\");let u=c/4,d=this.get();if(u>d.length)throw new Error(\"_sha2: outputLen bigger than state\");for(let h=0;h<u;h++)a.setUint32(4*h,d[h],o)}digest(){let{buffer:t,outputLen:e}=this;this.digestInto(t);let n=t.slice(0,e);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:e,buffer:n,length:r,finished:o,destroyed:i,pos:a}=this;return t.length=r,t.pos=a,t.finished=o,t.destroyed=i,r%e&&t.buffer.set(n),t}};$n={};Object.defineProperty($n,\"__esModule\",{value:!0}),$n.add5L=$n.add5H=$n.add4H=$n.add4L=$n.add3H=$n.add3L=$n.rotlBL=$n.rotlBH=$n.rotlSL=$n.rotlSH=$n.rotr32L=$n.rotr32H=$n.rotrBL=$n.rotrBH=$n.rotrSL=$n.rotrSH=$n.shrSL=$n.shrSH=$n.toBig=void 0,$n.fromBig=Lre,$n.split=X8e,$n.add=hAe;Zz=BigInt(2**32-1),Une=BigInt(32);eAe=(t,e)=>BigInt(t>>>0)<<Une|BigInt(e>>>0);$n.toBig=eAe;tAe=(t,e,n)=>t>>>n;$n.shrSH=tAe;nAe=(t,e,n)=>t<<32-n|e>>>n;$n.shrSL=nAe;rAe=(t,e,n)=>t>>>n|e<<32-n;$n.rotrSH=rAe;oAe=(t,e,n)=>t<<32-n|e>>>n;$n.rotrSL=oAe;iAe=(t,e,n)=>t<<64-n|e>>>n-32;$n.rotrBH=iAe;sAe=(t,e,n)=>t>>>n-32|e<<64-n;$n.rotrBL=sAe;aAe=(t,e)=>e;$n.rotr32H=aAe;cAe=(t,e)=>t;$n.rotr32L=cAe;lAe=(t,e,n)=>t<<n|e>>>32-n;$n.rotlSH=lAe;uAe=(t,e,n)=>e<<n|t>>>32-n;$n.rotlSL=uAe;dAe=(t,e,n)=>e<<n-32|t>>>64-n;$n.rotlBH=dAe;fAe=(t,e,n)=>t<<n-32|e>>>64-n;$n.rotlBL=fAe;pAe=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0);$n.add3L=pAe;mAe=(t,e,n,r)=>e+n+r+(t/2**32|0)|0;$n.add3H=mAe;gAe=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0);$n.add4L=gAe;yAe=(t,e,n,r,o)=>e+n+r+o+(t/2**32|0)|0;$n.add4H=yAe;bAe=(t,e,n,r,o)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(o>>>0);$n.add5L=bAe;vAe=(t,e,n,r,o,i)=>e+n+r+o+i+(t/2**32|0)|0;$n.add5H=vAe;hot={fromBig:Lre,split:X8e,toBig:eAe,shrSH:tAe,shrSL:nAe,rotrSH:rAe,rotrSL:oAe,rotrBH:iAe,rotrBL:sAe,rotr32H:aAe,rotr32L:cAe,rotlSH:lAe,rotlSL:uAe,rotlBH:dAe,rotlBL:fAe,add:hAe,add3L:pAe,add3H:mAe,add4L:gAe,add4H:yAe,add5H:vAe,add5L:bAe};$n.default=hot,Object.defineProperty(Hc,\"__esModule\",{value:!0}),Hc.sha384=Hc.sha512_256=Hc.sha512_224=Hc.sha512=Hc.SHA384=Hc.SHA512_256=Hc.SHA512_224=Hc.SHA512=void 0;pot=$v,gr=$n,Yz=Qv,[mot,got]=gr.default.split([\"0x428a2f98d728ae22\",\"0x7137449123ef65cd\",\"0xb5c0fbcfec4d3b2f\",\"0xe9b5dba58189dbbc\",\"0x3956c25bf348b538\",\"0x59f111f1b605d019\",\"0x923f82a4af194f9b\",\"0xab1c5ed5da6d8118\",\"0xd807aa98a3030242\",\"0x12835b0145706fbe\",\"0x243185be4ee4b28c\",\"0x550c7dc3d5ffb4e2\",\"0x72be5d74f27b896f\",\"0x80deb1fe3b1696b1\",\"0x9bdc06a725c71235\",\"0xc19bf174cf692694\",\"0xe49b69c19ef14ad2\",\"0xefbe4786384f25e3\",\"0x0fc19dc68b8cd5b5\",\"0x240ca1cc77ac9c65\",\"0x2de92c6f592b0275\",\"0x4a7484aa6ea6e483\",\"0x5cb0a9dcbd41fbd4\",\"0x76f988da831153b5\",\"0x983e5152ee66dfab\",\"0xa831c66d2db43210\",\"0xb00327c898fb213f\",\"0xbf597fc7beef0ee4\",\"0xc6e00bf33da88fc2\",\"0xd5a79147930aa725\",\"0x06ca6351e003826f\",\"0x142929670a0e6e70\",\"0x27b70a8546d22ffc\",\"0x2e1b21385c26c926\",\"0x4d2c6dfc5ac42aed\",\"0x53380d139d95b3df\",\"0x650a73548baf63de\",\"0x766a0abb3c77b2a8\",\"0x81c2c92e47edaee6\",\"0x92722c851482353b\",\"0xa2bfe8a14cf10364\",\"0xa81a664bbc423001\",\"0xc24b8b70d0f89791\",\"0xc76c51a30654be30\",\"0xd192e819d6ef5218\",\"0xd69906245565a910\",\"0xf40e35855771202a\",\"0x106aa07032bbd1b8\",\"0x19a4c116b8d2d0c8\",\"0x1e376c085141ab53\",\"0x2748774cdf8eeb99\",\"0x34b0bcb5e19b48a8\",\"0x391c0cb3c5c95a63\",\"0x4ed8aa4ae3418acb\",\"0x5b9cca4f7763e373\",\"0x682e6ff3d6b2b8a3\",\"0x748f82ee5defb2fc\",\"0x78a5636f43172f60\",\"0x84c87814a1f0ab72\",\"0x8cc702081a6439ec\",\"0x90befffa23631e28\",\"0xa4506cebde82bde9\",\"0xbef9a3f7b2c67915\",\"0xc67178f2e372532b\",\"0xca273eceea26619c\",\"0xd186b8c721c0c207\",\"0xeada7dd6cde0eb1e\",\"0xf57d4f7fee6ed178\",\"0x06f067aa72176fba\",\"0x0a637dc5a2c898a6\",\"0x113f9804bef90dae\",\"0x1b710b35131c471b\",\"0x28db77f523047d84\",\"0x32caab7b40c72493\",\"0x3c9ebe0a15c9bebc\",\"0x431d67c49c100d4c\",\"0x4cc5d4becb3e42b6\",\"0x597f299cfc657e2a\",\"0x5fcb6fab3ad6faec\",\"0x6c44198c4a475817\"].map(t=>BigInt(t))),Kx=new Uint32Array(80),Gx=new Uint32Array(80),TS=class extends pot.HashMD{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:n,Bh:r,Bl:o,Ch:i,Cl:a,Dh:c,Dl:u,Eh:d,El:h,Fh:m,Fl:g,Gh:b,Gl:E,Hh:C,Hl:T}=this;return[e,n,r,o,i,a,c,u,d,h,m,g,b,E,C,T]}set(e,n,r,o,i,a,c,u,d,h,m,g,b,E,C,T){this.Ah=0|e,this.Al=0|n,this.Bh=0|r,this.Bl=0|o,this.Ch=0|i,this.Cl=0|a,this.Dh=0|c,this.Dl=0|u,this.Eh=0|d,this.El=0|h,this.Fh=0|m,this.Fl=0|g,this.Gh=0|b,this.Gl=0|E,this.Hh=0|C,this.Hl=0|T}process(e,n){for(let D=0;D<16;D++,n+=4)Kx[D]=e.getUint32(n),Gx[D]=e.getUint32(n+=4);for(let D=16;D<80;D++){let G=0|Kx[D-15],W=0|Gx[D-15],J=gr.default.rotrSH(G,W,1)^gr.default.rotrSH(G,W,8)^gr.default.shrSH(G,W,7),ne=gr.default.rotrSL(G,W,1)^gr.default.rotrSL(G,W,8)^gr.default.shrSL(G,W,7),ie=0|Kx[D-2],Z=0|Gx[D-2],ae=gr.default.rotrSH(ie,Z,19)^gr.default.rotrBH(ie,Z,61)^gr.default.shrSH(ie,Z,6),V=gr.default.rotrSL(ie,Z,19)^gr.default.rotrBL(ie,Z,61)^gr.default.shrSL(ie,Z,6),$=gr.default.add4L(ne,V,Gx[D-7],Gx[D-16]),F=gr.default.add4H($,J,ae,Kx[D-7],Kx[D-16]);Kx[D]=0|F,Gx[D]=0|$}let{Ah:r,Al:o,Bh:i,Bl:a,Ch:c,Cl:u,Dh:d,Dl:h,Eh:m,El:g,Fh:b,Fl:E,Gh:C,Gl:T,Hh:R,Hl:L}=this;for(let D=0;D<80;D++){let G=gr.default.rotrSH(m,g,14)^gr.default.rotrSH(m,g,18)^gr.default.rotrBH(m,g,41),W=gr.default.rotrSL(m,g,14)^gr.default.rotrSL(m,g,18)^gr.default.rotrBL(m,g,41),J=m&b^~m&C,ne=g&E^~g&T,ie=gr.default.add5L(L,W,ne,got[D],Gx[D]),Z=gr.default.add5H(ie,R,G,J,mot[D],Kx[D]),ae=0|ie,V=gr.default.rotrSH(r,o,28)^gr.default.rotrBH(r,o,34)^gr.default.rotrBH(r,o,39),$=gr.default.rotrSL(r,o,28)^gr.default.rotrBL(r,o,34)^gr.default.rotrBL(r,o,39),F=r&i^r&c^i&c,_=o&a^o&u^a&u;R=0|C,L=0|T,C=0|b,T=0|E,b=0|m,E=0|g,{h:m,l:g}=gr.default.add(0|d,0|h,0|Z,0|ae),d=0|c,h=0|u,c=0|i,u=0|a,i=0|r,a=0|o;let O=gr.default.add3L(ae,$,_);r=gr.default.add3H(O,Z,V,F),o=0|O}({h:r,l:o}=gr.default.add(0|this.Ah,0|this.Al,0|r,0|o)),{h:i,l:a}=gr.default.add(0|this.Bh,0|this.Bl,0|i,0|a),{h:c,l:u}=gr.default.add(0|this.Ch,0|this.Cl,0|c,0|u),{h:d,l:h}=gr.default.add(0|this.Dh,0|this.Dl,0|d,0|h),{h:m,l:g}=gr.default.add(0|this.Eh,0|this.El,0|m,0|g),{h:b,l:E}=gr.default.add(0|this.Fh,0|this.Fl,0|b,0|E),{h:C,l:T}=gr.default.add(0|this.Gh,0|this.Gl,0|C,0|T),{h:R,l:L}=gr.default.add(0|this.Hh,0|this.Hl,0|R,0|L),this.set(r,o,i,a,c,u,d,h,m,g,b,E,C,T,R,L)}roundClean(){Kx.fill(0),Gx.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};Hc.SHA512=TS;MH=class extends TS{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}};Hc.SHA512_224=MH;NH=class extends TS{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}};Hc.SHA512_256=NH;LH=class extends TS{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}};Hc.SHA384=LH,Hc.sha512=(0,Yz.wrapConstructor)(()=>new TS),Hc.sha512_224=(0,Yz.wrapConstructor)(()=>new MH),Hc.sha512_256=(0,Yz.wrapConstructor)(()=>new NH),Hc.sha384=(0,Yz.wrapConstructor)(()=>new LH);jne={},cA={},$o={},_r={};Object.defineProperty(_r,\"__esModule\",{value:!0}),_r.notImplemented=_r.bitMask=void 0,_r.isBytes=BH,_r.abytes=DH,_r.abool=function(t,e){if(typeof e!=\"boolean\")throw new Error(`${t} must be valid boolean, got \"${e}\".`)},_r.bytesToHex=nne,_r.numberToHexUnpadded=x4e,_r.hexToNumber=rne,_r.hexToBytes=fH,_r.bytesToNumberBE=function(t){return rne(nne(t))},_r.bytesToNumberLE=function(t){return DH(t),rne(nne(Uint8Array.from(t).reverse()))},_r.numberToBytesBE=S4e,_r.numberToBytesLE=function(t,e){return S4e(t,e).reverse()},_r.numberToVarBytesBE=function(t){return fH(x4e(t))},_r.ensureBytes=function(t,e,n){let r;if(typeof e==\"string\")try{r=fH(e)}catch(i){throw new Error(`${t} must be valid hex string, got \"${e}\". Cause: ${i}`)}else{if(!BH(e))throw new Error(`${t} must be hex string or Uint8Array`);r=Uint8Array.from(e)}let o=r.length;if(typeof n==\"number\"&&o!==n)throw new Error(`${t} expected ${n} bytes, got ${o}`);return r},_r.concatBytes=k4e,_r.equalBytes=function(t,e){if(t.length!==e.length)return!1;let n=0;for(let r=0;r<t.length;r++)n|=t[r]^e[r];return n===0},_r.utf8ToBytes=function(t){if(typeof t!=\"string\")throw new Error(\"utf8ToBytes expected string, got \"+typeof t);return new Uint8Array(new TextEncoder().encode(t))},_r.inRange=_4e,_r.aInRange=function(t,e,n,r){if(!_4e(e,n,r))throw new Error(`expected valid ${t}: ${n} <= n < ${r}, got ${typeof e} ${e}`)},_r.bitLen=function(t){let e;for(e=0;t>zne;t>>=dH,e+=1);return e},_r.bitGet=function(t,e){return t>>BigInt(e)&dH},_r.bitSet=function(t,e,n){return t|(n?dH:zne)<<BigInt(e)},_r.createHmacDrbg=function(t,e,n){if(typeof t!=\"number\"||t<2)throw new Error(\"hashLen must be a number\");if(typeof e!=\"number\"||e<2)throw new Error(\"qByteLen must be a number\");if(typeof n!=\"function\")throw new Error(\"hmacFn must be a function\");let r=ine(t),o=ine(t),i=0,a=()=>{r.fill(1),o.fill(0),i=0},c=(...h)=>n(o,r,...h),u=(h=ine())=>{o=c(C4e([0]),h),r=c(),h.length!==0&&(o=c(C4e([1]),h),r=c())},d=()=>{if(i++>=1e3)throw new Error(\"drbg: tried 1000 values\");let h=0,m=[];for(;h<e;){r=c();let g=r.slice();m.push(g),h+=r.length}return k4e(...m)};return(h,m)=>{let g;for(a(),u(h);!(g=m(d()));)u();return a(),g}},_r.validateObject=function(t,e,n={}){let r=(o,i,a)=>{let c=vot[i];if(typeof c!=\"function\")throw new Error(`Invalid validator \"${i}\", expected function`);let u=t[o];if(!(a&&u===void 0||c(u,t)))throw new Error(`Invalid param ${String(o)}=${u} (${typeof u}), expected ${i}`)};for(let[o,i]of Object.entries(e))r(o,i,!1);for(let[o,i]of Object.entries(n))r(o,i,!0);return t},_r.memoized=function(t){let e=new WeakMap;return(n,...r)=>{let o=e.get(n);if(o!==void 0)return o;let i=t(n,...r);return e.set(n,i),i}};zne=BigInt(0),dH=BigInt(1),yot=BigInt(2);bot=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,\"0\"));Uv={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};one=t=>typeof t==\"bigint\"&&zne<=t;_r.bitMask=t=>(yot<<BigInt(t-1))-dH;ine=t=>new Uint8Array(t),C4e=t=>Uint8Array.from(t),vot={bigint:t=>typeof t==\"bigint\",function:t=>typeof t==\"function\",boolean:t=>typeof t==\"boolean\",string:t=>typeof t==\"string\",stringOrUint8Array:t=>typeof t==\"string\"||BH(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t==\"function\"&&Number.isSafeInteger(t.outputLen)};_r.notImplemented=()=>{throw new Error(\"not implemented\")},Object.defineProperty($o,\"__esModule\",{value:!0}),$o.isNegativeLE=void 0,$o.mod=Oh,$o.pow=wAe,$o.pow2=function(t,e,n){let r=t;for(;e-- >qc;)r*=r,r%=n;return r},$o.invert=Qz,$o.tonelliShanks=xAe,$o.FpSqrt=R4e,$o.validateField=function(t){let e=xot.reduce((n,r)=>(n[r]=\"function\",n),{ORDER:\"bigint\",MASK:\"bigint\",BYTES:\"isSafeInteger\",BITS:\"isSafeInteger\"});return(0,Rh.validateObject)(t,e)},$o.FpPow=I4e,$o.FpInvertBatch=O4e,$o.FpDiv=function(t,e,n){return t.mul(e,typeof n==\"bigint\"?Qz(n,t.ORDER):t.inv(n))},$o.FpLegendre=P4e,$o.FpIsSquare=function(t){let e=P4e(t.ORDER);return n=>{let r=e(t,n);return t.eql(r,t.ZERO)||t.eql(r,t.ONE)}},$o.nLength=sne,$o.Field=function(t,e,n=!1,r={}){if(t<=qc)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:o,nByteLength:i}=sne(t,e);if(i>2048)throw new Error(\"Field lengths over 2048 bytes are not supported\");let a=R4e(t),c=Object.freeze({ORDER:t,BITS:o,BYTES:i,MASK:(0,Rh.bitMask)(o),ZERO:qc,ONE:Di,create:u=>Oh(u,t),isValid:u=>{if(typeof u!=\"bigint\")throw new Error(\"Invalid field element: expected bigint, got \"+typeof u);return qc<=u&&u<t},is0:u=>u===qc,isOdd:u=>(u&Di)===Di,neg:u=>Oh(-u,t),eql:(u,d)=>u===d,sqr:u=>Oh(u*u,t),add:(u,d)=>Oh(u+d,t),sub:(u,d)=>Oh(u-d,t),mul:(u,d)=>Oh(u*d,t),pow:(u,d)=>I4e(c,u,d),div:(u,d)=>Oh(u*Qz(d,t),t),sqrN:u=>u*u,addN:(u,d)=>u+d,subN:(u,d)=>u-d,mulN:(u,d)=>u*d,inv:u=>Qz(u,t),sqrt:r.sqrt||(u=>a(c,u)),invertBatch:u=>O4e(c,u),cmov:(u,d,h)=>h?d:u,toBytes:u=>n?(0,Rh.numberToBytesLE)(u,i):(0,Rh.numberToBytesBE)(u,i),fromBytes:u=>{if(u.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${u.length}`);return n?(0,Rh.bytesToNumberLE)(u):(0,Rh.bytesToNumberBE)(u)}});return Object.freeze(c)},$o.FpSqrtOdd=function(t,e){if(!t.isOdd)throw new Error(\"Field doesn\\'t have isOdd\");let n=t.sqrt(e);return t.isOdd(n)?n:t.neg(n)},$o.FpSqrtEven=function(t,e){if(!t.isOdd)throw new Error(\"Field doesn\\'t have isOdd\");let n=t.sqrt(e);return t.isOdd(n)?t.neg(n):n},$o.hashToPrivateScalar=function(t,e,n=!1){t=(0,Rh.ensureBytes)(\"privateHash\",t);let r=t.length,o=sne(e).nByteLength+8;if(o<24||r<o||r>1024)throw new Error(`hashToPrivateScalar: expected ${o}-1024 bytes of input, got ${r}`);let i=n?(0,Rh.bytesToNumberLE)(t):(0,Rh.bytesToNumberBE)(t);return Oh(i,e-Di)+Di},$o.getFieldBytesLength=qne,$o.getMinHashLength=M4e,$o.mapHashToField=function(t,e,n=!1){let r=t.length,o=qne(e),i=M4e(e);if(r<16||r<i||r>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${r}`);let a=Oh(n?(0,Rh.bytesToNumberBE)(t):(0,Rh.bytesToNumberLE)(t),e-Di)+Di;return n?(0,Rh.numberToBytesLE)(a,o):(0,Rh.numberToBytesBE)(a,o)};Rh=_r,qc=BigInt(0),Di=BigInt(1),a3=BigInt(2),wot=BigInt(3),Hne=BigInt(4),A4e=BigInt(5),T4e=BigInt(8);BigInt(9),BigInt(16);$o.isNegativeLE=(t,e)=>(Oh(t,e)&Di)===Di;xot=[\"create\",\"isValid\",\"is0\",\"neg\",\"inv\",\"sqrt\",\"sqr\",\"eql\",\"add\",\"sub\",\"mul\",\"pow\",\"div\",\"addN\",\"subN\",\"mulN\",\"sqrN\"];Object.defineProperty(cA,\"__esModule\",{value:!0}),cA.wNAF=function(t,e){let n=(i,a)=>{let c=a.negate();return i?c:a},r=i=>{if(!Number.isSafeInteger(i)||i<=0||i>e)throw new Error(`Wrong window size=${i}, should be [1..${e}]`)},o=i=>(r(i),{windows:Math.ceil(e/i)+1,windowSize:2**(i-1)});return{constTimeNegate:n,unsafeLadder(i,a){let c=t.ZERO,u=i;for(;a>Eot;)a&ane&&(c=c.add(u)),u=u.double(),a>>=ane;return c},precomputeWindow(i,a){let{windows:c,windowSize:u}=o(a),d=[],h=i,m=h;for(let g=0;g<c;g++){m=h,d.push(m);for(let b=1;b<u;b++)m=m.add(h),d.push(m);h=m.double()}return d},wNAF(i,a,c){let{windows:u,windowSize:d}=o(i),h=t.ZERO,m=t.BASE,g=BigInt(2**i-1),b=2**i,E=BigInt(i);for(let C=0;C<u;C++){let T=C*d,R=Number(c&g);c>>=E,R>d&&(R-=b,c+=ane);let L=T,D=T+Math.abs(R)-1,G=C%2!=0,W=R<0;R===0?m=m.add(n(G,a[L])):h=h.add(n(W,a[D]))}return{p:h,f:m}},wNAFCached(i,a,c){let u=B4e.get(i)||1,d=cne.get(i);return d||(d=this.precomputeWindow(i,u),u!==1&&cne.set(i,c(d))),this.wNAF(u,d,a)},setWindowSize(i,a){r(a),B4e.set(i,a),cne.delete(i)}}},cA.pippenger=function(t,e,n,r){if(!Array.isArray(n)||!Array.isArray(r)||r.length!==n.length)throw new Error(\"arrays of points and scalars must have equal length\");r.forEach((h,m)=>{if(!e.isValid(h))throw new Error(`wrong scalar at index ${m}`)}),n.forEach((h,m)=>{if(!(h instanceof t))throw new Error(`wrong point at index ${m}`)});let o=(0,L4e.bitLen)(BigInt(n.length)),i=o>12?o-3:o>4?o-2:o?2:1,a=(1<<i)-1,c=new Array(a+1).fill(t.ZERO),u=Math.floor((e.BITS-1)/i)*i,d=t.ZERO;for(let h=u;h>=0;h-=i){c.fill(t.ZERO);for(let g=0;g<r.length;g++){let b=r[g],E=Number(b>>BigInt(h)&BigInt(a));c[E]=c[E].add(n[g])}let m=t.ZERO;for(let g=c.length-1,b=t.ZERO;g>0;g--)b=b.add(c[g]),m=m.add(b);if(d=d.add(m),h!==0)for(let g=0;g<i;g++)d=d.double()}return d},cA.validateBasic=function(t){return(0,N4e.validateField)(t.Fp),(0,L4e.validateObject)(t,{n:\"bigint\",h:\"bigint\",Gx:\"field\",Gy:\"field\"},{nBitLength:\"isSafeInteger\",nByteLength:\"isSafeInteger\"}),Object.freeze({...(0,N4e.nLength)(t.n,t.nBitLength),...t,p:t.Fp.ORDER})};N4e=$o,L4e=_r,Eot=BigInt(0),ane=BigInt(1),cne=new WeakMap,B4e=new WeakMap;Object.defineProperty(jne,\"__esModule\",{value:!0}),jne.twistedEdwards=function(t){let e=function(F){let _=(0,lne.validateBasic)(F);return Rf.validateObject(F,{hash:\"function\",a:\"bigint\",d:\"bigint\",randomBytes:\"function\"},{adjustScalarBytes:\"function\",domain:\"function\",uvRatio:\"function\",mapToCurve:\"function\"}),Object.freeze({..._})}(t),{Fp:n,n:r,prehash:o,hash:i,randomBytes:a,nByteLength:c,h:u}=e,d=Jz<<BigInt(8*c)-If,h=n.create,m=(0,D4e.Field)(e.n,e.nBitLength),g=e.uvRatio||((F,_)=>{try{return{isValid:!0,value:n.sqrt(F*n.inv(_))}}catch{return{isValid:!1,value:ug}}}),b=e.adjustScalarBytes||(F=>F),E=e.domain||((F,_,O)=>{if((0,Ih.abool)(\"phflag\",O),_.length||O)throw new Error(\"Contexts/pre-hash are not supported\");return F});function C(F,_){Rf.aInRange(\"coordinate \"+F,_,ug,d)}function T(F){if(!(F instanceof D))throw new Error(\"ExtendedPoint expected\")}let R=(0,Ih.memoized)((F,_)=>{let{ex:O,ey:z,ez:N}=F,B=F.is0();_==null&&(_=B?Sot:n.inv(N));let j=h(O*_),q=h(z*_),H=h(N*_);if(B)return{x:ug,y:If};if(H!==If)throw new Error(\"invZ was invalid\");return{x:j,y:q}}),L=(0,Ih.memoized)(F=>{let{a:_,d:O}=e;if(F.is0())throw new Error(\"bad point: ZERO\");let{ex:z,ey:N,ez:B,et:j}=F,q=h(z*z),H=h(N*N),I=h(B*B),U=h(I*I),X=h(q*_);if(h(I*h(X+H))!==h(U+h(O*h(q*H))))throw new Error(\"bad point: equation left != right (1)\");if(h(z*N)!==h(B*j))throw new Error(\"bad point: equation left != right (2)\");return!0});class D{constructor(_,O,z,N){this.ex=_,this.ey=O,this.ez=z,this.et=N,C(\"x\",_),C(\"y\",O),C(\"z\",z),C(\"t\",N),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(_){if(_ instanceof D)throw new Error(\"extended point not allowed\");let{x:O,y:z}=_||{};return C(\"x\",O),C(\"y\",z),new D(O,z,If,h(O*z))}static normalizeZ(_){let O=n.invertBatch(_.map(z=>z.ez));return _.map((z,N)=>z.toAffine(O[N])).map(D.fromAffine)}static msm(_,O){return(0,lne.pippenger)(D,m,_,O)}_setWindowSize(_){J.setWindowSize(this,_)}assertValidity(){L(this)}equals(_){T(_);let{ex:O,ey:z,ez:N}=this,{ex:B,ey:j,ez:q}=_,H=h(O*q),I=h(B*N),U=h(z*q),X=h(j*N);return H===I&&U===X}is0(){return this.equals(D.ZERO)}negate(){return new D(h(-this.ex),this.ey,this.ez,h(-this.et))}double(){let{a:_}=e,{ex:O,ey:z,ez:N}=this,B=h(O*O),j=h(z*z),q=h(Jz*h(N*N)),H=h(_*B),I=O+z,U=h(h(I*I)-B-j),X=H+j,ee=X-q,se=H-j,pe=h(U*ee),ye=h(X*se),xe=h(U*se),_e=h(ee*X);return new D(pe,ye,_e,xe)}add(_){T(_);let{a:O,d:z}=e,{ex:N,ey:B,ez:j,et:q}=this,{ex:H,ey:I,ez:U,et:X}=_;if(O===BigInt(-1)){let dt=h((B-N)*(I+H)),Ze=h((B+N)*(I-H)),rn=h(Ze-dt);if(rn===ug)return this.double();let zt=h(j*Jz*X),Bt=h(q*Jz*U),Mt=Bt+zt,qt=Ze+dt,Wt=Bt-zt,zn=h(Mt*rn),Mn=h(qt*Wt),br=h(Mt*Wt),Zs=h(rn*qt);return new D(zn,Mn,Zs,br)}let ee=h(N*H),se=h(B*I),pe=h(q*z*X),ye=h(j*U),xe=h((N+B)*(H+I)-ee-se),_e=ye-pe,Me=ye+pe,qe=h(se-O*ee),wt=h(xe*_e),Ge=h(Me*qe),ht=h(xe*qe),Ct=h(_e*Me);return new D(wt,Ge,Ct,ht)}subtract(_){return this.add(_.negate())}wNAF(_){return J.wNAFCached(this,_,D.normalizeZ)}multiply(_){let O=_;Rf.aInRange(\"scalar\",O,If,r);let{p:z,f:N}=this.wNAF(O);return D.normalizeZ([z,N])[0]}multiplyUnsafe(_){let O=_;return Rf.aInRange(\"scalar\",O,ug,r),O===ug?W:this.equals(W)||O===If?this:this.equals(G)?this.wNAF(O).p:J.unsafeLadder(this,O)}isSmallOrder(){return this.multiplyUnsafe(u).is0()}isTorsionFree(){return J.unsafeLadder(this,r).is0()}toAffine(_){return R(this,_)}clearCofactor(){let{h:_}=e;return _===If?this:this.multiplyUnsafe(_)}static fromHex(_,O=!1){let{d:z,a:N}=e,B=n.BYTES;_=(0,Ih.ensureBytes)(\"pointHex\",_,B),(0,Ih.abool)(\"zip215\",O);let j=_.slice(),q=_[B-1];j[B-1]=-129&q;let H=Rf.bytesToNumberLE(j),I=O?d:n.ORDER;Rf.aInRange(\"pointHex.y\",H,ug,I);let U=h(H*H),X=h(U-If),ee=h(z*U-N),{isValid:se,value:pe}=g(X,ee);if(!se)throw new Error(\"Point.fromHex: invalid y coordinate\");let ye=(pe&If)===If,xe=(128&q)!=0;if(!O&&pe===ug&&xe)throw new Error(\"Point.fromHex: x=0 and x_0=1\");return xe!==ye&&(pe=h(-pe)),D.fromAffine({x:pe,y:H})}static fromPrivateKey(_){return Z(_).point}toRawBytes(){let{x:_,y:O}=this.toAffine(),z=Rf.numberToBytesLE(O,n.BYTES);return z[z.length-1]|=_&If?128:0,z}toHex(){return Rf.bytesToHex(this.toRawBytes())}}D.BASE=new D(e.Gx,e.Gy,If,h(e.Gx*e.Gy)),D.ZERO=new D(ug,If,If,ug);let{BASE:G,ZERO:W}=D,J=(0,lne.wNAF)(D,8*c);function ne(F){return(0,D4e.mod)(F,r)}function ie(F){return ne(Rf.bytesToNumberLE(F))}function Z(F){let _=c;F=(0,Ih.ensureBytes)(\"private key\",F,_);let O=(0,Ih.ensureBytes)(\"hashed private key\",i(F),2*_),z=b(O.slice(0,_)),N=O.slice(_,2*_),B=ie(z),j=G.multiply(B),q=j.toRawBytes();return{head:z,prefix:N,scalar:B,point:j,pointBytes:q}}function ae(F=new Uint8Array,..._){let O=Rf.concatBytes(..._);return ie(i(E(O,(0,Ih.ensureBytes)(\"context\",F),!!o)))}let V=kot;return G._setWindowSize(8),{CURVE:e,getPublicKey:function(F){return Z(F).pointBytes},sign:function(F,_,O={}){F=(0,Ih.ensureBytes)(\"message\",F),o&&(F=o(F));let{prefix:z,scalar:N,pointBytes:B}=Z(_),j=ae(O.context,z,F),q=G.multiply(j).toRawBytes(),H=ne(j+ae(O.context,q,B,F)*N);Rf.aInRange(\"signature.s\",H,ug,r);let I=Rf.concatBytes(q,Rf.numberToBytesLE(H,n.BYTES));return(0,Ih.ensureBytes)(\"result\",I,2*c)},verify:function(F,_,O,z=V){let{context:N,zip215:B}=z,j=n.BYTES;F=(0,Ih.ensureBytes)(\"signature\",F,2*j),_=(0,Ih.ensureBytes)(\"message\",_),B!==void 0&&(0,Ih.abool)(\"zip215\",B),o&&(_=o(_));let q=Rf.bytesToNumberLE(F.slice(j,2*j)),H,I,U;try{H=D.fromHex(O,B),I=D.fromHex(F.slice(0,j),B),U=G.multiplyUnsafe(q)}catch{return!1}if(!B&&H.isSmallOrder())return!1;let X=ae(N,I.toRawBytes(),H.toRawBytes(),_);return I.add(H.multiplyUnsafe(X)).subtract(U).clearCofactor().equals(D.ZERO)},ExtendedPoint:D,utils:{getExtendedPublicKey:Z,randomPrivateKey:()=>a(n.BYTES),precompute:(F=8,_=D.BASE)=>(_._setWindowSize(F),_.multiply(BigInt(3)),_)}}};lne=cA,D4e=$o,Rf=_r,Ih=_r,ug=BigInt(0),If=BigInt(1),Jz=BigInt(2),Sot=BigInt(8),kot={zip215:!0},n3={};Object.defineProperty(n3,\"__esModule\",{value:!0}),n3.expand_message_xmd=EAe,n3.expand_message_xof=SAe,n3.hash_to_field=une,n3.isogenyMap=function(t,e){let n=e.map(r=>Array.from(r).reverse());return(r,o)=>{let[i,a,c,u]=n.map(d=>d.reduce((h,m)=>t.add(t.mul(h,r),m)));return r=t.div(i,a),o=t.mul(o,t.div(c,u)),{x:r,y:o}}},n3.createHasher=function(t,e,n){if(typeof e!=\"function\")throw new Error(\"mapToCurve() must be defined\");return{hashToCurve(r,o){let i=une(r,2,{...n,DST:n.DST,...o}),a=t.fromAffine(e(i[0])),c=t.fromAffine(e(i[1])),u=a.add(c).clearCofactor();return u.assertValidity(),u},encodeToCurve(r,o){let i=une(r,1,{...n,DST:n.encodeDST,...o}),a=t.fromAffine(e(i[0])).clearCofactor();return a.assertValidity(),a},mapToCurve(r){if(!Array.isArray(r))throw new Error(\"mapToCurve: expected array of bigints\");for(let i of r)if(typeof i!=\"bigint\")throw new Error(`mapToCurve: expected array of bigints, got ${i} in array`);let o=t.fromAffine(e(r)).clearCofactor();return o.assertValidity(),o}}};_ot=$o,Su=_r,Cot=Su.bytesToNumberBE;Wne={};Object.defineProperty(Wne,\"__esModule\",{value:!0}),Wne.montgomery=function(t){let e=function(C){return(0,Zx.validateObject)(C,{a:\"bigint\"},{montgomeryBits:\"isSafeInteger\",nByteLength:\"isSafeInteger\",adjustScalarBytes:\"function\",domain:\"function\",powPminus2:\"function\",Gu:\"bigint\"}),Object.freeze({...C})}(t),{P:n}=e,r=C=>(0,F4e.mod)(C,n),o=e.montgomeryBits,i=Math.ceil(o/8),a=e.nByteLength,c=e.adjustScalarBytes||(C=>C),u=e.powPminus2||(C=>(0,F4e.pow)(C,n-BigInt(2),n));function d(C,T,R){let L=r(C*(T-R));return[T=r(T-L),R=r(R+L)]}let h=(e.a-BigInt(2))/BigInt(4);function m(C){return(0,Zx.numberToBytesLE)(r(C),i)}function g(C,T){let R=function(G){let W=(0,Zx.ensureBytes)(\"u coordinate\",G,i);return a===32&&(W[31]&=127),(0,Zx.bytesToNumberLE)(W)}(T),L=function(G){let W=(0,Zx.ensureBytes)(\"scalar\",G),J=W.length;if(J!==i&&J!==a)throw new Error(`Expected ${i} or ${a} bytes, got ${J}`);return(0,Zx.bytesToNumberLE)(c(W))}(C),D=function(G,W){(0,Zx.aInRange)(\"u\",G,nA,n),(0,Zx.aInRange)(\"scalar\",W,nA,n);let J=W,ne=G,ie,Z=dne,ae=nA,V=G,$=dne,F=nA;for(let O=BigInt(o-1);O>=nA;O--){let z=J>>O&dne;F^=z,ie=d(F,Z,V),Z=ie[0],V=ie[1],ie=d(F,ae,$),ae=ie[0],$=ie[1],F=z;let N=Z+ae,B=r(N*N),j=Z-ae,q=r(j*j),H=B-q,I=V+$,U=r((V-$)*N),X=r(I*j),ee=U+X,se=U-X;V=r(ee*ee),$=r(ne*r(se*se)),Z=r(B*q),ae=r(H*(B+r(h*H)))}ie=d(F,Z,V),Z=ie[0],V=ie[1],ie=d(F,ae,$),ae=ie[0],$=ie[1];let _=u(ae);return r(Z*_)}(R,L);if(D===nA)throw new Error(\"Invalid private or public key received\");return m(D)}let b=m(e.Gu);function E(C){return g(C,b)}return{scalarMult:g,scalarMultBase:E,getSharedSecret:(C,T)=>g(C,T),getPublicKey:C=>E(C),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:b}};F4e=$o,Zx=_r,nA=BigInt(0),dne=BigInt(1);(function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.hash_to_ristretto255=t.hashToRistretto255=t.RistrettoPoint=t.encodeToCurve=t.hashToCurve=t.edwardsToMontgomery=t.x25519=t.ed25519ph=t.ed25519ctx=t.ed25519=t.ED25519_TORSION_SUBGROUP=void 0,t.edwardsToMontgomeryPub=J,t.edwardsToMontgomeryPriv=function(X){let ee=G.hash(X.subarray(0,32));return G.adjustScalarBytes(ee).subarray(0,32)};let e=Hc,n=Qv,r=jne,o=n3,i=$o,a=Wne,c=_r,u=BigInt(\"57896044618658097711785492504343953926634992332820282019728792003956564819949\"),d=BigInt(\"19681161376707505956807079304988542015446066515923890162744021073123829784752\"),h=BigInt(0),m=BigInt(1),g=BigInt(2),b=BigInt(3),E=BigInt(5),C=BigInt(8);function T(X){let ee=BigInt(10),se=BigInt(20),pe=BigInt(40),ye=BigInt(80),xe=u,_e=X*X%xe*X%xe,Me=(0,i.pow2)(_e,g,xe)*_e%xe,qe=(0,i.pow2)(Me,m,xe)*X%xe,wt=(0,i.pow2)(qe,E,xe)*qe%xe,Ge=(0,i.pow2)(wt,ee,xe)*wt%xe,ht=(0,i.pow2)(Ge,se,xe)*Ge%xe,Ct=(0,i.pow2)(ht,pe,xe)*ht%xe,dt=(0,i.pow2)(Ct,ye,xe)*Ct%xe,Ze=(0,i.pow2)(dt,ye,xe)*Ct%xe,rn=(0,i.pow2)(Ze,ee,xe)*wt%xe;return{pow_p_5_8:(0,i.pow2)(rn,g,xe)*X%xe,b2:_e}}function R(X){return X[0]&=248,X[31]&=127,X[31]|=64,X}function L(X,ee){let se=u,pe=(0,i.mod)(ee*ee*ee,se),ye=T(X*(0,i.mod)(pe*pe*ee,se)).pow_p_5_8,xe=(0,i.mod)(X*pe*ye,se),_e=(0,i.mod)(ee*xe*xe,se),Me=xe,qe=(0,i.mod)(xe*d,se),wt=_e===X,Ge=_e===(0,i.mod)(-X,se),ht=_e===(0,i.mod)(-X*d,se);return wt&&(xe=Me),(Ge||ht)&&(xe=qe),(0,i.isNegativeLE)(xe,se)&&(xe=(0,i.mod)(-xe,se)),{isValid:wt||Ge,value:xe}}t.ED25519_TORSION_SUBGROUP=[\"0100000000000000000000000000000000000000000000000000000000000000\",\"c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a\",\"0000000000000000000000000000000000000000000000000000000000000080\",\"26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05\",\"ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f\",\"26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85\",\"0000000000000000000000000000000000000000000000000000000000000000\",\"c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa\"];let D=(0,i.Field)(u,void 0,!0),G={a:BigInt(-1),d:BigInt(\"37095705934669439343138083508754565189542113879843219016388785533085940283555\"),Fp:D,n:BigInt(\"7237005577332262213973186563042994240857116359379907606001950938285454250989\"),h:C,Gx:BigInt(\"15112221349535400772501151409588531511454012693041857206046113283949847762202\"),Gy:BigInt(\"46316835694926478169428394003475163141307993866256225615783033603165251855960\"),hash:e.sha512,randomBytes:n.randomBytes,adjustScalarBytes:R,uvRatio:L};function W(X,ee,se){if(ee.length>255)throw new Error(\"Context is too big\");return(0,n.concatBytes)((0,n.utf8ToBytes)(\"SigEd25519 no Ed25519 collisions\"),new Uint8Array([se?1:0,ee.length]),ee,X)}function J(X){let{y:ee}=t.ed25519.ExtendedPoint.fromHex(X),se=BigInt(1);return D.toBytes(D.create((se+ee)*D.inv(se-ee)))}t.ed25519=(0,r.twistedEdwards)(G),t.ed25519ctx=(0,r.twistedEdwards)({...G,domain:W}),t.ed25519ph=(0,r.twistedEdwards)(Object.assign({},G,{domain:W,prehash:e.sha512})),t.x25519=(0,a.montgomery)({P:u,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:X=>{let ee=u,{pow_p_5_8:se,b2:pe}=T(X);return(0,i.mod)((0,i.pow2)(se,b,ee)*pe,ee)},adjustScalarBytes:R,randomBytes:n.randomBytes}),t.edwardsToMontgomery=J;let ne=(D.ORDER+b)/C,ie=D.pow(g,ne),Z=D.sqrt(D.neg(D.ONE)),ae=(0,i.FpSqrtEven)(D,D.neg(BigInt(486664)));function V(X){let{xMn:ee,xMd:se,yMn:pe,yMd:ye}=function(Ct){let dt=(D.ORDER-E)/C,Ze=BigInt(486662),rn=D.sqr(Ct);rn=D.mul(rn,g);let zt=D.add(rn,D.ONE),Bt=D.neg(Ze),Mt=D.sqr(zt),qt=D.mul(Mt,zt),Wt=D.mul(rn,Ze);Wt=D.mul(Wt,Bt),Wt=D.add(Wt,Mt),Wt=D.mul(Wt,Bt);let zn=D.sqr(qt);Mt=D.sqr(zn),zn=D.mul(zn,qt),zn=D.mul(zn,Wt),Mt=D.mul(Mt,zn);let Mn=D.pow(Mt,dt);Mn=D.mul(Mn,zn);let br=D.mul(Mn,Z);Mt=D.sqr(Mn),Mt=D.mul(Mt,qt);let Zs=D.eql(Mt,Wt),Pr=D.cmov(br,Mn,Zs),vr=D.mul(Bt,rn),hi=D.mul(Mn,Ct);hi=D.mul(hi,ie);let er=D.mul(hi,Z),wr=D.mul(Wt,rn);Mt=D.sqr(hi),Mt=D.mul(Mt,qt);let Ri=D.eql(Mt,wr),le=D.cmov(er,hi,Ri);Mt=D.sqr(Pr),Mt=D.mul(Mt,qt);let Te=D.eql(Mt,Wt),xt=D.cmov(vr,Bt,Te),tt=D.cmov(le,Pr,Te),It=D.isOdd(tt);return tt=D.cmov(tt,D.neg(tt),Te!==It),{xMn:xt,xMd:zt,yMn:tt,yMd:m}}(X),xe=D.mul(ee,ye);xe=D.mul(xe,ae);let _e=D.mul(se,pe),Me=D.sub(ee,se),qe=D.add(ee,se),wt=D.mul(_e,qe),Ge=D.eql(wt,D.ZERO);xe=D.cmov(xe,D.ZERO,Ge),_e=D.cmov(_e,D.ONE,Ge),Me=D.cmov(Me,D.ONE,Ge),qe=D.cmov(qe,D.ONE,Ge);let ht=D.invertBatch([_e,qe]);return{x:D.mul(xe,ht[0]),y:D.mul(Me,ht[1])}}let $=(0,o.createHasher)(t.ed25519.ExtendedPoint,X=>V(X[0]),{DST:\"edwards25519_XMD:SHA-512_ELL2_RO_\",encodeDST:\"edwards25519_XMD:SHA-512_ELL2_NU_\",p:D.ORDER,m:1,k:128,expand:\"xmd\",hash:e.sha512});function F(X){if(!(X instanceof U))throw new Error(\"RistrettoPoint expected\")}t.hashToCurve=$.hashToCurve,t.encodeToCurve=$.encodeToCurve;let _=d,O=BigInt(\"25063068953384623474111414158702152701244531502492656460079210482610430750235\"),z=BigInt(\"54469307008909316920995813868745141605393597292927456921205312896311721017578\"),N=BigInt(\"1159843021668779879193775521855586647937357759715417654439879720876111806838\"),B=BigInt(\"40440834346308536858101042469323190826248399146238708352240133220865137265952\"),j=X=>L(m,X),q=BigInt(\"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\"),H=X=>t.ed25519.CURVE.Fp.create((0,c.bytesToNumberLE)(X)&q);function I(X){let{d:ee}=t.ed25519.CURVE,se=t.ed25519.CURVE.Fp.ORDER,pe=t.ed25519.CURVE.Fp.create,ye=pe(_*X*X),xe=pe((ye+m)*N),_e=BigInt(-1),Me=pe((_e-ee*ye)*pe(ye+ee)),{isValid:qe,value:wt}=L(xe,Me),Ge=pe(wt*X);(0,i.isNegativeLE)(Ge,se)||(Ge=pe(-Ge)),qe||(wt=Ge),qe||(_e=ye);let ht=pe(_e*(ye-m)*B-Me),Ct=wt*wt,dt=pe((wt+wt)*Me),Ze=pe(ht*O),rn=pe(m-Ct),zt=pe(m+Ct);return new t.ed25519.ExtendedPoint(pe(dt*zt),pe(rn*Ze),pe(Ze*zt),pe(dt*rn))}class U{constructor(ee){this.ep=ee}static fromAffine(ee){return new U(t.ed25519.ExtendedPoint.fromAffine(ee))}static hashToCurve(ee){ee=(0,c.ensureBytes)(\"ristrettoHash\",ee,64);let se=I(H(ee.slice(0,32))),pe=I(H(ee.slice(32,64)));return new U(se.add(pe))}static fromHex(ee){ee=(0,c.ensureBytes)(\"ristrettoHex\",ee,32);let{a:se,d:pe}=t.ed25519.CURVE,ye=t.ed25519.CURVE.Fp.ORDER,xe=t.ed25519.CURVE.Fp.create,_e=\"RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint\",Me=H(ee);if(!(0,c.equalBytes)((0,c.numberToBytesLE)(Me,32),ee)||(0,i.isNegativeLE)(Me,ye))throw new Error(_e);let qe=xe(Me*Me),wt=xe(m+se*qe),Ge=xe(m-se*qe),ht=xe(wt*wt),Ct=xe(Ge*Ge),dt=xe(se*pe*ht-Ct),{isValid:Ze,value:rn}=j(xe(dt*Ct)),zt=xe(rn*Ge),Bt=xe(rn*zt*dt),Mt=xe((Me+Me)*zt);(0,i.isNegativeLE)(Mt,ye)&&(Mt=xe(-Mt));let qt=xe(wt*Bt),Wt=xe(Mt*qt);if(!Ze||(0,i.isNegativeLE)(Wt,ye)||qt===h)throw new Error(_e);return new U(new t.ed25519.ExtendedPoint(Mt,qt,m,Wt))}toRawBytes(){let{ex:ee,ey:se,ez:pe,et:ye}=this.ep,xe=t.ed25519.CURVE.Fp.ORDER,_e=t.ed25519.CURVE.Fp.create,Me=_e(_e(pe+se)*_e(pe-se)),qe=_e(ee*se),wt=_e(qe*qe),{value:Ge}=j(_e(Me*wt)),ht=_e(Ge*Me),Ct=_e(Ge*qe),dt=_e(ht*Ct*ye),Ze;if((0,i.isNegativeLE)(ye*dt,xe)){let zt=_e(se*_),Bt=_e(ee*_);ee=zt,se=Bt,Ze=_e(ht*z)}else Ze=Ct;(0,i.isNegativeLE)(ee*dt,xe)&&(se=_e(-se));let rn=_e((pe-se)*Ze);return(0,i.isNegativeLE)(rn,xe)&&(rn=_e(-rn)),(0,c.numberToBytesLE)(rn,32)}toHex(){return(0,c.bytesToHex)(this.toRawBytes())}toString(){return this.toHex()}equals(ee){F(ee);let{ex:se,ey:pe}=this.ep,{ex:ye,ey:xe}=ee.ep,_e=t.ed25519.CURVE.Fp.create,Me=_e(se*xe)===_e(pe*ye),qe=_e(pe*xe)===_e(se*ye);return Me||qe}add(ee){return F(ee),new U(this.ep.add(ee.ep))}subtract(ee){return F(ee),new U(this.ep.subtract(ee.ep))}multiply(ee){return new U(this.ep.multiply(ee))}multiplyUnsafe(ee){return new U(this.ep.multiplyUnsafe(ee))}double(){return new U(this.ep.double())}negate(){return new U(this.ep.negate())}}t.RistrettoPoint=(U.BASE||(U.BASE=new U(t.ed25519.ExtendedPoint.BASE)),U.ZERO||(U.ZERO=new U(t.ed25519.ExtendedPoint.ZERO)),U),t.hashToRistretto255=(X,ee)=>{let se=ee.DST,pe=typeof se==\"string\"?(0,n.utf8ToBytes)(se):se,ye=(0,o.expand_message_xmd)(X,pe,64,e.sha512);return U.hashToCurve(ye)},t.hash_to_ristretto255=t.hashToRistretto255})(K8e);kAe={},Kv={};Object.defineProperty(Kv,\"__esModule\",{value:!0}),Kv.sha224=Kv.sha256=Kv.SHA256=void 0;fne=$v,wm=Qv,Tot=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Yx=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Qx=new Uint32Array(64),OO=class extends fne.HashMD{constructor(){super(64,32,8,!1),this.A=0|Yx[0],this.B=0|Yx[1],this.C=0|Yx[2],this.D=0|Yx[3],this.E=0|Yx[4],this.F=0|Yx[5],this.G=0|Yx[6],this.H=0|Yx[7]}get(){let{A:e,B:n,C:r,D:o,E:i,F:a,G:c,H:u}=this;return[e,n,r,o,i,a,c,u]}set(e,n,r,o,i,a,c,u){this.A=0|e,this.B=0|n,this.C=0|r,this.D=0|o,this.E=0|i,this.F=0|a,this.G=0|c,this.H=0|u}process(e,n){for(let m=0;m<16;m++,n+=4)Qx[m]=e.getUint32(n,!1);for(let m=16;m<64;m++){let g=Qx[m-15],b=Qx[m-2],E=(0,wm.rotr)(g,7)^(0,wm.rotr)(g,18)^g>>>3,C=(0,wm.rotr)(b,17)^(0,wm.rotr)(b,19)^b>>>10;Qx[m]=C+Qx[m-7]+E+Qx[m-16]|0}let{A:r,B:o,C:i,D:a,E:c,F:u,G:d,H:h}=this;for(let m=0;m<64;m++){let g=h+((0,wm.rotr)(c,6)^(0,wm.rotr)(c,11)^(0,wm.rotr)(c,25))+(0,fne.Chi)(c,u,d)+Tot[m]+Qx[m]|0,b=((0,wm.rotr)(r,2)^(0,wm.rotr)(r,13)^(0,wm.rotr)(r,22))+(0,fne.Maj)(r,o,i)|0;h=d,d=u,u=c,c=a+g|0,a=i,i=o,o=r,r=g+b|0}r=r+this.A|0,o=o+this.B|0,i=i+this.C|0,a=a+this.D|0,c=c+this.E|0,u=u+this.F|0,d=d+this.G|0,h=h+this.H|0,this.set(r,o,i,a,c,u,d,h)}roundClean(){Qx.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};Kv.SHA256=OO;Vne=class extends OO{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}};Kv.sha256=(0,wm.wrapConstructor)(()=>new OO),Kv.sha224=(0,wm.wrapConstructor)(()=>new Vne);hH={},Bre={};(function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.hmac=t.HMAC=void 0;let e=Ph,n=Qv;class r extends n.Hash{constructor(i,a){super(),this.finished=!1,this.destroyed=!1,(0,e.hash)(i);let c=(0,n.toBytes)(a);if(this.iHash=i.create(),typeof this.iHash.update!=\"function\")throw new Error(\"Expected instance of class which extends utils.Hash\");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let u=this.blockLen,d=new Uint8Array(u);d.set(c.length>u?i.create().update(c).digest():c);for(let h=0;h<d.length;h++)d[h]^=54;this.iHash.update(d),this.oHash=i.create();for(let h=0;h<d.length;h++)d[h]^=106;this.oHash.update(d),d.fill(0)}update(i){return(0,e.exists)(this),this.iHash.update(i),this}digestInto(i){(0,e.exists)(this),(0,e.bytes)(i,this.outputLen),this.finished=!0,this.iHash.digestInto(i),this.oHash.update(i),this.oHash.digestInto(i),this.destroy()}digest(){let i=new Uint8Array(this.oHash.outputLen);return this.digestInto(i),i}_cloneInto(i){i||(i=Object.create(Object.getPrototypeOf(this),{}));let{oHash:a,iHash:c,finished:u,destroyed:d,blockLen:h,outputLen:m}=this;return i.finished=u,i.destroyed=d,i.blockLen=h,i.outputLen=m,i.oHash=a._cloneInto(i.oHash),i.iHash=c._cloneInto(i.iHash),i}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}t.HMAC=r,t.hmac=(o,i,a)=>new r(o,i).update(a).digest(),t.hmac.create=(o,i)=>new r(o,i)})(Bre);Dre={};(function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.DER=void 0,t.weierstrassPoints=b,t.weierstrass=function(C){let T=function(X){let ee=(0,e.validateBasic)(X);return r.validateObject(ee,{hash:\"hash\",hmac:\"function\",randomBytes:\"function\"},{bits2int:\"function\",bits2int_modN:\"function\",lowS:\"boolean\"}),Object.freeze({lowS:!0,...ee})}(C),{Fp:R,n:L}=T,D=R.BYTES+1,G=2*R.BYTES+1;function W(X){return n.mod(X,L)}function J(X){return n.invert(X,L)}let{ProjectivePoint:ne,normPrivateKeyToScalar:ie,weierstrassEquation:Z,isWithinCurveOrder:ae}=b({...T,toBytes(X,ee,se){let pe=ee.toAffine(),ye=R.toBytes(pe.x),xe=r.concatBytes;return(0,o.abool)(\"isCompressed\",se),se?xe(Uint8Array.from([ee.hasEvenY()?2:3]),ye):xe(Uint8Array.from([4]),ye,R.toBytes(pe.y))},fromBytes(X){let ee=X.length,se=X[0],pe=X.subarray(1);if(ee!==D||se!==2&&se!==3){if(ee===G&&se===4)return{x:R.fromBytes(pe.subarray(0,R.BYTES)),y:R.fromBytes(pe.subarray(R.BYTES,2*R.BYTES))};throw new Error(`Point of length ${ee} was invalid. Expected ${D} compressed bytes or ${G} uncompressed bytes`)}{let ye=r.bytesToNumberBE(pe);if(!r.inRange(ye,d,R.ORDER))throw new Error(\"Point is not on curve\");let xe=Z(ye),_e;try{_e=R.sqrt(xe)}catch(Me){let qe=Me instanceof Error?\": \"+Me.message:\"\";throw new Error(\"Point is not on curve\"+qe)}return(1&se)==1!=((_e&d)===d)&&(_e=R.neg(_e)),{x:ye,y:_e}}}}),V=X=>r.bytesToHex(r.numberToBytesBE(X,T.nByteLength));function $(X){return X>L>>d}let F=(X,ee,se)=>r.bytesToNumberBE(X.slice(ee,se));class _{constructor(ee,se,pe){this.r=ee,this.s=se,this.recovery=pe,this.assertValidity()}static fromCompact(ee){let se=T.nByteLength;return ee=(0,o.ensureBytes)(\"compactSignature\",ee,2*se),new _(F(ee,0,se),F(ee,se,2*se))}static fromDER(ee){let{r:se,s:pe}=t.DER.toSig((0,o.ensureBytes)(\"DER\",ee));return new _(se,pe)}assertValidity(){r.aInRange(\"r\",this.r,d,L),r.aInRange(\"s\",this.s,d,L)}addRecoveryBit(ee){return new _(this.r,this.s,ee)}recoverPublicKey(ee){let{r:se,s:pe,recovery:ye}=this,xe=B((0,o.ensureBytes)(\"msgHash\",ee));if(ye==null||![0,1,2,3].includes(ye))throw new Error(\"recovery id invalid\");let _e=ye===2||ye===3?se+T.n:se;if(_e>=R.ORDER)throw new Error(\"recovery id 2 or 3 invalid\");let Me=(1&ye)==0?\"02\":\"03\",qe=ne.fromHex(Me+V(_e)),wt=J(_e),Ge=W(-xe*wt),ht=W(pe*wt),Ct=ne.BASE.multiplyAndAddUnsafe(qe,Ge,ht);if(!Ct)throw new Error(\"point at infinify\");return Ct.assertValidity(),Ct}hasHighS(){return $(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,W(-this.s),this.recovery):this}toDERRawBytes(){return r.hexToBytes(this.toDERHex())}toDERHex(){return t.DER.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return r.hexToBytes(this.toCompactHex())}toCompactHex(){return V(this.r)+V(this.s)}}let O={isValidPrivateKey(X){try{return ie(X),!0}catch{return!1}},normPrivateKeyToScalar:ie,randomPrivateKey:()=>{let X=n.getMinHashLength(T.n);return n.mapHashToField(T.randomBytes(X),T.n)},precompute:(X=8,ee=ne.BASE)=>(ee._setWindowSize(X),ee.multiply(BigInt(3)),ee)};function z(X){let ee=r.isBytes(X),se=typeof X==\"string\",pe=(ee||se)&&X.length;return ee?pe===D||pe===G:se?pe===2*D||pe===2*G:X instanceof ne}let N=T.bits2int||function(X){let ee=r.bytesToNumberBE(X),se=8*X.length-T.nBitLength;return se>0?ee>>BigInt(se):ee},B=T.bits2int_modN||function(X){return W(N(X))},j=r.bitMask(T.nBitLength);function q(X){return r.aInRange(`num < 2^${T.nBitLength}`,X,u,j),r.numberToBytesBE(X,T.nByteLength)}function H(X,ee,se=I){if([\"recovered\",\"canonical\"].some(dt=>dt in se))throw new Error(\"sign() legacy options not supported\");let{hash:pe,randomBytes:ye}=T,{lowS:xe,prehash:_e,extraEntropy:Me}=se;xe==null&&(xe=!0),X=(0,o.ensureBytes)(\"msgHash\",X),i(se),_e&&(X=(0,o.ensureBytes)(\"prehashed msgHash\",pe(X)));let qe=B(X),wt=ie(ee),Ge=[q(wt),q(qe)];if(Me!=null&&Me!==!1){let dt=Me===!0?ye(R.BYTES):Me;Ge.push((0,o.ensureBytes)(\"extraEntropy\",dt))}let ht=r.concatBytes(...Ge),Ct=qe;return{seed:ht,k2sig:function(dt){let Ze=N(dt);if(!ae(Ze))return;let rn=J(Ze),zt=ne.BASE.multiply(Ze).toAffine(),Bt=W(zt.x);if(Bt===u)return;let Mt=W(rn*W(Ct+Bt*wt));if(Mt===u)return;let qt=(zt.x===Bt?0:2)|Number(zt.y&d),Wt=Mt;return xe&&$(Mt)&&(Wt=function(zn){return $(zn)?W(-zn):zn}(Mt),qt^=1),new _(Bt,Wt,qt)}}}let I={lowS:T.lowS,prehash:!1},U={lowS:T.lowS,prehash:!1};return ne.BASE._setWindowSize(8),{CURVE:T,getPublicKey:function(X,ee=!0){return ne.fromPrivateKey(X).toRawBytes(ee)},getSharedSecret:function(X,ee,se=!0){if(z(X))throw new Error(\"first arg must be private key\");if(!z(ee))throw new Error(\"second arg must be public key\");return ne.fromHex(ee).multiply(ie(X)).toRawBytes(se)},sign:function(X,ee,se=I){let{seed:pe,k2sig:ye}=H(X,ee,se),xe=T;return r.createHmacDrbg(xe.hash.outputLen,xe.nByteLength,xe.hmac)(pe,ye)},verify:function(X,ee,se,pe=U){let ye=X;if(ee=(0,o.ensureBytes)(\"msgHash\",ee),se=(0,o.ensureBytes)(\"publicKey\",se),\"strict\"in pe)throw new Error(\"options.strict was renamed to lowS\");i(pe);let{lowS:xe,prehash:_e}=pe,Me,qe;try{if(typeof ye==\"string\"||r.isBytes(ye))try{Me=_.fromDER(ye)}catch(Bt){if(!(Bt instanceof t.DER.Err))throw Bt;Me=_.fromCompact(ye)}else{if(typeof ye!=\"object\"||typeof ye.r!=\"bigint\"||typeof ye.s!=\"bigint\")throw new Error(\"PARSE\");{let{r:Bt,s:Mt}=ye;Me=new _(Bt,Mt)}}qe=ne.fromHex(se)}catch(Bt){if(Bt.message===\"PARSE\")throw new Error(\"signature must be Signature instance, Uint8Array or hex string\");return!1}if(xe&&Me.hasHighS())return!1;_e&&(ee=T.hash(ee));let{r:wt,s:Ge}=Me,ht=B(ee),Ct=J(Ge),dt=W(ht*Ct),Ze=W(wt*Ct),rn=ne.BASE.multiplyAndAddUnsafe(qe,dt,Ze)?.toAffine();return rn?W(rn.x)===wt:!1},ProjectivePoint:ne,Signature:_,utils:O}},t.SWUFpSqrtRatio=E,t.mapToCurveSimpleSWU=function(C,T){if(n.validateField(C),!C.isValid(T.A)||!C.isValid(T.B)||!C.isValid(T.Z))throw new Error(\"mapToCurveSimpleSWU: invalid opts\");let R=E(C,T.Z);if(!C.isOdd)throw new Error(\"Fp.isOdd is not implemented!\");return L=>{let D,G,W,J,ne,ie,Z,ae;D=C.sqr(L),D=C.mul(D,T.Z),G=C.sqr(D),G=C.add(G,D),W=C.add(G,C.ONE),W=C.mul(W,T.B),J=C.cmov(T.Z,C.neg(G),!C.eql(G,C.ZERO)),J=C.mul(J,T.A),G=C.sqr(W),ie=C.sqr(J),ne=C.mul(ie,T.A),G=C.add(G,ne),G=C.mul(G,W),ie=C.mul(ie,J),ne=C.mul(ie,T.B),G=C.add(G,ne),Z=C.mul(D,W);let{isValid:V,value:$}=R(G,ie);ae=C.mul(D,L),ae=C.mul(ae,$),Z=C.cmov(Z,W,V),ae=C.cmov(ae,$,V);let F=C.isOdd(L)===C.isOdd(ae);return ae=C.cmov(C.neg(ae),ae,F),Z=C.div(Z,J),{x:Z,y:ae}}};let e=cA,n=$o,r=_r,o=_r;function i(C){C.lowS!==void 0&&(0,o.abool)(\"lowS\",C.lowS),C.prehash!==void 0&&(0,o.abool)(\"prehash\",C.prehash)}let{bytesToNumberBE:a,hexToBytes:c}=r;t.DER={Err:class extends Error{constructor(C=\"\"){super(C)}},_tlv:{encode:(C,T)=>{let{Err:R}=t.DER;if(C<0||C>256)throw new R(\"tlv.encode: wrong tag\");if(1&T.length)throw new R(\"tlv.encode: unpadded data\");let L=T.length/2,D=r.numberToHexUnpadded(L);if(D.length/2&128)throw new R(\"tlv.encode: long form length too big\");let G=L>127?r.numberToHexUnpadded(D.length/2|128):\"\";return`${r.numberToHexUnpadded(C)}${G}${D}${T}`},decode(C,T){let{Err:R}=t.DER,L=0;if(C<0||C>256)throw new R(\"tlv.encode: wrong tag\");if(T.length<2||T[L++]!==C)throw new R(\"tlv.decode: wrong tlv\");let D=T[L++],G=0;if(128&D){let J=127&D;if(!J)throw new R(\"tlv.decode(long): indefinite length not supported\");if(J>4)throw new R(\"tlv.decode(long): byte length is too big\");let ne=T.subarray(L,L+J);if(ne.length!==J)throw new R(\"tlv.decode: length bytes not complete\");if(ne[0]===0)throw new R(\"tlv.decode(long): zero leftmost byte\");for(let ie of ne)G=G<<8|ie;if(L+=J,G<128)throw new R(\"tlv.decode(long): not minimal encoding\")}else G=D;let W=T.subarray(L,L+G);if(W.length!==G)throw new R(\"tlv.decode: wrong value length\");return{v:W,l:T.subarray(L+G)}}},_int:{encode(C){let{Err:T}=t.DER;if(C<u)throw new T(\"integer: negative integers are not allowed\");let R=r.numberToHexUnpadded(C);if(8&Number.parseInt(R[0],16)&&(R=\"00\"+R),1&R.length)throw new T(\"unexpected assertion\");return R},decode(C){let{Err:T}=t.DER;if(128&C[0])throw new T(\"Invalid signature integer: negative\");if(C[0]===0&&!(128&C[1]))throw new T(\"Invalid signature integer: unnecessary leading zero\");return a(C)}},toSig(C){let{Err:T,_int:R,_tlv:L}=t.DER,D=typeof C==\"string\"?c(C):C;r.abytes(D);let{v:G,l:W}=L.decode(48,D);if(W.length)throw new T(\"Invalid signature: left bytes after parsing\");let{v:J,l:ne}=L.decode(2,G),{v:ie,l:Z}=L.decode(2,ne);if(Z.length)throw new T(\"Invalid signature: left bytes after parsing\");return{r:R.decode(J),s:R.decode(ie)}},hexFromSig(C){let{_tlv:T,_int:R}=t.DER,L=`${T.encode(2,R.encode(C.r))}${T.encode(2,R.encode(C.s))}`;return T.encode(48,L)}};let u=BigInt(0),d=BigInt(1),h=BigInt(2),m=BigInt(3),g=BigInt(4);function b(C){let T=function(F){let _=(0,e.validateBasic)(F);r.validateObject(_,{a:\"field\",b:\"field\"},{allowedPrivateKeyLengths:\"array\",wrapPrivateKey:\"boolean\",isTorsionFree:\"function\",clearCofactor:\"function\",allowInfinityPoint:\"boolean\",fromBytes:\"function\",toBytes:\"function\"});let{endo:O,Fp:z,a:N}=_;if(O){if(!z.eql(N,z.ZERO))throw new Error(\"Endomorphism can only be defined for Koblitz curves that have a=0\");if(typeof O!=\"object\"||typeof O.beta!=\"bigint\"||typeof O.splitScalar!=\"function\")throw new Error(\"Expected endomorphism with beta: bigint and splitScalar: function\")}return Object.freeze({..._})}(C),{Fp:R}=T,L=n.Field(T.n,T.nBitLength),D=T.toBytes||((F,_,O)=>{let z=_.toAffine();return r.concatBytes(Uint8Array.from([4]),R.toBytes(z.x),R.toBytes(z.y))}),G=T.fromBytes||(F=>{let _=F.subarray(1);return{x:R.fromBytes(_.subarray(0,R.BYTES)),y:R.fromBytes(_.subarray(R.BYTES,2*R.BYTES))}});function W(F){let{a:_,b:O}=T,z=R.sqr(F),N=R.mul(z,F);return R.add(R.add(N,R.mul(F,_)),O)}if(!R.eql(R.sqr(T.Gy),W(T.Gx)))throw new Error(\"bad generator point: equation left != right\");function J(F){let{allowedPrivateKeyLengths:_,nByteLength:O,wrapPrivateKey:z,n:N}=T;if(_&&typeof F!=\"bigint\"){if(r.isBytes(F)&&(F=r.bytesToHex(F)),typeof F!=\"string\"||!_.includes(F.length))throw new Error(\"Invalid key\");F=F.padStart(2*O,\"0\")}let B;try{B=typeof F==\"bigint\"?F:r.bytesToNumberBE((0,o.ensureBytes)(\"private key\",F,O))}catch{throw new Error(`private key must be ${O} bytes, hex or bigint, not ${typeof F}`)}return z&&(B=n.mod(B,N)),r.aInRange(\"private key\",B,d,N),B}function ne(F){if(!(F instanceof ae))throw new Error(\"ProjectivePoint expected\")}let ie=(0,o.memoized)((F,_)=>{let{px:O,py:z,pz:N}=F;if(R.eql(N,R.ONE))return{x:O,y:z};let B=F.is0();_==null&&(_=B?R.ONE:R.inv(N));let j=R.mul(O,_),q=R.mul(z,_),H=R.mul(N,_);if(B)return{x:R.ZERO,y:R.ZERO};if(!R.eql(H,R.ONE))throw new Error(\"invZ was invalid\");return{x:j,y:q}}),Z=(0,o.memoized)(F=>{if(F.is0()){if(T.allowInfinityPoint&&!R.is0(F.py))return;throw new Error(\"bad point: ZERO\")}let{x:_,y:O}=F.toAffine();if(!R.isValid(_)||!R.isValid(O))throw new Error(\"bad point: x or y not FE\");let z=R.sqr(O),N=W(_);if(!R.eql(z,N))throw new Error(\"bad point: equation left != right\");if(!F.isTorsionFree())throw new Error(\"bad point: not in prime-order subgroup\");return!0});class ae{constructor(_,O,z){if(this.px=_,this.py=O,this.pz=z,_==null||!R.isValid(_))throw new Error(\"x required\");if(O==null||!R.isValid(O))throw new Error(\"y required\");if(z==null||!R.isValid(z))throw new Error(\"z required\");Object.freeze(this)}static fromAffine(_){let{x:O,y:z}=_||{};if(!_||!R.isValid(O)||!R.isValid(z))throw new Error(\"invalid affine point\");if(_ instanceof ae)throw new Error(\"projective point not allowed\");let N=B=>R.eql(B,R.ZERO);return N(O)&&N(z)?ae.ZERO:new ae(O,z,R.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(_){let O=R.invertBatch(_.map(z=>z.pz));return _.map((z,N)=>z.toAffine(O[N])).map(ae.fromAffine)}static fromHex(_){let O=ae.fromAffine(G((0,o.ensureBytes)(\"pointHex\",_)));return O.assertValidity(),O}static fromPrivateKey(_){return ae.BASE.multiply(J(_))}static msm(_,O){return(0,e.pippenger)(ae,L,_,O)}_setWindowSize(_){$.setWindowSize(this,_)}assertValidity(){Z(this)}hasEvenY(){let{y:_}=this.toAffine();if(R.isOdd)return!R.isOdd(_);throw new Error(\"Field doesn\\'t support isOdd\")}equals(_){ne(_);let{px:O,py:z,pz:N}=this,{px:B,py:j,pz:q}=_,H=R.eql(R.mul(O,q),R.mul(B,N)),I=R.eql(R.mul(z,q),R.mul(j,N));return H&&I}negate(){return new ae(this.px,R.neg(this.py),this.pz)}double(){let{a:_,b:O}=T,z=R.mul(O,m),{px:N,py:B,pz:j}=this,q=R.ZERO,H=R.ZERO,I=R.ZERO,U=R.mul(N,N),X=R.mul(B,B),ee=R.mul(j,j),se=R.mul(N,B);return se=R.add(se,se),I=R.mul(N,j),I=R.add(I,I),q=R.mul(_,I),H=R.mul(z,ee),H=R.add(q,H),q=R.sub(X,H),H=R.add(X,H),H=R.mul(q,H),q=R.mul(se,q),I=R.mul(z,I),ee=R.mul(_,ee),se=R.sub(U,ee),se=R.mul(_,se),se=R.add(se,I),I=R.add(U,U),U=R.add(I,U),U=R.add(U,ee),U=R.mul(U,se),H=R.add(H,U),ee=R.mul(B,j),ee=R.add(ee,ee),U=R.mul(ee,se),q=R.sub(q,U),I=R.mul(ee,X),I=R.add(I,I),I=R.add(I,I),new ae(q,H,I)}add(_){ne(_);let{px:O,py:z,pz:N}=this,{px:B,py:j,pz:q}=_,H=R.ZERO,I=R.ZERO,U=R.ZERO,X=T.a,ee=R.mul(T.b,m),se=R.mul(O,B),pe=R.mul(z,j),ye=R.mul(N,q),xe=R.add(O,z),_e=R.add(B,j);xe=R.mul(xe,_e),_e=R.add(se,pe),xe=R.sub(xe,_e),_e=R.add(O,N);let Me=R.add(B,q);return _e=R.mul(_e,Me),Me=R.add(se,ye),_e=R.sub(_e,Me),Me=R.add(z,N),H=R.add(j,q),Me=R.mul(Me,H),H=R.add(pe,ye),Me=R.sub(Me,H),U=R.mul(X,_e),H=R.mul(ee,ye),U=R.add(H,U),H=R.sub(pe,U),U=R.add(pe,U),I=R.mul(H,U),pe=R.add(se,se),pe=R.add(pe,se),ye=R.mul(X,ye),_e=R.mul(ee,_e),pe=R.add(pe,ye),ye=R.sub(se,ye),ye=R.mul(X,ye),_e=R.add(_e,ye),se=R.mul(pe,_e),I=R.add(I,se),se=R.mul(Me,_e),H=R.mul(xe,H),H=R.sub(H,se),se=R.mul(xe,pe),U=R.mul(Me,U),U=R.add(U,se),new ae(H,I,U)}subtract(_){return this.add(_.negate())}is0(){return this.equals(ae.ZERO)}wNAF(_){return $.wNAFCached(this,_,ae.normalizeZ)}multiplyUnsafe(_){r.aInRange(\"scalar\",_,u,T.n);let O=ae.ZERO;if(_===u)return O;if(_===d)return this;let{endo:z}=T;if(!z)return $.unsafeLadder(this,_);let{k1neg:N,k1:B,k2neg:j,k2:q}=z.splitScalar(_),H=O,I=O,U=this;for(;B>u||q>u;)B&d&&(H=H.add(U)),q&d&&(I=I.add(U)),U=U.double(),B>>=d,q>>=d;return N&&(H=H.negate()),j&&(I=I.negate()),I=new ae(R.mul(I.px,z.beta),I.py,I.pz),H.add(I)}multiply(_){let{endo:O,n:z}=T,N,B;if(r.aInRange(\"scalar\",_,d,z),O){let{k1neg:j,k1:q,k2neg:H,k2:I}=O.splitScalar(_),{p:U,f:X}=this.wNAF(q),{p:ee,f:se}=this.wNAF(I);U=$.constTimeNegate(j,U),ee=$.constTimeNegate(H,ee),ee=new ae(R.mul(ee.px,O.beta),ee.py,ee.pz),N=U.add(ee),B=X.add(se)}else{let{p:j,f:q}=this.wNAF(_);N=j,B=q}return ae.normalizeZ([N,B])[0]}multiplyAndAddUnsafe(_,O,z){let N=ae.BASE,B=(q,H)=>H!==u&&H!==d&&q.equals(N)?q.multiply(H):q.multiplyUnsafe(H),j=B(this,O).add(B(_,z));return j.is0()?void 0:j}toAffine(_){return ie(this,_)}isTorsionFree(){let{h:_,isTorsionFree:O}=T;if(_===d)return!0;if(O)return O(ae,this);throw new Error(\"isTorsionFree() has not been declared for the elliptic curve\")}clearCofactor(){let{h:_,clearCofactor:O}=T;return _===d?this:O?O(ae,this):this.multiplyUnsafe(T.h)}toRawBytes(_=!0){return(0,o.abool)(\"isCompressed\",_),this.assertValidity(),D(ae,this,_)}toHex(_=!0){return(0,o.abool)(\"isCompressed\",_),r.bytesToHex(this.toRawBytes(_))}}ae.BASE=new ae(T.Gx,T.Gy,R.ONE),ae.ZERO=new ae(R.ZERO,R.ONE,R.ZERO);let V=T.nBitLength,$=(0,e.wNAF)(ae,T.endo?Math.ceil(V/2):V);return{CURVE:T,ProjectivePoint:ae,normPrivateKeyToScalar:J,weierstrassEquation:W,isWithinCurveOrder:function(F){return r.inRange(F,d,T.n)}}}function E(C,T){let R=C.ORDER,L=u;for(let F=R-d;F%h===u;F/=h)L+=d;let D=L,G=h<<D-d-d,W=G*h,J=(R-d)/W,ne=(J-d)/h,ie=W-d,Z=G,ae=C.pow(T,J),V=C.pow(T,(J+d)/h),$=(F,_)=>{let O=ae,z=C.pow(_,ie),N=C.sqr(z);N=C.mul(N,_);let B=C.mul(F,N);B=C.pow(B,ne),B=C.mul(B,z),z=C.mul(B,_),N=C.mul(B,F);let j=C.mul(N,z);B=C.pow(j,Z);let q=C.eql(B,C.ONE);z=C.mul(N,V),B=C.mul(j,O),N=C.cmov(z,N,q),j=C.cmov(B,j,q);for(let H=D;H>d;H--){let I=H-h;I=h<<I-d;let U=C.pow(j,I),X=C.eql(U,C.ONE);z=C.mul(N,O),O=C.mul(O,O),U=C.mul(j,O),N=C.cmov(z,N,X),j=C.cmov(U,j,X)}return{isValid:q,value:N}};if(C.ORDER%g===m){let F=(C.ORDER-m)/g,_=C.sqrt(C.neg(T));$=(O,z)=>{let N=C.sqr(z),B=C.mul(O,z);N=C.mul(N,B);let j=C.pow(N,F);j=C.mul(j,B);let q=C.mul(j,_),H=C.mul(C.sqr(j),z),I=C.eql(H,O);return{isValid:I,value:C.cmov(q,j,I)}}}return $}})(Dre),Object.defineProperty(hH,\"__esModule\",{value:!0}),hH.getHash=j4e,hH.createCurve=function(t,e){let n=r=>(0,Iot.weierstrass)({...t,...j4e(r)});return Object.freeze({...n(e),create:n})};Rot=Bre,U4e=Qv,Iot=Dre;(function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.encodeToCurve=t.hashToCurve=t.schnorr=t.secp256k1=void 0;let e=Kv,n=Qv,r=hH,o=n3,i=$o,a=_r,c=Dre,u=BigInt(\"0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f\"),d=BigInt(\"0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141\"),h=BigInt(1),m=BigInt(2),g=(B,j)=>(B+j/m)/j;function b(B){let j=u,q=BigInt(3),H=BigInt(6),I=BigInt(11),U=BigInt(22),X=BigInt(23),ee=BigInt(44),se=BigInt(88),pe=B*B*B%j,ye=pe*pe*B%j,xe=(0,i.pow2)(ye,q,j)*ye%j,_e=(0,i.pow2)(xe,q,j)*ye%j,Me=(0,i.pow2)(_e,m,j)*pe%j,qe=(0,i.pow2)(Me,I,j)*Me%j,wt=(0,i.pow2)(qe,U,j)*qe%j,Ge=(0,i.pow2)(wt,ee,j)*wt%j,ht=(0,i.pow2)(Ge,se,j)*Ge%j,Ct=(0,i.pow2)(ht,ee,j)*wt%j,dt=(0,i.pow2)(Ct,q,j)*ye%j,Ze=(0,i.pow2)(dt,X,j)*qe%j,rn=(0,i.pow2)(Ze,H,j)*pe%j,zt=(0,i.pow2)(rn,m,j);if(!E.eql(E.sqr(zt),B))throw new Error(\"Cannot find square root\");return zt}let E=(0,i.Field)(u,void 0,void 0,{sqrt:b});t.secp256k1=(0,r.createCurve)({a:BigInt(0),b:BigInt(7),Fp:E,n:d,Gx:BigInt(\"55066263022277343669578718895168534326250603453777594175500187360389116729240\"),Gy:BigInt(\"32670510020758816978083085130507043184471273380659243275938904335757337482424\"),h:BigInt(1),lowS:!0,endo:{beta:BigInt(\"0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee\"),splitScalar:B=>{let j=d,q=BigInt(\"0x3086d221a7d46bcde86c90e49284eb15\"),H=-h*BigInt(\"0xe4437ed6010e88286f547fa90abfe4c3\"),I=BigInt(\"0x114ca50f7a8e2f3f657c1108d9d44cfd8\"),U=q,X=BigInt(\"0x100000000000000000000000000000000\"),ee=g(U*B,j),se=g(-H*B,j),pe=(0,i.mod)(B-ee*q-se*I,j),ye=(0,i.mod)(-ee*H-se*U,j),xe=pe>X,_e=ye>X;if(xe&&(pe=j-pe),_e&&(ye=j-ye),pe>X||ye>X)throw new Error(\"splitScalar: Endomorphism failed, k=\"+B);return{k1neg:xe,k1:pe,k2neg:_e,k2:ye}}}},e.sha256);let C=BigInt(0),T={};function R(B,...j){let q=T[B];if(q===void 0){let H=(0,e.sha256)(Uint8Array.from(B,I=>I.charCodeAt(0)));q=(0,a.concatBytes)(H,H),T[B]=q}return(0,e.sha256)((0,a.concatBytes)(q,...j))}let L=B=>B.toRawBytes(!0).slice(1),D=B=>(0,a.numberToBytesBE)(B,32),G=B=>(0,i.mod)(B,u),W=B=>(0,i.mod)(B,d),J=t.secp256k1.ProjectivePoint,ne=(B,j,q)=>J.BASE.multiplyAndAddUnsafe(B,j,q);function ie(B){let j=t.secp256k1.utils.normPrivateKeyToScalar(B),q=J.fromPrivateKey(j);return{scalar:q.hasEvenY()?j:W(-j),bytes:L(q)}}function Z(B){(0,a.aInRange)(\"x\",B,h,u);let j=G(B*B),q=b(G(j*B+BigInt(7)));q%m!==C&&(q=G(-q));let H=new J(B,q,h);return H.assertValidity(),H}let ae=a.bytesToNumberBE;function V(...B){return W(ae(R(\"BIP0340/challenge\",...B)))}function $(B){return ie(B).bytes}function F(B,j,q=(0,n.randomBytes)(32)){let H=(0,a.ensureBytes)(\"message\",B),{bytes:I,scalar:U}=ie(j),X=(0,a.ensureBytes)(\"auxRand\",q,32),ee=D(U^ae(R(\"BIP0340/aux\",X))),se=R(\"BIP0340/nonce\",ee,I,H),pe=W(ae(se));if(pe===C)throw new Error(\"sign failed: k is zero\");let{bytes:ye,scalar:xe}=ie(pe),_e=V(ye,I,H),Me=new Uint8Array(64);if(Me.set(ye,0),Me.set(D(W(xe+_e*U)),32),!_(Me,H,I))throw new Error(\"sign: Invalid signature produced\");return Me}function _(B,j,q){let H=(0,a.ensureBytes)(\"signature\",B,64),I=(0,a.ensureBytes)(\"message\",j),U=(0,a.ensureBytes)(\"publicKey\",q,32);try{let X=Z(ae(U)),ee=ae(H.subarray(0,32));if(!(0,a.inRange)(ee,h,u))return!1;let se=ae(H.subarray(32,64));if(!(0,a.inRange)(se,h,d))return!1;let pe=V(D(ee),L(X),I),ye=ne(X,se,W(-pe));return!(!ye||!ye.hasEvenY()||ye.toAffine().x!==ee)}catch{return!1}}t.schnorr={getPublicKey:$,sign:F,verify:_,utils:{randomPrivateKey:t.secp256k1.utils.randomPrivateKey,lift_x:Z,pointToBytes:L,numberToBytesBE:a.numberToBytesBE,bytesToNumberBE:a.bytesToNumberBE,taggedHash:R,mod:i.mod}};let O=(0,o.isogenyMap)(E,[[\"0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7\",\"0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581\",\"0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262\",\"0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c\"],[\"0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b\",\"0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14\",\"0x0000000000000000000000000000000000000000000000000000000000000001\"],[\"0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c\",\"0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3\",\"0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931\",\"0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84\"],[\"0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b\",\"0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573\",\"0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f\",\"0x0000000000000000000000000000000000000000000000000000000000000001\"]].map(B=>B.map(j=>BigInt(j)))),z=(0,c.mapToCurveSimpleSWU)(E,{A:BigInt(\"0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533\"),B:BigInt(\"1771\"),Z:E.create(BigInt(\"-11\"))}),N=(0,o.createHasher)(t.secp256k1.ProjectivePoint,B=>{let{x:j,y:q}=z(E.create(B[0]));return O(j,q)},{DST:\"secp256k1_XMD:SHA-256_SSWU_RO_\",encodeDST:\"secp256k1_XMD:SHA-256_SSWU_NU_\",p:E.ORDER,m:1,k:128,expand:\"xmd\",hash:e.sha256});t.hashToCurve=N.hashToCurve,t.encodeToCurve=N.encodeToCurve})(kAe);$ne={};(function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.decodeHex=t.remove0x=void 0;var e=Lh;t.remove0x=function(n){return n.startsWith(\"0x\")||n.startsWith(\"0X\")?n.slice(2):n},t.decodeHex=function(n){return(0,e.hexToBytes)((0,t.remove0x)(n))}})($ne),function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.hexToPublicKey=t.convertPublicKeyFormat=t.getSharedPoint=t.getPublicKey=t.isValidPrivateKey=t.getValidSecret=void 0;var e=Mre,n=K8e,r=kAe,o=RO,i=zc,a=$ne;t.getValidSecret=function(){var h;do h=(0,e.randomBytes)(i.SECRET_KEY_LENGTH);while(!(0,t.isValidPrivateKey)(h));return h},t.isValidPrivateKey=function(h){return c((0,o.ellipticCurve)(),function(m){return m.utils.isValidPrivateKey(h)},function(){return!0},function(){return!0})},t.getPublicKey=function(h){return c((0,o.ellipticCurve)(),function(m){return m.getPublicKey(h)},function(m){return m.getPublicKey(h)},function(m){return m.getPublicKey(h)})},t.getSharedPoint=function(h,m,g){return c((0,o.ellipticCurve)(),function(b){return b.getSharedSecret(h,m,g)},function(b){return b.getSharedSecret(h,m)},function(b){return d(b,h,m)})},t.convertPublicKeyFormat=function(h,m){return c((0,o.ellipticCurve)(),function(g){return g.getSharedSecret(BigInt(1),h,m)},function(){return h},function(){return h})};function c(h,m,g,b){if(h===\"secp256k1\")return m(r.secp256k1);if(h===\"x25519\")return g(n.x25519);if(h===\"ed25519\")return b(n.ed25519);throw new Error(\"Not implemented\")}t.hexToPublicKey=function(h){var m=(0,a.decodeHex)(h);return c((0,o.ellipticCurve)(),function(){return u(m)},function(){return m},function(){return m})};var u=function(h){if(h.length===i.ETH_PUBLIC_KEY_SIZE){var m=new Uint8Array(1+h.length);return m.set([4]),m.set(h,1),m}return h},d=function(h,m,g){var b=h.utils.getExtendedPublicKey(m).scalar;return h.ExtendedPoint.fromHex(g).multiply(b).toRawBytes()}}($8e);_Ae={},lA={};Object.defineProperty(lA,\"__esModule\",{value:!0}),lA.hkdf=void 0,lA.extract=AAe,lA.expand=TAe;Kne=Ph,z4e=Qv,CAe=Bre;hne=new Uint8Array([0]),H4e=new Uint8Array;lA.hkdf=(t,e,n,r,o)=>TAe(t,AAe(t,e,n),r,o),function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.getSharedKey=t.deriveKey=void 0;var e=Lh,n=lA,r=Kv;t.deriveKey=function(o,i,a){return(0,n.hkdf)(r.sha256,o,i,a,32)},t.getSharedKey=function(){for(var o=[],i=0;i<arguments.length;i++)o[i]=arguments[i];return(0,t.deriveKey)(e.concatBytes.apply(void 0,o))}}(_Ae);q4e={},mA={},Ws={},SS={};Object.defineProperty(SS,\"__esModule\",{value:!0}),SS.polyval=SS.ghash=void 0,SS._toGHASHKey=RAe;kS=ku,Ad=Lh,zv=16,Fre=new Uint8Array(16),b1=(0,Ad.u32)(Fre),Sm=t=>(t>>>0&255)<<24|(t>>>8&255)<<16|(t>>>16&255)<<8|t>>>24&255|0;FH=class{constructor(e,n){this.blockLen=zv,this.outputLen=zv,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,e=(0,Ad.toBytes)(e),(0,kS.bytes)(e,16);let r=(0,Ad.createView)(e),o=r.getUint32(0,!1),i=r.getUint32(4,!1),a=r.getUint32(8,!1),c=r.getUint32(12,!1),u=[];for(let R=0;R<128;R++)u.push({s0:Sm(o),s1:Sm(i),s2:Sm(a),s3:Sm(c)}),{s0:o,s1:i,s2:a,s3:c}={s3:(m=a)<<31|(g=c)>>>1,s2:(h=i)<<31|m>>>1,s1:(d=o)<<31|h>>>1,s0:d>>>1^225<<24&-(1&g)};var d,h,m,g;let b=(R=>R>65536?8:R>1024?4:2)(n||1024);if(![1,2,4,8].includes(b))throw new Error(`ghash: wrong window size=${b}, should be 2, 4 or 8`);this.W=b;let E=128/b,C=this.windowSize=2**b,T=[];for(let R=0;R<E;R++)for(let L=0;L<C;L++){let D=0,G=0,W=0,J=0;for(let ne=0;ne<b;ne++){if(!(L>>>b-ne-1&1))continue;let{s0:ie,s1:Z,s2:ae,s3:V}=u[b*R+ne];D^=ie,G^=Z,W^=ae,J^=V}T.push({s0:D,s1:G,s2:W,s3:J})}this.t=T}_updateBlock(e,n,r,o){e^=this.s0,n^=this.s1,r^=this.s2,o^=this.s3;let{W:i,t:a,windowSize:c}=this,u=0,d=0,h=0,m=0,g=(1<<i)-1,b=0;for(let E of[e,n,r,o])for(let C=0;C<4;C++){let T=E>>>8*C&255;for(let R=8/i-1;R>=0;R--){let L=T>>>i*R&g,{s0:D,s1:G,s2:W,s3:J}=a[b*c+L];u^=D,d^=G,h^=W,m^=J,b+=1}}this.s0=u,this.s1=d,this.s2=h,this.s3=m}update(e){e=(0,Ad.toBytes)(e),(0,kS.exists)(this);let n=(0,Ad.u32)(e),r=Math.floor(e.length/zv),o=e.length%zv;for(let i=0;i<r;i++)this._updateBlock(n[4*i+0],n[4*i+1],n[4*i+2],n[4*i+3]);return o&&(Fre.set(e.subarray(r*zv)),this._updateBlock(b1[0],b1[1],b1[2],b1[3]),(0,Ad.clean)(b1)),this}destroy(){let{t:e}=this;for(let n of e)n.s0=0,n.s1=0,n.s2=0,n.s3=0}digestInto(e){(0,kS.exists)(this),(0,kS.output)(e,this),this.finished=!0;let{s0:n,s1:r,s2:o,s3:i}=this,a=(0,Ad.u32)(e);return a[0]=n,a[1]=r,a[2]=o,a[3]=i,e}digest(){let e=new Uint8Array(zv);return this.digestInto(e),this.destroy(),e}},Gne=class extends FH{constructor(e,n){e=(0,Ad.toBytes)(e);let r=RAe((0,Ad.copyBytes)(e));super(r,n),(0,Ad.clean)(r)}update(e){e=(0,Ad.toBytes)(e),(0,kS.exists)(this);let n=(0,Ad.u32)(e),r=e.length%zv,o=Math.floor(e.length/zv);for(let i=0;i<o;i++)this._updateBlock(Sm(n[4*i+3]),Sm(n[4*i+2]),Sm(n[4*i+1]),Sm(n[4*i+0]));return r&&(Fre.set(e.subarray(o*zv)),this._updateBlock(Sm(b1[3]),Sm(b1[2]),Sm(b1[1]),Sm(b1[0])),(0,Ad.clean)(b1)),this}digestInto(e){(0,kS.exists)(this),(0,kS.output)(e,this),this.finished=!0;let{s0:n,s1:r,s2:o,s3:i}=this,a=(0,Ad.u32)(e);return a[0]=n,a[1]=r,a[2]=o,a[3]=i,e.reverse()}};SS.ghash=W4e((t,e)=>new FH(t,e)),SS.polyval=W4e((t,e)=>new Gne(t,e)),Object.defineProperty(Ws,\"__esModule\",{value:!0}),Ws.unsafe=Ws.aeskwp=Ws.aeskw=Ws.siv=Ws.gcm=Ws.cfb=Ws.cbc=Ws.ecb=Ws.ctr=void 0,Ws.expandKeyLE=hg,Ws.expandKeyDecLE=PO;eo=ku,Zne=SS,yt=Lh,Of=16,Xz=new Uint8Array(Of),Oot=283;Yne=(()=>{let t=new Uint8Array(256);for(let n=0,r=1;n<256;n++,r^=Ure(r))t[n]=r;let e=new Uint8Array(256);e[0]=99;for(let n=0;n<255;n++){let r=t[255-n];r|=r<<8,e[t[n]]=255&(r^r>>4^r>>5^r>>6^r>>7^99)}return(0,yt.clean)(t),e})(),Pot=Yne.map((t,e)=>Yne.indexOf(e)),Mot=t=>t<<24|t>>>8,pne=t=>t<<8|t>>>24,UH=t=>t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255;jre=IAe(Yne,t=>uA(t,3)<<24|t<<16|t<<8|uA(t,2)),OAe=IAe(Pot,t=>uA(t,11)<<24|uA(t,13)<<16|uA(t,9)<<8|uA(t,14)),Not=(()=>{let t=new Uint8Array(16);for(let e=0,n=1;e<16;e++,n=Ure(n))t[e]=n;return t})();Ws.ctr=(0,yt.wrapCipher)({blockSize:16,nonceLength:16},function(t,e){function n(r,o){if((0,eo.bytes)(r),o!==void 0&&((0,eo.bytes)(o),!(0,yt.isAligned32)(o)))throw new Error(\"unaligned destination\");let i=hg(t),a=(0,yt.copyBytes)(e),c=[i,a];(0,yt.isAligned32)(r)||c.push(r=(0,yt.copyBytes)(r));let u=PAe(i,a,r,o);return(0,yt.clean)(...c),u}return(0,eo.bytes)(t),(0,eo.bytes)(e,Of),{encrypt:(r,o)=>n(r,o),decrypt:(r,o)=>n(r,o)}}),Ws.ecb=(0,yt.wrapCipher)({blockSize:16},function(t,e={}){(0,eo.bytes)(t);let n=!e.disablePadding;return{encrypt(r,o){let{b:i,o:a,out:c}=$4e(r,n,o),u=hg(t),d=0;for(;d+4<=i.length;){let{s0:h,s1:m,s2:g,s3:b}=Td(u,i[d+0],i[d+1],i[d+2],i[d+3]);a[d++]=h,a[d++]=m,a[d++]=g,a[d++]=b}if(n){let h=G4e(r.subarray(4*d)),{s0:m,s1:g,s2:b,s3:E}=Td(u,h[0],h[1],h[2],h[3]);a[d++]=m,a[d++]=g,a[d++]=b,a[d++]=E}return(0,yt.clean)(u),c},decrypt(r,o){V4e(r);let i=PO(t),a=gA(r.length,o),c=[i];(0,yt.isAligned32)(r)||c.push(r=(0,yt.copyBytes)(r));let u=(0,yt.u32)(r),d=(0,yt.u32)(a);for(let h=0;h+4<=u.length;){let{s0:m,s1:g,s2:b,s3:E}=MO(i,u[h+0],u[h+1],u[h+2],u[h+3]);d[h++]=m,d[h++]=g,d[h++]=b,d[h++]=E}return(0,yt.clean)(...c),K4e(a,n)}}}),Ws.cbc=(0,yt.wrapCipher)({blockSize:16,nonceLength:16},function(t,e,n={}){(0,eo.bytes)(t),(0,eo.bytes)(e,16);let r=!n.disablePadding;return{encrypt(o,i){let a=hg(t),{b:c,o:u,out:d}=$4e(o,r,i),h=e,m=[a];(0,yt.isAligned32)(h)||m.push(h=(0,yt.copyBytes)(h));let g=(0,yt.u32)(h),b=g[0],E=g[1],C=g[2],T=g[3],R=0;for(;R+4<=c.length;)b^=c[R+0],E^=c[R+1],C^=c[R+2],T^=c[R+3],{s0:b,s1:E,s2:C,s3:T}=Td(a,b,E,C,T),u[R++]=b,u[R++]=E,u[R++]=C,u[R++]=T;if(r){let L=G4e(o.subarray(4*R));b^=L[0],E^=L[1],C^=L[2],T^=L[3],{s0:b,s1:E,s2:C,s3:T}=Td(a,b,E,C,T),u[R++]=b,u[R++]=E,u[R++]=C,u[R++]=T}return(0,yt.clean)(...m),d},decrypt(o,i){V4e(o);let a=PO(t),c=e,u=[a];(0,yt.isAligned32)(c)||u.push(c=(0,yt.copyBytes)(c));let d=(0,yt.u32)(c),h=gA(o.length,i);(0,yt.isAligned32)(o)||u.push(o=(0,yt.copyBytes)(o));let m=(0,yt.u32)(o),g=(0,yt.u32)(h),b=d[0],E=d[1],C=d[2],T=d[3];for(let R=0;R+4<=m.length;){let L=b,D=E,G=C,W=T;b=m[R+0],E=m[R+1],C=m[R+2],T=m[R+3];let{s0:J,s1:ne,s2:ie,s3:Z}=MO(a,b,E,C,T);g[R++]=J^L,g[R++]=ne^D,g[R++]=ie^G,g[R++]=Z^W}return(0,yt.clean)(...u),K4e(h,r)}}}),Ws.cfb=(0,yt.wrapCipher)({blockSize:16,nonceLength:16},function(t,e){function n(r,o,i){(0,eo.bytes)(r);let a=r.length;i=gA(a,i);let c=hg(t),u=e,d=[c];(0,yt.isAligned32)(u)||d.push(u=(0,yt.copyBytes)(u)),(0,yt.isAligned32)(r)||d.push(r=(0,yt.copyBytes)(r));let h=(0,yt.u32)(r),m=(0,yt.u32)(i),g=o?m:h,b=(0,yt.u32)(u),E=b[0],C=b[1],T=b[2],R=b[3];for(let D=0;D+4<=h.length;){let{s0:G,s1:W,s2:J,s3:ne}=Td(c,E,C,T,R);m[D+0]=h[D+0]^G,m[D+1]=h[D+1]^W,m[D+2]=h[D+2]^J,m[D+3]=h[D+3]^ne,E=g[D++],C=g[D++],T=g[D++],R=g[D++]}let L=Of*Math.floor(h.length/4);if(L<a){({s0:E,s1:C,s2:T,s3:R}=Td(c,E,C,T,R));let D=(0,yt.u8)(new Uint32Array([E,C,T,R]));for(let G=L,W=0;G<a;G++,W++)i[G]=r[G]^D[W];(0,yt.clean)(D)}return(0,yt.clean)(...d),i}return(0,eo.bytes)(t),(0,eo.bytes)(e,16),{encrypt:(r,o)=>n(r,!0,o),decrypt:(r,o)=>n(r,!1,o)}}),Ws.gcm=(0,yt.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},function(t,e,n){if((0,eo.bytes)(t),(0,eo.bytes)(e),n!==void 0&&(0,eo.bytes)(n),e.length<8)throw new Error(\"aes/gcm: invalid nonce length\");let r=16;function o(a,c,u){let d=MAe(Zne.ghash,!1,a,u,n);for(let h=0;h<c.length;h++)d[h]^=c[h];return d}function i(){let a=hg(t),c=Xz.slice(),u=Xz.slice();if(dA(a,!1,u,u,c),e.length===12)u.set(e);else{let d=Xz.slice(),h=(0,yt.createView)(d);(0,yt.setBigUint64)(h,8,BigInt(8*e.length),!1);let m=Zne.ghash.create(c).update(e).update(d);m.digestInto(u),m.destroy()}return{xk:a,authKey:c,counter:u,tagMask:dA(a,!1,u,Xz)}}return{encrypt(a){(0,eo.bytes)(a);let{xk:c,authKey:u,counter:d,tagMask:h}=i(),m=new Uint8Array(a.length+r),g=[c,u,d,h];(0,yt.isAligned32)(a)||g.push(a=(0,yt.copyBytes)(a)),dA(c,!1,d,a,m);let b=o(u,h,m.subarray(0,m.length-r));return g.push(b),m.set(b,a.length),(0,yt.clean)(...g),m},decrypt(a){if((0,eo.bytes)(a),a.length<r)throw new Error(\"aes/gcm: ciphertext less than tagLen (16)\");let{xk:c,authKey:u,counter:d,tagMask:h}=i(),m=[c,u,h,d];(0,yt.isAligned32)(a)||m.push(a=(0,yt.copyBytes)(a));let g=a.subarray(0,-16),b=a.subarray(-16),E=o(u,h,g);if(m.push(E),!(0,yt.equalBytes)(E,b))throw new Error(\"aes/gcm: invalid ghash tag\");let C=dA(c,!1,d,g);return(0,yt.clean)(...m),C}}});eH=(t,e,n)=>r=>{if(!Number.isSafeInteger(r)||e>r||r>n)throw new Error(`${t}: invalid value=${r}, must be [${e}..${n}]`)};Ws.siv=(0,yt.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},function(t,e,n){let r=eH(\"AAD\",0,68719476736),o=eH(\"plaintext\",0,2**36),i=eH(\"nonce\",12,12),a=eH(\"ciphertext\",16,2**36+16);function c(){let h=hg(t),m=new Uint8Array(t.length),g=new Uint8Array(16),b=[h,m],E=e;(0,yt.isAligned32)(E)||b.push(E=(0,yt.copyBytes)(E));let C=(0,yt.u32)(E),T=0,R=C[0],L=C[1],D=C[2],G=0;for(let J of[g,m].map(yt.u32)){let ne=(0,yt.u32)(J);for(let ie=0;ie<ne.length;ie+=2){let{s0:Z,s1:ae}=Td(h,T,R,L,D);ne[ie+0]=Z,ne[ie+1]=ae,T=++G}}let W={authKey:g,encKey:hg(m)};return(0,yt.clean)(...b),W}function u(h,m,g){let b=MAe(Zne.polyval,!0,m,g,n);for(let D=0;D<12;D++)b[D]^=e[D];b[15]&=127;let E=(0,yt.u32)(b),C=E[0],T=E[1],R=E[2],L=E[3];return{s0:C,s1:T,s2:R,s3:L}=Td(h,C,T,R,L),E[0]=C,E[1]=T,E[2]=R,E[3]=L,b}function d(h,m,g){let b=(0,yt.copyBytes)(m);b[15]|=128;let E=dA(h,!0,b,g);return(0,yt.clean)(b),E}return(0,eo.bytes)(t,16,24,32),(0,eo.bytes)(e),i(e.length),n!==void 0&&((0,eo.bytes)(n),r(n.length)),{encrypt(h){(0,eo.bytes)(h),o(h.length);let{encKey:m,authKey:g}=c(),b=u(m,g,h),E=[m,g,b];(0,yt.isAligned32)(h)||E.push(h=(0,yt.copyBytes)(h));let C=new Uint8Array(h.length+16);return C.set(b,h.length),C.set(d(m,b,h)),(0,yt.clean)(...E),C},decrypt(h){(0,eo.bytes)(h),a(h.length);let m=h.subarray(-16),{encKey:g,authKey:b}=c(),E=[g,b];(0,yt.isAligned32)(h)||E.push(h=(0,yt.copyBytes)(h));let C=d(g,m,h.subarray(0,-16)),T=u(g,b,C);if(E.push(T),!(0,yt.equalBytes)(m,T))throw(0,yt.clean)(...E),new Error(\"invalid polyval tag\");return(0,yt.clean)(...E),C}}});jH={encrypt(t,e){if(e.length>=2**32)throw new Error(\"plaintext should be less than 4gb\");let n=hg(t);if(e.length===16)LAe(n,e);else{let r=(0,yt.u32)(e),o=r[0],i=r[1];for(let a=0,c=1;a<6;a++)for(let u=2;u<r.length;u+=2,c++){let{s0:d,s1:h,s2:m,s3:g}=Td(n,o,i,r[u],r[u+1]);o=d,i=h^UH(c),r[u]=m,r[u+1]=g}r[0]=o,r[1]=i}n.fill(0)},decrypt(t,e){if(e.length-8>=2**32)throw new Error(\"ciphertext should be less than 4gb\");let n=PO(t),r=e.length/8-1;if(r===1)BAe(n,e);else{let o=(0,yt.u32)(e),i=o[0],a=o[1];for(let c=0,u=6*r;c<6;c++)for(let d=2*r;d>=1;d-=2,u--){a^=UH(u);let{s0:h,s1:m,s2:g,s3:b}=MO(n,i,a,o[d],o[d+1]);i=h,a=m,o[d]=g,o[d+1]=b}o[0]=i,o[1]=a}n.fill(0)}},Z4e=new Uint8Array(8).fill(166);Ws.aeskw=(0,yt.wrapCipher)({blockSize:8},t=>({encrypt(e){if((0,eo.bytes)(e),!e.length||e.length%8!=0)throw new Error(\"invalid plaintext length\");if(e.length===8)throw new Error(\"8-byte keys not allowed in AESKW, use AESKWP instead\");let n=(0,yt.concatBytes)(Z4e,e);return jH.encrypt(t,n),n},decrypt(e){if((0,eo.bytes)(e),e.length%8!=0||e.length<24)throw new Error(\"invalid ciphertext length\");let n=(0,yt.copyBytes)(e);if(jH.decrypt(t,n),!(0,yt.equalBytes)(n.subarray(0,8),Z4e))throw new Error(\"integrity check failed\");return n.subarray(0,8).fill(0),n.subarray(8)}}));Y4e=2790873510;Ws.aeskwp=(0,yt.wrapCipher)({blockSize:8},t=>({encrypt(e){if((0,eo.bytes)(e),!e.length)throw new Error(\"invalid plaintext length\");let n=8*Math.ceil(e.length/8),r=new Uint8Array(8+n);r.set(e,8);let o=(0,yt.u32)(r);return o[0]=Y4e,o[1]=UH(e.length),jH.encrypt(t,r),r},decrypt(e){if((0,eo.bytes)(e),e.length<16)throw new Error(\"invalid ciphertext length\");let n=(0,yt.copyBytes)(e),r=(0,yt.u32)(n);jH.decrypt(t,n);let o=UH(r[1])>>>0,i=8*Math.ceil(o/8);if(r[0]!==Y4e||n.length-8!==i)throw new Error(\"integrity check failed\");for(let a=o;a<i;a++)if(n[8+a]!==0)throw new Error(\"integrity check failed\");return n.subarray(0,8).fill(0),n.subarray(8,8+o)}})),Ws.unsafe={expandKeyLE:hg,expandKeyDecLE:PO,encrypt:Td,decrypt:MO,encryptBlock:LAe,decryptBlock:BAe,ctrCounter:PAe,ctr32:dA},Object.defineProperty(mA,\"__esModule\",{value:!0}),mA.aes256cbc=mA.aes256gcm=void 0;DAe=Ws;mA.aes256gcm=function(t,e,n){return(0,DAe.gcm)(t,e,n)};mA.aes256cbc=function(t,e,n){return(0,DAe.cbc)(t,e)};zH={},FAe={},fA={};Object.defineProperty(fA,\"__esModule\",{value:!0}),fA.sigma=void 0,fA.rotl=function(t,e){return t<<e|t>>>32-e},fA.createCipher=function(t,e){let{allowShortKeys:n,extendNonceFn:r,counterLength:o,counterRight:i,rounds:a}=(0,xm.checkOpts)({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!=\"function\")throw new Error(\"core must be a function\");return(0,jv.number)(o),(0,jv.number)(a),(0,jv.bool)(i),(0,jv.bool)(n),(c,u,d,h,m=0)=>{(0,jv.bytes)(c),(0,jv.bytes)(u),(0,jv.bytes)(d);let g=d.length;if(h===void 0&&(h=new Uint8Array(g)),(0,jv.bytes)(h),(0,jv.number)(m),m<0||m>=Q4e)throw new Error(\"arx: counter overflow\");if(h.length<g)throw new Error(`arx: output (${h.length}) is shorter than data (${g})`);let b=[],E,C,T=c.length;if(T===32)b.push(E=(0,xm.copyBytes)(c)),C=jAe;else{if(T!==16||!n)throw new Error(`arx: invalid 32-byte key, got length=${T}`);E=new Uint8Array(32),E.set(c),E.set(c,16),C=Dot,b.push(E)}mne(u)||b.push(u=(0,xm.copyBytes)(u));let R=(0,xm.u32)(E);if(r){if(u.length!==24)throw new Error(\"arx: extended nonce must be 24 bytes\");r(C,R,(0,xm.u32)(u.subarray(0,16)),R),u=u.subarray(16)}let L=16-o;if(L!==u.length)throw new Error(`arx: nonce must be ${L} or 16 bytes`);if(L!==12){let G=new Uint8Array(12);G.set(u,i?0:12-u.length),u=G,b.push(u)}let D=(0,xm.u32)(u);return function(G,W,J,ne,ie,Z,ae,V){let $=ie.length,F=new Uint8Array(tH),_=(0,xm.u32)(F),O=mne(ie)&&mne(Z),z=O?(0,xm.u32)(ie):J4e,N=O?(0,xm.u32)(Z):J4e;for(let B=0;B<$;ae++){if(G(W,J,ne,_,ae,V),ae>=Q4e)throw new Error(\"arx: counter overflow\");let j=Math.min(tH,$-B);if(O&&j===tH){let q=B/4;if(B%4!=0)throw new Error(\"arx: invalid block position\");for(let H,I=0;I<Fot;I++)H=q+I,N[H]=z[H]^_[I];B+=tH}else{for(let q,H=0;H<j;H++)q=B+H,Z[q]=ie[q]^F[H];B+=j}}}(t,C,R,D,d,h,m,a),(0,xm.clean)(...b),h}};jv=ku,xm=Lh,UAe=t=>Uint8Array.from(t.split(\"\").map(e=>e.charCodeAt(0))),Lot=UAe(\"expand 16-byte k\"),Bot=UAe(\"expand 32-byte k\"),Dot=(0,xm.u32)(Lot),jAe=(0,xm.u32)(Bot);fA.sigma=jAe.slice();tH=64,Fot=16,Q4e=2**32-1,J4e=new Uint32Array,vO={};Object.defineProperty(vO,\"__esModule\",{value:!0}),vO.poly1305=void 0,vO.wrapConstructorWithKey=zAe;nH=ku,mO=Lh,_l=(t,e)=>255&t[e++]|(255&t[e++])<<8,Qne=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=(0,mO.toBytes)(e),(0,nH.bytes)(e,32);let n=_l(e,0),r=_l(e,2),o=_l(e,4),i=_l(e,6),a=_l(e,8),c=_l(e,10),u=_l(e,12),d=_l(e,14);this.r[0]=8191&n,this.r[1]=8191&(n>>>13|r<<3),this.r[2]=7939&(r>>>10|o<<6),this.r[3]=8191&(o>>>7|i<<9),this.r[4]=255&(i>>>4|a<<12),this.r[5]=a>>>1&8190,this.r[6]=8191&(a>>>14|c<<2),this.r[7]=8065&(c>>>11|u<<5),this.r[8]=8191&(u>>>8|d<<8),this.r[9]=d>>>5&127;for(let h=0;h<8;h++)this.pad[h]=_l(e,16+2*h)}process(e,n,r=!1){let o=r?0:2048,{h:i,r:a}=this,c=a[0],u=a[1],d=a[2],h=a[3],m=a[4],g=a[5],b=a[6],E=a[7],C=a[8],T=a[9],R=_l(e,n+0),L=_l(e,n+2),D=_l(e,n+4),G=_l(e,n+6),W=_l(e,n+8),J=_l(e,n+10),ne=_l(e,n+12),ie=_l(e,n+14),Z=i[0]+(8191&R),ae=i[1]+(8191&(R>>>13|L<<3)),V=i[2]+(8191&(L>>>10|D<<6)),$=i[3]+(8191&(D>>>7|G<<9)),F=i[4]+(8191&(G>>>4|W<<12)),_=i[5]+(W>>>1&8191),O=i[6]+(8191&(W>>>14|J<<2)),z=i[7]+(8191&(J>>>11|ne<<5)),N=i[8]+(8191&(ne>>>8|ie<<8)),B=i[9]+(ie>>>5|o),j=0,q=j+Z*c+ae*(5*T)+V*(5*C)+$*(5*E)+F*(5*b);j=q>>>13,q&=8191,q+=_*(5*g)+O*(5*m)+z*(5*h)+N*(5*d)+B*(5*u),j+=q>>>13,q&=8191;let H=j+Z*u+ae*c+V*(5*T)+$*(5*C)+F*(5*E);j=H>>>13,H&=8191,H+=_*(5*b)+O*(5*g)+z*(5*m)+N*(5*h)+B*(5*d),j+=H>>>13,H&=8191;let I=j+Z*d+ae*u+V*c+$*(5*T)+F*(5*C);j=I>>>13,I&=8191,I+=_*(5*E)+O*(5*b)+z*(5*g)+N*(5*m)+B*(5*h),j+=I>>>13,I&=8191;let U=j+Z*h+ae*d+V*u+$*c+F*(5*T);j=U>>>13,U&=8191,U+=_*(5*C)+O*(5*E)+z*(5*b)+N*(5*g)+B*(5*m),j+=U>>>13,U&=8191;let X=j+Z*m+ae*h+V*d+$*u+F*c;j=X>>>13,X&=8191,X+=_*(5*T)+O*(5*C)+z*(5*E)+N*(5*b)+B*(5*g),j+=X>>>13,X&=8191;let ee=j+Z*g+ae*m+V*h+$*d+F*u;j=ee>>>13,ee&=8191,ee+=_*c+O*(5*T)+z*(5*C)+N*(5*E)+B*(5*b),j+=ee>>>13,ee&=8191;let se=j+Z*b+ae*g+V*m+$*h+F*d;j=se>>>13,se&=8191,se+=_*u+O*c+z*(5*T)+N*(5*C)+B*(5*E),j+=se>>>13,se&=8191;let pe=j+Z*E+ae*b+V*g+$*m+F*h;j=pe>>>13,pe&=8191,pe+=_*d+O*u+z*c+N*(5*T)+B*(5*C),j+=pe>>>13,pe&=8191;let ye=j+Z*C+ae*E+V*b+$*g+F*m;j=ye>>>13,ye&=8191,ye+=_*h+O*d+z*u+N*c+B*(5*T),j+=ye>>>13,ye&=8191;let xe=j+Z*T+ae*C+V*E+$*b+F*g;j=xe>>>13,xe&=8191,xe+=_*m+O*h+z*d+N*u+B*c,j+=xe>>>13,xe&=8191,j=(j<<2)+j|0,j=j+q|0,q=8191&j,j>>>=13,H+=j,i[0]=q,i[1]=H,i[2]=I,i[3]=U,i[4]=X,i[5]=ee,i[6]=se,i[7]=pe,i[8]=ye,i[9]=xe}finalize(){let{h:e,pad:n}=this,r=new Uint16Array(10),o=e[1]>>>13;e[1]&=8191;for(let c=2;c<10;c++)e[c]+=o,o=e[c]>>>13,e[c]&=8191;e[0]+=5*o,o=e[0]>>>13,e[0]&=8191,e[1]+=o,o=e[1]>>>13,e[1]&=8191,e[2]+=o,r[0]=e[0]+5,o=r[0]>>>13,r[0]&=8191;for(let c=1;c<10;c++)r[c]=e[c]+o,o=r[c]>>>13,r[c]&=8191;r[9]-=8192;let i=(1^o)-1;for(let c=0;c<10;c++)r[c]&=i;i=~i;for(let c=0;c<10;c++)e[c]=e[c]&i|r[c];e[0]=65535&(e[0]|e[1]<<13),e[1]=65535&(e[1]>>>3|e[2]<<10),e[2]=65535&(e[2]>>>6|e[3]<<7),e[3]=65535&(e[3]>>>9|e[4]<<4),e[4]=65535&(e[4]>>>12|e[5]<<1|e[6]<<14),e[5]=65535&(e[6]>>>2|e[7]<<11),e[6]=65535&(e[7]>>>5|e[8]<<8),e[7]=65535&(e[8]>>>8|e[9]<<5);let a=e[0]+n[0];e[0]=65535&a;for(let c=1;c<8;c++)a=(e[c]+n[c]|0)+(a>>>16)|0,e[c]=65535&a;(0,mO.clean)(r)}update(e){(0,nH.exists)(this);let{buffer:n,blockLen:r}=this,o=(e=(0,mO.toBytes)(e)).length;for(let i=0;i<o;){let a=Math.min(r-this.pos,o-i);if(a!==r)n.set(e.subarray(i,i+a),this.pos),this.pos+=a,i+=a,this.pos===r&&(this.process(n,0,!1),this.pos=0);else for(;r<=o-i;i+=r)this.process(e,i)}return this}destroy(){(0,mO.clean)(this.h,this.r,this.buffer,this.pad)}digestInto(e){(0,nH.exists)(this),(0,nH.output)(e,this),this.finished=!0;let{buffer:n,h:r}=this,{pos:o}=this;if(o){for(n[o++]=1;o<16;o++)n[o]=0;this.process(n,0,!0)}this.finalize();let i=0;for(let a=0;a<8;a++)e[i++]=r[a]>>>0,e[i++]=r[a]>>>8;return e}digest(){let{buffer:e,outputLen:n}=this;this.digestInto(e);let r=e.slice(0,n);return this.destroy(),r}};vO.poly1305=zAe(t=>new Qne(t)),function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.xchacha20poly1305=t.chacha20poly1305=t._poly1305_aead=t.chacha12=t.chacha8=t.xchacha20=t.chacha20=t.chacha20orig=void 0,t.hchacha=a;let e=fA,n=ku,r=vO,o=Lh;function i(m,g,b,E,C,T=20){let R=m[0],L=m[1],D=m[2],G=m[3],W=g[0],J=g[1],ne=g[2],ie=g[3],Z=g[4],ae=g[5],V=g[6],$=g[7],F=C,_=b[0],O=b[1],z=b[2],N=R,B=L,j=D,q=G,H=W,I=J,U=ne,X=ie,ee=Z,se=ae,pe=V,ye=$,xe=F,_e=_,Me=O,qe=z;for(let Ge=0;Ge<T;Ge+=2)N=N+H|0,xe=(0,e.rotl)(xe^N,16),ee=ee+xe|0,H=(0,e.rotl)(H^ee,12),N=N+H|0,xe=(0,e.rotl)(xe^N,8),ee=ee+xe|0,H=(0,e.rotl)(H^ee,7),B=B+I|0,_e=(0,e.rotl)(_e^B,16),se=se+_e|0,I=(0,e.rotl)(I^se,12),B=B+I|0,_e=(0,e.rotl)(_e^B,8),se=se+_e|0,I=(0,e.rotl)(I^se,7),j=j+U|0,Me=(0,e.rotl)(Me^j,16),pe=pe+Me|0,U=(0,e.rotl)(U^pe,12),j=j+U|0,Me=(0,e.rotl)(Me^j,8),pe=pe+Me|0,U=(0,e.rotl)(U^pe,7),q=q+X|0,qe=(0,e.rotl)(qe^q,16),ye=ye+qe|0,X=(0,e.rotl)(X^ye,12),q=q+X|0,qe=(0,e.rotl)(qe^q,8),ye=ye+qe|0,X=(0,e.rotl)(X^ye,7),N=N+I|0,qe=(0,e.rotl)(qe^N,16),pe=pe+qe|0,I=(0,e.rotl)(I^pe,12),N=N+I|0,qe=(0,e.rotl)(qe^N,8),pe=pe+qe|0,I=(0,e.rotl)(I^pe,7),B=B+U|0,xe=(0,e.rotl)(xe^B,16),ye=ye+xe|0,U=(0,e.rotl)(U^ye,12),B=B+U|0,xe=(0,e.rotl)(xe^B,8),ye=ye+xe|0,U=(0,e.rotl)(U^ye,7),j=j+X|0,_e=(0,e.rotl)(_e^j,16),ee=ee+_e|0,X=(0,e.rotl)(X^ee,12),j=j+X|0,_e=(0,e.rotl)(_e^j,8),ee=ee+_e|0,X=(0,e.rotl)(X^ee,7),q=q+H|0,Me=(0,e.rotl)(Me^q,16),se=se+Me|0,H=(0,e.rotl)(H^se,12),q=q+H|0,Me=(0,e.rotl)(Me^q,8),se=se+Me|0,H=(0,e.rotl)(H^se,7);let wt=0;E[wt++]=R+N|0,E[wt++]=L+B|0,E[wt++]=D+j|0,E[wt++]=G+q|0,E[wt++]=W+H|0,E[wt++]=J+I|0,E[wt++]=ne+U|0,E[wt++]=ie+X|0,E[wt++]=Z+ee|0,E[wt++]=ae+se|0,E[wt++]=V+pe|0,E[wt++]=$+ye|0,E[wt++]=F+xe|0,E[wt++]=_+_e|0,E[wt++]=O+Me|0,E[wt++]=z+qe|0}function a(m,g,b,E){let C=m[0],T=m[1],R=m[2],L=m[3],D=g[0],G=g[1],W=g[2],J=g[3],ne=g[4],ie=g[5],Z=g[6],ae=g[7],V=b[0],$=b[1],F=b[2],_=b[3];for(let z=0;z<20;z+=2)C=C+D|0,V=(0,e.rotl)(V^C,16),ne=ne+V|0,D=(0,e.rotl)(D^ne,12),C=C+D|0,V=(0,e.rotl)(V^C,8),ne=ne+V|0,D=(0,e.rotl)(D^ne,7),T=T+G|0,$=(0,e.rotl)($^T,16),ie=ie+$|0,G=(0,e.rotl)(G^ie,12),T=T+G|0,$=(0,e.rotl)($^T,8),ie=ie+$|0,G=(0,e.rotl)(G^ie,7),R=R+W|0,F=(0,e.rotl)(F^R,16),Z=Z+F|0,W=(0,e.rotl)(W^Z,12),R=R+W|0,F=(0,e.rotl)(F^R,8),Z=Z+F|0,W=(0,e.rotl)(W^Z,7),L=L+J|0,_=(0,e.rotl)(_^L,16),ae=ae+_|0,J=(0,e.rotl)(J^ae,12),L=L+J|0,_=(0,e.rotl)(_^L,8),ae=ae+_|0,J=(0,e.rotl)(J^ae,7),C=C+G|0,_=(0,e.rotl)(_^C,16),Z=Z+_|0,G=(0,e.rotl)(G^Z,12),C=C+G|0,_=(0,e.rotl)(_^C,8),Z=Z+_|0,G=(0,e.rotl)(G^Z,7),T=T+W|0,V=(0,e.rotl)(V^T,16),ae=ae+V|0,W=(0,e.rotl)(W^ae,12),T=T+W|0,V=(0,e.rotl)(V^T,8),ae=ae+V|0,W=(0,e.rotl)(W^ae,7),R=R+J|0,$=(0,e.rotl)($^R,16),ne=ne+$|0,J=(0,e.rotl)(J^ne,12),R=R+J|0,$=(0,e.rotl)($^R,8),ne=ne+$|0,J=(0,e.rotl)(J^ne,7),L=L+D|0,F=(0,e.rotl)(F^L,16),ie=ie+F|0,D=(0,e.rotl)(D^ie,12),L=L+D|0,F=(0,e.rotl)(F^L,8),ie=ie+F|0,D=(0,e.rotl)(D^ie,7);let O=0;E[O++]=C,E[O++]=T,E[O++]=R,E[O++]=L,E[O++]=V,E[O++]=$,E[O++]=F,E[O++]=_}t.chacha20orig=(0,e.createCipher)(i,{counterRight:!1,counterLength:8,allowShortKeys:!0}),t.chacha20=(0,e.createCipher)(i,{counterRight:!1,counterLength:4,allowShortKeys:!1}),t.xchacha20=(0,e.createCipher)(i,{counterRight:!1,counterLength:8,extendNonceFn:a,allowShortKeys:!1}),t.chacha8=(0,e.createCipher)(i,{counterRight:!1,counterLength:4,rounds:8}),t.chacha12=(0,e.createCipher)(i,{counterRight:!1,counterLength:4,rounds:12});let c=new Uint8Array(16),u=(m,g)=>{m.update(g);let b=g.length%16;b&&m.update(c.subarray(b))},d=new Uint8Array(32);function h(m,g,b,E,C){let T=m(g,b,d),R=r.poly1305.create(T);C&&u(R,C),u(R,E);let L=new Uint8Array(16),D=(0,o.createView)(L);(0,o.setBigUint64)(D,0,BigInt(C?C.length:0),!0),(0,o.setBigUint64)(D,8,BigInt(E.length),!0),R.update(L);let G=R.digest();return(0,o.clean)(T,L),G}t._poly1305_aead=m=>(g,b,E)=>((0,n.bytes)(g,32),(0,n.bytes)(b),{encrypt(T,R){let L=T.length,D=L+16;R?(0,n.bytes)(R,D):R=new Uint8Array(D),m(g,b,T,R,1);let G=h(m,g,b,R.subarray(0,-16),E);return R.set(G,L),(0,o.clean)(G),R},decrypt(T,R){let L=T.length,D=L-16;if(L<16)throw new Error(\"encrypted data must be at least 16 bytes\");R?(0,n.bytes)(R,D):R=new Uint8Array(D);let G=T.subarray(0,-16),W=T.subarray(-16),J=h(m,g,b,G,E);if(!(0,o.equalBytes)(W,J))throw new Error(\"invalid tag\");return m(g,b,G,R,1),(0,o.clean)(J),R}}),t.chacha20poly1305=(0,o.wrapCipher)({blockSize:64,nonceLength:12,tagLength:16},(0,t._poly1305_aead)(t.chacha20)),t.xchacha20poly1305=(0,o.wrapCipher)({blockSize:64,nonceLength:24,tagLength:16},(0,t._poly1305_aead)(t.xchacha20))}(FAe),Object.defineProperty(zH,\"__esModule\",{value:!0}),zH.xchacha20=void 0;Uot=FAe;zH.xchacha20=function(t,e,n){return(0,Uot.xchacha20poly1305)(t,e,n)},function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.aesDecrypt=t.aesEncrypt=t.symDecrypt=t.symEncrypt=void 0;var e=Lh,n=Mre,r=mA,o=zH,i=RO,a=zc;t.symEncrypt=function(h,m,g){return c(u,h,m,g)};function c(h,m,g,b){var E=(0,i.symmetricAlgorithm)();if(E===\"aes-256-gcm\")return h(r.aes256gcm,m,g,(0,i.symmetricNonceLength)(),a.AEAD_TAG_LENGTH,b);if(E===\"xchacha20\")return h(o.xchacha20,m,g,a.XCHACHA20_NONCE_LENGTH,a.AEAD_TAG_LENGTH,b);if(E===\"aes-256-cbc\")return h(r.aes256cbc,m,g,16,0);throw new Error(\"Not implemented\")}function u(h,m,g,b,E,C){var T=(0,n.randomBytes)(b),R=h(m,T,C).encrypt(g);if(E===0)return(0,e.concatBytes)(T,R);var L=R.length-E,D=R.subarray(0,L),G=R.subarray(L);return(0,e.concatBytes)(T,G,D)}function d(h,m,g,b,E,C){var T=g.subarray(0,b),R=h(m,Uint8Array.from(T),C),L=g.subarray(b);if(E===0)return R.decrypt(L);var D=L.subarray(0,E),G=L.subarray(E);return R.decrypt((0,e.concatBytes)(G,D))}t.symDecrypt=function(h,m,g){return c(d,h,m,g)},t.aesEncrypt=t.symEncrypt,t.aesDecrypt=t.symDecrypt}(q4e),rA=dq,X4e=_m&&_m.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var o=Object.getOwnPropertyDescriptor(e,n);o&&!(\"get\"in o?!e.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,o)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),dO=_m&&_m.__exportStar||function(t,e){for(var n in t)n===\"default\"||Object.prototype.hasOwnProperty.call(e,n)||X4e(e,t,n)},Object.defineProperty(rA,\"__esModule\",{value:!0}),dO($8e,rA),dO(_Ae,rA),dO($ne,rA),dO(q4e,rA);NO={};Object.defineProperty(NO,\"__esModule\",{value:!0}),NO.PublicKey=void 0;eCe=Lh,rH=dq,jot=function(){function t(e){this.data=(0,rH.convertPublicKeyFormat)(e,!0)}return t.fromHex=function(e){return new t((0,rH.hexToPublicKey)(e))},Object.defineProperty(t.prototype,\"uncompressed\",{get:function(){return at.from((0,rH.convertPublicKeyFormat)(this.data,!1))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"compressed\",{get:function(){return at.from(this.data)},enumerable:!1,configurable:!0}),t.prototype.toHex=function(e){return e===void 0&&(e=!0),(0,eCe.bytesToHex)(e?this.data:this.uncompressed)},t.prototype.decapsulate=function(e,n){n===void 0&&(n=!1);var r=n?this.data:this.uncompressed,o=e.multiply(this,n);return(0,rH.getSharedKey)(r,o)},t.prototype.equals=function(e){return(0,eCe.equalBytes)(this.data,e.data)},t}();NO.PublicKey=jot,Object.defineProperty(OH,\"__esModule\",{value:!0}),OH.PrivateKey=void 0;tCe=Lh,oA=dq,zot=NO,Hot=function(){function t(e){if(e===void 0)this.data=(0,oA.getValidSecret)();else{if(!(0,oA.isValidPrivateKey)(e))throw new Error(\"Invalid private key\");this.data=e}this.publicKey=new zot.PublicKey((0,oA.getPublicKey)(this.data))}return t.fromHex=function(e){return new t((0,oA.decodeHex)(e))},Object.defineProperty(t.prototype,\"secret\",{get:function(){return at.from(this.data)},enumerable:!1,configurable:!0}),t.prototype.toHex=function(){return(0,tCe.bytesToHex)(this.data)},t.prototype.encapsulate=function(e,n){n===void 0&&(n=!1);var r=n?this.publicKey.compressed:this.publicKey.uncompressed,o=this.multiply(e,n);return(0,oA.getSharedKey)(r,o)},t.prototype.multiply=function(e,n){return n===void 0&&(n=!1),(0,oA.getSharedPoint)(this.data,e.compressed,n)},t.prototype.equals=function(e){return(0,tCe.equalBytes)(this.data,e.data)},t}();OH.PrivateKey=Hot,function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.PublicKey=t.PrivateKey=void 0;var e=OH;Object.defineProperty(t,\"PrivateKey\",{enumerable:!0,get:function(){return e.PrivateKey}});var n=NO;Object.defineProperty(t,\"PublicKey\",{enumerable:!0,get:function(){return n.PublicKey}})}(ene),function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.utils=t.PublicKey=t.PrivateKey=t.ECIES_CONFIG=void 0,t.encrypt=function(c,u){var d=new r.PrivateKey,h=c instanceof Uint8Array?new r.PublicKey(c):r.PublicKey.fromHex(c),m=d.encapsulate(h,(0,n.isHkdfKeyCompressed)()),g=(0,n.isEphemeralKeyCompressed)()?d.publicKey.compressed:d.publicKey.uncompressed,b=(0,o.symEncrypt)(m,u);return at.from((0,e.concatBytes)(g,b))},t.decrypt=function(c,u){var d=c instanceof Uint8Array?new r.PrivateKey(c):r.PrivateKey.fromHex(c),h=(0,n.ephemeralKeySize)(),m=new r.PublicKey(u.subarray(0,h)),g=u.subarray(h),b=m.decapsulate(d,(0,n.isHkdfKeyCompressed)());return at.from((0,o.symDecrypt)(b,g))};var e=Lh,n=RO,r=ene,o=dq,i=RO;Object.defineProperty(t,\"ECIES_CONFIG\",{enumerable:!0,get:function(){return i.ECIES_CONFIG}});var a=ene;Object.defineProperty(t,\"PrivateKey\",{enumerable:!0,get:function(){return a.PrivateKey}}),Object.defineProperty(t,\"PublicKey\",{enumerable:!0,get:function(){return a.PublicKey}}),t.utils={aesEncrypt:o.aesEncrypt,aesDecrypt:o.aesDecrypt,symEncrypt:o.symEncrypt,symDecrypt:o.symDecrypt,decodeHex:o.decodeHex,getValidSecret:o.getValidSecret,remove0x:o.remove0x}}(sA);HAe=(0,Cu.default)(\"KeyExchange:Layer\"),qAe=(0,Cu.default)(\"SocketService:Layer\"),WAe=(0,Cu.default)(\"Ecies:Layer\"),VAe=(0,Cu.default)(\"RemoteCommunication:Layer\");HAe.color=\"##95c44e\",qAe.color=\"#f638d7\",WAe.color=\"#465b9c\",VAe.color=\"#47a2be\";He={KeyExchange:HAe,SocketService:qAe,Ecies:WAe,RemoteCommunication:VAe},oH=[],gne=[],Yv=(t,e)=>ct(void 0,void 0,void 0,function*(){fO=e,gne.push(t),function(n){return ct(this,void 0,void 0,function*(){if(!fO||!n)return;(function(){let a=gne;gne=oH,oH=a})();let r=fO.endsWith(\"/\")?`${fO}evt`:`${fO}/evt`,o=Object.assign({},n);if(delete o.params,n.params)for(let[a,c]of Object.entries(n.params))o[a]=c;let i=JSON.stringify(o);He.RemoteCommunication(`[sendBufferedEvents] Sending ${oH.length} analytics events to ${r}`);try{let a=yield(0,Rre.default)(r,{method:\"POST\",headers:{Accept:\"application/json\",\"Content-Type\":\"application/json\"},body:i}),c=yield a.text();He.RemoteCommunication(`[sendBufferedEvents] Response: ${c}`),oH.length=0}catch{}})}(t).catch(()=>{})}),wO=class{constructor(e){this.enabled=!0,e?.debug&&Cu.default.enable(\"Ecies:Layer\"),this.ecies=e?.privateKey?sA.PrivateKey.fromHex(e.privateKey):new sA.PrivateKey,He.Ecies(\"[ECIES constructor()] initialized secret: \",this.ecies.toHex()),He.Ecies(\"[ECIES constructor()] initialized public: \",this.ecies.publicKey.toHex()),He.Ecies(\"[ECIES constructor()] init with\",this)}generateECIES(){this.ecies=new sA.PrivateKey}getPublicKey(){return this.ecies.publicKey.toHex()}encrypt(e,n){let r=e;if(this.enabled)try{He.Ecies(\"[ECIES: encrypt()] using otherPublicKey\",n);let o=at.from(e),i=sA.encrypt(n,o);r=at.from(i).toString(\"base64\")}catch(o){throw He.Ecies(\"[ECIES: encrypt()] error encrypt:\",o),He.Ecies(\"[ECIES: encrypt()] private: \",this.ecies.toHex()),He.Ecies(\"[ECIES: encrypt()] data: \",e),He.Ecies(\"[ECIES: encrypt()] otherkey: \",n),o}return r}decrypt(e){let n=e;if(this.enabled)try{He.Ecies(\"[ECIES: decrypt()] using privateKey\",this.ecies.toHex());let r=at.from(e.toString(),\"base64\");n=sA.decrypt(this.ecies.toHex(),r).toString()}catch(r){throw He.Ecies(\"[ECIES: decrypt()] error decrypt\",r),He.Ecies(\"[ECIES: decrypt()] private: \",this.ecies.toHex()),He.Ecies(\"[ECIES: decrypt()] encryptedData: \",e),r}return n}getKeyInfo(){return{private:this.ecies.toHex(),public:this.ecies.publicKey.toHex()}}toString(){He.Ecies(\"[ECIES: toString()]\",this.getKeyInfo())}},h3={name:\"@metamask/sdk-communication-layer\",version:\"0.32.0\",description:\"\",homepage:\"https://github.com/MetaMask/metamask-sdk#readme\",bugs:{url:\"https://github.com/MetaMask/metamask-sdk/issues\"},repository:{type:\"git\",url:\"https://github.com/MetaMask/metamask-sdk.git\",directory:\"packages/sdk-communication-layer\"},main:\"dist/node/cjs/metamask-sdk-communication-layer.js\",unpkg:\"dist/browser/umd/metamask-sdk-communication-layer.js\",module:\"dist/node/es/metamask-sdk-communication-layer.js\",browser:\"dist/browser/es/metamask-sdk-communication-layer.js\",\"react-native\":\"dist/react-native/es/metamask-sdk-communication-layer.js\",types:\"dist/types/src/index.d.ts\",files:[\"/dist\"],scripts:{\"build:types\":\"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types\",\"build:clean\":\"yarn clean && yarn build\",build:\"yarn build:types && rollup -c --bundleConfigAsCjs\",\"build:dev\":\"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs\",dev:\\'concurrently \"tsc --watch\" \"rollup -c --bundleConfigAsCjs -w\"\\',\"build:post-tsc\":\"echo \\'N/A\\'\",\"build:pre-tsc\":\"echo \\'N/A\\'\",size:\"size-limit\",clean:\"rimraf ./dist\",lint:\"yarn lint:eslint && yarn lint:misc --check\",\"lint:changelog\":\"../../scripts/validate-changelog.sh @metamask/sdk-communication-layer\",\"lint:eslint\":\"eslint . --cache --ext js,ts\",\"lint:fix\":\"yarn lint:eslint --fix && yarn lint:misc --write\",\"lint:misc\":\"prettier \\'**/*.json\\' \\'**/*.md\\' \\'!CHANGELOG.md\\' --ignore-path ../../.gitignore\",\"publish:preview\":\"yarn npm publish --tag preview\",prepack:\"../../scripts/prepack.sh\",reset:\"yarn clean && rimraf ./node_modules/\",test:\\'jest --testPathIgnorePatterns \"/e2e/\"\\',\"test:e2e\":\\'jest --testPathPattern \"/e2e/\"\\',\"test:coverage\":\"jest --coverage\",\"test:ci\":\\'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns \"/e2e/\"\\',\"test:dev\":\"jest\",watch:\"rollup -c --bundleConfigAsCjs -w\"},dependencies:{bufferutil:\"^4.0.8\",\"date-fns\":\"^2.29.3\",debug:\"^4.3.4\",\"utf-8-validate\":\"^5.0.2\",uuid:\"^8.3.2\"},devDependencies:{\"@jest/globals\":\"^29.3.1\",\"@lavamoat/allow-scripts\":\"^2.3.1\",\"@metamask/auto-changelog\":\"3.1.0\",\"@metamask/eslint-config\":\"^6.0.0\",\"@metamask/eslint-config-nodejs\":\"^6.0.0\",\"@metamask/eslint-config-typescript\":\"^6.0.0\",\"@rollup/plugin-commonjs\":\"^25.0.0\",\"@rollup/plugin-json\":\"^6.0.0\",\"@rollup/plugin-node-resolve\":\"^15.0.2\",\"@rollup/plugin-replace\":\"^6.0.1\",\"@rollup/plugin-terser\":\"^0.4.4\",\"@size-limit/preset-big-lib\":\"^11.0.2\",\"@types/jest\":\"^29.2.4\",\"@types/node\":\"^20.1.3\",\"@types/uuid\":\"^9.0.0\",\"@typescript-eslint/eslint-plugin\":\"^4.26.0\",\"@typescript-eslint/parser\":\"^4.26.0\",concurrently:\"^9.1.2\",\"cross-fetch\":\"^4.0.0\",eciesjs:\"^0.4.11\",eslint:\"^7.30.0\",\"eslint-config-prettier\":\"^8.3.0\",\"eslint-plugin-import\":\"^2.23.4\",\"eslint-plugin-jest\":\"^24.4.0\",\"eslint-plugin-jsdoc\":\"^36.1.0\",\"eslint-plugin-node\":\"^11.1.0\",\"eslint-plugin-prettier\":\"^3.4.0\",eventemitter2:\"^6.4.9\",jest:\"^29.3.1\",prettier:\"^2.3.0\",rimraf:\"^3.0.2\",rollup:\"^4.26.0\",\"rollup-plugin-jscc\":\"^2.0.0\",\"rollup-plugin-natives\":\"^0.7.5\",\"rollup-plugin-node-builtins\":\"^2.1.2\",\"rollup-plugin-node-globals\":\"^1.4.0\",\"rollup-plugin-peer-deps-external\":\"^2.2.4\",\"rollup-plugin-polyfill-node\":\"^0.13.0\",\"rollup-plugin-sizes\":\"^1.0.6\",\"rollup-plugin-typescript2\":\"^0.31.2\",\"rollup-plugin-visualizer\":\"^5.12.0\",\"size-limit\":\"^11.1.6\",\"socket.io-client\":\"^4.5.1\",\"stream-browserify\":\"^3.0.0\",\"ts-jest\":\"^29.0.3\",\"ts-node\":\"^10.9.1\",typescript:\"^5.6.3\"},peerDependencies:{\"cross-fetch\":\"^4.0.0\",eciesjs:\"*\",eventemitter2:\"^6.4.9\",\"readable-stream\":\"^3.6.2\",\"socket.io-client\":\"^4.5.1\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},lavamoat:{allowScripts:{\"@lavamoat/preinstall-always-fail\":!1,canvas:!0,\"eciesjs>secp256k1\":!1,\"socket.io-client>engine.io-client>ws>bufferutil\":!1,\"socket.io-client>engine.io-client>ws>utf-8-validate\":!1,bufferutil:!1,\"utf-8-validate\":!1}}},RS=\"https://metamask-sdk.api.cx.metamask.io/\",qot=[\"websocket\"],wA=6048e5,Wot=3e3,Vot={METAMASK_GETPROVIDERSTATE:\"metamask_getProviderState\",ETH_REQUESTACCOUNTS:\"eth_requestAccounts\"};(iA=Wc||(Wc={})).DISCONNECTED=\"disconnected\",iA.WAITING=\"waiting\",iA.TIMEOUT=\"timeout\",iA.LINKED=\"linked\",iA.PAUSED=\"paused\",iA.TERMINATED=\"terminated\",function(t){t.KEY_INFO=\"key_info\",t.SERVICE_STATUS=\"service_status\",t.PROVIDER_UPDATE=\"provider_update\",t.RPC_UPDATE=\"rpc_update\",t.KEYS_EXCHANGED=\"keys_exchanged\",t.JOIN_CHANNEL=\"join_channel\",t.PUBLIC_KEY=\"public_key\",t.CHANNEL_CREATED=\"channel_created\",t.CLIENTS_CONNECTED=\"clients_connected\",t.CLIENTS_DISCONNECTED=\"clients_disconnected\",t.CLIENTS_WAITING=\"clients_waiting\",t.CLIENTS_READY=\"clients_ready\",t.REJECTED=\"rejected\",t.WALLET_INIT=\"wallet_init\",t.CHANNEL_PERSISTENCE=\"channel_persistence\",t.CONFIG=\"config\",t.MESSAGE_ACK=\"ack\",t.SOCKET_DISCONNECTED=\"socket_disconnected\",t.SOCKET_RECONNECT=\"socket_reconnect\",t.OTP=\"otp\",t.SDK_RPC_CALL=\"sdk_rpc_call\",t.AUTHORIZED=\"authorized\",t.CONNECTION_STATUS=\"connection_status\",t.MESSAGE=\"message\",t.TERMINATE=\"terminate\"}(vt||(vt={})),(HH||(HH={})).KEY_EXCHANGE=\"key_exchange\",function(t){t.KEY_HANDSHAKE_START=\"key_handshake_start\",t.KEY_HANDSHAKE_CHECK=\"key_handshake_check\",t.KEY_HANDSHAKE_SYN=\"key_handshake_SYN\",t.KEY_HANDSHAKE_SYNACK=\"key_handshake_SYNACK\",t.KEY_HANDSHAKE_ACK=\"key_handshake_ACK\",t.KEY_HANDSHAKE_WALLET=\"key_handshake_wallet\",t.KEY_HANDSHAKE_NONE=\"none\"}(Vo||(Vo={}));Jne=class extends SA.EventEmitter2{constructor({communicationLayer:e,otherPublicKey:n,context:r,ecies:o,logging:i}){super(),this.keysExchanged=!1,this.step=Vo.KEY_HANDSHAKE_NONE,this.debug=!1,this.context=r,this.communicationLayer=e,o?.privateKey&&n&&(He.KeyExchange(`[KeyExchange: constructor()] otherPubKey=${n} set keysExchanged to true!`,o),this.keysExchanged=!0),this.myECIES=new wO(Object.assign(Object.assign({},o),{debug:i?.eciesLayer})),this.communicationLayer.state.eciesInstance=this.myECIES,this.myPublicKey=this.myECIES.getPublicKey(),this.debug=i?.keyExchangeLayer===!0,n&&this.setOtherPublicKey(n),this.communicationLayer.on(HH.KEY_EXCHANGE,this.onKeyExchangeMessage.bind(this))}onKeyExchangeMessage(e){let{relayPersistence:n}=this.communicationLayer.remote.state;if(He.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} keysExchanged=${this.keysExchanged} relayPersistence=${n}`,e),n)return void He.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Ignoring key exchange message because relay persistence is activated\");let{message:r}=e;this.keysExchanged&&He.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} received handshake while already exchanged. step=${this.step} otherPubKey=${this.otherPublicKey}`),this.emit(vt.KEY_INFO,r.type),r.type===Vo.KEY_HANDSHAKE_SYN?(this.checkStep([Vo.KEY_HANDSHAKE_NONE,Vo.KEY_HANDSHAKE_ACK]),He.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYN\",r),r.pubkey&&this.setOtherPublicKey(r.pubkey),this.communicationLayer.sendMessage({type:Vo.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey}).catch(o=>{He.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_SYNACK\",o)}),this.setStep(Vo.KEY_HANDSHAKE_ACK)):r.type===Vo.KEY_HANDSHAKE_SYNACK?(this.checkStep([Vo.KEY_HANDSHAKE_SYNACK,Vo.KEY_HANDSHAKE_ACK,Vo.KEY_HANDSHAKE_NONE]),He.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYNACK\"),r.pubkey&&this.setOtherPublicKey(r.pubkey),this.communicationLayer.sendMessage({type:Vo.KEY_HANDSHAKE_ACK}).catch(o=>{He.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_ACK\",o)}),this.keysExchanged=!0,this.setStep(Vo.KEY_HANDSHAKE_ACK),this.emit(vt.KEYS_EXCHANGED)):r.type===Vo.KEY_HANDSHAKE_ACK&&(He.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_ACK set keysExchanged to true!\"),this.checkStep([Vo.KEY_HANDSHAKE_ACK,Vo.KEY_HANDSHAKE_NONE]),this.keysExchanged=!0,this.setStep(Vo.KEY_HANDSHAKE_ACK),this.emit(vt.KEYS_EXCHANGED))}resetKeys(e){this.clean(),this.myECIES=new wO(e)}clean(){He.KeyExchange(`[KeyExchange: clean()] context=${this.context} reset handshake state`),this.setStep(Vo.KEY_HANDSHAKE_NONE),this.emit(vt.KEY_INFO,this.step),this.keysExchanged=!1}start({isOriginator:e,force:n}){let{relayPersistence:r,protocolVersion:o}=this.communicationLayer.remote.state,i=o>=2;r?He.KeyExchange(\"[KeyExchange: start()] Ignoring key exchange message because relay persistence is activated\"):(He.KeyExchange(`[KeyExchange: start()] context=${this.context} protocolVersion=${o} isOriginator=${e} step=${this.step} force=${n} relayPersistence=${r} keysExchanged=${this.keysExchanged}`),e?!(this.keysExchanged||this.step!==Vo.KEY_HANDSHAKE_NONE&&this.step!==Vo.KEY_HANDSHAKE_SYNACK)||n?(He.KeyExchange(`[KeyExchange: start()] context=${this.context} -- start key exchange (force=${n}) -- step=${this.step}`,this.step),this.clean(),this.setStep(Vo.KEY_HANDSHAKE_SYNACK),this.communicationLayer.sendMessage({type:Vo.KEY_HANDSHAKE_SYN,pubkey:this.myPublicKey,v:2}).catch(a=>{He.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYN\",a)})):He.KeyExchange(`[KeyExchange: start()] context=${this.context} -- key exchange already ${this.keysExchanged?\"done\":\"in progress\"} -- aborted.`,this.step):this.keysExchanged&&n!==!0?He.KeyExchange(\"[KeyExchange: start()] don\\'t send KEY_HANDSHAKE_START -- exchange already done.\"):i?this.communicationLayer.sendMessage({type:Vo.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey,v:2}).catch(a=>{He.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYNACK\",a)}):(this.communicationLayer.sendMessage({type:Vo.KEY_HANDSHAKE_START}).catch(a=>{He.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_START\",a)}),this.clean()))}setStep(e){this.step=e,this.emit(vt.KEY_INFO,e)}checkStep(e){e.length>0&&e.indexOf(this.step.toString())}setRelayPersistence({localKey:e,otherKey:n}){this.otherPublicKey=n,this.myECIES=new wO({privateKey:e,debug:this.debug}),this.keysExchanged=!0}setKeysExchanged(e){this.keysExchanged=e}areKeysExchanged(){return this.keysExchanged}getMyPublicKey(){return this.myPublicKey}getOtherPublicKey(){return this.otherPublicKey}setOtherPublicKey(e){He.KeyExchange(\"[KeyExchange: setOtherPubKey()]\",e),this.otherPublicKey=e}encryptMessage(e){if(!this.otherPublicKey)throw new Error(\"encryptMessage: Keys not exchanged - missing otherPubKey\");return this.myECIES.encrypt(e,this.otherPublicKey)}decryptMessage(e){if(!this.otherPublicKey)throw new Error(\"decryptMessage: Keys not exchanged - missing otherPubKey\");return this.myECIES.decrypt(e)}getKeyInfo(){return{ecies:Object.assign(Object.assign({},this.myECIES.getKeyInfo()),{otherPubKey:this.otherPublicKey}),step:this.step,keysExchanged:this.areKeysExchanged()}}toString(){let e={keyInfo:this.getKeyInfo(),keysExchanged:this.keysExchanged,step:this.step};return JSON.stringify(e)}};(function(t){t.TERMINATE=\"terminate\",t.ANSWER=\"answer\",t.OFFER=\"offer\",t.CANDIDATE=\"candidate\",t.JSONRPC=\"jsonrpc\",t.WALLET_INFO=\"wallet_info\",t.WALLET_INIT=\"wallet_init\",t.ORIGINATOR_INFO=\"originator_info\",t.PAUSE=\"pause\",t.OTP=\"otp\",t.AUTHORIZED=\"authorized\",t.PING=\"ping\",t.READY=\"ready\"})(hs||(hs={})),function(t){t.REQUEST=\"sdk_connect_request_started\",t.REQUEST_MOBILE=\"sdk_connect_request_started_mobile\",t.RECONNECT=\"sdk_reconnect_request_started\",t.CONNECTED=\"sdk_connection_established\",t.CONNECTED_MOBILE=\"sdk_connection_established_mobile\",t.AUTHORIZED=\"sdk_connection_authorized\",t.REJECTED=\"sdk_connection_rejected\",t.TERMINATED=\"sdk_connection_terminated\",t.DISCONNECTED=\"sdk_disconnected\",t.SDK_USE_EXTENSION=\"sdk_use_extension\",t.SDK_RPC_REQUEST=\"sdk_rpc_request\",t.SDK_RPC_REQUEST_RECEIVED=\"sdk_rpc_request_received\",t.SDK_RPC_REQUEST_DONE=\"sdk_rpc_request_done\",t.SDK_EXTENSION_UTILIZED=\"sdk_extension_utilized\",t.SDK_USE_INAPP_BROWSER=\"sdk_use_inapp_browser\"}(pa||(pa={}));pH=(t,e,n)=>ct(void 0,void 0,void 0,function*(){var r,o,i,a,c,u;let{remote:d,state:h}=t,{channelId:m,isOriginator:g}=h;if(e===\"error_terminated\")return He.SocketService(`handleJoinChannelResults: Channel ${m} terminated`),void t.emit(vt.TERMINATE);if(!n)return void He.SocketService(`handleJoinChannelResults: No result for channel ${m}`);let{persistence:b,walletKey:E,rejected:C}=n;if(He.SocketService(`handleJoinChannelResults: Channel ${m} persistence=${b} walletKey=${E} rejected=${C}`),C)return He.SocketService(`handleJoinChannelResults: Channel ${m} rejected`),yield t.remote.disconnect({terminate:!0}),t.remote.emit(vt.REJECTED,{channelId:m}),void t.remote.emitServiceStatusEvent();if(E&&!(!((r=d.state.channelConfig)===null||r===void 0)&&r.otherKey)){t.getKeyExchange().setOtherPublicKey(E),(o=t.state.keyExchange)===null||o===void 0||o.setKeysExchanged(!0),d.state.ready=!0,d.state.authorized=!0,d.emit(vt.AUTHORIZED);let{communicationLayer:T,storageManager:R}=d.state,L=Object.assign(Object.assign({},d.state.channelConfig),{channelId:(i=d.state.channelId)!==null&&i!==void 0?i:\"\",validUntil:Date.now()+wA,localKey:T?.getKeyInfo().ecies.private,otherKey:E});t.sendMessage({type:Vo.KEY_HANDSHAKE_ACK}).catch(D=>{}),(a=t.state.socket)===null||a===void 0||a.emit(hs.PING,{id:m,clientType:g?\"dapp\":\"wallet\",context:\"on_channel_reconnect\",message:\"\"}),yield R?.persistChannelConfig(L),d.emitServiceStatusEvent(),d.setConnectionStatus(Wc.LINKED)}b&&(t.emit(vt.CHANNEL_PERSISTENCE),(c=t.state.keyExchange)===null||c===void 0||c.setKeysExchanged(!0),d.state.ready=!0,d.state.authorized=!0,d.emit(vt.AUTHORIZED),Yv(Object.assign(Object.assign({id:m??\"\",event:g?pa.CONNECTED:pa.CONNECTED_MOBILE},t.remote.state.originatorInfo),{sdkVersion:t.remote.state.sdkVersion,commLayer:t.state.communicationLayerPreference,commLayerVersion:h3.version,walletVersion:(u=t.remote.state.walletInfo)===null||u===void 0?void 0:u.version}),h.communicationServerUrl).catch(T=>{}))}),yA=t=>new Promise(e=>{setTimeout(e,t)}),nCe=(t,e,...n)=>ct(void 0,[t,e,...n],void 0,function*(r,o,i=200){let a,c=Date.now(),u=!1;for(;!u;){if(u=Date.now()-c>3e5,a=o[r],a.elapsedTime!==void 0)return a;yield yA(i)}throw new Error(`RPC ${r} timed out`)}),Xne=t=>ct(void 0,void 0,void 0,function*(){let{state:e}=t,{socket:n,channelId:r,context:o,isOriginator:i,isReconnecting:a}=e;if(a)return He.SocketService(\"[SocketService: reconnectSocket()] Reconnection already in progress, skipping\",t),!1;if(!n)return He.SocketService(\"[SocketService: reconnectSocket()] socket is not defined\",t),!1;if(!r)return!1;let{connected:c}=n;e.isReconnecting=!0,e.reconnectionAttempts=0,He.SocketService(`[SocketService: reconnectSocket()] connected=${c} trying to reconnect after socketio disconnection`,t);try{for(;3>e.reconnectionAttempts;){if(He.SocketService(`[SocketService: reconnectSocket()] Attempt ${e.reconnectionAttempts+1} of 3`,t),yield yA(200),n.connected)return He.SocketService(\"Socket already connected --- ping to retrieve messages\"),n.emit(hs.PING,{id:r,clientType:i?\"dapp\":\"wallet\",context:\"on_channel_config\",message:\"\"}),!0;e.resumed=!0,n.connect(),t.emit(vt.SOCKET_RECONNECT);try{if(yield new Promise((u,d)=>{n.emit(vt.JOIN_CHANNEL,{channelId:r,context:`${o}connect_again`,clientType:i?\"dapp\":\"wallet\"},(h,m)=>ct(void 0,void 0,void 0,function*(){try{yield pH(t,h,m),u()}catch(g){d(g)}}))}),yield yA(100),n.connected)return He.SocketService(`Reconnection successful on attempt ${e.reconnectionAttempts+1}`),!0}catch(u){He.SocketService(`Error during reconnection attempt ${e.reconnectionAttempts+1}:`,u)}e.reconnectionAttempts+=1,3>e.reconnectionAttempts&&(yield yA(200))}return He.SocketService(\"Failed to reconnect after 3 attempts\"),!1}finally{e.isReconnecting=!1,e.reconnectionAttempts=0}});(function(t){t.RPC_CHECK=\"rpcCheck\",t.SKIPPED_RPC=\"skippedRpc\"})(hA||(hA={}));GAe=[\"eth_sendTransaction\",\"eth_signTypedData\",\"eth_signTransaction\",\"personal_sign\",\"wallet_requestPermissions\",\"wallet_switchEthereumChain\",\"eth_signTypedData_v3\",\"eth_signTypedData_v4\",\"metamask_connectSign\",\"metamask_connectWith\",\"metamask_batch\"].map(t=>t.toLowerCase()),$ot=[{event:vt.CLIENTS_CONNECTED,handler:function(t,e){return n=>ct(this,void 0,void 0,function*(){var r,o,i,a,c,u,d,h,m,g,b;let E=(o=(r=t.remote.state.channelConfig)===null||r===void 0?void 0:r.relayPersistence)!==null&&o!==void 0&&o;if(He.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on \\'clients_connected-${e}\\' relayPersistence=${E} resumed=${t.state.resumed}  clientsPaused=${t.state.clientsPaused} keysExchanged=${(i=t.state.keyExchange)===null||i===void 0?void 0:i.areKeysExchanged()} isOriginator=${t.state.isOriginator}`),t.emit(vt.CLIENTS_CONNECTED,{isOriginator:t.state.isOriginator,keysExchanged:(a=t.state.keyExchange)===null||a===void 0?void 0:a.areKeysExchanged(),context:t.state.context}),t.state.resumed)t.state.isOriginator||(He.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} \\'clients_connected\\' / keysExchanged=${(c=t.state.keyExchange)===null||c===void 0?void 0:c.areKeysExchanged()} -- backward compatibility`),(u=t.state.keyExchange)===null||u===void 0||u.start({isOriginator:(d=t.state.isOriginator)!==null&&d!==void 0&&d})),t.state.resumed=!1;else if(t.state.clientsPaused)He.SocketService(\"[SocketService: handleClientsConnected()] \\'clients_connected\\' skip sending originatorInfo on pause\");else if(!t.state.isOriginator){let C=!E;He.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on \\'clients_connected\\' / keysExchanged=${(h=t.state.keyExchange)===null||h===void 0?void 0:h.areKeysExchanged()} -- force=${C} -- backward compatibility`),He.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on \\'clients_connected\\' / keysExchanged=${(m=t.state.keyExchange)===null||m===void 0?void 0:m.areKeysExchanged()} -- force=${C} -- backward compatibility`),(g=t.state.keyExchange)===null||g===void 0||g.start({isOriginator:(b=t.state.isOriginator)!==null&&b!==void 0&&b,force:C})}t.state.clientsConnected=!0,t.state.clientsPaused=!1})}},{event:vt.CHANNEL_CREATED,handler:function(t,e){return n=>{He.SocketService(`[SocketService: handleChannelCreated()] context=${t.state.context} on \\'channel_created-${e}\\'`,n),t.emit(vt.CHANNEL_CREATED,n)}}},{event:vt.CLIENTS_DISCONNECTED,handler:function(t,e){return()=>{var n;t.state.clientsConnected=!1,He.SocketService(`[SocketService: handlesClientsDisconnected()] context=${t.state.context} on \\'clients_disconnected-${e}\\'`),t.remote.state.relayPersistence?He.SocketService(`[SocketService: handlesClientsDisconnected()] context=${t.state.context} on \\'clients_disconnected-${e}\\' - relayPersistence enabled, skipping key exchange cleanup.`):(t.state.isOriginator&&!t.state.clientsPaused&&((n=t.state.keyExchange)===null||n===void 0||n.clean()),t.emit(vt.CLIENTS_DISCONNECTED,e))}}},{event:vt.CONFIG,handler:function(t,e){return n=>ct(this,void 0,void 0,function*(){var r,o,i;He.SocketService(`[SocketService: handleChannelConfig()] update relayPersistence on \\'config-${e}\\'`,n);let{persistence:a,walletKey:c}=n;t.state.isOriginator&&t.remote.state.channelConfig?(n.walletKey&&!t.remote.state.channelConfig.otherKey&&(He.SocketService(`Setting wallet key ${c}`),t.remote.state.channelConfig.otherKey=c,t.getKeyExchange().setOtherPublicKey(n.walletKey),(r=t.state.keyExchange)===null||r===void 0||r.setKeysExchanged(!0),yield t.remote.sendMessage({type:Vo.KEY_HANDSHAKE_ACK}),yield t.remote.sendMessage({type:hs.PING}),yield(o=t.remote.state.storageManager)===null||o===void 0?void 0:o.persistChannelConfig(t.remote.state.channelConfig)),a!==!0||t.remote.state.channelConfig.relayPersistence||(He.SocketService(`Setting relay persistence ${a}`),t.remote.state.channelConfig.relayPersistence=a,t.remote.state.relayPersistence=!0,t.remote.emit(vt.CHANNEL_PERSISTENCE),t.remote.state.authorized=!0,t.remote.state.ready=!0,t.remote.emit(vt.AUTHORIZED),yield(i=t.remote.state.storageManager)===null||i===void 0?void 0:i.persistChannelConfig(t.remote.state.channelConfig))):t.state.isOriginator||n.persistence&&(t.remote.state.relayPersistence=!0,t.remote.emit(vt.CHANNEL_PERSISTENCE))})}},{event:vt.MESSAGE,handler:function(t,e){return n=>{var r,o,i,a,c,u,d,h,m,g,b,E,C,T,R,L,D,G;let{ackId:W,message:J,error:ne}=n,ie=(r=t.remote.state.relayPersistence)!==null&&r!==void 0&&r;if(He.SocketService(`[SocketService handleMessage()]  relayPersistence=${ie}  context=${t.state.context} on \\'message\\' ${e} keysExchanged=${(o=t.state.keyExchange)===null||o===void 0?void 0:o.areKeysExchanged()}`,n),ne)throw He.SocketService(`\\n      [SocketService handleMessage()] context=${t.state.context}::on \\'message\\' error=${ne}`),new Error(ne);let Z=typeof J==\"string\";if(!Z&&J?.type===Vo.KEY_HANDSHAKE_START)return ie?void 0:(He.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on \\'message\\' received HANDSHAKE_START isOriginator=${t.state.isOriginator}`,J),void((i=t.state.keyExchange)===null||i===void 0||i.start({isOriginator:(a=t.state.isOriginator)!==null&&a!==void 0&&a,force:!0})));if(!Z&&(!((c=J?.type)===null||c===void 0)&&c.startsWith(\"key_handshake\")))return ie?void 0:(He.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on \\'message\\' emit KEY_EXCHANGE`,J),void t.emit(HH.KEY_EXCHANGE,{message:J,context:t.state.context}));if(Z&&!(!((u=t.state.keyExchange)===null||u===void 0)&&u.areKeysExchanged())){let $=!1;try{He.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on \\'message\\' trying to decrypt message`),(d=t.state.keyExchange)===null||d===void 0||d.decryptMessage(J),$=!0}catch(F){He.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on \\'message\\' error`,F)}if(!$)return t.state.isOriginator?(m=t.state.keyExchange)===null||m===void 0||m.start({isOriginator:(g=t.state.isOriginator)!==null&&g!==void 0&&g}):t.sendMessage({type:Vo.KEY_HANDSHAKE_START}).catch(F=>{}),void He.SocketService(`Message ignored because invalid key exchange status. step=${(b=t.state.keyExchange)===null||b===void 0?void 0:b.getKeyInfo().step}`,(E=t.state.keyExchange)===null||E===void 0?void 0:E.getKeyInfo(),J);He.SocketService(\"Invalid key exchange status detected --- updating it.\"),(h=t.state.keyExchange)===null||h===void 0||h.setKeysExchanged(!0)}else if(!Z&&J?.type)return void t.emit(vt.MESSAGE,J);if(!Z)return void t.emit(vt.MESSAGE,J);let ae=(C=t.state.keyExchange)===null||C===void 0?void 0:C.decryptMessage(J),V=JSON.parse(ae??\"{}\");if(W&&W?.length>0&&(He.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on \\'message\\' ackid=${W} channelId=${e}`),(T=t.state.socket)===null||T===void 0||T.emit(vt.MESSAGE_ACK,{ackId:W,channelId:e,clientType:t.state.isOriginator?\"dapp\":\"wallet\"})),t.state.clientsPaused=V?.type===hs.PAUSE,t.state.isOriginator&&V.data){let $=V.data,F=t.state.rpcMethodTracker[$.id];if(F){let _=Date.now()-F.timestamp;He.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on \\'message\\' received answer for id=${$.id} method=${F.method} responseTime=${_}`,V),t.remote.state.analytics&&GAe.includes(F.method.toLowerCase())&&Yv(Object.assign(Object.assign({id:(R=t.remote.state.channelId)!==null&&R!==void 0?R:\"\",event:pa.SDK_RPC_REQUEST_DONE,sdkVersion:t.remote.state.sdkVersion,commLayerVersion:h3.version},t.remote.state.originatorInfo),{walletVersion:(L=t.remote.state.walletInfo)===null||L===void 0?void 0:L.version,params:{method:F.method,from:\"mobile\"}}),t.remote.state.communicationServerUrl).catch(z=>{});let O=Object.assign(Object.assign({},F),{result:$.result,error:$.error?{code:(D=$.error)===null||D===void 0?void 0:D.code,message:(G=$.error)===null||G===void 0?void 0:G.message}:void 0,elapsedTime:_});t.state.rpcMethodTracker[$.id]=O,t.emit(vt.RPC_UPDATE,O)}}t.emit(vt.MESSAGE,{message:V})}}},{event:vt.REJECTED,handler:function(t,e){return n=>ct(this,void 0,void 0,function*(){var r;t.state.isOriginator&&!t.remote.state.ready?(He.SocketService(`[SocketService: handleChannelRejected()] context=${t.state.context} channelId=${e} isOriginator=${t.state.isOriginator} ready=${t.remote.state.ready}`,t.remote.state.originatorInfo),Yv(Object.assign(Object.assign({id:e,event:pa.REJECTED},t.remote.state.originatorInfo),{sdkVersion:t.remote.state.sdkVersion,commLayer:t.state.communicationLayerPreference,commLayerVersion:h3.version,walletVersion:(r=t.remote.state.walletInfo)===null||r===void 0?void 0:r.version}),t.remote.state.communicationServerUrl).catch(o=>{}),yield t.remote.disconnect({terminate:!0}),t.remote.emit(vt.REJECTED,{channelId:e}),t.remote.setConnectionStatus(Wc.DISCONNECTED)):He.SocketService(`[SocketService: handleChannelRejected()] SKIP -- channelId=${e} isOriginator=${t.state.isOriginator} ready=${t.remote.state.ready}`)})}},{event:\"clients_waiting_to_join\",handler:function(t,e){return n=>{He.SocketService(`[SocketService: handleClientsWaitingToJoin()] context=${t.state.context} on \\'clients_waiting_to_join-${e}\\'`,n),t.emit(vt.CLIENTS_WAITING,n)}}}],Kot=[{event:vt.KEY_INFO,handler:function(t){return e=>{He.SocketService(\"[SocketService: handleKeyInfo()] on \\'KEY_INFO\\'\",e),t.emit(vt.KEY_INFO,e)}}},{event:vt.KEYS_EXCHANGED,handler:function(t){return()=>{var e,n,r;He.SocketService(`[SocketService: handleKeysExchanged()] on \\'keys_exchanged\\' keyschanged=${(e=t.state.keyExchange)===null||e===void 0?void 0:e.areKeysExchanged()}`);let{channelConfig:o}=t.remote.state;if(o){let a=t.getKeyExchange().getKeyInfo().ecies;o.localKey=a.private,o.otherKey=a.otherPubKey,t.remote.state.channelConfig=o,(n=t.remote.state.storageManager)===null||n===void 0||n.persistChannelConfig(o).catch(c=>{})}t.emit(vt.KEYS_EXCHANGED,{keysExchanged:(r=t.state.keyExchange)===null||r===void 0?void 0:r.areKeysExchanged(),isOriginator:t.state.isOriginator});let i={keyInfo:t.getKeyInfo()};t.emit(vt.SERVICE_STATUS,i)}}}];ere=class extends SA.EventEmitter2{constructor(e){super(),this.state={clientsConnected:!1,clientsPaused:!1,manualDisconnect:!1,lastRpcId:void 0,rpcMethodTracker:{},hasPlaintext:!1,communicationServerUrl:\"\",focusListenerAdded:!1,removeFocusListener:void 0,isReconnecting:!1,reconnectionAttempts:0},this.options=e;let{reconnect:n,communicationLayerPreference:r,communicationServerUrl:o,context:i,remote:a,logging:c}=e;this.state.resumed=n,this.state.context=i,this.state.isOriginator=a.state.isOriginator,this.state.communicationLayerPreference=r,this.state.debug=c?.serviceLayer===!0,this.remote=a,c?.serviceLayer===!0&&Cu.default.enable(\"SocketService:Layer\"),this.state.communicationServerUrl=o,this.state.hasPlaintext=this.state.communicationServerUrl!==RS&&c?.plaintext===!0,He.SocketService(`[SocketService: constructor()] Socket IO url: ${this.state.communicationServerUrl}`),this.initSocket()}initSocket(){var e;let{otherPublicKey:n,ecies:r,logging:o}=this.options,i={autoConnect:!1,transports:qot,withCredentials:!0},a=this.state.communicationServerUrl;He.SocketService(`[SocketService: initSocket()] Socket IO url: ${a}`),this.state.socket=lO(a,i),function(u){if(typeof window<\"u\"&&typeof document<\"u\"&&(He.SocketService(`[SocketService: setupSocketFocusListener()] hasFocus=${document.hasFocus()}`,u),!u.state.focusListenerAdded)){let d=()=>{He.SocketService(\"Document has focus --- reconnecting socket\"),Xne(u).catch(h=>{})};window.addEventListener(\"focus\",d),u.state.focusListenerAdded=!0,u.state.removeFocusListener=()=>{window.removeEventListener(\"focus\",d),u.state.focusListenerAdded=!1}}}(this);let c={communicationLayer:this,otherPublicKey:n,sendPublicKey:!1,context:(e=this.state.context)!==null&&e!==void 0?e:\"\",ecies:r,logging:o};this.state.keyExchange=new Jne(c)}resetKeys(){return He.SocketService(\"[SocketService: resetKeys()] Resetting keys.\"),void((e=this.state.keyExchange)===null||e===void 0||e.resetKeys());var e}createChannel(){return ct(this,void 0,void 0,function*(){return function(e){return ct(this,void 0,void 0,function*(){var n,r,o;if(He.SocketService(`[SocketService: createChannel()] context=${e.state.context}`),e.state.socket||e.initSocket(),(n=e.state.socket)===null||n===void 0?void 0:n.connected)throw new Error(\"socket already connected\");(r=e.state.socket)===null||r===void 0||r.connect(),e.state.manualDisconnect=!1,e.state.isOriginator=!0;let i=Z8();e.state.channelId=i,rCe(e,i),yield new Promise((c,u)=>{var d;(d=e.state.socket)===null||d===void 0||d.emit(vt.JOIN_CHANNEL,{channelId:i,context:`${e.state.context}createChannel`,clientType:\"dapp\"},(h,m)=>ct(this,void 0,void 0,function*(){try{yield pH(e,h,m),c()}catch(g){u(g)}}))});let a=(o=e.state.keyExchange)===null||o===void 0?void 0:o.getKeyInfo();return{channelId:i,pubKey:a?.ecies.public||\"\",privKey:a?.ecies.private||\"\"}})}(this)})}connectToChannel({channelId:e,withKeyExchange:n=!1,authorized:r}){return function(o){return ct(this,arguments,void 0,function*({options:i,instance:a}){let{channelId:c,authorized:u,withKeyExchange:d}=i,{state:h,remote:m}=a,{isOriginator:g=!1,socket:b,keyExchange:E}=h,{channelConfig:C}=m.state;if(b?.connected)throw new Error(\"socket already connected\");if(g&&C?.relayPersistence){let{localKey:T,otherKey:R}=C;T&&R&&E?.setRelayPersistence({localKey:T,otherKey:R})}return Object.assign(h,{manualDisconnect:!1,withKeyExchange:d,isOriginator:g,channelId:c}),b?.connect(),rCe(a,c),!g&&u&&(E?.setKeysExchanged(!0),Object.assign(m.state,{ready:!0,authorized:!0})),new Promise(T=>{var R;let L=(R=E?.getKeyInfo())===null||R===void 0?void 0:R.ecies.public;b?.emit(vt.JOIN_CHANNEL,{channelId:c,context:`${h.context}_connectToChannel`,clientType:g?\"dapp\":\"wallet\",publicKey:u&&!g?L:void 0},(D,G)=>ct(this,void 0,void 0,function*(){yield pH(a,D,G),T()}))})})}({options:{channelId:e,withKeyExchange:n,authorized:r},instance:this})}getKeyInfo(){return this.state.keyExchange.getKeyInfo()}keyCheck(){var e,n;(n=(e=this).state.socket)===null||n===void 0||n.emit(vt.MESSAGE,{id:e.state.channelId,context:e.state.context,message:{type:Vo.KEY_HANDSHAKE_CHECK,pubkey:e.getKeyInfo().ecies.otherPubKey}})}getKeyExchange(){return this.state.keyExchange}sendMessage(e){return ct(this,void 0,void 0,function*(){return function(n,r){return ct(this,void 0,void 0,function*(){var o,i,a;if(!n.state.channelId)throw He.SocketService(\"handleSendMessage: no channelId - Create a channel first\"),new Error(\"Create a channel first\");if(He.SocketService(`[SocketService: handleSendMessage()] context=${n.state.context} areKeysExchanged=${(o=n.state.keyExchange)===null||o===void 0?void 0:o.areKeysExchanged()}`,r),(i=r?.type)===null||i===void 0?void 0:i.startsWith(\"key_handshake\"))return function(u,d){var h;He.SocketService(`[SocketService: handleKeyHandshake()] context=${u.state.context}`,d),(h=u.state.socket)===null||h===void 0||h.emit(vt.MESSAGE,{id:u.state.channelId,context:u.state.context,clientType:u.state.isOriginator?\"dapp\":\"wallet\",message:d})}(n,r),!0;(function(u,d){var h;if(!(!((h=u.state.keyExchange)===null||h===void 0)&&h.areKeysExchanged())&&!u.remote.state.relayPersistence)throw He.SocketService(`[SocketService: validateKeyExchange()] context=${u.state.context} ERROR keys not exchanged`,d),new Error(\"Keys not exchanged BBB\")})(n,r),function(u,d){var h;let m=(h=d?.method)!==null&&h!==void 0?h:\"\",g=d?.id;u.state.isOriginator&&g&&(u.state.rpcMethodTracker[g]={id:g,timestamp:Date.now(),method:m},u.emit(vt.RPC_UPDATE,u.state.rpcMethodTracker[g]))}(n,r);let c=yield KAe(n,r);return n.remote.state.analytics&&n.remote.state.isOriginator&&r.method&&GAe.includes(r.method.toLowerCase())&&Yv({id:(a=n.remote.state.channelId)!==null&&a!==void 0?a:\"\",event:pa.SDK_RPC_REQUEST,params:{method:r.method,from:\"mobile\"}},n.remote.state.communicationServerUrl).catch(u=>{}),function(u,d){return ct(this,void 0,void 0,function*(){var h;let m=d?.id,g=(h=d?.method)!==null&&h!==void 0?h:\"\";if(u.state.isOriginator&&m)try{let b=nCe(m,u.state.rpcMethodTracker,200).then(T=>({type:hA.RPC_CHECK,result:T})),E=ct(this,void 0,void 0,function*(){let T=yield(L=>ct(void 0,[L],void 0,function*({rpcId:D,instance:G}){for(;G.state.lastRpcId===D||G.state.lastRpcId===void 0;)yield yA(200);return G.state.lastRpcId}))({instance:u,rpcId:m}),R=yield nCe(T,u.state.rpcMethodTracker,200);return{type:hA.SKIPPED_RPC,result:R}}),C=yield Promise.race([b,E]);if(C.type===hA.RPC_CHECK){let T=C.result;He.SocketService(`[SocketService:handleRpcReplies()] id=${d.id} ${g} ( ${T.elapsedTime} ms)`,T.result)}else{if(C.type!==hA.SKIPPED_RPC)throw new Error(`Error handling RPC replies for ${m}`);{let T=Object.assign(Object.assign({},u.state.rpcMethodTracker[m]),{error:new Error(\"SDK_CONNECTION_ISSUE\")});u.emit(vt.RPC_UPDATE,T);let R={data:Object.assign(Object.assign({},T),{jsonrpc:\"2.0\"}),name:\"metamask-provider\"};u.emit(vt.MESSAGE,{message:R})}}}catch(b){throw b}})}(n,r).catch(u=>{}),c})}(this,e)})}ping(){return function(e){return ct(this,void 0,void 0,function*(){var n,r;He.SocketService(`[SocketService: ping()] context=${e.state.context} originator=${e.state.isOriginator} keysExchanged=${(n=e.state.keyExchange)===null||n===void 0?void 0:n.areKeysExchanged()}`),(r=e.state.socket)===null||r===void 0||r.emit(hs.PING,{id:e.state.channelId,context:\"ping\",clientType:e.remote.state.isOriginator?\"dapp\":\"wallet\",message:\"\"})})}(this)}pause(){return function(e){return ct(this,void 0,void 0,function*(){var n,r;He.SocketService(`[SocketService: pause()] context=${e.state.context}`),e.state.manualDisconnect=!0,!((n=e.state.keyExchange)===null||n===void 0)&&n.areKeysExchanged()&&(yield e.sendMessage({type:hs.PAUSE})),(r=e.state.socket)===null||r===void 0||r.disconnect()})}(this)}isConnected(){var e;return(e=this.state.socket)===null||e===void 0?void 0:e.connected}resume(){return function(e){return ct(this,void 0,void 0,function*(){let{state:n,remote:r}=e,{socket:o,channelId:i,context:a,keyExchange:c,isOriginator:u}=n,{isOriginator:d}=r.state;if(He.SocketService(`[SocketService: resume()] channelId=${i} context=${a} connected=${o?.connected} manualDisconnect=${n.manualDisconnect} resumed=${n.resumed} keysExchanged=${c?.areKeysExchanged()}`),!i)throw He.SocketService(\"[SocketService: resume()] channelId is not defined\"),new Error(\"ChannelId is not defined\");o?.connected?(He.SocketService(\"[SocketService: resume()] already connected.\"),o.emit(hs.PING,{id:i,clientType:d?\"dapp\":\"wallet\",context:\"on_channel_config\",message:\"\"}),r.hasRelayPersistence()||c?.areKeysExchanged()||(u?yield e.sendMessage({type:hs.READY}):c?.start({isOriginator:!1}))):(o?.connect(),He.SocketService(`[SocketService: resume()] after connecting socket --> connected=${o?.connected}`),o?.emit(vt.JOIN_CHANNEL,{channelId:i,context:`${a}_resume`,clientType:d?\"dapp\":\"wallet\"},(h,m)=>ct(this,void 0,void 0,function*(){try{yield pH(e,h,m)}catch{}}))),n.manualDisconnect=!1,n.resumed=!0})}(this)}getRPCMethodTracker(){return this.state.rpcMethodTracker}disconnect(e){return function(n,r){var o,i,a,c,u;He.SocketService(`[SocketService: disconnect()] context=${n.state.context}`,r),r?.terminate&&((i=(o=n.state).removeFocusListener)===null||i===void 0||i.call(o),n.state.channelId=r.channelId,(a=n.state.socket)===null||a===void 0||a.removeAllListeners(),(c=n.state.keyExchange)===null||c===void 0||c.clean(),n.remote.state.ready=!1,n.state.socket=void 0,n.state.rpcMethodTracker={}),n.state.manualDisconnect=!0,(u=n.state.socket)===null||u===void 0||u.disconnect()}(this,e)}};(p3||(p3={})).SOCKET=\"socket\",function(t){t.NonBrowser=\"nodejs\",t.MetaMaskMobileWebview=\"in-app-browser\",t.DesktopWeb=\"web-desktop\",t.MobileWeb=\"web-mobile\",t.ReactNative=\"react-native\"}(Al||(Al={}));tre=class extends SA.EventEmitter2{constructor(e){super(),this.state={ready:!1,authorized:!1,isOriginator:!1,terminated:!1,protocolVersion:1,paused:!1,deeplinkProtocolAvailable:!1,platformType:\"metamask-mobile\",analytics:!1,reconnection:!1,originatorInfoSent:!1,communicationServerUrl:RS,context:\"\",persist:!1,clientsConnected:!1,sessionDuration:wA,originatorConnectStarted:!1,debug:!1,_connectionStatus:Wc.DISCONNECTED},this._options=e;let{platformType:n,communicationLayerPreference:r,otherPublicKey:o,reconnect:i,walletInfo:a,dappMetadata:c,protocolVersion:u,transports:d,context:h,relayPersistence:m,ecies:g,analytics:b=!1,storage:E,sdkVersion:C,communicationServerUrl:T=RS,logging:R,autoConnect:L={timeout:Wot}}=e;this.state.otherPublicKey=o,this.state.dappMetadata=c,this.state.walletInfo=a,this.state.transports=d,this.state.platformType=n,this.state.analytics=b,this.state.protocolVersion=u??1,this.state.isOriginator=!o,this.state.relayPersistence=m,this.state.communicationServerUrl=T,this.state.context=h,this.state.terminated=!1,this.state.sdkVersion=C,this.setMaxListeners(50),this.setConnectionStatus(Wc.DISCONNECTED),E?.duration&&(this.state.sessionDuration=wA),this.state.storageOptions=E,this.state.autoConnectOptions=L,this.state.debug=R?.remoteLayer===!0,R?.remoteLayer===!0&&Cu.default.enable(\"RemoteCommunication:Layer\"),R?.serviceLayer===!0&&Cu.default.enable(\"SocketService:Layer\"),R?.eciesLayer===!0&&Cu.default.enable(\"ECIES:Layer\"),R?.keyExchangeLayer===!0&&Cu.default.enable(\"KeyExchange:Layer\"),this.state.logging=R,E?.storageManager&&(this.state.storageManager=E.storageManager),He.RemoteCommunication(`[RemoteCommunication: constructor()] protocolVersion=${u} relayPersistence=${m} isOriginator=${this.state.isOriginator} communicationLayerPreference=${r} otherPublicKey=${o} reconnect=${i}`),this.state.isOriginator||iCe({communicationLayerPreference:r,otherPublicKey:o,reconnect:i,ecies:g,communicationServerUrl:T,instance:this}),this.emitServiceStatusEvent({context:\"constructor\"})}initFromDappStorage(){return ct(this,void 0,void 0,function*(){var e;if(this.state.storageManager){let n=yield this.state.storageManager.getPersistedChannelConfig({});n&&(this.state.channelConfig=n,this.state.channelId=n.channelId,this.state.deeplinkProtocolAvailable=(e=n.deeplinkProtocolAvailable)!==null&&e!==void 0&&e,n.relayPersistence&&(this.state.authorized=!0,this.state.ready=!0,this.setConnectionStatus(Wc.LINKED),yield this.connectToChannel({channelId:n.channelId})))}iCe({communicationLayerPreference:p3.SOCKET,otherPublicKey:this.state.otherPublicKey,reconnect:this._options.reconnect,ecies:this._options.ecies,communicationServerUrl:this.state.communicationServerUrl,instance:this})})}originatorSessionConnect(){return ct(this,void 0,void 0,function*(){return yield function(e){return ct(this,void 0,void 0,function*(){var n;let{state:r}=e;if(!r.storageManager)return void He.RemoteCommunication(\"[RemoteCommunication: originatorSessionConnect()] no storage manager defined - skip\");let o=yield r.storageManager.getPersistedChannelConfig({});if(He.RemoteCommunication(`[RemoteCommunication: originatorSessionConnect()] autoStarted=${r.originatorConnectStarted} channelConfig`,o),(n=r.communicationLayer)===null||n===void 0?void 0:n.isConnected())return He.RemoteCommunication(\"[RemoteCommunication: originatorSessionConnect()] socket already connected - skip\"),o;if(o){if(o.validUntil>Date.now())return r.channelConfig=o,r.originatorConnectStarted=!0,r.channelId=o?.channelId,r.reconnection=!0,o;He.RemoteCommunication(\"[RemoteCommunication: autoConnect()] Session has expired\")}r.originatorConnectStarted=!1})}(this)})}generateChannelIdConnect(){return ct(this,void 0,void 0,function*(){return function(e){return ct(this,void 0,void 0,function*(){var n,r,o,i,a,c;if(!e.communicationLayer)throw new Error(\"communication layer not initialized\");if(e.ready)throw new Error(\"Channel already connected\");if(e.channelId&&(!((n=e.communicationLayer)===null||n===void 0)&&n.isConnected()))return e.channelConfig=Object.assign(Object.assign({},e.channelConfig),{channelId:e.channelId,validUntil:Date.now()+e.sessionDuration}),(r=e.storageManager)===null||r===void 0||r.persistChannelConfig(e.channelConfig),{channelId:e.channelId,privKey:(i=(o=e.communicationLayer)===null||o===void 0?void 0:o.getKeyInfo())===null||i===void 0?void 0:i.ecies.private,pubKey:(c=(a=e.communicationLayer)===null||a===void 0?void 0:a.getKeyInfo())===null||c===void 0?void 0:c.ecies.public};He.RemoteCommunication(\"[RemoteCommunication: generateChannelId()]\");let u=yield e.communicationLayer.createChannel();He.RemoteCommunication(\"[RemoteCommunication: generateChannelId()] channel created\",u);let d=Object.assign(Object.assign({},e.channelConfig),{channelId:u.channelId,localKey:u.privKey,validUntil:Date.now()+e.sessionDuration});return e.channelId=u.channelId,e.channelConfig=d,{channelId:e.channelId,pubKey:u.pubKey,privKey:u.privKey}})}(this.state)})}clean(){return $Ae(this.state)}connectToChannel({channelId:e,withKeyExchange:n,authorized:r}){return function(o){return ct(this,arguments,void 0,function*({channelId:i,withKeyExchange:a,authorized:c,state:u}){var d,h,m;if(!cg(i))throw He.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${u.context} invalid channel channelId=${i}`),new Error(`Invalid channel ${i}`);if(He.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${u.context} channelId=${i} withKeyExchange=${a}`),(d=u.communicationLayer)===null||d===void 0?void 0:d.isConnected())return void He.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${u.context} already connected - interrupt connection.`);u.channelId=i,yield(h=u.communicationLayer)===null||h===void 0?void 0:h.connectToChannel({channelId:i,authorized:c,withKeyExchange:a});let g=Object.assign(Object.assign({},u.channelConfig),{channelId:i,validUntil:Date.now()+u.sessionDuration});u.channelConfig=g,(m=u.storageManager)===null||m===void 0||m.persistChannelConfig(g)})}({channelId:e,authorized:r,withKeyExchange:n,state:this.state})}sendMessage(e){return function(n,r){return ct(this,void 0,void 0,function*(){var o,i;let{state:a}=n;He.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${a.context} paused=${a.paused} ready=${a.ready} relayPersistence=${a.relayPersistence} authorized=${a.authorized} socket=${(o=a.communicationLayer)===null||o===void 0?void 0:o.isConnected()} clientsConnected=${a.clientsConnected} status=${a._connectionStatus}`,r),a.relayPersistence||a.ready&&(!((i=a.communicationLayer)===null||i===void 0)&&i.isConnected())&&a.clientsConnected||(He.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${a.context}  SKIP message waiting for MM mobile readiness.`),yield new Promise(c=>{n.once(vt.CLIENTS_READY,c)}),He.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${a.context}  AFTER SKIP / READY -- sending pending message`));try{return yield function(u,d){return ct(this,void 0,void 0,function*(){return new Promise(h=>{var m;let{state:g}=u;He.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${g.context} ready=${g.ready} authorized=${g.authorized} method=${d.method}`),!g.isOriginator||g.authorized||g.relayPersistence?(m=g.communicationLayer)===null||m===void 0||m.sendMessage(d).then(b=>{h(b)}).catch(b=>{h(!1)}):u.once(vt.AUTHORIZED,()=>{var b;He.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${g.context}  AFTER SKIP / AUTHORIZED -- sending pending message`),(b=g.communicationLayer)===null||b===void 0||b.sendMessage(d).then(E=>{h(E)}).catch(E=>{h(!1)})})})})}(n,r)}catch(c){throw c}})}(this,e)}testStorage(){return ct(this,void 0,void 0,function*(){return function(e){return ct(this,void 0,void 0,function*(){var n;let r=yield(n=e.storageManager)===null||n===void 0?void 0:n.getPersistedChannelConfig();He.RemoteCommunication(\"[RemoteCommunication: testStorage()] res\",r)})}(this.state)})}hasDeeplinkProtocol(){return this.state.deeplinkProtocolAvailable}getChannelConfig(){return this.state.channelConfig}isReady(){return this.state.ready}isConnected(){var e;return(e=this.state.communicationLayer)===null||e===void 0?void 0:e.isConnected()}isAuthorized(){return this.state.authorized}isPaused(){return this.state.paused}getCommunicationLayer(){return this.state.communicationLayer}ping(){return ct(this,void 0,void 0,function*(){var e;He.RemoteCommunication(`[RemoteCommunication: ping()] channel=${this.state.channelId}`),yield(e=this.state.communicationLayer)===null||e===void 0?void 0:e.ping()})}testLogger(){He.RemoteCommunication(`testLogger() channel=${this.state.channelId}`),He.SocketService(`testLogger() channel=${this.state.channelId}`),He.Ecies(`testLogger() channel=${this.state.channelId}`),He.KeyExchange(`testLogger() channel=${this.state.channelId}`)}keyCheck(){var e;He.RemoteCommunication(`[RemoteCommunication: keyCheck()] channel=${this.state.channelId}`),(e=this.state.communicationLayer)===null||e===void 0||e.keyCheck()}setConnectionStatus(e){this.state._connectionStatus!==e&&(this.state._connectionStatus=e,this.emit(vt.CONNECTION_STATUS,e),this.emitServiceStatusEvent({context:\"setConnectionStatus\"}))}emitServiceStatusEvent(e={}){this.emit(vt.SERVICE_STATUS,this.getServiceStatus())}getConnectionStatus(){return this.state._connectionStatus}getServiceStatus(){return{originatorInfo:this.state.originatorInfo,keyInfo:this.getKeyInfo(),connectionStatus:this.state._connectionStatus,channelConfig:this.state.channelConfig,channelId:this.state.channelId}}getKeyInfo(){var e;return(e=this.state.communicationLayer)===null||e===void 0?void 0:e.getKeyInfo()}resetKeys(){var e;(e=this.state.communicationLayer)===null||e===void 0||e.resetKeys()}setOtherPublicKey(e){var n;let r=(n=this.state.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange();if(!r)throw new Error(\"KeyExchange is not initialized.\");r.getOtherPublicKey()!==e&&r.setOtherPublicKey(e)}pause(){return ct(this,void 0,void 0,function*(){var e;He.RemoteCommunication(`[RemoteCommunication: pause()] channel=${this.state.channelId}`),yield(e=this.state.communicationLayer)===null||e===void 0?void 0:e.pause(),this.setConnectionStatus(Wc.PAUSED)})}getVersion(){return h3.version}hasRelayPersistence(){var e;return(e=this.state.relayPersistence)!==null&&e!==void 0&&e}resume(){return ct(this,void 0,void 0,function*(){return function(e){return ct(this,void 0,void 0,function*(){var n;let{state:r}=e;He.RemoteCommunication(`[RemoteCommunication: resume()] channel=${r.channelId}`),yield(n=r.communicationLayer)===null||n===void 0?void 0:n.resume(),e.setConnectionStatus(Wc.LINKED)})}(this)})}encrypt(e){var n,r,o;let i=(n=this.state.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange(),a=i?.getOtherPublicKey();if(!a)throw new Error(\"KeyExchange not completed\");return(o=(r=this.state.communicationLayer)===null||r===void 0?void 0:r.state.eciesInstance)===null||o===void 0?void 0:o.encrypt(e,a)}decrypt(e){var n,r,o;if(!(!((n=this.state.communicationLayer)===null||n===void 0)&&n.state.eciesInstance))throw new Error(\"ECIES instance is not initialized\");return(o=(r=this.state.communicationLayer)===null||r===void 0?void 0:r.state.eciesInstance)===null||o===void 0?void 0:o.decrypt(e)}getChannelId(){return this.state.channelId}getRPCMethodTracker(){var e;return(e=this.state.communicationLayer)===null||e===void 0?void 0:e.getRPCMethodTracker()}reject({channelId:e}){return function(n){return ct(this,arguments,void 0,function*({channelId:r,state:o}){var i,a,c;if(!cg(r))throw He.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${o.context} invalid channel channelId=${r}`),new Error(`Invalid channel ${r}`);if(o.isOriginator)return void He.RemoteCommunication(`[RemoteCommunication: reject()] context=${o.context} isOriginator=${o.isOriginator} channelId=${r}`);let{socket:u}=(a=(i=o.communicationLayer)===null||i===void 0?void 0:i.state)!==null&&a!==void 0?a:{};u?.connected||(He.RemoteCommunication(`[RemoteCommunication: reject()] context=${o.context} socket already connected`),u?.connect()),Yv(Object.assign(Object.assign({id:r,event:pa.REJECTED},o.originatorInfo),{sdkVersion:o.sdkVersion,commLayerVersion:h3.version,walletVersion:(c=o.walletInfo)===null||c===void 0?void 0:c.version}),o.communicationServerUrl).catch(d=>{}),yield new Promise((d,h)=>{u?.emit(vt.REJECTED,{channelId:r},(m,g)=>{He.RemoteCommunication(`[RemoteCommunication: reject()] context=${o.context} socket=${u?.id}`,{error:m,response:g}),m?h(m):d(g)})})})}({channelId:e,state:this.state})}disconnect(e){return ct(this,void 0,void 0,function*(){return ZAe({options:e,instance:this})})}};(function(t){t.RENEW=\"renew\",t.LINK=\"link\"})(oCe||(oCe={}));oit=\"ERC721\",iit=\"ERC1155\",Vs={errors:{disconnected:()=>\"MetaMask: Disconnected from chain. Attempting to connect.\",permanentlyDisconnected:()=>\"MetaMask: Disconnected from MetaMask background. Page reload required.\",sendSiteMetadata:()=>\"MetaMask: Failed to send site metadata. This is an internal error, please report this bug.\",unsupportedSync:t=>`MetaMask: The MetaMask Ethereum provider does not support synchronous methods like ${t} without a callback parameter.`,invalidDuplexStream:()=>\"Must provide a Node.js-style duplex stream.\",invalidNetworkParams:()=>\"MetaMask: Received invalid network parameters. Please report this bug.\",invalidRequestArgs:()=>\"Expected a single, non-array, object argument.\",invalidRequestMethod:()=>\"\\'args.method\\' must be a non-empty string.\",invalidRequestParams:()=>\"\\'args.params\\' must be an object or array if provided.\",invalidLoggerObject:()=>\"\\'args.logger\\' must be an object if provided.\",invalidLoggerMethod:t=>`\\'args.logger\\' must include required method \\'${t}\\'.`},info:{connected:t=>`MetaMask: Connected to chain with ID \"${t}\".`},warnings:{chainIdDeprecation:`MetaMask: \\'ethereum.chainId\\' is deprecated and may be removed in the future. Please use the \\'eth_chainId\\' RPC method instead.\\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,networkVersionDeprecation:`MetaMask: \\'ethereum.networkVersion\\' is deprecated and may be removed in the future. Please use the \\'net_version\\' RPC method instead.\\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,selectedAddressDeprecation:`MetaMask: \\'ethereum.selectedAddress\\' is deprecated and may be removed in the future. Please use the \\'eth_accounts\\' RPC method instead.\\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,enableDeprecation:`MetaMask: \\'ethereum.enable()\\' is deprecated and may be removed in the future. Please use the \\'eth_requestAccounts\\' RPC method instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1102`,sendDeprecation:`MetaMask: \\'ethereum.send(...)\\' is deprecated and may be removed in the future. Please use \\'ethereum.sendAsync(...)\\' or \\'ethereum.request(...)\\' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193`,events:{close:`MetaMask: The event \\'close\\' is deprecated and may be removed in the future. Please use \\'disconnect\\' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#disconnect`,data:`MetaMask: The event \\'data\\' is deprecated and will be removed in the future. Use \\'message\\' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`,networkChanged:`MetaMask: The event \\'networkChanged\\' is deprecated and may be removed in the future. Use \\'chainChanged\\' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#chainchanged`,notification:`MetaMask: The event \\'notification\\' is deprecated and may be removed in the future. Use \\'message\\' instead.\\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`},rpc:{ethDecryptDeprecation:`MetaMask: The RPC method \\'eth_decrypt\\' is deprecated and may be removed in the future.\\nFor more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686`,ethGetEncryptionPublicKeyDeprecation:`MetaMask: The RPC method \\'eth_getEncryptionPublicKey\\' is deprecated and may be removed in the future.\\nFor more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686`,walletWatchAssetNFTExperimental:`MetaMask: The RPC method \\'wallet_watchAsset\\' is experimental for ERC721/ERC1155 assets and may change in the future.\\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/blob/main/MIPs/mip-1.md and https://github.com/MetaMask/metamask-improvement-proposals/blob/main/PROCESS-GUIDE.md#proposal-lifecycle`},experimentalMethods:\"MetaMask: \\'ethereum._metamask\\' exposes non-standard, experimental methods. They may be removed or changed without warning.\"}};YAe=4294967295,sCe=Math.floor(Math.random()*YAe);zre=(t,e,n)=>{if(!e.has(t))throw TypeError(\"Cannot \"+n)},c3=(t,e,n)=>(zre(t,e,\"read from private field\"),n?n.call(t):e.get(t)),fg=(t,e,n)=>{if(e.has(t))throw TypeError(\"Cannot add the same private member more than once\");e instanceof WeakSet?e.add(t):e.set(t,n)},iH=(t,e,n,r)=>(zre(t,e,\"write to private field\"),e.set(t,n),n),Cd=(t,e,n)=>(zre(t,e,\"access private method\"),n),o3={invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},aCe={\"-32700\":{standard:\"JSON RPC 2.0\",message:\"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"},\"-32600\":{standard:\"JSON RPC 2.0\",message:\"The JSON sent is not a valid Request object.\"},\"-32601\":{standard:\"JSON RPC 2.0\",message:\"The method does not exist / is not available.\"},\"-32602\":{standard:\"JSON RPC 2.0\",message:\"Invalid method parameter(s).\"},\"-32603\":{standard:\"JSON RPC 2.0\",message:\"Internal JSON-RPC error.\"},\"-32000\":{standard:\"EIP-1474\",message:\"Invalid input.\"},\"-32001\":{standard:\"EIP-1474\",message:\"Resource not found.\"},\"-32002\":{standard:\"EIP-1474\",message:\"Resource unavailable.\"},\"-32003\":{standard:\"EIP-1474\",message:\"Transaction rejected.\"},\"-32004\":{standard:\"EIP-1474\",message:\"Method not supported.\"},\"-32005\":{standard:\"EIP-1474\",message:\"Request limit exceeded.\"},4001:{standard:\"EIP-1193\",message:\"User rejected the request.\"},4100:{standard:\"EIP-1193\",message:\"The requested account and/or method has not been authorized by the user.\"},4200:{standard:\"EIP-1193\",message:\"The requested method is not supported by this Ethereum provider.\"},4900:{standard:\"EIP-1193\",message:\"The provider is disconnected from all chains.\"},4901:{standard:\"EIP-1193\",message:\"The provider is disconnected from the specified chain.\"}};qH=(t,e)=>Object.hasOwnProperty.call(t,e),nre=class extends TypeError{constructor(e,n){let r,{message:o,explanation:i,...a}=e,{path:c}=e,u=c.length===0?o:`At path: ${c.join(\".\")} -- ${o}`;super(i??u),i!=null&&(this.cause=u),Object.assign(this,a),this.name=this.constructor.name,this.failures=()=>r??(r=[e,...n()])}};Nh=class{constructor(e){let{type:n,schema:r,validator:o,refiner:i,coercer:a=u=>u,entries:c=function*(){}}=e;this.type=n,this.schema=r,this.entries=c,this.coercer=a,this.validator=o?(u,d)=>lCe(o(u,d),d,this,u):()=>[],this.refiner=i?(u,d)=>lCe(i(u,d),d,this,u):()=>[]}assert(e,n){return QAe(e,this,n)}create(e,n){return JAe(e,this,n)}is(e){return kA(e,this)}mask(e,n){return function(r,o,i){let a=LO(r,o,{coerce:!0,mask:!0,message:i});if(a[0])throw a[0];return a[1]}(e,this,n)}validate(e,n={}){return LO(e,this,n)}};dit=class extends Error{constructor(t){super(t.message),this.code=\"ERR_ASSERTION\"}};Jx=oTe,Xx=iTe;typeof Id.setTimeout==\"function\"&&(Jx=setTimeout),typeof Id.clearTimeout==\"function\"&&(Xx=clearTimeout);Gv=[],bA=!1,mH=-1;cTe.prototype.run=function(){this.fun.apply(null,this.array)};hit=OS,pit=OS,mit=OS,git=OS,yit=OS,bit=OS,vit=OS,aA=Id.performance||{},wit=aA.now||aA.mozNow||aA.msNow||aA.oNow||aA.webkitNow||function(){return new Date().getTime()},xit=new Date,co={nextTick:function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];Gv.push(new cTe(t,e)),Gv.length!==1||bA||sTe(aTe)},title:\"browser\",browser:!0,env:{},argv:[],version:\"\",versions:{},on:hit,addListener:pit,once:mit,off:git,removeListener:yit,removeAllListeners:bit,emit:vit,binding:function(t){throw new Error(\"process.binding is not supported\")},cwd:function(){return\"/\"},chdir:function(t){throw new Error(\"process.chdir is not supported\")},umask:function(){return 0},hrtime:function(t){var e=.001*wit.call(aA),n=Math.floor(e),r=Math.floor(e%1*1e9);return t&&(n-=t[0],(r-=t[1])<0&&(n--,r+=1e9)),[n,r]},platform:\"browser\",release:{},config:{},uptime:function(){return(new Date-xit)/1e3}},BO=t=>nTe(t);VH=fq([eTe(null),m3(\"boolean\",t=>typeof t==\"boolean\"),m3(\"finite number\",t=>kA(t,tTe())&&Number.isFinite(t)),g3(),XAe(uCe(()=>VH)),rTe(g3(),uCe(()=>VH))]),DO=(sH=VH,hCe=m3(\"any\",()=>!0),pCe=t=>(function(e,n,r=\"Assertion failed\",o=dit){try{QAe(e,n)}catch(i){throw uit(o,`${r}: ${lit(i)}.`)}}(t,VH),JSON.parse(JSON.stringify(t,(e,n)=>{if(e!==\"__proto__\"&&e!==\"constructor\")return n}))),new Nh({...sH,coercer:(t,e)=>kA(t,hCe)?sH.coercer(pCe(t,e),e):sH.coercer(t,e)}));xO=eTe(\"2.0\"),gH=function(t){return new Nh({...t,validator:(e,n)=>e===null||t.validator(e,n),refiner:(e,n)=>e===null||t.refiner(e,n)})}(fq([tTe(),g3()])),ore=BO({code:m3(\"integer\",t=>typeof t==\"number\"&&!isNaN(t)&&Number.isInteger(t)||`Expected an integer, but received: ${k1(t)}`),message:g3(),data:WH(DO),stack:WH(g3())}),lTe=fq([rTe(g3(),DO),XAe(DO)]),Eit=BO({id:gH,jsonrpc:xO,method:g3(),params:WH(lTe)}),Sit=BO({jsonrpc:xO,method:g3(),params:WH(lTe)});nTe({id:gH,jsonrpc:xO,result:dCe(m3(\"unknown\",()=>!0)),error:dCe(ore)}),fq([BO({id:gH,jsonrpc:xO,result:DO}),BO({id:gH,jsonrpc:xO,error:ore})]);yCe=o3.internal,kit=\"Unspecified error message. This is a bug, please report it.\",_it={code:yCe,message:uTe(yCe)},Cit=\"Unspecified server error.\";fTe=gO;gO.default=gO,gO.stable=wCe,gO.stableStringify=wCe;$H=\"[...]\",hTe=\"[Circular]\",IS=[],CS=[];Tit=uq(fTe),Hv=class extends Error{constructor(t,e,n){if(!Number.isInteger(t))throw new Error(\\'\"code\" must be an integer.\\');if(!e||typeof e!=\"string\")throw new Error(\\'\"message\" must be a non-empty string.\\');super(e),this.code=t,n!==void 0&&(this.data=n)}serialize(){let t={code:this.code,message:this.message};return this.data!==void 0&&(t.data=this.data,function(e){if(typeof e!=\"object\"||e===null)return!1;try{let n=e;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}catch{return!1}}(this.data)&&(t.data.cause=dTe(this.data.cause))),this.stack&&(t.stack=this.stack),t}toString(){return Tit(this.serialize(),Rit,2)}};EO=t=>Iit(o3.invalidRequest,t);gTe={};e3.prototype=Object.create(null),Wo.EventEmitter=Wo,Wo.usingDomains=!1,Wo.prototype.domain=void 0,Wo.prototype._events=void 0,Wo.prototype._maxListeners=void 0,Wo.defaultMaxListeners=10,Wo.init=function(){this.domain=null,Wo.usingDomains&&(void 0).active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new e3,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},Wo.prototype.setMaxListeners=function(t){if(typeof t!=\"number\"||t<0||isNaN(t))throw new TypeError(\\'\"n\" argument must be a positive number\\');return this._maxListeners=t,this},Wo.prototype.getMaxListeners=function(){return yTe(this)},Wo.prototype.emit=function(t){var e,n,r,o,i,a,c,u=t===\"error\";if(a=this._events)u=u&&a.error==null;else if(!u)return!1;if(c=this.domain,u){if(e=arguments[1],!c){if(e instanceof Error)throw e;var d=new Error(\\'Uncaught, unspecified \"error\" event. (\\'+e+\")\");throw d.context=e,d}return e||(e=new Error(\\'Uncaught, unspecified \"error\" event\\')),e.domainEmitter=this,e.domain=c,e.domainThrown=!1,c.emit(\"error\",e),!1}if(!(n=a[t]))return!1;var h=typeof n==\"function\";switch(r=arguments.length){case 1:(function(m,g,b){if(g)m.call(b);else for(var E=m.length,C=hO(m,E),T=0;T<E;++T)C[T].call(b)})(n,h,this);break;case 2:(function(m,g,b,E){if(g)m.call(b,E);else for(var C=m.length,T=hO(m,C),R=0;R<C;++R)T[R].call(b,E)})(n,h,this,arguments[1]);break;case 3:(function(m,g,b,E,C){if(g)m.call(b,E,C);else for(var T=m.length,R=hO(m,T),L=0;L<T;++L)R[L].call(b,E,C)})(n,h,this,arguments[1],arguments[2]);break;case 4:(function(m,g,b,E,C,T){if(g)m.call(b,E,C,T);else for(var R=m.length,L=hO(m,R),D=0;D<R;++D)L[D].call(b,E,C,T)})(n,h,this,arguments[1],arguments[2],arguments[3]);break;default:for(o=new Array(r-1),i=1;i<r;i++)o[i-1]=arguments[i];(function(m,g,b,E){if(g)m.apply(b,E);else for(var C=m.length,T=hO(m,C),R=0;R<C;++R)T[R].apply(b,E)})(n,h,this,o)}return!0},Wo.prototype.addListener=function(t,e){return xCe(this,t,e,!1)},Wo.prototype.on=Wo.prototype.addListener,Wo.prototype.prependListener=function(t,e){return xCe(this,t,e,!0)},Wo.prototype.once=function(t,e){if(typeof e!=\"function\")throw new TypeError(\\'\"listener\" argument must be a function\\');return this.on(t,ECe(this,t,e)),this},Wo.prototype.prependOnceListener=function(t,e){if(typeof e!=\"function\")throw new TypeError(\\'\"listener\" argument must be a function\\');return this.prependListener(t,ECe(this,t,e)),this},Wo.prototype.removeListener=function(t,e){var n,r,o,i,a;if(typeof e!=\"function\")throw new TypeError(\\'\"listener\" argument must be a function\\');if(!(r=this._events))return this;if(!(n=r[t]))return this;if(n===e||n.listener&&n.listener===e)--this._eventsCount==0?this._events=new e3:(delete r[t],r.removeListener&&this.emit(\"removeListener\",t,n.listener||e));else if(typeof n!=\"function\"){for(o=-1,i=n.length;i-- >0;)if(n[i]===e||n[i].listener&&n[i].listener===e){a=n[i].listener,o=i;break}if(o<0)return this;if(n.length===1){if(n[0]=void 0,--this._eventsCount==0)return this._events=new e3,this;delete r[t]}else(function(c,u){for(var d=u,h=d+1,m=c.length;h<m;d+=1,h+=1)c[d]=c[h];c.pop()})(n,o);r.removeListener&&this.emit(\"removeListener\",t,a||e)}return this},Wo.prototype.off=function(t,e){return this.removeListener(t,e)},Wo.prototype.removeAllListeners=function(t){var e,n;if(!(n=this._events))return this;if(!n.removeListener)return arguments.length===0?(this._events=new e3,this._eventsCount=0):n[t]&&(--this._eventsCount==0?this._events=new e3:delete n[t]),this;if(arguments.length===0){for(var r,o=Object.keys(n),i=0;i<o.length;++i)(r=o[i])!==\"removeListener\"&&this.removeAllListeners(r);return this.removeAllListeners(\"removeListener\"),this._events=new e3,this._eventsCount=0,this}if(typeof(e=n[t])==\"function\")this.removeListener(t,e);else if(e)do this.removeListener(t,e[e.length-1]);while(e[0]);return this},Wo.prototype.listeners=function(t){var e,n,r=this._events;return n=r&&(e=r[t])?typeof e==\"function\"?[e.listener||e]:function(o){for(var i=new Array(o.length),a=0;a<i.length;++a)i[a]=o[a].listener||o[a];return i}(e):[],n},Wo.listenerCount=function(t,e){return typeof t.listenerCount==\"function\"?t.listenerCount(e):SCe.call(t,e)},Wo.prototype.listenerCount=SCe,Wo.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};qre=WO(Object.freeze({__proto__:null,EventEmitter:Wo,default:Wo}));Object.defineProperty(gTe,\"__esModule\",{value:!0});Oit=qre;Pit=class extends Oit.EventEmitter{emit(t,...e){let n=t===\"error\",r=this._events;if(r!==void 0)n=n&&r.error===void 0;else if(!n)return!1;if(n){let i;if(e.length>0&&([i]=e),i instanceof Error)throw i;let a=new Error(\"Unhandled error.\"+(i?` (${i.message})`:\"\"));throw a.context=i,a}let o=r[t];if(o===void 0)return!1;if(typeof o==\"function\")kCe(o,this,e);else{let i=o.length,a=function(c){let u=c.length,d=new Array(u);for(let h=0;h<u;h+=1)d[h]=c[h];return d}(o);for(let c=0;c<i;c+=1)kCe(a[c],this,e)}return!0}},bTe=gTe.default=Pit,dg=class xH extends bTe{constructor({notificationHandler:e}={}){super(),fg(this,yO),fg(this,bH),fg(this,vH),fg(this,KH,!1),fg(this,i3,void 0),fg(this,pA,void 0),iH(this,i3,[]),iH(this,pA,e)}destroy(){c3(this,i3).forEach(e=>{\"destroy\"in e&&typeof e.destroy==\"function\"&&e.destroy()}),iH(this,i3,[]),iH(this,KH,!0)}push(e){Cd(this,yO,yH).call(this),c3(this,i3).push(e)}handle(e,n){if(Cd(this,yO,yH).call(this),n&&typeof n!=\"function\")throw new Error(\\'\"callback\" must be a function if provided.\\');return Array.isArray(e)?n?Cd(this,bH,are).call(this,e,n):Cd(this,bH,are).call(this,e):n?Cd(this,vH,cre).call(this,e,n):this._promiseHandle(e)}asMiddleware(){return Cd(this,yO,yH).call(this),async(e,n,r,o)=>{var i,a;try{let[c,u,d]=await Cd(i=xH,wH,lre).call(i,e,n,c3(this,i3));return u?(await Cd(a=xH,SO,GH).call(a,d),o(c)):r(async h=>{var m;try{await Cd(m=xH,SO,GH).call(m,d)}catch(g){return h(g)}return h()})}catch(c){return o(c)}}}async _promiseHandle(e){return new Promise((n,r)=>{Cd(this,vH,cre).call(this,e,(o,i)=>{o&&i===void 0?r(o):n(i)}).catch(r)})}};KH=new WeakMap,i3=new WeakMap,pA=new WeakMap,yO=new WeakSet,yH=function(){if(c3(this,KH))throw new Error(\"This engine is destroyed and can no longer be used.\")},bH=new WeakSet,are=async function(t,e){try{if(t.length===0){let r=[{id:null,jsonrpc:\"2.0\",error:new Hv(o3.invalidRequest,\"Request batch must contain plain objects. Received an empty array\")}];return e?e(null,r):r}let n=(await Promise.all(t.map(this._promiseHandle.bind(this)))).filter(r=>r!==void 0);return e?e(null,n):n}catch(n){if(e)return e(n);throw n}},vH=new WeakSet,cre=async function(t,e){var n;if(!t||Array.isArray(t)||typeof t!=\"object\"){let a=new Hv(o3.invalidRequest,\"Requests must be plain objects. Received: \"+typeof t,{request:t});return e(a,{id:null,jsonrpc:\"2.0\",error:a})}if(typeof t.method!=\"string\"){let a=new Hv(o3.invalidRequest,\"Must specify a string method. Received: \"+typeof t.method,{request:t});return c3(this,pA)&&!mCe(t)?e(null):e(a,{id:t.id??null,jsonrpc:\"2.0\",error:a})}if(c3(this,pA)&&kA(t,Sit)&&!mCe(t)){try{await c3(this,pA).call(this,t)}catch(a){return e(a)}return e(null)}let r=null,o={...t},i={id:o.id,jsonrpc:o.jsonrpc};try{await Cd(n=dg,yne,_Ce).call(n,o,i,c3(this,i3))}catch(a){r=a}return r&&(delete i.result,i.error||(i.error=bCe(r))),e(r,i)},yne=new WeakSet,_Ce=async function(t,e,n){var r,o,i;let[a,c,u]=await Cd(r=dg,wH,lre).call(r,t,e,n);if(Cd(o=dg,vne,ACe).call(o,t,e,c),await Cd(i=dg,SO,GH).call(i,u),a)throw a},wH=new WeakSet,lre=async function(t,e,n){var r;let o=[],i=null,a=!1;for(let c of n)if([i,a]=await Cd(r=dg,bne,CCe).call(r,t,e,c,o),a)break;return[i,a,o.reverse()]},bne=new WeakSet,CCe=async function(t,e,n,r){return new Promise(o=>{let i=c=>{let u=c||e.error;u&&(e.error=bCe(u)),o([u,!0])},a=c=>{e.error?i(e.error):(c&&(typeof c!=\"function\"&&i(new Hv(o3.internal,`JsonRpcEngine: \"next\" return handlers must be functions. Received \"${typeof c}\" for request:\\n${wne(t)}`,{request:t})),r.push(c)),o([null,!1]))};try{n(t,e,a,i)}catch(c){i(c)}})},SO=new WeakSet,GH=async function(t){for(let e of t)await new Promise((n,r)=>{e(o=>o?r(o):n())})},vne=new WeakSet,ACe=function(t,e,n){if(!qH(e,\"result\")&&!qH(e,\"error\"))throw new Hv(o3.internal,`JsonRpcEngine: Response has no error or result for request:\\n${wne(t)}`,{request:t});if(!n)throw new Hv(o3.internal,`JsonRpcEngine: Nothing ended request:\\n${wne(t)}`,{request:t})},fg(dg,yne),fg(dg,wH),fg(dg,bne),fg(dg,SO),fg(dg,vne);Mit=dg;vTe=Object.freeze([\"eth_subscription\"]),Nit=(t=console)=>[ait(),Lit(t),sit(t)];EH=(t,e,n=!0)=>(r,o)=>{r||o.error?e(r||o.error):!n||Array.isArray(o)?t(o):t(o.result)},wTe=t=>!!t&&typeof t==\"string\"&&t.startsWith(\"0x\"),xTe=()=>{};ETe=(t,e,n)=>{if(!e.has(t))throw TypeError(\"Cannot \"+n)},v1=(t,e,n)=>(ETe(t,e,\"read from private field\"),n?n.call(t):e.get(t)),ure=(t,e,n)=>{if(e.has(t))throw TypeError(\"Cannot add the same private member more than once\");e instanceof WeakSet?e.add(t):e.set(t,n)},qv=(t,e,n,r)=>(ETe(t,e,\"write to private field\"),e.set(t,n),n);dre=class extends Wo{emit(e,...n){let r=e===\"error\",o=this._events;if(o!==void 0)r=r&&o.error===void 0;else if(!r)return!1;if(r){let a;if(n.length>0&&([a]=n),a instanceof Error)throw a;let c=new Error(\"Unhandled error.\"+(a?` (${a.message})`:\"\"));throw c.context=a,c}let i=o[e];if(i===void 0)return!1;if(typeof i==\"function\")RCe(i,this,n);else{let a=i.length,c=function(u){let d=u.length,h=new Array(d);for(let m=0;m<d;m+=1)h[m]=u[m];return h}(i);for(let u=0;u<a;u+=1)RCe(c[u],this,n)}return!0}},Uit=function t(e,n){if(e===n)return!0;if(e&&n&&typeof e==\"object\"&&typeof n==\"object\"){if(e.constructor!==n.constructor)return!1;var r,o,i;if(Array.isArray(e)){if((r=e.length)!=n.length)return!1;for(o=r;o--!=0;)if(!t(e[o],n[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===n.source&&e.flags===n.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===n.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===n.toString();if((r=(i=Object.keys(e)).length)!==Object.keys(n).length)return!1;for(o=r;o--!=0;)if(!Object.prototype.hasOwnProperty.call(n,i[o]))return!1;for(o=r;o--!=0;){var a=i[o];if(!t(e[a],n[a]))return!1}return!0}return e!=e&&n!=n},jit=uq(Uit),STe=class kTe extends dre{constructor({logger:e=console,maxEventListeners:n=100,rpcMiddleware:r=[]}={}){super(),ure(this,t3,void 0),ure(this,xS,void 0),this._log=e,this.setMaxListeners(n),this._state={...kTe._defaultState},qv(this,xS,null),qv(this,t3,null),this._handleAccountsChanged=this._handleAccountsChanged.bind(this),this._handleConnect=this._handleConnect.bind(this),this._handleChainChanged=this._handleChainChanged.bind(this),this._handleDisconnect=this._handleDisconnect.bind(this),this._handleUnlockStateChanged=this._handleUnlockStateChanged.bind(this),this._rpcRequest=this._rpcRequest.bind(this),this.request=this.request.bind(this);let o=new Mit;r.forEach(i=>o.push(i)),this._rpcEngine=o}get chainId(){return v1(this,t3)}get selectedAddress(){return v1(this,xS)}isConnected(){return this._state.isConnected}async request(e){if(!e||typeof e!=\"object\"||Array.isArray(e))throw EO({message:Vs.errors.invalidRequestArgs(),data:e});let{method:n,params:r}=e;if(typeof n!=\"string\"||n.length===0)throw EO({message:Vs.errors.invalidRequestMethod(),data:e});if(r!==void 0&&!Array.isArray(r)&&(typeof r!=\"object\"||r===null))throw EO({message:Vs.errors.invalidRequestParams(),data:e});let o=r==null?{method:n}:{method:n,params:r};return new Promise((i,a)=>{this._rpcRequest(o,EH(i,a))})}_initializeState(e){if(this._state.initialized)throw new Error(\"Provider already initialized.\");if(e){let{accounts:n,chainId:r,isUnlocked:o,networkVersion:i}=e;this._handleConnect(r),this._handleChainChanged({chainId:r,networkVersion:i}),this._handleUnlockStateChanged({accounts:n,isUnlocked:o}),this._handleAccountsChanged(n)}this._state.initialized=!0,this.emit(\"_initialized\")}_rpcRequest(e,n){let r=n;return Array.isArray(e)||(e.jsonrpc||(e.jsonrpc=\"2.0\"),e.method!==\"eth_accounts\"&&e.method!==\"eth_requestAccounts\"||(r=(o,i)=>{this._handleAccountsChanged(i.result??[],e.method===\"eth_accounts\"),n(o,i)})),this._rpcEngine.handle(e,r)}_handleConnect(e){this._state.isConnected||(this._state.isConnected=!0,this.emit(\"connect\",{chainId:e}),this._log.debug(Vs.info.connected(e)))}_handleDisconnect(e,n){if(this._state.isConnected||!this._state.isPermanentlyDisconnected&&!e){let r;this._state.isConnected=!1,e?(r=new Hv(1013,n??Vs.errors.disconnected()),this._log.debug(r)):(r=new Hv(1011,n??Vs.errors.permanentlyDisconnected()),this._log.error(r),qv(this,t3,null),this._state.accounts=null,qv(this,xS,null),this._state.isUnlocked=!1,this._state.isPermanentlyDisconnected=!0),this.emit(\"disconnect\",r)}}_handleChainChanged({chainId:e}={}){wTe(e)?(this._handleConnect(e),e!==v1(this,t3)&&(qv(this,t3,e),this._state.initialized&&this.emit(\"chainChanged\",v1(this,t3)))):this._log.error(Vs.errors.invalidNetworkParams(),{chainId:e})}_handleAccountsChanged(e,n=!1){let r=e;Array.isArray(e)||(this._log.error(\"MetaMask: Received invalid accounts parameter. Please report this bug.\",e),r=[]);for(let o of e)if(typeof o!=\"string\"){this._log.error(\"MetaMask: Received non-string account. Please report this bug.\",e),r=[];break}if(!jit(this._state.accounts,r)&&(n&&this._state.accounts!==null&&this._log.error(\"MetaMask: \\'eth_accounts\\' unexpectedly updated accounts. Please report this bug.\",r),this._state.accounts=r,v1(this,xS)!==r[0]&&qv(this,xS,r[0]||null),this._state.initialized)){let o=[...r];this.emit(\"accountsChanged\",o)}}_handleUnlockStateChanged({accounts:e,isUnlocked:n}={}){typeof n==\"boolean\"?n!==this._state.isUnlocked&&(this._state.isUnlocked=n,this._handleAccountsChanged(e??[])):this._log.error(\"MetaMask: Received invalid isUnlocked parameter. Please report this bug.\")}};t3=new WeakMap,xS=new WeakMap,STe._defaultState={accounts:null,isConnected:!1,isUnlocked:!1,initialized:!1,isPermanentlyDisconnected:!1};zit=STe,fre={exports:{}};Vre=WO(uot);Wre=typeof Object.create==\"function\"?function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:function(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t};CTe=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),n={},r=0;r<e.length;r++)n[e[r]]=Object.getOwnPropertyDescriptor(t,e[r]);return n},Hit=/%[sdj%]/g;aH={};S1.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},S1.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"};Vit=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];ES=typeof Symbol<\"u\"?Symbol(\"util.promisify.custom\"):void 0;Qre.custom=ES;Kit={inherits:Wre,_extend:Yre,log:PTe,isBuffer:OTe,isPrimitive:ITe,isFunction:CO,isError:_O,isDate:YH,isObject:PS,isRegExp:kO,isUndefined:x1,isSymbol:RTe,isString:FO,isNumber:Gre,isNullOrUndefined:TTe,isNull:VO,isBoolean:pq,isArray:Kre,inspect:S1,deprecate:$re,format:hq,debuglog:ATe,promisify:Qre,callbackify:NTe},LTe=WO(Object.freeze({__proto__:null,_extend:Yre,callbackify:NTe,debuglog:ATe,default:Kit,deprecate:$re,format:hq,inherits:Wre,inspect:S1,isArray:Kre,isBoolean:pq,isBuffer:OTe,isDate:YH,isError:_O,isFunction:CO,isNull:VO,isNullOrUndefined:TTe,isNumber:Gre,isObject:PS,isPrimitive:ITe,isRegExp:kO,isString:FO,isSymbol:RTe,isUndefined:x1,log:PTe,promisify:Qre}));MS={},DTe={};bm(\"ERR_INVALID_OPT_VALUE\",function(t,e){return\\'The value \"\\'+e+\\'\" is invalid for option \"\\'+t+\\'\"\\'},TypeError),bm(\"ERR_INVALID_ARG_TYPE\",function(t,e,n){var r,o,i;if(typeof e==\"string\"&&(o=\"not \",e.substr(0,o.length)===o)?(r=\"must not be\",e=e.replace(/^not /,\"\")):r=\"must be\",function(c,u,d){return(d===void 0||d>c.length)&&(d=c.length),c.substring(d-u.length,d)===u}(t,\" argument\"))i=\"The \".concat(t,\" \").concat(r,\" \").concat(BCe(e,\"type\"));else{var a=function(c,u,d){return typeof d!=\"number\"&&(d=0),!(d+u.length>c.length)&&c.indexOf(u,d)!==-1}(t,\".\")?\"property\":\"argument\";i=\\'The \"\\'.concat(t,\\'\" \\').concat(a,\" \").concat(r,\" \").concat(BCe(e,\"type\"))}return i+=\". Received type \".concat(typeof n)},TypeError),bm(\"ERR_STREAM_PUSH_AFTER_EOF\",\"stream.push() after EOF\"),bm(\"ERR_METHOD_NOT_IMPLEMENTED\",function(t){return\"The \"+t+\" method is not implemented\"}),bm(\"ERR_STREAM_PREMATURE_CLOSE\",\"Premature close\"),bm(\"ERR_STREAM_DESTROYED\",function(t){return\"Cannot call \"+t+\" after a stream was destroyed\"}),bm(\"ERR_MULTIPLE_CALLBACK\",\"Callback called multiple times\"),bm(\"ERR_STREAM_CANNOT_PIPE\",\"Cannot pipe, not readable\"),bm(\"ERR_STREAM_WRITE_AFTER_END\",\"write after end\"),bm(\"ERR_STREAM_NULL_VALUES\",\"May not write null values to stream\",TypeError),bm(\"ERR_UNKNOWN_ENCODING\",function(t){return\"Unknown encoding: \"+t},TypeError),bm(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\",\"stream.unshift() after end event\"),MS.codes=DTe;Zit=typeof Object.create==\"function\"?function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:function(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t},$O=WO(Object.freeze({__proto__:null,default:Zit}));Qit=at.isEncoding||function(t){switch(t&&t.toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":case\"raw\":return!0;default:return!1}};SH.prototype.write=function(t){for(var e=\"\";this.charLength;){var n=t.length>=this.charLength-this.charReceived?this.charLength-this.charReceived:t.length;if(t.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charReceived<this.charLength)return\"\";if(t=t.slice(n,t.length),!((o=(e=this.charBuffer.slice(0,this.charLength).toString(this.encoding)).charCodeAt(e.length-1))>=55296&&o<=56319)){if(this.charReceived=this.charLength=0,t.length===0)return e;break}this.charLength+=this.surrogateSize,e=\"\"}this.detectIncompleteChar(t);var r=t.length;this.charLength&&(t.copy(this.charBuffer,0,t.length-this.charReceived,r),r-=this.charReceived);var o;if(r=(e+=t.toString(this.encoding,0,r)).length-1,(o=e.charCodeAt(r))>=55296&&o<=56319){var i=this.surrogateSize;return this.charLength+=i,this.charReceived+=i,this.charBuffer.copy(this.charBuffer,i,0,i),t.copy(this.charBuffer,0,0,i),e.substring(0,r)}return e},SH.prototype.detectIncompleteChar=function(t){for(var e=t.length>=3?3:t.length;e>0;e--){var n=t[t.length-e];if(e==1&&n>>5==6){this.charLength=2;break}if(e<=2&&n>>4==14){this.charLength=3;break}if(e<=3&&n>>3==30){this.charLength=4;break}}this.charReceived=e},SH.prototype.end=function(t){var e=\"\";if(t&&t.length&&(e=this.write(t)),this.charReceived){var n=this.charReceived,r=this.charBuffer,o=this.encoding;e+=r.slice(0,n).toString(o)}return e};jCe=WO(Object.freeze({__proto__:null,StringDecoder:SH})),zCe=MS.codes.ERR_STREAM_PREMATURE_CLOSE;Jre=function t(e,n,r){if(typeof n==\"function\")return t(e,null,n);n||(n={}),r=function(E){var C=!1;return function(){if(!C){C=!0;for(var T=arguments.length,R=new Array(T),L=0;L<T;L++)R[L]=arguments[L];E.apply(this,R)}}}(r||tst);var o=n.readable||n.readable!==!1&&e.readable,i=n.writable||n.writable!==!1&&e.writable,a=function(){e.writable||u()},c=e._writableState&&e._writableState.finished,u=function(){i=!1,c=!0,o||r.call(e)},d=e._readableState&&e._readableState.endEmitted,h=function(){o=!1,d=!0,i||r.call(e)},m=function(E){r.call(e,E)},g=function(){var E;return o&&!d?(e._readableState&&e._readableState.ended||(E=new zCe),r.call(e,E)):i&&!c?(e._writableState&&e._writableState.ended||(E=new zCe),r.call(e,E)):void 0},b=function(){e.req.on(\"finish\",u)};return function(E){return E.setHeader&&typeof E.abort==\"function\"}(e)?(e.on(\"complete\",u),e.on(\"abort\",g),e.req?b():e.on(\"request\",b)):i&&!e._writableState&&(e.on(\"end\",a),e.on(\"close\",a)),e.on(\"end\",h),e.on(\"finish\",u),n.error!==!1&&e.on(\"error\",m),e.on(\"close\",g),function(){e.removeListener(\"complete\",u),e.removeListener(\"abort\",g),e.removeListener(\"request\",b),e.req&&e.req.removeListener(\"finish\",u),e.removeListener(\"end\",a),e.removeListener(\"close\",a),e.removeListener(\"finish\",u),e.removeListener(\"end\",h),e.removeListener(\"error\",m),e.removeListener(\"close\",g)}};zTe=Wv,mq=MS.codes,rst=mq.ERR_METHOD_NOT_IMPLEMENTED,ost=mq.ERR_MULTIPLE_CALLBACK,ist=mq.ERR_TRANSFORM_ALREADY_TRANSFORMING,sst=mq.ERR_TRANSFORM_WITH_LENGTH_0,kH=xA();$O(Wv,kH),Wv.prototype.push=function(t,e){return this._transformState.needTransform=!1,kH.prototype.push.call(this,t,e)},Wv.prototype._transform=function(t,e,n){n(new rst(\"_transform()\"))},Wv.prototype._write=function(t,e,n){var r=this._transformState;if(r.writecb=n,r.writechunk=t,r.writeencoding=e,!r.transforming){var o=this._readableState;(r.needTransform||o.needReadable||o.length<o.highWaterMark)&&this._read(o.highWaterMark)}},Wv.prototype._read=function(t){var e=this._transformState;e.writechunk===null||e.transforming?e.needTransform=!0:(e.transforming=!0,this._transform(e.writechunk,e.writeencoding,e.afterTransform))},Wv.prototype._destroy=function(t,e){kH.prototype._destroy.call(this,t,function(n){e(n)})};lst=UO,HTe=zTe;$O(UO,HTe),UO.prototype._transform=function(t,e,n){n(null,t)};qTe=MS.codes,ust=qTe.ERR_MISSING_ARGS,dst=qTe.ERR_STREAM_DESTROYED;hst=function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];var r,o=function(a){return a.length?typeof a[a.length-1]!=\"function\"?KCe:a.pop():KCe}(e);if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new ust(\"streams\");var i=e.map(function(a,c){var u=c<e.length-1;return function(d,h,m,g){g=function(C){var T=!1;return function(){T||(T=!0,C.apply(void 0,arguments))}}(g);var b=!1;d.on(\"close\",function(){b=!0}),Pne===void 0&&(Pne=Jre),Pne(d,{readable:h,writable:m},function(C){if(C)return g(C);b=!0,g()});var E=!1;return function(C){if(!b&&!E)return E=!0,function(T){return T.setHeader&&typeof T.abort==\"function\"}(d)?d.abort():typeof d.destroy==\"function\"?d.destroy():void g(C||new dst(\"pipe\"))}}(a,u,c>0,function(d){r||(r=d),d&&i.forEach(GCe),u||(i.forEach(GCe),o(r))})});return e.reduce(fst)};(function(t,e){(e=fre.exports=jTe()).Stream=e,e.Readable=e,e.Writable=UTe(),e.Duplex=xA(),e.Transform=zTe,e.PassThrough=lst,e.finished=Jre,e.pipeline=hst})(0,fre.exports);EA=fre.exports;QH={},hre={exports:{}},mst=function t(e,n){if(e&&n)return t(e)(n);if(typeof e!=\"function\")throw new TypeError(\"need wrapper function\");return Object.keys(e).forEach(function(o){r[o]=e[o]}),r;function r(){for(var o=new Array(arguments.length),i=0;i<o.length;i++)o[i]=arguments[i];var a=e.apply(this,o),c=o[o.length-1];return typeof a==\"function\"&&a!==c&&Object.keys(c).forEach(function(u){a[u]=c[u]}),a}},ZCe=mst;hre.exports=ZCe(cH),hre.exports.strict=ZCe(YCe),cH.proto=cH(function(){Object.defineProperty(Function.prototype,\"once\",{value:function(){return cH(this)},configurable:!0}),Object.defineProperty(Function.prototype,\"onceStrict\",{value:function(){return YCe(this)},configurable:!0})});gst=hre.exports,JH={};Object.defineProperty(JH,\"__esModule\",{value:!0}),JH.Substream=void 0;yst=EA,pre=class extends yst.Duplex{constructor({parent:e,name:n}){super({objectMode:!0}),this._parent=e,this._name=n}_read(){}_write(e,n,r){this._parent.push({name:this._name,data:e}),r()}};JH.Substream=pre;bst=_m&&_m.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(QH,\"__esModule\",{value:!0}),QH.ObjectMultiplex=void 0;Mne=EA,vst=bst(gst),wst=JH,QCe=Symbol(\"IGNORE_SUBSTREAM\"),xst=class extends Mne.Duplex{constructor(t={}){super(Object.assign(Object.assign({},t),{objectMode:!0})),this._substreams={}}createStream(t){if(this.destroyed)throw new Error(`ObjectMultiplex - parent stream for name \"${t}\" already destroyed`);if(this._readableState.ended||this._writableState.ended)throw new Error(`ObjectMultiplex - parent stream for name \"${t}\" already ended`);if(!t)throw new Error(\"ObjectMultiplex - name must not be empty\");if(this._substreams[t])throw new Error(`ObjectMultiplex - Substream for name \"${t}\" already exists`);let e=new wst.Substream({parent:this,name:t});return this._substreams[t]=e,function(n,r){let o=(0,vst.default)(r);(0,Mne.finished)(n,{readable:!1},o),(0,Mne.finished)(n,{writable:!1},o)}(this,n=>e.destroy(n||void 0)),e}ignoreStream(t){if(!t)throw new Error(\"ObjectMultiplex - name must not be empty\");if(this._substreams[t])throw new Error(`ObjectMultiplex - Substream for name \"${t}\" already exists`);this._substreams[t]=QCe}_read(){}_write(t,e,n){let{name:r,data:o}=t;if(!r)return console.warn(`ObjectMultiplex - malformed chunk without name \"${t}\"`),n();let i=this._substreams[r];return i?(i!==QCe&&i.push(o),n()):(console.warn(`ObjectMultiplex - orphaned data for stream \"${r}\"`),n())}};QH.ObjectMultiplex=xst;Est=uq(QH.ObjectMultiplex),p1=t=>t!==null&&typeof t==\"object\"&&typeof t.pipe==\"function\";p1.writable=t=>p1(t)&&t.writable!==!1&&typeof t._write==\"function\"&&typeof t._writableState==\"object\",p1.readable=t=>p1(t)&&t.readable!==!1&&typeof t._read==\"function\"&&typeof t._readableState==\"object\",p1.duplex=t=>p1.writable(t)&&p1.readable(t),p1.transform=t=>p1.duplex(t)&&typeof t._transform==\"function\";Sst=p1,kst=class extends zit{constructor(t,{jsonRpcStreamName:e,logger:n=console,maxEventListeners:r=100,rpcMiddleware:o=[]}){if(super({logger:n,maxEventListeners:r,rpcMiddleware:o}),!Sst.duplex(t))throw new Error(Vs.errors.invalidDuplexStream());this._handleStreamDisconnect=this._handleStreamDisconnect.bind(this);let i=new Est;EA.pipeline(t,i,t,this._handleStreamDisconnect.bind(this,\"MetaMask\")),this._jsonRpcConnection=pst({retryOnMessage:\"METAMASK_EXTENSION_CONNECT_CAN_RETRY\"}),EA.pipeline(this._jsonRpcConnection.stream,i.createStream(e),this._jsonRpcConnection.stream,this._handleStreamDisconnect.bind(this,\"MetaMask RpcProvider\")),this._rpcEngine.push(this._jsonRpcConnection.middleware),this._jsonRpcConnection.events.on(\"notification\",a=>{let{method:c,params:u}=a;c===\"metamask_accountsChanged\"?this._handleAccountsChanged(u):c===\"metamask_unlockStateChanged\"?this._handleUnlockStateChanged(u):c===\"metamask_chainChanged\"?this._handleChainChanged(u):vTe.includes(c)?this.emit(\"message\",{type:c,data:u}):c===\"METAMASK_STREAM_FAILURE\"&&t.destroy(new Error(Vs.errors.permanentlyDisconnected()))})}async _initializeStateAsync(){let t;try{t=await this.request({method:\"metamask_getProviderState\"})}catch(e){this._log.error(\"MetaMask: Failed to get initial state. Please report this bug.\",e)}this._initializeState(t)}_handleStreamDisconnect(t,e){let n=`MetaMask: Lost connection to \"${t}\".`;e?.stack&&(n+=`\\n${e.stack}`),this._log.warn(n),this.listenerCount(\"error\")>0&&this.emit(\"error\",n),this._handleDisconnect(!1,e?e.message:void 0)}_handleChainChanged({chainId:t,networkVersion:e}={}){wTe(t)&&(n=>!!n&&typeof n==\"string\")(e)?e===\"loading\"?this._handleDisconnect(!0):super._handleChainChanged({chainId:t}):this._log.error(Vs.errors.invalidNetworkParams(),{chainId:t,networkVersion:e})}},_st=class extends kst{constructor(t,{jsonRpcStreamName:e=\"metamask-provider\",logger:n=console,maxEventListeners:r=100,shouldSendMetadata:o}={}){if(super(t,{jsonRpcStreamName:e,logger:n,maxEventListeners:r,rpcMiddleware:Nit(n)}),this._sentWarnings={chainId:!1,networkVersion:!1,selectedAddress:!1,enable:!1,experimentalMethods:!1,send:!1,events:{close:!1,data:!1,networkChanged:!1,notification:!1}},ure(this,m1,void 0),this._initializeStateAsync(),qv(this,m1,null),this.isMetaMask=!0,this._sendSync=this._sendSync.bind(this),this.enable=this.enable.bind(this),this.send=this.send.bind(this),this.sendAsync=this.sendAsync.bind(this),this._warnOfDeprecation=this._warnOfDeprecation.bind(this),this._metamask=this._getExperimentalApi(),this._jsonRpcConnection.events.on(\"notification\",i=>{let{method:a}=i;vTe.includes(a)&&(this.emit(\"data\",i),this.emit(\"notification\",i.params.result))}),o)if(document.readyState===\"complete\")TCe(this._rpcEngine,this._log);else{let i=()=>{TCe(this._rpcEngine,this._log),window.removeEventListener(\"DOMContentLoaded\",i)};window.addEventListener(\"DOMContentLoaded\",i)}}get chainId(){return this._sentWarnings.chainId||(this._log.warn(Vs.warnings.chainIdDeprecation),this._sentWarnings.chainId=!0),super.chainId}get networkVersion(){return this._sentWarnings.networkVersion||(this._log.warn(Vs.warnings.networkVersionDeprecation),this._sentWarnings.networkVersion=!0),v1(this,m1)}get selectedAddress(){return this._sentWarnings.selectedAddress||(this._log.warn(Vs.warnings.selectedAddressDeprecation),this._sentWarnings.selectedAddress=!0),super.selectedAddress}sendAsync(t,e){this._rpcRequest(t,e)}addListener(t,e){return this._warnOfDeprecation(t),super.addListener(t,e)}on(t,e){return this._warnOfDeprecation(t),super.on(t,e)}once(t,e){return this._warnOfDeprecation(t),super.once(t,e)}prependListener(t,e){return this._warnOfDeprecation(t),super.prependListener(t,e)}prependOnceListener(t,e){return this._warnOfDeprecation(t),super.prependOnceListener(t,e)}_handleDisconnect(t,e){super._handleDisconnect(t,e),v1(this,m1)&&!t&&qv(this,m1,null)}_warnOfDeprecation(t){this._sentWarnings?.events[t]===!1&&(this._log.warn(Vs.warnings.events[t]),this._sentWarnings.events[t]=!0)}async enable(){return this._sentWarnings.enable||(this._log.warn(Vs.warnings.enableDeprecation),this._sentWarnings.enable=!0),new Promise((t,e)=>{try{this._rpcRequest({method:\"eth_requestAccounts\",params:[]},EH(t,e))}catch(n){e(n)}})}send(t,e){return this._sentWarnings.send||(this._log.warn(Vs.warnings.sendDeprecation),this._sentWarnings.send=!0),typeof t!=\"string\"||e&&!Array.isArray(e)?t&&typeof t==\"object\"&&typeof e==\"function\"?this._rpcRequest(t,e):this._sendSync(t):new Promise((n,r)=>{try{this._rpcRequest({method:t,params:e},EH(n,r,!1))}catch(o){r(o)}})}_sendSync(t){let e;switch(t.method){case\"eth_accounts\":e=this.selectedAddress?[this.selectedAddress]:[];break;case\"eth_coinbase\":e=this.selectedAddress??null;break;case\"eth_uninstallFilter\":this._rpcRequest(t,xTe),e=!0;break;case\"net_version\":e=v1(this,m1)??null;break;default:throw new Error(Vs.errors.unsupportedSync(t.method))}return{id:t.id,jsonrpc:t.jsonrpc,result:e}}_getExperimentalApi(){return new Proxy({isUnlocked:async()=>(this._state.initialized||await new Promise(t=>{this.on(\"_initialized\",()=>t())}),this._state.isUnlocked),requestBatch:async t=>{if(!Array.isArray(t))throw EO({message:\"Batch requests must be made with an array of request objects.\",data:t});return new Promise((e,n)=>{this._rpcRequest(t,EH(e,n))})}},{get:(t,e,...n)=>(this._sentWarnings.experimentalMethods||(this._log.warn(Vs.warnings.experimentalMethods),this._sentWarnings.experimentalMethods=!0),Reflect.get(t,e,...n))})}_handleChainChanged({chainId:t,networkVersion:e}={}){super._handleChainChanged({chainId:t,networkVersion:e}),this._state.isConnected&&e!==v1(this,m1)&&(qv(this,m1,e),this._state.initialized&&this.emit(\"networkChanged\",v1(this,m1)))}};m1=new WeakMap;Ve=(0,Cu.default)(\"MM_SDK\");Ve.color=\"#FFAC1C\";WTe={},d3={};Object.defineProperty(d3,\"__esModule\",{value:!0}),d3.EthereumProviderError=d3.EthereumRpcError=void 0;Cst=fTe,XH=class extends Error{constructor(e,n,r){if(!Number.isInteger(e))throw new Error(\\'\"code\" must be an integer.\\');if(!n||typeof n!=\"string\")throw new Error(\\'\"message\" must be a nonempty string.\\');super(n),this.code=e,r!==void 0&&(this.data=r)}serialize(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),this.stack&&(e.stack=this.stack),e}toString(){return Cst.default(this.serialize(),Ast,2)}};d3.EthereumRpcError=XH;d3.EthereumProviderError=class extends XH{constructor(t,e,n){if(!function(r){return Number.isInteger(r)&&r>=1e3&&r<=4999}(t))throw new Error(\\'\"code\" must be an integer such that: 1000 <= code <= 4999\\');super(t,e,n)}};Xre={},s3={};Object.defineProperty(s3,\"__esModule\",{value:!0}),s3.errorValues=s3.errorCodes=void 0,s3.errorCodes={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901}},s3.errorValues={\"-32700\":{standard:\"JSON RPC 2.0\",message:\"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"},\"-32600\":{standard:\"JSON RPC 2.0\",message:\"The JSON sent is not a valid Request object.\"},\"-32601\":{standard:\"JSON RPC 2.0\",message:\"The method does not exist / is not available.\"},\"-32602\":{standard:\"JSON RPC 2.0\",message:\"Invalid method parameter(s).\"},\"-32603\":{standard:\"JSON RPC 2.0\",message:\"Internal JSON-RPC error.\"},\"-32000\":{standard:\"EIP-1474\",message:\"Invalid input.\"},\"-32001\":{standard:\"EIP-1474\",message:\"Resource not found.\"},\"-32002\":{standard:\"EIP-1474\",message:\"Resource unavailable.\"},\"-32003\":{standard:\"EIP-1474\",message:\"Transaction rejected.\"},\"-32004\":{standard:\"EIP-1474\",message:\"Method not supported.\"},\"-32005\":{standard:\"EIP-1474\",message:\"Request limit exceeded.\"},4001:{standard:\"EIP-1193\",message:\"User rejected the request.\"},4100:{standard:\"EIP-1193\",message:\"The requested account and/or method has not been authorized by the user.\"},4200:{standard:\"EIP-1193\",message:\"The requested method is not supported by this Ethereum provider.\"},4900:{standard:\"EIP-1193\",message:\"The provider is disconnected from all chains.\"},4901:{standard:\"EIP-1193\",message:\"The provider is disconnected from the specified chain.\"}},function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.serializeError=t.isValidCode=t.getMessageFromCode=t.JSON_RPC_SERVER_ERROR_MESSAGE=void 0;let e=s3,n=d3,r=e.errorCodes.rpc.internal,o=\"Unspecified error message. This is a bug, please report it.\",i={code:r,message:a(r)};function a(m,g=o){if(Number.isInteger(m)){let b=m.toString();if(h(e.errorValues,b))return e.errorValues[b].message;if(u(m))return t.JSON_RPC_SERVER_ERROR_MESSAGE}return g}function c(m){if(!Number.isInteger(m))return!1;let g=m.toString();return!!e.errorValues[g]||!!u(m)}function u(m){return m>=-32099&&m<=-32e3}function d(m){return m&&typeof m==\"object\"&&!Array.isArray(m)?Object.assign({},m):m}function h(m,g){return Object.prototype.hasOwnProperty.call(m,g)}t.JSON_RPC_SERVER_ERROR_MESSAGE=\"Unspecified server error.\",t.getMessageFromCode=a,t.isValidCode=c,t.serializeError=function(m,{fallbackError:g=i,shouldIncludeStack:b=!1}={}){var E,C;if(!g||!Number.isInteger(g.code)||typeof g.message!=\"string\")throw new Error(\"Must provide fallback error with integer number code and string message.\");if(m instanceof n.EthereumRpcError)return m.serialize();let T={};if(m&&typeof m==\"object\"&&!Array.isArray(m)&&h(m,\"code\")&&c(m.code)){let L=m;T.code=L.code,L.message&&typeof L.message==\"string\"?(T.message=L.message,h(L,\"data\")&&(T.data=L.data)):(T.message=a(T.code),T.data={originalError:d(m)})}else{T.code=g.code;let L=(E=m)===null||E===void 0?void 0:E.message;T.message=L&&typeof L==\"string\"?L:g.message,T.data={originalError:d(m)}}let R=(C=m)===null||C===void 0?void 0:C.stack;return b&&m&&R&&typeof R==\"string\"&&(T.stack=R),T}}(Xre);eq={};Object.defineProperty(eq,\"__esModule\",{value:!0}),eq.ethErrors=void 0;eoe=d3,VTe=Xre,Eu=s3;eq.ethErrors={rpc:{parse:t=>vm(Eu.errorCodes.rpc.parse,t),invalidRequest:t=>vm(Eu.errorCodes.rpc.invalidRequest,t),invalidParams:t=>vm(Eu.errorCodes.rpc.invalidParams,t),methodNotFound:t=>vm(Eu.errorCodes.rpc.methodNotFound,t),internal:t=>vm(Eu.errorCodes.rpc.internal,t),server:t=>{if(!t||typeof t!=\"object\"||Array.isArray(t))throw new Error(\"Ethereum RPC Server errors must provide single object argument.\");let{code:e}=t;if(!Number.isInteger(e)||e>-32005||e<-32099)throw new Error(\\'\"code\" must be an integer such that: -32099 <= code <= -32005\\');return vm(e,t)},invalidInput:t=>vm(Eu.errorCodes.rpc.invalidInput,t),resourceNotFound:t=>vm(Eu.errorCodes.rpc.resourceNotFound,t),resourceUnavailable:t=>vm(Eu.errorCodes.rpc.resourceUnavailable,t),transactionRejected:t=>vm(Eu.errorCodes.rpc.transactionRejected,t),methodNotSupported:t=>vm(Eu.errorCodes.rpc.methodNotSupported,t),limitExceeded:t=>vm(Eu.errorCodes.rpc.limitExceeded,t)},provider:{userRejectedRequest:t=>pO(Eu.errorCodes.provider.userRejectedRequest,t),unauthorized:t=>pO(Eu.errorCodes.provider.unauthorized,t),unsupportedMethod:t=>pO(Eu.errorCodes.provider.unsupportedMethod,t),disconnected:t=>pO(Eu.errorCodes.provider.disconnected,t),chainDisconnected:t=>pO(Eu.errorCodes.provider.chainDisconnected,t),custom:t=>{if(!t||typeof t!=\"object\"||Array.isArray(t))throw new Error(\"Ethereum Provider custom errors must provide single object argument.\");let{code:e,message:n,data:r}=t;if(!n||typeof n!=\"string\")throw new Error(\\'\"message\" must be a nonempty string\\');return new eoe.EthereumProviderError(e,n,r)}}},function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.getMessageFromCode=t.serializeError=t.EthereumProviderError=t.EthereumRpcError=t.ethErrors=t.errorCodes=void 0;let e=d3;Object.defineProperty(t,\"EthereumRpcError\",{enumerable:!0,get:function(){return e.EthereumRpcError}}),Object.defineProperty(t,\"EthereumProviderError\",{enumerable:!0,get:function(){return e.EthereumProviderError}});let n=Xre;Object.defineProperty(t,\"serializeError\",{enumerable:!0,get:function(){return n.serializeError}}),Object.defineProperty(t,\"getMessageFromCode\",{enumerable:!0,get:function(){return n.getMessageFromCode}});let r=eq;Object.defineProperty(t,\"ethErrors\",{enumerable:!0,get:function(){return r.ethErrors}});let o=s3;Object.defineProperty(t,\"errorCodes\",{enumerable:!0,get:function(){return o.errorCodes}})}(WTe);KTe={exports:{}};KTe.exports=function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(r,o,i){n.o(r,o)||Object.defineProperty(r,o,{enumerable:!0,get:i})},n.r=function(r){typeof Symbol<\"u\"&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(r,\"__esModule\",{value:!0})},n.t=function(r,o){if(1&o&&(r=n(r)),8&o||4&o&&typeof r==\"object\"&&r&&r.__esModule)return r;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,\"default\",{enumerable:!0,value:r}),2&o&&typeof r!=\"string\")for(var a in r)n.d(i,a,function(c){return r[c]}.bind(null,a));return i},n.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return n.d(o,\"a\",o),o},n.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},n.p=\"\",n(n.s=90)}({17:function(t,e,n){e.__esModule=!0,e.default=void 0;var r=n(18),o=function(){function i(){}return i.getFirstMatch=function(a,c){var u=c.match(a);return u&&u.length>0&&u[1]||\"\"},i.getSecondMatch=function(a,c){var u=c.match(a);return u&&u.length>1&&u[2]||\"\"},i.matchAndReturnConst=function(a,c,u){if(a.test(c))return u},i.getWindowsVersionName=function(a){switch(a){case\"NT\":return\"NT\";case\"XP\":case\"NT 5.1\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},i.getMacOSVersionName=function(a){var c=a.split(\".\").splice(0,2).map(function(u){return parseInt(u,10)||0});if(c.push(0),c[0]===10)switch(c[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},i.getAndroidVersionName=function(a){var c=a.split(\".\").splice(0,2).map(function(u){return parseInt(u,10)||0});if(c.push(0),!(c[0]===1&&c[1]<5))return c[0]===1&&c[1]<6?\"Cupcake\":c[0]===1&&c[1]>=6?\"Donut\":c[0]===2&&c[1]<2?\"Eclair\":c[0]===2&&c[1]===2?\"Froyo\":c[0]===2&&c[1]>2?\"Gingerbread\":c[0]===3?\"Honeycomb\":c[0]===4&&c[1]<1?\"Ice Cream Sandwich\":c[0]===4&&c[1]<4?\"Jelly Bean\":c[0]===4&&c[1]>=4?\"KitKat\":c[0]===5?\"Lollipop\":c[0]===6?\"Marshmallow\":c[0]===7?\"Nougat\":c[0]===8?\"Oreo\":c[0]===9?\"Pie\":void 0},i.getVersionPrecision=function(a){return a.split(\".\").length},i.compareVersions=function(a,c,u){u===void 0&&(u=!1);var d=i.getVersionPrecision(a),h=i.getVersionPrecision(c),m=Math.max(d,h),g=0,b=i.map([a,c],function(E){var C=m-i.getVersionPrecision(E),T=E+new Array(C+1).join(\".0\");return i.map(T.split(\".\"),function(R){return new Array(20-R.length).join(\"0\")+R}).reverse()});for(u&&(g=m-Math.min(d,h)),m-=1;m>=g;){if(b[0][m]>b[1][m])return 1;if(b[0][m]===b[1][m]){if(m===g)return 0;m-=1}else if(b[0][m]<b[1][m])return-1}},i.map=function(a,c){var u,d=[];if(Array.prototype.map)return Array.prototype.map.call(a,c);for(u=0;u<a.length;u+=1)d.push(c(a[u]));return d},i.find=function(a,c){var u,d;if(Array.prototype.find)return Array.prototype.find.call(a,c);for(u=0,d=a.length;u<d;u+=1){var h=a[u];if(c(h,u))return h}},i.assign=function(a){for(var c,u,d=a,h=arguments.length,m=new Array(h>1?h-1:0),g=1;g<h;g++)m[g-1]=arguments[g];if(Object.assign)return Object.assign.apply(Object,[a].concat(m));var b=function(){var E=m[c];typeof E==\"object\"&&E!==null&&Object.keys(E).forEach(function(C){d[C]=E[C]})};for(c=0,u=m.length;c<u;c+=1)b();return a},i.getBrowserAlias=function(a){return r.BROWSER_ALIASES_MAP[a]},i.getBrowserTypeByAlias=function(a){return r.BROWSER_MAP[a]||\"\"},i}();e.default=o,t.exports=e.default},18:function(t,e,n){e.__esModule=!0,e.ENGINE_MAP=e.OS_MAP=e.PLATFORMS_MAP=e.BROWSER_MAP=e.BROWSER_ALIASES_MAP=void 0,e.BROWSER_ALIASES_MAP={\"Amazon Silk\":\"amazon_silk\",\"Android Browser\":\"android\",Bada:\"bada\",BlackBerry:\"blackberry\",Chrome:\"chrome\",Chromium:\"chromium\",Electron:\"electron\",Epiphany:\"epiphany\",Firefox:\"firefox\",Focus:\"focus\",Generic:\"generic\",\"Google Search\":\"google_search\",Googlebot:\"googlebot\",\"Internet Explorer\":\"ie\",\"K-Meleon\":\"k_meleon\",Maxthon:\"maxthon\",\"Microsoft Edge\":\"edge\",\"MZ Browser\":\"mz\",\"NAVER Whale Browser\":\"naver\",Opera:\"opera\",\"Opera Coast\":\"opera_coast\",PhantomJS:\"phantomjs\",Puffin:\"puffin\",QupZilla:\"qupzilla\",QQ:\"qq\",QQLite:\"qqlite\",Safari:\"safari\",Sailfish:\"sailfish\",\"Samsung Internet for Android\":\"samsung_internet\",SeaMonkey:\"seamonkey\",Sleipnir:\"sleipnir\",Swing:\"swing\",Tizen:\"tizen\",\"UC Browser\":\"uc\",Vivaldi:\"vivaldi\",\"WebOS Browser\":\"webos\",WeChat:\"wechat\",\"Yandex Browser\":\"yandex\",Roku:\"roku\"},e.BROWSER_MAP={amazon_silk:\"Amazon Silk\",android:\"Android Browser\",bada:\"Bada\",blackberry:\"BlackBerry\",chrome:\"Chrome\",chromium:\"Chromium\",electron:\"Electron\",epiphany:\"Epiphany\",firefox:\"Firefox\",focus:\"Focus\",generic:\"Generic\",googlebot:\"Googlebot\",google_search:\"Google Search\",ie:\"Internet Explorer\",k_meleon:\"K-Meleon\",maxthon:\"Maxthon\",edge:\"Microsoft Edge\",mz:\"MZ Browser\",naver:\"NAVER Whale Browser\",opera:\"Opera\",opera_coast:\"Opera Coast\",phantomjs:\"PhantomJS\",puffin:\"Puffin\",qupzilla:\"QupZilla\",qq:\"QQ Browser\",qqlite:\"QQ Browser Lite\",safari:\"Safari\",sailfish:\"Sailfish\",samsung_internet:\"Samsung Internet for Android\",seamonkey:\"SeaMonkey\",sleipnir:\"Sleipnir\",swing:\"Swing\",tizen:\"Tizen\",uc:\"UC Browser\",vivaldi:\"Vivaldi\",webos:\"WebOS Browser\",wechat:\"WeChat\",yandex:\"Yandex Browser\"},e.PLATFORMS_MAP={tablet:\"tablet\",mobile:\"mobile\",desktop:\"desktop\",tv:\"tv\"},e.OS_MAP={WindowsPhone:\"Windows Phone\",Windows:\"Windows\",MacOS:\"macOS\",iOS:\"iOS\",Android:\"Android\",WebOS:\"WebOS\",BlackBerry:\"BlackBerry\",Bada:\"Bada\",Tizen:\"Tizen\",Linux:\"Linux\",ChromeOS:\"Chrome OS\",PlayStation4:\"PlayStation 4\",Roku:\"Roku\"},e.ENGINE_MAP={EdgeHTML:\"EdgeHTML\",Blink:\"Blink\",Trident:\"Trident\",Presto:\"Presto\",Gecko:\"Gecko\",WebKit:\"WebKit\"}},90:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,o=(r=n(91))&&r.__esModule?r:{default:r},i=n(18);function a(u,d){for(var h=0;h<d.length;h++){var m=d[h];m.enumerable=m.enumerable||!1,m.configurable=!0,\"value\"in m&&(m.writable=!0),Object.defineProperty(u,m.key,m)}}var c=function(){function u(){}var d,h,m;return u.getParser=function(g,b){if(b===void 0&&(b=!1),typeof g!=\"string\")throw new Error(\"UserAgent should be a string\");return new o.default(g,b)},u.parse=function(g){return new o.default(g).getResult()},d=u,m=[{key:\"BROWSER_MAP\",get:function(){return i.BROWSER_MAP}},{key:\"ENGINE_MAP\",get:function(){return i.ENGINE_MAP}},{key:\"OS_MAP\",get:function(){return i.OS_MAP}},{key:\"PLATFORMS_MAP\",get:function(){return i.PLATFORMS_MAP}}],(h=null)&&a(d.prototype,h),m&&a(d,m),u}();e.default=c,t.exports=e.default},91:function(t,e,n){e.__esModule=!0,e.default=void 0;var r=u(n(92)),o=u(n(93)),i=u(n(94)),a=u(n(95)),c=u(n(17));function u(h){return h&&h.__esModule?h:{default:h}}var d=function(){function h(g,b){if(b===void 0&&(b=!1),g==null||g===\"\")throw new Error(\"UserAgent parameter can\\'t be empty\");this._ua=g,this.parsedResult={},b!==!0&&this.parse()}var m=h.prototype;return m.getUA=function(){return this._ua},m.test=function(g){return g.test(this._ua)},m.parseBrowser=function(){var g=this;this.parsedResult.browser={};var b=c.default.find(r.default,function(E){if(typeof E.test==\"function\")return E.test(g);if(E.test instanceof Array)return E.test.some(function(C){return g.test(C)});throw new Error(\"Browser\\'s test function is not valid\")});return b&&(this.parsedResult.browser=b.describe(this.getUA())),this.parsedResult.browser},m.getBrowser=function(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()},m.getBrowserName=function(g){return g?String(this.getBrowser().name).toLowerCase()||\"\":this.getBrowser().name||\"\"},m.getBrowserVersion=function(){return this.getBrowser().version},m.getOS=function(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()},m.parseOS=function(){var g=this;this.parsedResult.os={};var b=c.default.find(o.default,function(E){if(typeof E.test==\"function\")return E.test(g);if(E.test instanceof Array)return E.test.some(function(C){return g.test(C)});throw new Error(\"Browser\\'s test function is not valid\")});return b&&(this.parsedResult.os=b.describe(this.getUA())),this.parsedResult.os},m.getOSName=function(g){var b=this.getOS().name;return g?String(b).toLowerCase()||\"\":b||\"\"},m.getOSVersion=function(){return this.getOS().version},m.getPlatform=function(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()},m.getPlatformType=function(g){g===void 0&&(g=!1);var b=this.getPlatform().type;return g?String(b).toLowerCase()||\"\":b||\"\"},m.parsePlatform=function(){var g=this;this.parsedResult.platform={};var b=c.default.find(i.default,function(E){if(typeof E.test==\"function\")return E.test(g);if(E.test instanceof Array)return E.test.some(function(C){return g.test(C)});throw new Error(\"Browser\\'s test function is not valid\")});return b&&(this.parsedResult.platform=b.describe(this.getUA())),this.parsedResult.platform},m.getEngine=function(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()},m.getEngineName=function(g){return g?String(this.getEngine().name).toLowerCase()||\"\":this.getEngine().name||\"\"},m.parseEngine=function(){var g=this;this.parsedResult.engine={};var b=c.default.find(a.default,function(E){if(typeof E.test==\"function\")return E.test(g);if(E.test instanceof Array)return E.test.some(function(C){return g.test(C)});throw new Error(\"Browser\\'s test function is not valid\")});return b&&(this.parsedResult.engine=b.describe(this.getUA())),this.parsedResult.engine},m.parse=function(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this},m.getResult=function(){return c.default.assign({},this.parsedResult)},m.satisfies=function(g){var b=this,E={},C=0,T={},R=0;if(Object.keys(g).forEach(function(Z){var ae=g[Z];typeof ae==\"string\"?(T[Z]=ae,R+=1):typeof ae==\"object\"&&(E[Z]=ae,C+=1)}),C>0){var L=Object.keys(E),D=c.default.find(L,function(Z){return b.isOS(Z)});if(D){var G=this.satisfies(E[D]);if(G!==void 0)return G}var W=c.default.find(L,function(Z){return b.isPlatform(Z)});if(W){var J=this.satisfies(E[W]);if(J!==void 0)return J}}if(R>0){var ne=Object.keys(T),ie=c.default.find(ne,function(Z){return b.isBrowser(Z,!0)});if(ie!==void 0)return this.compareVersion(T[ie])}},m.isBrowser=function(g,b){b===void 0&&(b=!1);var E=this.getBrowserName().toLowerCase(),C=g.toLowerCase(),T=c.default.getBrowserTypeByAlias(C);return b&&T&&(C=T.toLowerCase()),C===E},m.compareVersion=function(g){var b=[0],E=g,C=!1,T=this.getBrowserVersion();if(typeof T==\"string\")return g[0]===\">\"||g[0]===\"<\"?(E=g.substr(1),g[1]===\"=\"?(C=!0,E=g.substr(2)):b=[],g[0]===\">\"?b.push(1):b.push(-1)):g[0]===\"=\"?E=g.substr(1):g[0]===\"~\"&&(C=!0,E=g.substr(1)),b.indexOf(c.default.compareVersions(T,E,C))>-1},m.isOS=function(g){return this.getOSName(!0)===String(g).toLowerCase()},m.isPlatform=function(g){return this.getPlatformType(!0)===String(g).toLowerCase()},m.isEngine=function(g){return this.getEngineName(!0)===String(g).toLowerCase()},m.is=function(g,b){return b===void 0&&(b=!1),this.isBrowser(g,b)||this.isOS(g)||this.isPlatform(g)},m.some=function(g){var b=this;return g===void 0&&(g=[]),g.some(function(E){return b.is(E)})},h}();e.default=d,t.exports=e.default},92:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,o=(r=n(17))&&r.__esModule?r:{default:r},i=/version\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,a=[{test:[/googlebot/i],describe:function(c){var u={name:\"Googlebot\"},d=o.default.getFirstMatch(/googlebot\\\\/(\\\\d+(\\\\.\\\\d+))/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/opera/i],describe:function(c){var u={name:\"Opera\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:opera)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/opr\\\\/|opios/i],describe:function(c){var u={name:\"Opera\"},d=o.default.getFirstMatch(/(?:opr|opios)[\\\\s/](\\\\S+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/SamsungBrowser/i],describe:function(c){var u={name:\"Samsung Internet for Android\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:SamsungBrowser)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/Whale/i],describe:function(c){var u={name:\"NAVER Whale Browser\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:whale)[\\\\s/](\\\\d+(?:\\\\.\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/MZBrowser/i],describe:function(c){var u={name:\"MZ Browser\"},d=o.default.getFirstMatch(/(?:MZBrowser)[\\\\s/](\\\\d+(?:\\\\.\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/focus/i],describe:function(c){var u={name:\"Focus\"},d=o.default.getFirstMatch(/(?:focus)[\\\\s/](\\\\d+(?:\\\\.\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/swing/i],describe:function(c){var u={name:\"Swing\"},d=o.default.getFirstMatch(/(?:swing)[\\\\s/](\\\\d+(?:\\\\.\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/coast/i],describe:function(c){var u={name:\"Opera Coast\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:coast)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/opt\\\\/\\\\d+(?:.?_?\\\\d+)+/i],describe:function(c){var u={name:\"Opera Touch\"},d=o.default.getFirstMatch(/(?:opt)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/yabrowser/i],describe:function(c){var u={name:\"Yandex Browser\"},d=o.default.getFirstMatch(/(?:yabrowser)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/ucbrowser/i],describe:function(c){var u={name:\"UC Browser\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:ucbrowser)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/Maxthon|mxios/i],describe:function(c){var u={name:\"Maxthon\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:Maxthon|mxios)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/epiphany/i],describe:function(c){var u={name:\"Epiphany\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:epiphany)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/puffin/i],describe:function(c){var u={name:\"Puffin\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:puffin)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/sleipnir/i],describe:function(c){var u={name:\"Sleipnir\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:sleipnir)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/k-meleon/i],describe:function(c){var u={name:\"K-Meleon\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/(?:k-meleon)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/micromessenger/i],describe:function(c){var u={name:\"WeChat\"},d=o.default.getFirstMatch(/(?:micromessenger)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/qqbrowser/i],describe:function(c){var u={name:/qqbrowserlite/i.test(c)?\"QQ Browser Lite\":\"QQ Browser\"},d=o.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/msie|trident/i],describe:function(c){var u={name:\"Internet Explorer\"},d=o.default.getFirstMatch(/(?:msie |rv:)(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/\\\\sedg\\\\//i],describe:function(c){var u={name:\"Microsoft Edge\"},d=o.default.getFirstMatch(/\\\\sedg\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/edg([ea]|ios)/i],describe:function(c){var u={name:\"Microsoft Edge\"},d=o.default.getSecondMatch(/edg([ea]|ios)\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/vivaldi/i],describe:function(c){var u={name:\"Vivaldi\"},d=o.default.getFirstMatch(/vivaldi\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/seamonkey/i],describe:function(c){var u={name:\"SeaMonkey\"},d=o.default.getFirstMatch(/seamonkey\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/sailfish/i],describe:function(c){var u={name:\"Sailfish\"},d=o.default.getFirstMatch(/sailfish\\\\s?browser\\\\/(\\\\d+(\\\\.\\\\d+)?)/i,c);return d&&(u.version=d),u}},{test:[/silk/i],describe:function(c){var u={name:\"Amazon Silk\"},d=o.default.getFirstMatch(/silk\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/phantom/i],describe:function(c){var u={name:\"PhantomJS\"},d=o.default.getFirstMatch(/phantomjs\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/slimerjs/i],describe:function(c){var u={name:\"SlimerJS\"},d=o.default.getFirstMatch(/slimerjs\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/blackberry|\\\\bbb\\\\d+/i,/rim\\\\stablet/i],describe:function(c){var u={name:\"BlackBerry\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/blackberry[\\\\d]+\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/(web|hpw)[o0]s/i],describe:function(c){var u={name:\"WebOS Browser\"},d=o.default.getFirstMatch(i,c)||o.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/bada/i],describe:function(c){var u={name:\"Bada\"},d=o.default.getFirstMatch(/dolfin\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/tizen/i],describe:function(c){var u={name:\"Tizen\"},d=o.default.getFirstMatch(/(?:tizen\\\\s?)?browser\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/qupzilla/i],describe:function(c){var u={name:\"QupZilla\"},d=o.default.getFirstMatch(/(?:qupzilla)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/firefox|iceweasel|fxios/i],describe:function(c){var u={name:\"Firefox\"},d=o.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/electron/i],describe:function(c){var u={name:\"Electron\"},d=o.default.getFirstMatch(/(?:electron)\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/MiuiBrowser/i],describe:function(c){var u={name:\"Miui\"},d=o.default.getFirstMatch(/(?:MiuiBrowser)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/chromium/i],describe:function(c){var u={name:\"Chromium\"},d=o.default.getFirstMatch(/(?:chromium)[\\\\s/](\\\\d+(\\\\.?_?\\\\d+)+)/i,c)||o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/chrome|crios|crmo/i],describe:function(c){var u={name:\"Chrome\"},d=o.default.getFirstMatch(/(?:chrome|crios|crmo)\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/GSA/i],describe:function(c){var u={name:\"Google Search\"},d=o.default.getFirstMatch(/(?:GSA)\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:function(c){var u=!c.test(/like android/i),d=c.test(/android/i);return u&&d},describe:function(c){var u={name:\"Android Browser\"},d=o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/playstation 4/i],describe:function(c){var u={name:\"PlayStation 4\"},d=o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/safari|applewebkit/i],describe:function(c){var u={name:\"Safari\"},d=o.default.getFirstMatch(i,c);return d&&(u.version=d),u}},{test:[/.*/i],describe:function(c){var u=c.search(\"\\\\\\\\(\")!==-1?/^(.*)\\\\/(.*)[ \\\\t]\\\\((.*)/:/^(.*)\\\\/(.*) /;return{name:o.default.getFirstMatch(u,c),version:o.default.getSecondMatch(u,c)}}}];e.default=a,t.exports=e.default},93:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,o=(r=n(17))&&r.__esModule?r:{default:r},i=n(18),a=[{test:[/Roku\\\\/DVP/],describe:function(c){var u=o.default.getFirstMatch(/Roku\\\\/DVP-(\\\\d+\\\\.\\\\d+)/i,c);return{name:i.OS_MAP.Roku,version:u}}},{test:[/windows phone/i],describe:function(c){var u=o.default.getFirstMatch(/windows phone (?:os)?\\\\s?(\\\\d+(\\\\.\\\\d+)*)/i,c);return{name:i.OS_MAP.WindowsPhone,version:u}}},{test:[/windows /i],describe:function(c){var u=o.default.getFirstMatch(/Windows ((NT|XP)( \\\\d\\\\d?.\\\\d)?)/i,c),d=o.default.getWindowsVersionName(u);return{name:i.OS_MAP.Windows,version:u,versionName:d}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\\\//],describe:function(c){var u={name:i.OS_MAP.iOS},d=o.default.getSecondMatch(/(Version\\\\/)(\\\\d[\\\\d.]+)/,c);return d&&(u.version=d),u}},{test:[/macintosh/i],describe:function(c){var u=o.default.getFirstMatch(/mac os x (\\\\d+(\\\\.?_?\\\\d+)+)/i,c).replace(/[_\\\\s]/g,\".\"),d=o.default.getMacOSVersionName(u),h={name:i.OS_MAP.MacOS,version:u};return d&&(h.versionName=d),h}},{test:[/(ipod|iphone|ipad)/i],describe:function(c){var u=o.default.getFirstMatch(/os (\\\\d+([_\\\\s]\\\\d+)*) like mac os x/i,c).replace(/[_\\\\s]/g,\".\");return{name:i.OS_MAP.iOS,version:u}}},{test:function(c){var u=!c.test(/like android/i),d=c.test(/android/i);return u&&d},describe:function(c){var u=o.default.getFirstMatch(/android[\\\\s/-](\\\\d+(\\\\.\\\\d+)*)/i,c),d=o.default.getAndroidVersionName(u),h={name:i.OS_MAP.Android,version:u};return d&&(h.versionName=d),h}},{test:[/(web|hpw)[o0]s/i],describe:function(c){var u=o.default.getFirstMatch(/(?:web|hpw)[o0]s\\\\/(\\\\d+(\\\\.\\\\d+)*)/i,c),d={name:i.OS_MAP.WebOS};return u&&u.length&&(d.version=u),d}},{test:[/blackberry|\\\\bbb\\\\d+/i,/rim\\\\stablet/i],describe:function(c){var u=o.default.getFirstMatch(/rim\\\\stablet\\\\sos\\\\s(\\\\d+(\\\\.\\\\d+)*)/i,c)||o.default.getFirstMatch(/blackberry\\\\d+\\\\/(\\\\d+([_\\\\s]\\\\d+)*)/i,c)||o.default.getFirstMatch(/\\\\bbb(\\\\d+)/i,c);return{name:i.OS_MAP.BlackBerry,version:u}}},{test:[/bada/i],describe:function(c){var u=o.default.getFirstMatch(/bada\\\\/(\\\\d+(\\\\.\\\\d+)*)/i,c);return{name:i.OS_MAP.Bada,version:u}}},{test:[/tizen/i],describe:function(c){var u=o.default.getFirstMatch(/tizen[/\\\\s](\\\\d+(\\\\.\\\\d+)*)/i,c);return{name:i.OS_MAP.Tizen,version:u}}},{test:[/linux/i],describe:function(){return{name:i.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:i.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(c){var u=o.default.getFirstMatch(/PlayStation 4[/\\\\s](\\\\d+(\\\\.\\\\d+)*)/i,c);return{name:i.OS_MAP.PlayStation4,version:u}}}];e.default=a,t.exports=e.default},94:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,o=(r=n(17))&&r.__esModule?r:{default:r},i=n(18),a=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(c){var u=o.default.getFirstMatch(/(can-l01)/i,c)&&\"Nova\",d={type:i.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return u&&(d.model=u),d}},{test:[/nexus\\\\s*(?:7|8|9|10).*/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\\\//],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet}}},{test:function(c){var u=c.test(/ipod|iphone/i),d=c.test(/like (ipod|iphone)/i);return u&&!d},describe:function(c){var u=o.default.getFirstMatch(/(ipod|iphone)/i,c);return{type:i.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:u}}},{test:[/nexus\\\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:i.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:i.PLATFORMS_MAP.mobile}}},{test:function(c){return c.getBrowserName(!0)===\"blackberry\"},describe:function(){return{type:i.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(c){return c.getBrowserName(!0)===\"bada\"},describe:function(){return{type:i.PLATFORMS_MAP.mobile}}},{test:function(c){return c.getBrowserName()===\"windows phone\"},describe:function(){return{type:i.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(c){var u=Number(String(c.getOSVersion()).split(\".\")[0]);return c.getOSName(!0)===\"android\"&&u>=3},describe:function(){return{type:i.PLATFORMS_MAP.tablet}}},{test:function(c){return c.getOSName(!0)===\"android\"},describe:function(){return{type:i.PLATFORMS_MAP.mobile}}},{test:function(c){return c.getOSName(!0)===\"macos\"},describe:function(){return{type:i.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(c){return c.getOSName(!0)===\"windows\"},describe:function(){return{type:i.PLATFORMS_MAP.desktop}}},{test:function(c){return c.getOSName(!0)===\"linux\"},describe:function(){return{type:i.PLATFORMS_MAP.desktop}}},{test:function(c){return c.getOSName(!0)===\"playstation 4\"},describe:function(){return{type:i.PLATFORMS_MAP.tv}}},{test:function(c){return c.getOSName(!0)===\"roku\"},describe:function(){return{type:i.PLATFORMS_MAP.tv}}}];e.default=a,t.exports=e.default},95:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,o=(r=n(17))&&r.__esModule?r:{default:r},i=n(18),a=[{test:function(c){return c.getBrowserName(!0)===\"microsoft edge\"},describe:function(c){if(/\\\\sedg\\\\//i.test(c))return{name:i.ENGINE_MAP.Blink};var u=o.default.getFirstMatch(/edge\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return{name:i.ENGINE_MAP.EdgeHTML,version:u}}},{test:[/trident/i],describe:function(c){var u={name:i.ENGINE_MAP.Trident},d=o.default.getFirstMatch(/trident\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:function(c){return c.test(/presto/i)},describe:function(c){var u={name:i.ENGINE_MAP.Presto},d=o.default.getFirstMatch(/presto\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:function(c){var u=c.test(/gecko/i),d=c.test(/like gecko/i);return u&&!d},describe:function(c){var u={name:i.ENGINE_MAP.Gecko},d=o.default.getFirstMatch(/gecko\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}},{test:[/(apple)?webkit\\\\/537\\\\.36/i],describe:function(){return{name:i.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(c){var u={name:i.ENGINE_MAP.WebKit},d=o.default.getFirstMatch(/webkit\\\\/(\\\\d+(\\\\.?_?\\\\d+)+)/i,c);return d&&(u.version=d),u}}];e.default=a,t.exports=e.default}});GTe=uq(KTe.exports),Rd={Initialized:\"initialized\",DisplayURI:\"display_uri\",ProviderUpdate:\"provider_update\",ConnectWithResponse:\"connectWithResponse\",ConnectionStatus:\"connection_status\",ServiceStatus:\"service_status\"},pg=class t{constructor({shouldSetOnWindow:e,connectionStream:n,shouldSendMetadata:r=!1,shouldShimWeb3:o,sdkInstance:i}){let a=new nq({connectionStream:n,shouldSendMetadata:r,shouldSetOnWindow:e,shouldShimWeb3:o,autoRequestAccounts:!1}),c=new Proxy(a,{deleteProperty:()=>!0});if(this.provider=c,this.sdkInstance=i,e&&typeof window<\"u\")try{u=a,window.ethereum=u,window.dispatchEvent(new Event(\"ethereum#initialized\"))}catch(d){Ve(\"[Ethereum] Unable to set global provider - window.ethereum may be read-only\",d)}var u;if(o&&typeof window<\"u\")try{(function(d,h=console){let m=!1,g=!1;if(!window.web3){let b=\"__isMetaMaskShim__\",E={currentProvider:d};Object.defineProperty(E,b,{value:!0,enumerable:!0,configurable:!1,writable:!1}),E=new Proxy(E,{get:(C,T,...R)=>(T!==\"currentProvider\"||m?T===\"currentProvider\"||T===b||g||(g=!0,h.error(\"MetaMask no longer injects web3. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3\"),d.request({method:\"metamask_logWeb3ShimUsage\"}).catch(L=>{h.debug(\"MetaMask: Failed to log web3 shim usage.\",L)})):(m=!0,h.warn(\"You are accessing the MetaMask window.web3.currentProvider shim. This property is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3\")),Reflect.get(C,T,...R)),set:(...C)=>(h.warn(\"You are accessing the MetaMask window.web3 shim. This object is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3\"),Reflect.set(...C))}),Object.defineProperty(window,\"web3\",{value:E,enumerable:!1,configurable:!0,writable:!0})}})(this.provider)}catch(d){Ve(\"[Ethereum] Unable to shim web3 - window.web3 may be read-only\",d)}this.provider.on(\"display_uri\",d=>{this.sdkInstance.emit(Rd.DisplayURI,d)}),this.provider.on(\"_initialized\",()=>{let d={chainId:this.provider.getChainId(),isConnected:this.provider.isConnected(),isMetaMask:this.provider.isMetaMask,selectedAddress:this.provider.getSelectedAddress(),networkVersion:this.provider.getNetworkVersion()};this.sdkInstance.emit(Rd.Initialized,d),Ve(\"[Ethereum: constructor()] provider initialized\",d)})}static init(e){var n;return Ve(\"[Ethereum: init()] Initializing Ethereum service\"),this.instance=new t(e),(n=this.instance)===null||n===void 0?void 0:n.provider}static destroy(){}static getInstance(){var e;if(!(!((e=this.instance)===null||e===void 0)&&e.provider))throw new Error(\"Ethereum instance not intiialized - call Ethereum.factory first.\");return this.instance}static getProvider(){var e;if(!(!((e=this.instance)===null||e===void 0)&&e.provider))throw new Error(\"Ethereum instance not intiialized - call Ethereum.factory first.\");return this.instance.provider}},tq=class t{constructor({useDeepLink:e,preferredOpenLink:n,debug:r=!1}){this.state={platformType:void 0,useDeeplink:!1,preferredOpenLink:void 0,debug:!1},this.state.platformType=this.getPlatformType(),this.state.useDeeplink=e,this.state.preferredOpenLink=n,this.state.debug=r}openDeeplink(e,n,r){return function(o,i,a,c){let{state:u}=o;Ve(`[PlatfformManager: openDeeplink()] universalLink --> ${i}`),Ve(`[PlatfformManager: openDeeplink()] deepLink --> ${a}`);try{if(u.preferredOpenLink)return void u.preferredOpenLink(u.useDeeplink?a:i,c);if(Ve(`[PlatfformManager: openDeeplink()] open link now useDeepLink=${u.useDeeplink} link=${u.useDeeplink?a:i}`),u.useDeeplink)typeof window<\"u\"&&(window.location.href=a);else if(typeof document<\"u\"){let d=document.createElement(\"a\");d.href=i,d.target=\"_self\",d.rel=\"noreferrer noopener\",d.click()}}catch(d){console.log(\"[PlatfformManager: openDeeplink()] can\\'t open link\",d)}}(this,e,n,r)}isReactNative(){var e;return this.isNotBrowser()&&typeof window<\"u\"&&window?.navigator&&((e=window.navigator)===null||e===void 0?void 0:e.product)===\"ReactNative\"}isMetaMaskInstalled(){return function(){let e=pg.getProvider()||window?.ethereum;return Ve(`[PlatfformManager: isMetaMaskInstalled()] isMetaMask=${e?.isMetaMask} isConnected=${e?.isConnected()}`),e?.isMetaMask&&e?.isConnected()}()}isDesktopWeb(){return this.isBrowser()&&!this.isMobileWeb()}isMobile(){var e,n;let r=GTe.parse(window.navigator.userAgent);return((e=r?.platform)===null||e===void 0?void 0:e.type)===\"mobile\"||((n=r?.platform)===null||n===void 0?void 0:n.type)===\"tablet\"}isSecure(){return this.isReactNative()||this.isMobileWeb()}isMetaMaskMobileWebView(){return typeof window<\"u\"&&!!window.ReactNativeWebView&&!!navigator.userAgent.endsWith(\"MetaMaskMobile\")}isMobileWeb(){return this.state.platformType===Al.MobileWeb}static isNotBrowser(){var e;return typeof window>\"u\"||!window?.navigator||Id!==void 0&&((e=Id?.navigator)===null||e===void 0?void 0:e.product)===\"ReactNative\"||navigator?.product===\"ReactNative\"}isNotBrowser(){return t.isNotBrowser()}static isBrowser(){return!this.isNotBrowser()}isBrowser(){return t.isBrowser()}isNodeJS(){return this.isNotBrowser()&&!this.isReactNative()}isUseDeepLink(){return this.state.useDeeplink}getPlatformType(){return function(e){let{state:n}=e;return n.platformType?n.platformType:e.isReactNative()?Al.ReactNative:e.isNotBrowser()?Al.NonBrowser:e.isMetaMaskMobileWebView()?Al.MetaMaskMobileWebview:e.isMobile()?Al.MobileWeb:Al.DesktopWeb}(this)}},ZTe=t=>ct(void 0,void 0,void 0,function*(){if(tq.isBrowser()){let{StorageManagerWeb:n}=yield Promise.resolve().then(function(){return Qst});return new n(t)}let e={persistChannelConfig:()=>ct(void 0,void 0,void 0,function*(){}),getPersistedChannelConfig:()=>ct(void 0,void 0,void 0,function*(){}),persistAccounts:()=>ct(void 0,void 0,void 0,function*(){}),getCachedAccounts:()=>ct(void 0,void 0,void 0,function*(){return[]}),persistChainId:()=>ct(void 0,void 0,void 0,function*(){}),getCachedChainId:()=>ct(void 0,void 0,void 0,function*(){}),terminate:()=>ct(void 0,void 0,void 0,function*(){})};return Promise.resolve(e)}),nq=class extends _st{constructor({connectionStream:e,shouldSendMetadata:n,autoRequestAccounts:r=!1}){super(e,{logger:console,maxEventListeners:100,shouldSendMetadata:n}),this.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:\"\",networkVersion:\"\"},Ve(`[SDKProvider: constructor()] autoRequestAccounts=${r}`),this.state.autoRequestAccounts=r}forceInitializeState(){return ct(this,void 0,void 0,function*(){return Ve(`[SDKProvider: forceInitializeState()] autoRequestAccounts=${this.state.autoRequestAccounts}`),this._initializeStateAsync()})}_setConnected(){Ve(\"[SDKProvider: _setConnected()] Setting connected state\"),this._state.isConnected=!0}getState(){return this._state}getSDKProviderState(){return this.state}getSelectedAddress(){var e;let{accounts:n}=this._state;return n&&n.length!==0?((e=n[0])===null||e===void 0?void 0:e.toLowerCase())||\"\":(Ve(\"[SDKProvider: getSelectedAddress] No accounts found\"),null)}getChainId(){return this.state.chainId}getNetworkVersion(){return this.state.networkVersion}setSDKProviderState(e){this.state=Object.assign(Object.assign({},this.state),e)}handleAccountsChanged(e,n){return this._handleAccountsChanged(e,n)}handleDisconnect({terminate:e=!1}){(function({terminate:n=!1,instance:r}){let{state:o}=r;Ve(`[SDKProvider: handleDisconnect()] cleaning up provider state terminate=${n}`,r),n&&(r._state.accounts=null,r._state.isUnlocked=!1,r._state.isPermanentlyDisconnected=!0,r._state.initialized=!1),r._handleAccountsChanged([]),r._state.isConnected=!1,r.emit(\"disconnect\",WTe.ethErrors.provider.disconnected()),o.providerStateRequested=!1})({terminate:e,instance:this})}_initializeStateAsync(){return ct(this,void 0,void 0,function*(){return function(e){var n,r;return ct(this,void 0,void 0,function*(){e.state===void 0&&(e.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:\"\"});let{state:o}=e,i;if(o.providerStateRequested)Ve(\"[SDKProvider: initializeStateAsync()] initialization already in progress\");else{let a;o.providerStateRequested=!0;let c=null,u=!1,d=!1,h=yield ZTe({enabled:!0});if(h){let m=yield h.getPersistedChannelConfig({});u=(n=m?.relayPersistence)!==null&&n!==void 0&&n,a=yield h.getCachedChainId();let g=yield h.getCachedAccounts();g.length>0&&(c=g[0])}if(Ve(`[SDKProvider: initializeStateAsync()] relayPersistence=${u}`,{relayPersistence:u,cachedChainId:a,cachedSelectedAddress:c}),u)if(a&&c)i={accounts:[c],chainId:a,isUnlocked:!1},d=!0;else try{i=yield e.request({method:\"metamask_getProviderState\"})}catch(m){return e._log.error(\"MetaMask: Failed to get initial state. Please report this bug.\",m),void(o.providerStateRequested=!1)}if(((r=i?.accounts)===null||r===void 0?void 0:r.length)===0)if(e.getSelectedAddress())i.accounts=[e.getSelectedAddress()];else{Ve(\"[SDKProvider: initializeStateAsync()] Fetch accounts remotely.\");let m=yield e.request({method:\"eth_requestAccounts\",params:[]});i.accounts=m}e._initializeState(i),o.providerStateRequested=!1,d&&(e._state.isConnected=!0,e.emit(\"connect\",{chainId:i?.chainId}))}})}(this)})}_initializeState(e){return Ve(\"[SDKProvider: _initializeState()]\",e),function(n,r,o){return Ve(\"[SDKProvider: initializeState()] set state._initialized to false\"),n._state.initialized=!1,r(o)}(this,super._initializeState.bind(this),e)}_handleChainChanged({chainId:e,networkVersion:n}={}){this.state.chainId=e,this.state.networkVersion=n,function({instance:r,chainId:o,networkVersion:i,superHandleChainChanged:a}){Ve(`[SDKProvider: handleChainChanged()] chainId=${o} networkVersion=${i}`);let c=i;i||(Ve(\"[SDKProvider: handleChainChanged()] forced network version to prevent provider error\"),c=\"1\"),r._state.isConnected=!0,r.emit(\"connect\",{chainId:o}),a({chainId:o,networkVersion:c})}({instance:this,chainId:e,networkVersion:n,superHandleChainChanged:super._handleChainChanged.bind(this)})}},NS={name:\"@metamask/sdk\",version:\"0.32.0\",description:\"\",homepage:\"https://github.com/MetaMask/metamask-sdk#readme\",bugs:{url:\"https://github.com/MetaMask/metamask-sdk/issues\"},repository:{type:\"git\",url:\"https://github.com/MetaMask/metamask-sdk\",directory:\"packages/sdk\"},main:\"dist/node/cjs/metamask-sdk.js\",module:\"dist/browser/es/metamask-sdk.js\",browser:\"dist/browser/es/metamask-sdk.js\",unpkg:\"dist/browser/umd/metamask-sdk.js\",\"react-native\":\"dist/react-native/es/metamask-sdk.js\",types:\"dist/types/src/index.d.ts\",sideEffects:!1,files:[\"/dist\"],scripts:{\"build:types\":\"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types\",build:\"yarn build:types && rollup -c --bundleConfigAsCjs\",\"build:clean\":\"yarn clean && yarn build\",\"build:post-tsc\":\"echo \\'N/A\\'\",\"build:pre-tsc\":\"echo \\'N/A\\'\",typecheck:\"tsc --noEmit\",clean:\"rimraf ./dist\",size:\"node bundle-size && size-limit\",lint:\"yarn lint:eslint && yarn lint:misc --check\",\"lint:changelog\":\"../../scripts/validate-changelog.sh @metamask/sdk\",\"lint:eslint\":\"eslint . --cache --ext js,ts\",\"lint:fix\":\"yarn lint:eslint --fix && yarn lint:misc --write\",\"lint:misc\":\"prettier \\'**/*.json\\' \\'**/*.md\\' \\'!CHANGELOG.md\\' --ignore-path ../../.gitignore\",prepack:\"../../scripts/prepack.sh\",\"publish:preview\":\"yarn npm publish --tag preview\",reset:\"yarn clean && rimraf ./node_modules/\",test:\\'jest --testPathIgnorePatterns \"/e2e/\"\\',\"test:coverage\":\\'jest --coverage --testPathIgnorePatterns \"/e2e/\"\\',\"test:e2e\":\\'jest --testPathPattern \"/e2e/\"\\',\"test:ci\":\\'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns \"/e2e/\"\\',\"test:dev\":\\'jest -c ./jest.config.ts --detectOpenHandles  --testPathIgnorePatterns \"/e2e/\"\\',watch:\"rollup -c -w\",dev:\\'concurrently \"tsc --watch\" \"rollup -c -w --bundleConfigAsCjs\"\\',\"build:dev\":\"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs\"},dependencies:{\"@babel/runtime\":\"^7.26.0\",\"@metamask/onboarding\":\"^1.0.1\",\"@metamask/providers\":\"16.1.0\",\"@metamask/sdk-communication-layer\":\"workspace:*\",\"@metamask/sdk-install-modal-web\":\"workspace:*\",\"@paulmillr/qr\":\"^0.2.1\",bowser:\"^2.9.0\",\"cross-fetch\":\"^4.0.0\",debug:\"^4.3.4\",eciesjs:\"^0.4.11\",\"eth-rpc-errors\":\"^4.0.3\",eventemitter2:\"^6.4.9\",\"obj-multiplex\":\"^1.0.0\",pump:\"^3.0.0\",\"readable-stream\":\"^3.6.2\",\"socket.io-client\":\"^4.5.1\",tslib:\"^2.6.0\",util:\"^0.12.4\",uuid:\"^8.3.2\"},devDependencies:{\"@jest/globals\":\"^29.3.1\",\"@lavamoat/allow-scripts\":\"^2.3.1\",\"@metamask/auto-changelog\":\"3.1.0\",\"@metamask/eslint-config\":\"^6.0.0\",\"@metamask/eslint-config-nodejs\":\"^6.0.0\",\"@metamask/eslint-config-typescript\":\"^6.0.0\",\"@react-native-async-storage/async-storage\":\"^1.19.6\",\"@rollup/plugin-alias\":\"^5.1.1\",\"@rollup/plugin-commonjs\":\"^25.0.7\",\"@rollup/plugin-json\":\"^6.0.0\",\"@rollup/plugin-node-resolve\":\"^15.0.2\",\"@rollup/plugin-replace\":\"^6.0.1\",\"@rollup/plugin-terser\":\"^0.4.1\",\"@size-limit/preset-big-lib\":\"^11.0.2\",\"@types/dom-screen-wake-lock\":\"^1.0.2\",\"@types/node\":\"^20.1.3\",\"@types/pump\":\"^1.1.1\",\"@types/qrcode-terminal\":\"^0.12.0\",\"@types/uuid\":\"^10.0.0\",\"@typescript-eslint/eslint-plugin\":\"^4.26.0\",\"@typescript-eslint/parser\":\"^4.26.0\",\"browserify-zlib\":\"^0.2.0\",buffer:\"^6.0.3\",concurrently:\"^9.1.2\",\"crypto-browserify\":\"^3.12.0\",eslint:\"^7.30.0\",\"eslint-config-prettier\":\"^8.3.0\",\"eslint-plugin-import\":\"^2.23.4\",\"eslint-plugin-jest\":\"^24.4.0\",\"eslint-plugin-jsdoc\":\"^36.1.0\",\"eslint-plugin-node\":\"^11.1.0\",\"eslint-plugin-prettier\":\"^3.4.0\",\"https-browserify\":\"^1.0.0\",jest:\"^29.3.1\",\"jest-environment-jsdom\":\"^29.3.1\",prettier:\"^2.3.0\",process:\"^0.11.10\",rimraf:\"^4.4.0\",rollup:\"^4.26.0\",\"rollup-plugin-analyzer\":\"^4.0.0\",\"rollup-plugin-jscc\":\"^2.0.0\",\"rollup-plugin-natives\":\"^0.7.5\",\"rollup-plugin-node-builtins\":\"^2.1.2\",\"rollup-plugin-polyfill-node\":\"^0.13.0\",\"rollup-plugin-sizes\":\"^1.0.6\",\"rollup-plugin-typescript2\":\"^0.31.2\",\"rollup-plugin-visualizer\":\"^5.12.0\",\"size-limit\":\"^11.0.2\",\"stream-browserify\":\"^3.0.0\",\"stream-http\":\"^3.2.0\",\"ts-jest\":\"^29.0.3\",\"ts-node\":\"^10.9.1\",typescript:\"^4.3.2\",url:\"^0.11.0\",webpack:\"^5.0.0\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},lavamoat:{allowScripts:{\"eciesjs>secp256k1\":!1,\"socket.io-client>engine.io-client>ws>bufferutil\":!1,\"socket.io-client>engine.io-client>ws>utf-8-validate\":!1,\"@metamask/sdk-communication-layer>bufferutil\":!1,\"@metamask/sdk-communication-layer>eciesjs>secp256k1\":!1,\"@metamask/sdk-communication-layer>utf-8-validate\":!1}}};(function(t){t.INPAGE=\"metamask-inpage\",t.CONTENT_SCRIPT=\"metamask-contentscript\",t.PROVIDER=\"metamask-provider\"})(jO||(jO={}));JCe=\"direct\",zO=\"https://metamask.app.link/connect\",HO=\"metamask://connect\",XCe={NAME:\"MetaMask\",RDNS:[\"io.metamask\",\"io.metamask.flask\"]},Tst=/(?:^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}$)|(?:^0{8}-0{4}-0{4}-0{4}-0{12}$)/u,yn={METAMASK_GETPROVIDERSTATE:\"metamask_getProviderState\",METAMASK_CONNECTSIGN:\"metamask_connectSign\",METAMASK_CONNECTWITH:\"metamask_connectWith\",METAMASK_OPEN:\"metamask_open\",METAMASK_BATCH:\"metamask_batch\",PERSONAL_SIGN:\"personal_sign\",WALLET_REQUESTPERMISSIONS:\"wallet_requestPermissions\",WALLET_REVOKEPERMISSIONS:\"wallet_revokePermissions\",WALLET_GETPERMISSIONS:\"wallet_getPermissions\",WALLET_WATCHASSET:\"wallet_watchAsset\",WALLET_ADDETHEREUMCHAIN:\"wallet_addEthereumChain\",WALLET_SWITCHETHETHEREUMCHAIN:\"wallet_switchEthereumChain\",ETH_REQUESTACCOUNTS:\"eth_requestAccounts\",ETH_ACCOUNTS:\"eth_accounts\",ETH_CHAINID:\"eth_chainId\",ETH_SENDTRANSACTION:\"eth_sendTransaction\",ETH_SIGNTYPEDDATA:\"eth_signTypedData\",ETH_SIGNTYPEDDATA_V3:\"eth_signTypedData_v3\",ETH_SIGNTYPEDDATA_V4:\"eth_signTypedData_v4\",ETH_SIGNTRANSACTION:\"eth_signTransaction\",ETH_SIGN:\"eth_sign\",PERSONAL_EC_RECOVER:\"personal_ecRecover\"},rq={[yn.ETH_REQUESTACCOUNTS]:!0,[yn.ETH_SENDTRANSACTION]:!0,[yn.ETH_SIGNTRANSACTION]:!0,[yn.ETH_SIGN]:!0,[yn.PERSONAL_SIGN]:!0,[yn.ETH_ACCOUNTS]:!1,[yn.ETH_CHAINID]:!1,[yn.PERSONAL_SIGN]:!0,[yn.ETH_SIGNTYPEDDATA]:!0,[yn.ETH_SIGNTYPEDDATA_V3]:!0,[yn.ETH_SIGNTYPEDDATA_V4]:!0,[yn.WALLET_REQUESTPERMISSIONS]:!0,[yn.WALLET_GETPERMISSIONS]:!0,[yn.WALLET_WATCHASSET]:!0,[yn.WALLET_ADDETHEREUMCHAIN]:!0,[yn.WALLET_SWITCHETHETHEREUMCHAIN]:!0,[yn.METAMASK_CONNECTSIGN]:!0,[yn.METAMASK_CONNECTWITH]:!0,[yn.PERSONAL_EC_RECOVER]:!0,[yn.METAMASK_BATCH]:!0,[yn.METAMASK_OPEN]:!0},Rst=Object.keys(rq).map(t=>t.toLowerCase()),YTe=[\"eth_signTypedData\",\"eth_signTypedData_v3\",\"eth_signTypedData_v4\",\"eth_sign\"].map(t=>t.toLowerCase()),Nne=\".sdk-comm\",oq=\"providerType\",mre=\".MMSDK_cached_address\",gre=\".MMSDK_cached_chainId\",h1={CHAIN_CHANGED:\"chainChanged\",ACCOUNTS_CHANGED:\"accountsChanged\",DISCONNECT:\"disconnect\",CONNECT:\"connect\",CONNECTED:\"connected\"},Ist=1e6;(function(t){t.TERMINATE=\"terminate\",t.EXTENSION=\"extension\",t.INITIALIZED=\"initialized\"})(mg||(mg={}));Ost=typeof window<\"u\"&&window.localStorage;yre=class extends EA.Duplex{constructor({name:e,remote:n,deeplinkProtocol:r,platformManager:o}){super({objectMode:!0}),this.state={_name:null,remote:null,deeplinkProtocol:!1,platformManager:null},this.state._name=e,this.state.remote=n,this.state.deeplinkProtocol=r,this.state.platformManager=o,this._onMessage=this._onMessage.bind(this),this.state.remote.on(vt.MESSAGE,this._onMessage)}_write(e,n,r){return ct(this,void 0,void 0,function*(){return Mst(this,e,0,r)})}_read(){}_onMessage(e){return function(n,r){try{if(Ve(\"[RCPMS: onMessage()] message\",r),!r||typeof r!=\"object\"||typeof r?.data!=\"object\")return;if(!r?.name)return void Ve(\"[RCPMS: onMessage()] ignore message without name\",r);if(r?.name!==jO.PROVIDER)return void Ve(`[RCPMS: onMessage()] ignore message with wrong name message=${r}`);if(at.isBuffer(r)){let o=at.from(r);n.push(o)}else n.push(r)}catch(o){Ve(`[RCPMS: onMessage()] ignore message error err=${o}`)}}(this,e)}start(){}},t8e=1,QTe=t=>new Promise(e=>{setTimeout(()=>{e(!0)},t)}),Nst=({checkInstallationOnAllCalls:t=!1,communicationLayerPreference:e,injectProvider:n,shouldShimWeb3:r,platformManager:o,installer:i,sdk:a,remoteConnection:c,debug:u})=>ct(void 0,void 0,void 0,function*(){var d,h;let m=(({name:ae,remoteConnection:V})=>{if(!V||!V?.getConnector())throw new Error(\"Missing remote connection parameter\");return new yre({name:ae,remote:V?.getConnector(),deeplinkProtocol:V?.state.deeplinkProtocol,platformManager:V?.getPlatformManager()})})({name:jO.INPAGE,target:jO.CONTENT_SCRIPT,platformManager:o,communicationLayerPreference:e,remoteConnection:c}),g=o.getPlatformType(),b=a.options.dappMetadata,E=`Sdk/Javascript SdkVersion/${NS.version} Platform/${g} dApp/${(d=b.url)!==null&&d!==void 0?d:b.name} dAppTitle/${b.name}`,C=null,T=null,R=(h=a.options.storage)===null||h===void 0?void 0:h.storageManager;if(R){try{let ae=yield R.getCachedAccounts();ae.length>0&&(C=ae[0])}catch(ae){console.error(`[initializeMobileProvider] failed to get cached addresses: ${ae}`)}try{let ae=yield R.getCachedChainId();ae&&(T=ae)}catch(ae){console.error(`[initializeMobileProvider] failed to parse cached chainId: ${ae}`)}}Ve(`[initializeMobileProvider] cachedAccountAddress: ${C}, cachedChainId: ${T}`);let L=!(!n||g===Al.NonBrowser||g===Al.ReactNative),D=pg.init({shouldSetOnWindow:L,connectionStream:m,shouldShimWeb3:r,sdkInstance:a}),G=!1,W=ae=>{G=ae},J=()=>G,ne=(ae,V,$,F)=>ct(void 0,void 0,void 0,function*(){var _,O,z,N,B,j,q,H,I;let U=pg.getProvider();if(G){U.emit(\"display_uri\",c?.state.qrcodeLink||\"\"),c?.showActiveModal();let qe=J();for(;qe;){let wt=J(),Ge=c?.isAuthorized();qe=wt&&!Ge,Ve(`[initializeMobileProvider: sendRequest()] waiting for initialization to complete - initializing: ${wt} authorized: ${Ge}`),yield QTe(1e3)}return Ve(\"[initializeMobileProvider: sendRequest()] initial method completed -- prevent installation and call provider\"),$(...V)}let X=o.isMetaMaskInstalled(),ee=c?.isConnected(),se=null,pe=null,ye=null;if(se=(_=U.getSelectedAddress())!==null&&_!==void 0?_:C,ye=U.getChainId()||T,se&&R&&se!==C&&R.persistAccounts([se]).catch(qe=>{console.error(`[initializeMobileProvider] failed to persist account: ${qe}`)}),ye&&(T=ye,R&&R.persistChainId(ye).catch(qe=>{console.error(`[initializeMobileProvider] failed to persist chainId: ${qe}`)})),Ve(\"[initializeMobileProvider: sendRequest()]\",{selectedAddress:se,chainId:ye}),F&&Ve(`[initializeMobileProvider: sendRequest()] method=${ae} ongoing=${G} selectedAddress=${se} isInstalled=${X} checkInstallationOnAllCalls=${t} socketConnected=${ee}`),se&&ae.toLowerCase()===yn.ETH_ACCOUNTS.toLowerCase())return[se];if(ye&&ae.toLowerCase()===yn.ETH_CHAINID.toLowerCase())return ye;let xe=[yn.ETH_REQUESTACCOUNTS,yn.WALLET_REQUESTPERMISSIONS,yn.METAMASK_CONNECTSIGN,yn.METAMASK_CONNECTWITH],_e=!rq[ae],Me=(O=a.options.readonlyRPCMap)===null||O===void 0?void 0:O[ye];if(Me&&_e)try{let qe=(z=V?.[0])===null||z===void 0?void 0:z.params,wt=yield(({rpcEndpoint:Ge,method:ht,sdkInfo:Ct,params:dt})=>ct(void 0,void 0,void 0,function*(){let Ze=JSON.stringify({jsonrpc:\"2.0\",method:ht,params:dt,id:(t8e+=1,t8e)}),rn={Accept:\"application/json\",\"Content-Type\":\"application/json\"},zt;Ge.includes(\"infura\")&&(rn[\"Metamask-Sdk-Info\"]=Ct);try{zt=yield(0,Rre.default)(Ge,{method:\"POST\",headers:rn,body:Ze})}catch(Bt){throw Bt instanceof Error?new Error(`Failed to fetch from RPC: ${Bt.message}`):new Error(`Failed to fetch from RPC: ${Bt}`)}if(!zt.ok)throw new Error(`Server responded with a status of ${zt.status}`);return(yield zt.json()).result}))({rpcEndpoint:Me,sdkInfo:E,method:ae,params:qe||[]});return F&&Ve(`initializeProvider::ReadOnlyRPCResponse ${wt}`),wt}catch(qe){console.warn(`[initializeMobileProvider: sendRequest()] method=${ae} readOnlyRPCRequest failed:`,qe)}if((!X||X&&!ee)&&ae!==yn.METAMASK_GETPROVIDERSTATE){let qe=((N=V?.[0])===null||N===void 0?void 0:N.params)||[];if(xe.indexOf(ae)!==-1||t){W(!0);let wt=ae===yn.METAMASK_CONNECTWITH,Ge=`${Date.now()}`;try{yield i.start({wait:!1,connectWith:wt?{method:ae,id:Ge,params:qe}:void 0}),yield new Promise((ht,Ct)=>{c?.isAuthorized()&&(Ve(\"[initializeMobileProvider: sendRequest()] already authorized\"),ht(!0)),c?.getConnector().once(vt.AUTHORIZED,()=>{ht(!0)}),a.once(vt.PROVIDER_UPDATE,dt=>{Ve(`[initializeMobileProvider: sendRequest()] PROVIDER_UPDATE --- remote provider request interupted type=${dt}`),dt===mg.EXTENSION?Ct(vt.PROVIDER_UPDATE):Ct(new Error(\"Connection Terminated\"))})})}catch(ht){if(mg.EXTENSION===ht){if(Ve(`[initializeMobileProvider: sendRequest()] extension provider detect: re-create ${ae} on the active provider`),ae.toLowerCase()===yn.METAMASK_CONNECTSIGN.toLowerCase()){let Ct=yield(B=a.getProvider())===null||B===void 0?void 0:B.request({method:yn.ETH_REQUESTACCOUNTS,params:[]});if(!Ct.length)throw new Error(\"SDK state invalid -- undefined accounts\");let dt=yield(j=a.getProvider())===null||j===void 0?void 0:j.request({method:yn.PERSONAL_SIGN,params:[qe[0],Ct[0]]});return a.emit(Rd.ConnectWithResponse,dt),dt}if(ae.toLowerCase()===yn.METAMASK_CONNECTWITH.toLowerCase()){let[Ct]=qe,dt=yield(({method:Ze,sdk:rn,params:zt})=>ct(void 0,void 0,void 0,function*(){var Bt,Mt,qt,Wt;if(!rn.isExtensionActive())throw new Error(\"SDK state invalid -- extension is not active\");Ve(\"[MetaMaskProvider: extensionConnectWithOverwrite()] Overwriting request method\",Ze,zt);let zn=yield(Bt=rn.getProvider())===null||Bt===void 0?void 0:Bt.request({method:yn.ETH_REQUESTACCOUNTS,params:[]});if(!zn.length)throw new Error(\"SDK state invalid -- undefined accounts\");if(Ze?.toLowerCase()===yn.PERSONAL_SIGN.toLowerCase()){let Mn={method:Ze,params:[zt[0],zn[0]]};return yield(Mt=rn.getProvider())===null||Mt===void 0?void 0:Mt.request(Mn)}if(Ze?.toLowerCase()===yn.ETH_SENDTRANSACTION.toLowerCase()){let Mn={method:Ze,params:[Object.assign(Object.assign({},zt[0]),{from:zn[0]})]};return yield(qt=rn.getProvider())===null||qt===void 0?void 0:qt.request(Mn)}return YTe.includes(Ze.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${Ze} -- not handled by the extension -- call separately`),zn):yield(Wt=rn.getProvider())===null||Wt===void 0?void 0:Wt.request({method:Ze,params:zt})}))({method:Ct.method,sdk:a,params:Ct.params});return a.emit(Rd.ConnectWithResponse,dt),dt}return Ve(`[initializeMobileProvider: sendRequest()] sending \\'${ae}\\' on active provider`,qe),yield(q=a.getProvider())===null||q===void 0?void 0:q.request({method:ae,params:qe})}throw ht===vt.REJECTED?(c?.closeModal(),(H=a.getProvider())===null||H===void 0||H.handleDisconnect({terminate:!1}),Object.assign(new Error(\"User rejected connection\"),{code:4001})):(Ve(`[initializeMobileProvider: sendRequest()] failed to start installer: ${ht}`),ht)}finally{W(!1)}if(ae===yn.ETH_REQUESTACCOUNTS)return pe=yield new Promise(ht=>{let Ct=setInterval(()=>{let{accounts:dt}=U.getState();dt&&(clearInterval(Ct),ht(dt))},100)}),Ve(`[initializeMobileProvider: sendRequest()] selectedAddress: ${se} --- SKIP rpc call`),pe;if(ae===yn.METAMASK_CONNECTWITH)try{let ht=0,Ct=5,dt=({resolve:Bt,reject:Mt})=>{ht+=1;let qt=c?.getConnector().getRPCMethodTracker(),Wt=qt?.[Ge];return Ve(`TRACKER: update method ${Ge}`,Wt),Wt?.result?(Ve(\"[initializeMobileProvider: sendRequest()] found result\",Wt.result),a.emit(Rd.ConnectWithResponse,Wt.result),void Bt(Wt.result)):Wt?.error?(Ve(\"[initializeMobileProvider: sendRequest()] found error\",Wt.error),void Mt(Wt.error)):ht>=Ct?(Ve(\"[initializeMobileProvider: sendRequest()] max message count reached without result\"),void Mt(new Error(\"Max message count reached without result\"))):void Ve(\"[initializeMobileProvider: sendRequest()] not found yet, need to wait for next update\")},Ze,rn,zt=yield new Promise((Bt,Mt)=>{let qt=c?.getConnector().getRPCMethodTracker();Ve(`TRACKER: method ${Ge}`,qt),qt?.[Ge].result?(Ve(\"[initializeMobileProvider: sendRequest()] found result\",qt?.[Ge].result),Bt(qt?.[Ge].result)):qt?.[Ge].error&&(Ve(\"[initializeMobileProvider: sendRequest()] found error\",qt?.[Ge].error),Mt(qt?.[Ge].error)),rn=()=>dt({resolve:Bt,reject:Mt}),Ze=c?.getConnector().on(vt.RPC_UPDATE,rn)});return rn&&Ze?.off(vt.RPC_UPDATE,rn),Ve(\"TRACKER: result\",zt),zt}catch(ht){throw Ve(\"[initializeMobileProvider: sendRequest()] error:\",ht),ht}return V[0]&&typeof V[0]==\"object\"&&(V[0].params={__triggeredInstaller:!0,wrappedParams:V[0].params}),$(...V)}if(o.isSecure()&&rq[ae])return $(...V);if(a.isExtensionActive())return Ve(`[initializeMobileProvider: sendRequest()] EXTENSION active - redirect request \\'${ae}\\' to it`,V,qe),yield(I=a.getProvider())===null||I===void 0?void 0:I.request({method:ae,params:qe});throw Ve(`[initializeMobileProvider: sendRequest()] method=${ae} --- skip --- not connected/installed`),new Error(\"MetaMask is not connected/installed, please call eth_requestAccounts to connect first.\")}try{let qe=yield $(...V);if(Ve(`[initializeMobileProvider: sendRequest()] method=${ae} rpcResponse`,qe),ae===yn.WALLET_REQUESTPERMISSIONS){let wt=qe.reduce((Ge,ht)=>{var Ct;if(ht.parentCapability===\"eth_accounts\"){let dt=(Ct=ht.caveats.find(Ze=>Ze.type===\"restrictReturnedAccounts\"))===null||Ct===void 0?void 0:Ct.value;dt&&Ge.push(...dt)}return Ge},[]);Ve(\"[initializeMobileProvider: sendRequest()] accountsToPersist:\",wt),wt.length>0&&(U.handleAccountsChanged(wt,!1),R?.persistAccounts(wt))}return qe}catch(qe){throw console.error(\"[initializeMobileProvider: sendRequest()] error:\",qe),qe}}),{request:ie}=D;D.request=(...ae)=>ct(void 0,void 0,void 0,function*(){return ne(ae?.[0].method,ae,ie,u)});let{send:Z}=D;return D.send=(...ae)=>ct(void 0,void 0,void 0,function*(){return ne(ae?.[0],ae,Z,u)}),Ve(\"[initializeMobileProvider: sendRequest()] metamaskStream.start()\"),m.start(),D});Bst=\"sdk\",bre=class{constructor({serverUrl:e,enabled:n,originatorInfo:r}){this.serverURL=RS,this.serverURL=e,this.originatorInfo=r,this.enabled=n==null||n}send({event:e,params:n}){if(!this.enabled)return;let r=Object.assign(Object.assign({id:Bst,event:e,sdkVersion:NS.version},this.originatorInfo),{params:n});Ve(`[Analytics: send()] event: ${e}`,r),Yv(r,this.serverURL).catch(o=>{Ve(`[Analytics: send()] error: ${o}`)})}},Dst=()=>{if(typeof document>\"u\")return;let t,e=document.getElementsByTagName(\"link\");for(let n=0;n<e.length;n++)e[n].getAttribute(\"rel\")!==\"icon\"&&e[n].getAttribute(\"rel\")!==\"shortcut icon\"||(t=e[n].getAttribute(\"href\"));return t},Fst=163400;vre=({provider:t,sdkInstance:e})=>{if(\"state\"in t)throw new Error(\"INVALID EXTENSION PROVIDER\");return new Proxy(t,{get:(n,r)=>r===\"request\"?function(o){var i,a;return ct(this,void 0,void 0,function*(){Ve(\"[wrapExtensionProvider()] Overwriting request method\",o);let{method:c,params:u}=o,d=Rst.includes(c.toLowerCase()),{id:h,from:m}=n8e(e);if(d&&((i=e.analytics)===null||i===void 0||i.send({event:pa.SDK_RPC_REQUEST,params:{method:c,from:m,id:h}})),c===yn.METAMASK_BATCH&&Array.isArray(u))return(({target:b,args:E,trackEvent:C,sdkInstance:T})=>ct(void 0,void 0,void 0,function*(){var R,L;if(E.method!==\"metamask_batch\")throw new Error(\"Invalid usage\");let D=[],G=(R=E?.params)!==null&&R!==void 0?R:[];for(let ne of G){let ie=yield b?.request({method:ne.method,params:ne.params});D.push(ie)}let{id:W,from:J}=n8e(T);return C&&((L=T.analytics)===null||L===void 0||L.send({event:pa.SDK_RPC_REQUEST_DONE,params:{method:E.method,from:J,id:W}})),D}))({target:n,args:o,trackEvent:d,sdkInstance:e});if(c.toLowerCase()===yn.METAMASK_CONNECTSIGN.toLowerCase()&&Array.isArray(u))return(({target:b,params:E})=>ct(void 0,void 0,void 0,function*(){let C=yield b.request({method:yn.ETH_REQUESTACCOUNTS,params:[]});if(!C.length)throw new Error(\"SDK state invalid -- undefined accounts\");return yield b.request({method:yn.PERSONAL_SIGN,params:[E[0],C[0]]})}))({target:n,params:u});if(c.toLowerCase()===yn.METAMASK_CONNECTWITH.toLowerCase()&&Array.isArray(u))return(({target:b,params:E})=>ct(void 0,void 0,void 0,function*(){let[C]=E,T=C.method,R=C.params,L=yield b.request({method:yn.ETH_REQUESTACCOUNTS,params:[]});if(!L.length)throw new Error(\"SDK state invalid -- undefined accounts\");return T?.toLowerCase()===yn.PERSONAL_SIGN.toLowerCase()?yield b.request({method:T,params:[R[0],L[0]]}):T?.toLowerCase()===yn.ETH_SENDTRANSACTION.toLowerCase()?yield b.request({method:T,params:[Object.assign(Object.assign({},R[0]),{from:L[0]})]}):YTe.includes(T.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${T} -- not handled by the extension -- call separately`),L):yield b.request({method:T,params:R})}))({target:n,params:u});let g;try{return g=yield n.request(o),g}finally{d&&((a=e.analytics)===null||a===void 0||a.send({event:pa.SDK_RPC_REQUEST_DONE,params:{method:c,from:m,id:h}}))}})}:r===\"getChainId\"?function(){return t.chainId}:r===\"getNetworkVersion\"?function(){return t.networkVersion}:r===\"getSelectedAddress\"?function(){return t.selectedAddress}:r===\"isConnected\"?function(){return t._state.isConnected}:n[r]})};(function(t){t.Announce=\"eip6963:announceProvider\",t.Request=\"eip6963:requestProvider\"})(sq||(sq={}));jst=t=>ct(void 0,void 0,void 0,function*(){let{options:e}=t,{infuraAPIKey:n}=e;if(!n)return;let r={\"0x1\":`https://mainnet.infura.io/v3/${n}`,\"0x5\":`https://goerli.infura.io/v3/${n}`,\"0xaa36a7\":`https://sepolia.infura.io/v3/${n}`,\"0xe708\":`https://linea-mainnet.infura.io/v3/${n}`,\"0xe704\":`https://linea-goerli.infura.io/v3/${n}`,\"0x89\":`https://polygon-mainnet.infura.io/v3/${n}`,\"0x13881\":`https://polygon-mumbai.infura.io/v3/${n}`,\"0x45\":`https://optimism-mainnet.infura.io/v3/${n}`,\"0x1a4\":`https://optimism-goerli.infura.io/v3/${n}`,\"0xa4b1\":`https://arbitrum-mainnet.infura.io/v3/${n}`,\"0x66eed\":`https://arbitrum-goerli.infura.io/v3/${n}`,\"0x2a15c308d\":`https://palm-mainnet.infura.io/v3/${n}`,\"0x2a15c3083\":`https://palm-testnet.infura.io/v3/${n}`,\"0xa86a\":`https://avalanche-mainnet.infura.io/v3/${n}`,\"0xa869\":`https://avalanche-fuji.infura.io/v3/${n}`,\"0x4e454152\":`https://aurora-mainnet.infura.io/v3/${n}`,\"0x4e454153\":`https://aurora-testnet.infura.io/v3/${n}`,\"0x534e5f4d41494e\":`https://starknet-mainnet.infura.io/v3/${n}`,\"0x534e5f474f45524c49\":`https://starknet-goerli.infura.io/v3/${n}`,\"0x534e5f474f45524c4932\":`https://starknet-goerli2.infura.io/v3/${n}`,\"0xa4ec\":`https://celo-mainnet.infura.io/v3/${n}`,\"0xaef3\":`https://celo-alfajores.infura.io/v3/${n}`};t.options.readonlyRPCMap?t.options.readonlyRPCMap=Object.assign(Object.assign({},t.options.readonlyRPCMap),r):t.options.readonlyRPCMap=r}),zst=t=>ct(void 0,void 0,void 0,function*(){let{options:e}=t,{readonlyRPCMap:n}=e;if(n)try{Ve(\"[MetaMaskSDK: setupReadOnlyRPCProviders()] Setting up Readonly RPC Providers\",n),t.setReadOnlyRPCCalls(!0)}catch{throw new Error(\"Invalid Infura Settings\")}});r8e=\"INSTALLED\",o8e=\"NOT_INSTALLED\",i8e=\"REGISTERED\",s8e=\"REGISTERING\",a8e=\"RELOADING\",c8e={CHROME:\"https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn\",FIREFOX:\"https://addons.mozilla.org/firefox/addon/ether-metamask/\",DEFAULT:\"https://metamask.io\"},lH=\"REGISTRATION_IN_PROGRESS\",l8e=\"FORWARDER_ID\",Wst=function(){function t(e){var n=e===void 0?{}:e,r=n.forwarderOrigin,o=r===void 0?\"https://fwd.metamask.io\":r,i=n.forwarderMode,a=i===void 0?t.FORWARDER_MODE.INJECT:i;this.forwarderOrigin=o,this.forwarderMode=a,this.state=t.isMetaMaskInstalled()?r8e:o8e;var c=t._detectBrowser();this.downloadUrl=c?c8e[c]:c8e.DEFAULT,this._onMessage=this._onMessage.bind(this),this._onMessageFromForwarder=this._onMessageFromForwarder.bind(this),this._openForwarder=this._openForwarder.bind(this),this._openDownloadPage=this._openDownloadPage.bind(this),this.startOnboarding=this.startOnboarding.bind(this),this.stopOnboarding=this.stopOnboarding.bind(this),window.addEventListener(\"message\",this._onMessage),a===t.FORWARDER_MODE.INJECT&&sessionStorage.getItem(lH)===\"true\"&&t._injectForwarder(this.forwarderOrigin)}return t.prototype._onMessage=function(e){if(e.origin===this.forwarderOrigin)return e.data.type===\"metamask:reload\"?this._onMessageFromForwarder(e):void console.debug(\"Unknown message from \\'\"+e.origin+\"\\' with data \"+JSON.stringify(e.data))},t.prototype._onMessageUnknownStateError=function(e){throw new Error(\"Unknown state: \\'\"+e+\"\\'\")},t.prototype._onMessageFromForwarder=function(e){return Hst(this,0,void 0,function(){return qst(this,function(n){switch(n.label){case 0:switch(this.state){case a8e:return[3,1];case o8e:return[3,2];case r8e:return[3,3];case s8e:return[3,5];case i8e:return[3,6]}return[3,7];case 1:return console.debug(\"Ignoring message while reloading\"),[3,8];case 2:return console.debug(\"Reloading now to register with MetaMask\"),this.state=a8e,location.reload(),[3,8];case 3:return console.debug(\"Registering with MetaMask\"),this.state=s8e,[4,t._register()];case 4:return n.sent(),this.state=i8e,e.source.postMessage({type:\"metamask:registrationCompleted\"},e.origin),this.stopOnboarding(),[3,8];case 5:return console.debug(\"Already registering - ignoring reload message\"),[3,8];case 6:return console.debug(\"Already registered - ignoring reload message\"),[3,8];case 7:this._onMessageUnknownStateError(this.state),n.label=8;case 8:return[2]}})})},t.prototype.startOnboarding=function(){sessionStorage.setItem(lH,\"true\"),this._openDownloadPage(),this._openForwarder()},t.prototype.stopOnboarding=function(){sessionStorage.getItem(lH)===\"true\"&&(this.forwarderMode===t.FORWARDER_MODE.INJECT&&(console.debug(\"Removing forwarder\"),t._removeForwarder()),sessionStorage.setItem(lH,\"false\"))},t.prototype._openForwarder=function(){this.forwarderMode===t.FORWARDER_MODE.OPEN_TAB?window.open(this.forwarderOrigin,\"_blank\"):t._injectForwarder(this.forwarderOrigin)},t.prototype._openDownloadPage=function(){window.open(this.downloadUrl,\"_blank\")},t.isMetaMaskInstalled=function(){return!!(window.ethereum&&window.ethereum.isMetaMask)},t._register=function(){return window.ethereum.request({method:\"wallet_registerOnboarding\"})},t._injectForwarder=function(e){var n=document.body,r=document.createElement(\"iframe\");r.setAttribute(\"height\",\"0\"),r.setAttribute(\"width\",\"0\"),r.setAttribute(\"style\",\"display: none;\"),r.setAttribute(\"src\",e),r.setAttribute(\"id\",l8e),n.insertBefore(r,n.children[0])},t._removeForwarder=function(){var e;(e=document.getElementById(l8e))===null||e===void 0||e.remove()},t._detectBrowser=function(){var e=GTe.parse(window.navigator.userAgent);return e.browser.name===\"Firefox\"?\"FIREFOX\":[\"Chrome\",\"Chromium\"].includes(e.browser.name||\"\")?\"CHROME\":null},t.FORWARDER_MODE={INJECT:\"INJECT\",OPEN_TAB:\"OPEN_TAB\"},t}();wre=class{constructor({remote:e,preferDesktop:n,platformManager:r,debug:o=!1}){this.state={isInstalling:!1,hasInstalled:!1,resendRequest:null,preferDesktop:!1,platformManager:null,remote:null,debug:!1,connectWith:void 0},this.state.remote=e,this.state.preferDesktop=n,this.state.platformManager=r,this.state.debug=o}startDesktopOnboarding(){return function(){return ct(this,void 0,void 0,function*(){Ve(\"[MetamaskInstaller: startDesktopOnboarding() starting desktop onboarding\"),window.ethereum&&(window.ethereum=void 0),new Wst().startOnboarding()})}()}redirectToProperInstall(){return ct(this,void 0,void 0,function*(){return function(e){var n,r;return ct(this,void 0,void 0,function*(){let{state:o}=e,i=(n=o.platformManager)===null||n===void 0?void 0:n.getPlatformType();if(Ve(`[MetamaskInstaller: redirectToProperInstall()] platform=${i}`),i===Al.MetaMaskMobileWebview)return!1;o.isInstalling=!0;try{yield(r=o.remote)===null||r===void 0?void 0:r.startConnection({connectWith:o.connectWith}),o.isInstalling=!1,o.hasInstalled=!0}catch(a){throw o.isInstalling=!1,a}return!0})}(this)})}checkInstallation(){return ct(this,void 0,void 0,function*(){return function(e){var n;return ct(this,void 0,void 0,function*(){let{state:r}=e,o=(n=r.platformManager)===null||n===void 0?void 0:n.isMetaMaskInstalled();return Ve(`[MetamaskInstaller: checkInstallation()] isInstalled=${o}`),!!o||(yield e.redirectToProperInstall())})}(this)})}start({wait:e=!1,connectWith:n}){return ct(this,void 0,void 0,function*(){this.state.connectWith=n,Ve(`[MetaMaskInstaller: start()] wait=${e}`,n),yield Vst(this,{wait:e})})}},aq=class{constructor({debug:e,sdkVersion:n}){this.containers={install:void 0,pending:void 0,select:void 0},this.defined={install:!1,pending:!1,select:!1},this.debug=e!=null&&e,this.sdkVersion=n}loadComponent(e){return ct(this,void 0,void 0,function*(){if(!this.defined[e]){this.defined[e]=!0;try{let n=yield Promise.resolve().then(function(){return kat});console.log(\"loader\",n),n.defineCustomElements()}catch(n){console.error(`Failed to load ${e} modal:`,n)}}})}renderInstallModal(e){var n;return ct(this,void 0,void 0,function*(){this.debug&&console.debug(\"ModalLoader: renderInstallModal\",e),this.containers.install=e.parentElement,yield this.loadComponent(\"install\");let r=document.createElement(\"mm-install-modal\");r.link=e.link,r.preferDesktop=e.preferDesktop,r.sdkVersion=(n=e.sdkVersion)!==null&&n!==void 0?n:this.sdkVersion,r.addEventListener(\"close\",({detail:{shouldTerminate:o}})=>e.onClose(o)),r.addEventListener(\"startDesktopOnboarding\",e.metaMaskInstaller.startDesktopOnboarding),r.addEventListener(\"trackAnalytics\",o=>{var i;return(i=e.onAnalyticsEvent)===null||i===void 0?void 0:i.call(e,o.detail)}),e.parentElement.appendChild(r)})}renderSelectModal(e){var n;return ct(this,void 0,void 0,function*(){this.containers.select=e.parentElement,yield this.loadComponent(\"select\");let r=document.createElement(\"mm-select-modal\");r.link=e.link,r.sdkVersion=(n=e.sdkVersion)!==null&&n!==void 0?n:this.sdkVersion,r.preferDesktop=e.preferDesktop,r.addEventListener(\"close\",({detail:{shouldTerminate:o}})=>e.onClose(o)),r.addEventListener(\"connectWithExtension\",e.connectWithExtension),e.parentElement.appendChild(r),setTimeout(()=>this.updateQRCode(e.link),100)})}renderPendingModal(e){var n;return ct(this,void 0,void 0,function*(){this.containers.pending=e.parentElement,yield this.loadComponent(\"pending\");let r=document.createElement(\"mm-pending-modal\");r.sdkVersion=(n=e.sdkVersion)!==null&&n!==void 0?n:this.sdkVersion,r.displayOTP=e.displayOTP,r.addEventListener(\"close\",e.onClose),r.addEventListener(\"updateOTPValue\",({detail:{otpValue:o}})=>e.updateOTPValue(o)),e.onDisconnect&&r.addEventListener(\"disconnect\",e.onDisconnect),e.parentElement.appendChild(r)})}updateOTPValue(e){let n=()=>{var r;let o=(r=this.containers.pending)===null||r===void 0?void 0:r.querySelector(\"mm-pending-modal\");return!!o&&(o.otpCode=e,!0)};setTimeout(()=>{n()},800)}updateQRCode(e){var n,r;let o=(n=this.containers.install)===null||n===void 0?void 0:n.querySelector(\"mm-install-modal\");if(o)o.link=e;else{let i=(r=this.containers.select)===null||r===void 0?void 0:r.querySelector(\"mm-select-modal\");i&&(i.link=e)}}unmount(){Object.entries(this.containers).forEach(([e,n])=>{var r;(r=n?.parentNode)===null||r===void 0||r.removeChild(n),this.containers[e]=void 0})}},$st=({link:t,debug:e,installer:n,terminate:r,connectWithExtension:o,preferDesktop:i,onAnalyticsEvent:a})=>{let c=null,u=null;Ve(\"[UI: InstallModal-web: sdkWebInstallModal()] ################## Installing Modal #################\"),Ve(`[UI: InstallModal-web: sdkWebInstallModal()] link=${t}`),Ve(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open \"${t}\" --ios`),Ve(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open \"${t}\" --android`),Ve(`[UI: InstallModal-web: sdkWebInstallModal()] adb shell am start -a android.intent.action.VIEW -d \"${t}\"`);let d=h=>{var m;Ve(\"[UI: InstallModal-web: sdkWebInstallModal()] installModal-web unmounting install modal -- shouldTerminate:\",h,u),u?.parentNode&&((m=u.parentNode)===null||m===void 0||m.removeChild(u)),u=null,c=null,h===!0&&r?.()};return{mount:h=>{if(Ve(\"[UI: InstallModal-web: sdkWebInstallModal()] installModal-web mounting install modal\",u),u)return u.style.display=\"block\",void(c==null||c.updateQRCode(h));c=new aq({debug:e,sdkVersion:NS.version}),u=document.createElement(\"div\"),document.body.appendChild(u),window.extension?c.renderSelectModal({parentElement:u,connectWithExtension:()=>{d(),o?.()},onClose:d,link:t,preferDesktop:i!=null&&i}).catch(m=>{console.error(m)}):c.renderInstallModal({parentElement:u,preferDesktop:i!=null&&i,link:t,metaMaskInstaller:n,onClose:d,onAnalyticsEvent:a}).catch(m=>{console.error(\"[UI: InstallModal-web: sdkWebInstallModal()]\",m)})},unmount:d}},Kst=({onDisconnect:t,debug:e})=>{let n=null,r=null,o=()=>{Ve(\"[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web unmount\",n),n?.parentNode&&n.parentNode.removeChild(n),n=null,r=null},i=c=>{Ve(\"[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web updateOTPValue\",c),r&&r.updateOTPValue(c)},a=({displayOTP:c}={displayOTP:!0})=>{Ve(\"[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web mount\",n),n?n.style.display=\"block\":(r=new aq({debug:e,sdkVersion:NS.version}),n=document.createElement(\"div\"),document.body.appendChild(n),r.renderPendingModal({parentElement:n,onClose:o,onDisconnect:t,updateOTPValue:i,displayOTP:c}).catch(u=>{console.error(\"[UI: pendingModal-web: sdkWebPendingModal()]\",u)}))};return a(),{mount:a,unmount:o,updateOTPValue:i}};Ere=class{constructor(e){var n,r,o;this.state={connector:void 0,qrcodeLink:void 0,analytics:void 0,developerMode:!1,authorized:!1,reconnection:!1,preferDesktop:!1,deeplinkProtocol:!1,listeners:[],communicationLayerPreference:void 0,platformManager:void 0,pendingModal:void 0,installModal:void 0,otpAnswer:void 0},this.options=e;let i=((n=e.logging)===null||n===void 0?void 0:n.developerMode)===!0||((r=e.logging)===null||r===void 0?void 0:r.sdk)===!0;this.state.developerMode=i,this.state.analytics=e.analytics,this.state.preferDesktop=(o=e.preferDesktop)!==null&&o!==void 0&&o,this.state.useDeeplink=e.sdk.options.useDeeplink,this.state.communicationLayerPreference=e.communicationLayerPreference,this.state.platformManager=e.platformManager,e.modals.install||(e.modals.install=$st),e.modals.otp||(e.modals.otp=Kst)}startConnection(e){return ct(this,void 0,void 0,function*(){return Zst(this.state,this.options,e)})}initRemoteCommunication({sdkInstance:e}){var n,r,o;return ct(this,void 0,void 0,function*(){let i=yield(r=(n=e.options.storage)===null||n===void 0?void 0:n.storageManager)===null||r===void 0?void 0:r.getPersistedChannelConfig();if(!this.options.ecies){let a={privateKey:i?.localKey};this.options.ecies=a}JTe(this.state,this.options),yield(o=this.getConnector())===null||o===void 0?void 0:o.initFromDappStorage(),XTe(this.state,this.options)})}showActiveModal(){return function(e){var n,r,o,i;e.authorized?Ve(\"[RemoteConnection: showActiveModal()] already authorized\"):e.pendingModal?(r=(n=e.pendingModal).mount)===null||r===void 0||r.call(n):e.installModal&&((i=(o=e.installModal).mount)===null||i===void 0||i.call(o,e.qrcodeLink||\"\"))}(this.state)}closeModal(){var e,n,r,o;(n=(e=this.state.pendingModal)===null||e===void 0?void 0:e.unmount)===null||n===void 0||n.call(e),(o=(r=this.state.installModal)===null||r===void 0?void 0:r.unmount)===null||o===void 0||o.call(r,!1)}getUniversalLink(){if(!this.state.qrcodeLink)throw new Error(\"connection not started. run startConnection() first.\");return this.state.qrcodeLink}getChannelConfig(){var e;return(e=this.state.connector)===null||e===void 0?void 0:e.getChannelConfig()}getKeyInfo(){var e;return(e=this.state.connector)===null||e===void 0?void 0:e.getKeyInfo()}getConnector(){if(!this.state.connector)throw new Error(\"invalid remote connector\");return this.state.connector}getPlatformManager(){if(!this.state.platformManager)throw new Error(\"PlatformManager not available\");return this.state.platformManager}isConnected(){var e;return((e=this.state.connector)===null||e===void 0?void 0:e.isReady())||!1}isAuthorized(){var e;return((e=this.state.connector)===null||e===void 0?void 0:e.isAuthorized())||!1}isPaused(){var e;return(e=this.state.connector)===null||e===void 0?void 0:e.isPaused()}disconnect(e){var n,r,o;Ve(\"[RemoteConnection: disconnect()]\",e),e?.terminate&&(pg.getProvider().handleDisconnect({terminate:!0}),(r=(n=this.state.pendingModal)===null||n===void 0?void 0:n.unmount)===null||r===void 0||r.call(n),this.state.otpAnswer=void 0),(o=this.state.connector)===null||o===void 0||o.disconnect(e),function(i){Ve(\"[RemoteConnection: cleanupConnector()] cleaning up connector\"),i.connector&&(xre(i),i.connector.disconnect({terminate:!0}).catch(a=>{Ve(\"[RemoteConnection: cleanupConnector()] error disconnecting connector\",a)}))}(this.state)}};Sre=class extends SA.default{constructor(e={storage:{enabled:!0},injectProvider:!0,forceInjectProvider:!1,enableAnalytics:!0,shouldShimWeb3:!0,useDeeplink:!0,extensionOnly:!0,headless:!1,dappMetadata:{name:\"\",url:\"\",iconUrl:\"\"},_source:JCe,i18nOptions:{enabled:!1}}){var n,r,o;super(),this.extensionActive=!1,this._initialized=!1,this.sdkInitPromise=void 0,this.debug=!1,this.readonlyRPCCalls=!1,this.availableLanguages=[\"en\"],Cu.default.disable();let i=((n=e.logging)===null||n===void 0?void 0:n.developerMode)===!0;if((!((r=e.logging)===null||r===void 0)&&r.sdk||i)&&Cu.default.enable(\"MM_SDK\"),Ve(\"[MetaMaskSDK: constructor()]: begin.\"),this.setMaxListeners(50),!(!((o=e.dappMetadata)===null||o===void 0)&&o.url)){if(typeof window>\"u\"||typeof document>\"u\")throw new Error(\"You must provide dAppMetadata url\");e.dappMetadata=Object.assign(Object.assign({},e.dappMetadata),{url:`${window.location.protocol}//${window.location.host}`})}this.options=e,this.options._source||(e._source=JCe),this.init().then(()=>{Ve(\"[MetaMaskSDK: constructor()]: initialized successfully.\"),typeof window<\"u\"&&(window.mmsdk=this)}).catch(a=>{console.error(\"[MetaMaskSDK: constructor()] error during initialization\",a)})}init(){return ct(this,void 0,void 0,function*(){return function(e){var n;return ct(this,void 0,void 0,function*(){if(typeof window<\"u\"&&(!((n=window.mmsdk)===null||n===void 0)&&n.isInitialized()))return Ve(\"[MetaMaskSDK: initializeMetaMaskSDK()] already initialized\"),Promise.resolve(window.mmsdk);if(e._initialized)return Ve(\"[MetaMaskSDK: initializeMetaMaskSDK()] already initialized\"),e.sdkInitPromise;if(e.sdkInitPromise)return Ve(\"[MetaMaskSDK: initializeMetaMaskSDK()] already initializing\"),e.sdkInitPromise;try{e.sdkInitPromise=Yst(e),yield e.sdkInitPromise}catch(r){throw console.error(r),r}return e.sdkInitPromise})}(this)})}isExtensionActive(){return this.extensionActive}checkExtensionAvailability(){var e;return typeof window<\"u\"&&!!(!((e=window.ethereum)===null||e===void 0)&&e.isMetaMask)}connect(){return ct(this,void 0,void 0,function*(){return function(e){return ct(this,void 0,void 0,function*(){if(e._initialized||(Ve(\"[MetaMaskSDK: connect()] provider not ready -- wait for init()\"),yield e.init()),Ve(`[MetaMaskSDK: connect()] isExtensionActive=${e.isExtensionActive()} activeProvider`,e.activeProvider),!e.activeProvider)throw new Error(\"SDK state invalid -- undefined provider\");let n=e.activeProvider.getSelectedAddress();return n?[n]:e.activeProvider.request({method:yn.ETH_REQUESTACCOUNTS,params:[]})})}(this)})}connectAndSign({msg:e}){return ct(this,void 0,void 0,function*(){return Pst({instance:this,msg:e})})}connectWith(e){return ct(this,void 0,void 0,function*(){return function({instance:n,rpc:r}){return ct(this,void 0,void 0,function*(){if(n._initialized||(Ve(\"[MetaMaskSDK: connectWith()] provider not ready -- wait for init()\"),yield n.init()),Ve(`[MetaMaskSDK: connectWith()] method: ${r.method} rpc=${r}`),!n.activeProvider)throw new Error(\"SDK state invalid -- undefined provider\");return n.activeProvider.request({method:yn.METAMASK_CONNECTWITH,params:[r]})})}({instance:this,rpc:e})})}resume(){return function(e){var n,r,o;return ct(this,void 0,void 0,function*(){if(!(!((r=(n=e.remoteConnection)===null||n===void 0?void 0:n.getConnector())===null||r===void 0)&&r.isReady()))return Ve(\"[MetaMaskSDK: resume()] channel is not ready -- starting connection\"),void((o=e.remoteConnection)===null||o===void 0||o.startConnection());Ve(\"[MetaMaskSDK: resume()] channel is ready\")})}(this)}disconnect(){return console.warn(\"MetaMaskSDK.disconnect() is deprecated, use terminate()\"),this.terminate()}isAuthorized(){var e;(e=this.remoteConnection)===null||e===void 0||e.isAuthorized()}terminate(){return function(e){var n,r,o;return ct(this,void 0,void 0,function*(){if(!(!((n=e.platformManager)===null||n===void 0)&&n.isMetaMaskMobileWebView())){if(Ost&&(window.localStorage.removeItem(oq),window.localStorage.removeItem(gre),window.localStorage.removeItem(mre)),e.extensionActive){try{yield(r=e.activeProvider)===null||r===void 0?void 0:r.request({method:yn.WALLET_REVOKEPERMISSIONS,params:[{eth_accounts:{}}]})}catch(i){Ve(\"[MetaMaskSDK: terminate()] error revoking permissions\",i)}return e.options.extensionOnly?(e.emit(Rd.ProviderUpdate,mg.TERMINATE),void Ve(\"[MetaMaskSDK: terminate()] extensionOnly --- prevent switching providers\")):(e.activeProvider=e.sdkProvider,window.ethereum=e.activeProvider,e.extensionActive=!1,void e.emit(Rd.ProviderUpdate,mg.TERMINATE))}e.emit(Rd.ProviderUpdate,mg.TERMINATE),Ve(`[MetaMaskSDK: terminate()] remoteConnection=${e.remoteConnection}`),(o=e.remoteConnection)===null||o===void 0||o.disconnect({terminate:!0,sendMessage:!0})}})}(this)}isInitialized(){return this._initialized}setReadOnlyRPCCalls(e){this.readonlyRPCCalls=e}hasReadOnlyRPCCalls(){return this.readonlyRPCCalls}getProvider(){if(this.activeProvider)return this.activeProvider;console.warn(\"MetaMaskSDK: No active provider found\")}getMobileProvider(){if(!this.sdkProvider)throw new Error(\"SDK state invalid -- undefined mobile provider\");return this.sdkProvider}getUniversalLink(){var e;let n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getUniversalLink();if(!n)throw new Error(\"No Universal Link available, please call eth_requestAccounts first.\");return n}getChannelId(){var e,n;return(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getChannelConfig())===null||n===void 0?void 0:n.channelId}getRPCHistory(){var e,n;return(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0?void 0:n.getRPCMethodTracker()}getVersion(){return NS.version}getWalletStatus(){var e,n;return(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0?void 0:n.getConnectionStatus()}_getChannelConfig(){var e;return(e=this.remoteConnection)===null||e===void 0?void 0:e.getChannelConfig()}_ping(){var e,n;(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0||n.ping()}_keyCheck(){var e,n;(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0||n.keyCheck()}_getServiceStatus(){var e,n;return(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0?void 0:n.getServiceStatus()}_getRemoteConnection(){return this.remoteConnection}_getDappMetadata(){return this.dappMetadata}_getKeyInfo(){var e;return(e=this.remoteConnection)===null||e===void 0?void 0:e.getKeyInfo()}_resetKeys(){var e,n;(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0||n.resetKeys()}_getConnection(){return this.remoteConnection}emit(e,n){return super.emit(e,n)}on(e,n){return super.on(e,n)}},Qst=Object.freeze({__proto__:null,StorageManagerWeb:class{constructor({enabled:t}={enabled:!1}){this.enabled=!1,this.enabled=t}persistChannelConfig(t){return ct(this,void 0,void 0,function*(){let e=JSON.stringify(t);Ve(`[StorageManagerWeb: persistChannelConfig()] enabled=${this.enabled}`,t),localStorage.setItem(Nne,e)})}getPersistedChannelConfig(){return ct(this,void 0,void 0,function*(){let t;try{if(Ve(`[StorageManagerWeb: getPersistedChannelConfig()] enabled=${this.enabled}`),t=localStorage.getItem(Nne),Ve(\"[StorageManagerWeb: getPersistedChannelConfig()]\",t),!t)return;let e=JSON.parse(t);return Ve(\"[StorageManagerWeb: getPersistedChannelConfig()] channelConfig\",e),e}catch(e){return void console.error(\"[StorageManagerWeb: getPersistedChannelConfig()] Can\\'t find existing channel config\",e)}})}persistAccounts(t){return ct(this,void 0,void 0,function*(){Ve(`[StorageManagerWeb: persistAccounts()] enabled=${this.enabled}`,t);let e=JSON.stringify(t);localStorage.setItem(mre,e)})}getCachedAccounts(){return ct(this,void 0,void 0,function*(){try{let t=localStorage.getItem(mre);return t?JSON.parse(t):[]}catch(t){throw console.error(\"[StorageManagerWeb: getCachedAccounts()] Error reading cached accounts\",t),t}})}persistChainId(t){return ct(this,void 0,void 0,function*(){Ve(`[StorageManagerWeb: persistChainId()] enabled=${this.enabled}`,t),localStorage.setItem(gre,t)})}getCachedChainId(){return ct(this,void 0,void 0,function*(){try{let t=localStorage.getItem(gre);return t??void 0}catch(t){throw console.error(\"[StorageManagerWeb: getCachedChainId()] Error reading cached chainId\",t),t}})}terminate(){return ct(this,void 0,void 0,function*(){Ve(`[StorageManagerWeb: terminate()] enabled=${this.enabled}`),localStorage.removeItem(Nne)})}}}),Jst=\"hydrated\",Xst=!1,eat=!1,tat=!0,nat=Object.defineProperty,toe=new WeakMap,u3=t=>toe.get(t),noe=(t,e)=>toe.set(e.$lazyInstance$=t,e),u8e=(t,e)=>e in t,AS=(t,e)=>(0,console.error)(t,e),Lne=new Map,_H=new Map,e7e=\"slot-fb{display:contents}slot-fb[hidden]{display:none}\",gq=typeof window<\"u\"?window:{},E1=gq.document||{head:{}},Cl={$flags$:0,$resourcesUrl$:\"\",jmp:t=>t(),raf:t=>requestAnimationFrame(t),ael:(t,e,n,r)=>t.addEventListener(e,n,r),rel:(t,e,n,r)=>t.removeEventListener(e,n,r),ce:(t,e)=>new CustomEvent(t,e)},t7e=(()=>{try{return new CSSStyleSheet,typeof new CSSStyleSheet().replaceSync==\"function\"}catch{}return!1})(),kre=!1,d8e=[],n7e=[],rat=(t,e)=>n=>{t.push(n),kre||(kre=!0,4&Cl.$flags$?roe(_re):Cl.raf(_re))},f8e=t=>{for(let e=0;e<t.length;e++)try{t[e](performance.now())}catch(n){AS(n)}t.length=0},_re=()=>{f8e(d8e),f8e(n7e),(kre=d8e.length>0)&&Cl.raf(_re)},roe=t=>(e=>Promise.resolve(e))().then(t),oat=rat(n7e),h8e={},ooe=t=>(t=typeof t)==\"object\"||t===\"function\";((t,e)=>{for(var n in e)nat(t,n,{get:e[n],enumerable:!0})})({},{err:()=>o7e,map:()=>iat,ok:()=>Cre,unwrap:()=>sat,unwrapErr:()=>aat});Cre=t=>({isOk:!0,isErr:!1,value:t}),o7e=t=>({isOk:!1,isErr:!0,value:t});sat=t=>{if(t.isOk)return t.value;throw t.value},aat=t=>{if(t.isErr)return t.value;throw t.value},ve=(t,e,...n)=>{let r=null,o=!1,i=!1,a=[],c=d=>{for(let h=0;h<d.length;h++)r=d[h],Array.isArray(r)?c(r):r!=null&&typeof r!=\"boolean\"&&((o=typeof t!=\"function\"&&!ooe(r))&&(r=String(r)),o&&i?a[a.length-1].$text$+=r:a.push(o?cq(null,r):r),i=o)};if(c(n),e){let d=e.className||e.class;d&&(e.class=typeof d!=\"object\"?d:Object.keys(d).filter(h=>d[h]).join(\" \"))}if(typeof t==\"function\")return t(e===null?{}:e,a,lat);let u=cq(t,null);return u.$attrs$=e,a.length>0&&(u.$children$=a),u},cq=(t,e)=>({$flags$:0,$tag$:t,$text$:e,$elm$:null,$children$:null,$attrs$:null}),cat={},lat={forEach:(t,e)=>t.map(p8e).forEach(e),map:(t,e)=>t.map(p8e).map(e).map(uat)},p8e=t=>({vattrs:t.$attrs$,vchildren:t.$children$,vkey:t.$key$,vname:t.$name$,vtag:t.$tag$,vtext:t.$text$}),uat=t=>{if(typeof t.vtag==\"function\"){let n={...t.vattrs};return t.vkey&&(n.key=t.vkey),t.vname&&(n.name=t.vname),ve(t.vtag,n,...t.vchildren||[])}let e=cq(t.vtag,t.vtext);return e.$attrs$=t.vattrs,e.$children$=t.vchildren,e.$key$=t.vkey,e.$name$=t.vname,e},yq=t=>u3(t).$hostElement$,f3=(t,e,n)=>{let r=yq(t);return{emit:o=>i7e(r,e,{bubbles:!!(4&n),composed:!!(2&n),cancelable:!!(1&n),detail:o})}},i7e=(t,e,n)=>{let r=Cl.ce(e,n);return t.dispatchEvent(r),r},m8e=new WeakMap,dat=t=>{let e=t.$cmpMeta$,n=t.$hostElement$,r=e.$flags$,o=(e.$tagName$,()=>{}),i=((a,c,u)=>{var d;let h=s7e(c),m=_H.get(h);if(a=a.nodeType===11?a:E1,m)if(typeof m==\"string\"){a=a.head||a;let g,b=m8e.get(a);if(b||m8e.set(a,b=new Set),!b.has(h)){{g=E1.createElement(\"style\"),g.innerHTML=m;let E=(d=Cl.$nonce$)!=null?d:r7e(E1);if(E!=null&&g.setAttribute(\"nonce\",E),!(1&c.$flags$))if(a.nodeName===\"HEAD\"){let C=a.querySelectorAll(\"link[rel=preconnect]\"),T=C.length>0?C[C.length-1].nextSibling:a.querySelector(\"style\");a.insertBefore(g,T)}else if(\"host\"in a)if(t7e){let C=new CSSStyleSheet;C.replaceSync(m),a.adoptedStyleSheets=[C,...a.adoptedStyleSheets]}else{let C=a.querySelector(\"style\");C?C.innerHTML=m+C.innerHTML:a.prepend(g)}else a.append(g);1&c.$flags$&&a.nodeName!==\"HEAD\"&&a.insertBefore(g,null)}4&c.$flags$&&(g.innerHTML+=e7e),b&&b.add(h)}}else a.adoptedStyleSheets.includes(m)||(a.adoptedStyleSheets=[...a.adoptedStyleSheets,m]);return h})(n.shadowRoot?n.shadowRoot:n.getRootNode(),e);10&r&&2&r&&(n[\"s-sc\"]=i,n.classList.add(i+\"-h\")),o()},s7e=(t,e)=>\"sc-\"+t.$tagName$,g8e=(t,e,n,r,o,i)=>{if(n!==r){let a=u8e(t,e),c=e.toLowerCase();if(e===\"class\"){let u=t.classList,d=y8e(n),h=y8e(r);u.remove(...d.filter(m=>m&&!h.includes(m))),u.add(...h.filter(m=>m&&!d.includes(m)))}else if(e===\"style\"){for(let u in n)r&&r[u]!=null||(u.includes(\"-\")?t.style.removeProperty(u):t.style[u]=\"\");for(let u in r)n&&r[u]===n[u]||(u.includes(\"-\")?t.style.setProperty(u,r[u]):t.style[u]=r[u])}else if(a||e[0]!==\"o\"||e[1]!==\"n\"){let u=ooe(r);if((a||u&&r!==null)&&!o)try{if(t.tagName.includes(\"-\"))t[e]=r;else{let d=r??\"\";e===\"list\"?a=!1:n!=null&&t[e]==d||(typeof t.__lookupSetter__(e)==\"function\"?t[e]=d:t.setAttribute(e,d))}}catch{}r==null||r===!1?r===!1&&t.getAttribute(e)!==\"\"||t.removeAttribute(e):(!a||4&i||o)&&!u&&(r=r===!0?\"\":r,t.setAttribute(e,r))}else if(e=e[2]===\"-\"?e.slice(3):u8e(gq,c)?c.slice(2):c[2]+e.slice(3),n||r){let u=e.endsWith(a7e);e=e.replace(hat,\"\"),n&&Cl.rel(t,e,n,u),r&&Cl.ael(t,e,r,u)}}},fat=/\\\\s/,y8e=t=>t?t.split(fat):[],a7e=\"Capture\",hat=new RegExp(a7e+\"$\"),c7e=(t,e,n)=>{let r=e.$elm$.nodeType===11&&e.$elm$.host?e.$elm$.host:e.$elm$,o=t&&t.$attrs$||h8e,i=e.$attrs$||h8e;for(let a of b8e(Object.keys(o)))a in i||g8e(r,a,o[a],void 0,n,e.$flags$);for(let a of b8e(Object.keys(i)))g8e(r,a,o[a],i[a],n,e.$flags$)};l7e=!1,km=!1,soe=(t,e,n,r)=>{let o=e.$children$[n],i,a,c=0;if(o.$text$!==null)i=o.$elm$=E1.createTextNode(o.$text$);else{if(km||(km=o.$tag$===\"svg\"),i=o.$elm$=E1.createElementNS(km?\"http://www.w3.org/2000/svg\":\"http://www.w3.org/1999/xhtml\",!l7e&&eat&&2&o.$flags$?\"slot-fb\":o.$tag$),km&&o.$tag$===\"foreignObject\"&&(km=!1),c7e(null,o,km),i.getRootNode().querySelector(\"body\")&&Xst&&(u=>u!=null)(CH)&&i[\"s-si\"]!==CH&&i.classList.add(i[\"s-si\"]=CH),o.$children$)for(c=0;c<o.$children$.length;++c)a=soe(t,o,c),a&&i.appendChild(a);o.$tag$===\"svg\"?km=!1:i.tagName===\"foreignObject\"&&(km=!0)}return i[\"s-hn\"]=ioe,i},v8e=(t,e,n,r,o,i)=>{let a,c=t;for(c.shadowRoot&&c.tagName===ioe&&(c=c.shadowRoot);o<=i;++o)r[o]&&(a=soe(null,n,o),a&&(r[o].$elm$=a,AH(c,a,e)))},w8e=(t,e,n)=>{for(let r=e;r<=n;++r){let o=t[r];if(o){let i=o.$elm$;i&&i.remove()}}},uH=(t,e,n=!1)=>t.$tag$===e.$tag$,bO=(t,e,n=!1)=>{let r=e.$elm$=t.$elm$,o=t.$children$,i=e.$children$,a=e.$tag$,c=e.$text$;c===null?(c7e(t,e,km=a===\"svg\"||a!==\"foreignObject\"&&km),o!==null&&i!==null?((u,d,h,m,g=!1)=>{let b,E=0,C=0,T=d.length-1,R=d[0],L=d[T],D=m.length-1,G=m[0],W=m[D];for(;E<=T&&C<=D;)R==null?R=d[++E]:L==null?L=d[--T]:G==null?G=m[++C]:W==null?W=m[--D]:uH(R,G,g)?(bO(R,G,g),R=d[++E],G=m[++C]):uH(L,W,g)?(bO(L,W,g),L=d[--T],W=m[--D]):uH(R,W,g)?(bO(R,W,g),AH(u,R.$elm$,L.$elm$.nextSibling),R=d[++E],W=m[--D]):uH(L,G,g)?(bO(L,G,g),AH(u,L.$elm$,R.$elm$),L=d[--T],G=m[++C]):(b=soe(d&&d[C],h,C),G=m[++C],b&&AH(R.$elm$.parentNode,b,R.$elm$));E>T?v8e(u,m[D+1]==null?null:m[D+1].$elm$,h,m,C,D):C>D&&w8e(d,E,T)})(r,o,e,i,n):i!==null?(t.$text$!==null&&(r.textContent=\"\"),v8e(r,null,e,i,0,i.length-1)):!n&&tat&&o!==null&&w8e(o,0,o.length-1),km&&a===\"svg\"&&(km=!1)):t.$text$!==c&&(r.data=c)},AH=(t,e,n)=>t?.insertBefore(e,n),pat=(t,e,n=!1)=>{let r=t.$hostElement$,o=t.$cmpMeta$,i=t.$vnode$||cq(null,null),a=(c=e)&&c.$tag$===cat?e:ve(null,null,e);var c;if(ioe=r.tagName,n&&a.$attrs$)for(let u of Object.keys(a.$attrs$))r.hasAttribute(u)&&![\"key\",\"ref\",\"style\",\"class\"].includes(u)&&(a.$attrs$[u]=r[u]);a.$tag$=null,a.$flags$|=4,t.$vnode$=a,a.$elm$=i.$elm$=r.shadowRoot||r,CH=r[\"s-sc\"],l7e=(1&o.$flags$)!=0,bO(i,a,n)},u7e=(t,e)=>{e&&!t.$onRenderResolve$&&e[\"s-p\"]&&e[\"s-p\"].push(new Promise(n=>t.$onRenderResolve$=n))},aoe=(t,e)=>(t.$flags$|=16,4&t.$flags$?void(t.$flags$|=512):(u7e(t,t.$ancestorComponent$),oat(()=>mat(t,e)))),mat=(t,e)=>{let n=t.$hostElement$,r=(t.$cmpMeta$.$tagName$,()=>{}),o=t.$lazyInstance$;if(!o)throw new Error(`Can\\'t render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \\\\`externalRuntime: true\\\\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);return r(),gat(void 0,()=>bat(t,o,e))},gat=(t,e)=>yat(t)?t.then(e).catch(n=>{console.error(n),e()}):e(),yat=t=>t instanceof Promise||t&&t.then&&typeof t.then==\"function\",bat=async(t,e,n)=>{var r;let o=t.$hostElement$,i=(t.$cmpMeta$.$tagName$,()=>{}),a=o[\"s-rc\"];n&&dat(t);let c=(t.$cmpMeta$.$tagName$,()=>{});vat(t,e,o,n),a&&(a.map(u=>u()),o[\"s-rc\"]=void 0),c(),i();{let u=(r=o[\"s-p\"])!=null?r:[],d=()=>wat(t);u.length===0?d():(Promise.all(u).then(d),t.$flags$|=4,u.length=0)}},vat=(t,e,n,r)=>{try{e=e.render(),t.$flags$&=-17,t.$flags$|=2,pat(t,e,r)}catch(o){AS(o,t.$hostElement$)}return null},wat=t=>{t.$cmpMeta$.$tagName$;let e=t.$hostElement$,n=()=>{},r=t.$lazyInstance$,o=t.$ancestorComponent$;64&t.$flags$?n():(t.$flags$|=64,f7e(e),coe(r,\"componentDidLoad\"),n(),t.$onReadyResolve$(e),o||d7e()),t.$onRenderResolve$&&(t.$onRenderResolve$(),t.$onRenderResolve$=void 0),512&t.$flags$&&roe(()=>aoe(t,!1)),t.$flags$&=-517},d7e=t=>{f7e(E1.documentElement),roe(()=>i7e(gq,\"appload\",{detail:{namespace:\"sdk-install-modal-web\"}}))},coe=(t,e,n)=>{if(t&&t[e])try{return t[e](n)}catch(r){AS(r)}},f7e=t=>{var e;return t.classList.add((e=Jst)!=null?e:\"hydrated\")},xat=(t,e,n,r)=>{let o=u3(t);if(!o)throw new Error(`Couldn\\'t find host element for \"${r.$tagName$}\" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);let i=o.$hostElement$,a=o.$instanceValues$.get(e),c=o.$flags$,u=o.$lazyInstance$;var d,h;d=n,h=r.$members$[e][0],n=d==null||ooe(d)?d:4&h?d!==\"false\"&&(d===\"\"||!!d):1&h?String(d):d;let m=Number.isNaN(a)&&Number.isNaN(n);if((!(8&c)||a===void 0)&&n!==a&&!m&&(o.$instanceValues$.set(e,n),u)){if(r.$watchers$&&128&c){let g=r.$watchers$[e];g&&g.map(b=>{try{u[b](n,a,e)}catch(E){AS(E,i)}})}(18&c)==2&&aoe(o,!1)}},h7e=(t,e,n)=>{var r,o;let i=t.prototype;if(e.$members$||e.$watchers$||t.watchers){t.watchers&&!e.$watchers$&&(e.$watchers$=t.watchers);let a=Object.entries((r=e.$members$)!=null?r:{});if(a.map(([c,[u]])=>{(31&u||2&n&&32&u)&&Object.defineProperty(i,c,{get(){return d=c,u3(this).$instanceValues$.get(d);var d},set(d){xat(this,c,d,e)},configurable:!0,enumerable:!0})}),1&n){let c=new Map;i.attributeChangedCallback=function(u,d,h){Cl.jmp(()=>{var m;let g=c.get(u);if(this.hasOwnProperty(g))h=this[g],delete this[g];else{if(i.hasOwnProperty(g)&&typeof this[g]==\"number\"&&this[g]==h)return;if(g==null){let b=u3(this),E=b?.$flags$;if(E&&!(8&E)&&128&E&&h!==d){let C=b.$lazyInstance$,T=(m=e.$watchers$)==null?void 0:m[u];T?.forEach(R=>{C[R]!=null&&C[R].call(C,h,d,u)})}return}}this[g]=(h!==null||typeof this[g]!=\"boolean\")&&h})},t.observedAttributes=Array.from(new Set([...Object.keys((o=e.$watchers$)!=null?o:{}),...a.filter(([u,d])=>15&d[0]).map(([u,d])=>{let h=d[1]||u;return c.set(h,u),h})]))}}return t},Eat=async(t,e,n,r)=>{let o;if((32&e.$flags$)==0){if(e.$flags$|=32,n.$lazyBundleId$){let c=((d,h,m)=>{let g=d.$tagName$.replace(/-/g,\"_\"),b=d.$lazyBundleId$;if(!b)return;let E=Lne.get(b);if(E)return E[g];{let C=T=>(Lne.set(b,T),T[g]);if(b===\"mm-install-modal_3\")return Promise.resolve().then(function(){return Dat}).then(C,AS)}return $rt(`./${b}.entry.js`).then(C=>(Lne.set(b,C),C[g]),AS)})(n);if(c&&\"then\"in c){let d=()=>{};o=await c,d()}else o=c;if(!o)throw new Error(`Constructor for \"${n.$tagName$}#${e.$modeName$}\" was not found`);o.isProxied||(n.$watchers$=o.watchers,h7e(o,n,2),o.isProxied=!0);let u=(n.$tagName$,()=>{});e.$flags$|=8;try{new o(e)}catch(d){AS(d)}e.$flags$&=-9,e.$flags$|=128,u(),Are(e.$lazyInstance$)}else{o=t.constructor;let c=t.localName;customElements.whenDefined(c).then(()=>e.$flags$|=128)}if(o&&o.style){let c;typeof o.style==\"string\"&&(c=o.style);let u=s7e(n);if(!_H.has(u)){let d=(n.$tagName$,()=>{});((h,m,g)=>{let b=_H.get(h);t7e&&g?(b=b||new CSSStyleSheet,typeof b==\"string\"?b=m:b.replaceSync(m)):b=m,_H.set(h,b)})(u,c,!!(1&n.$flags$)),d()}}}let i=e.$ancestorComponent$,a=()=>aoe(e,!0);i&&i[\"s-rc\"]?i[\"s-rc\"].push(a):a()},Are=t=>{coe(t,\"connectedCallback\")},x8e=t=>{coe(t,\"disconnectedCallback\")},Sat=(t,e={})=>{var n;let r=()=>{},o=[],i=e.exclude||[],a=gq.customElements,c=E1.head,u=c.querySelector(\"meta[charset]\"),d=E1.createElement(\"style\"),h=[],m,g=!0;Object.assign(Cl,e),Cl.$resourcesUrl$=new URL(e.resourcesUrl||\"./\",E1.baseURI).href;let b=!1;if(t.map(E=>{E[1].map(C=>{var T;let R={$flags$:C[0],$tagName$:C[1],$members$:C[2],$listeners$:C[3]};4&R.$flags$&&(b=!0),R.$members$=C[2],R.$watchers$=(T=C[4])!=null?T:{};let L=R.$tagName$,D=class extends HTMLElement{constructor(G){if(super(G),this.hasRegisteredEventListeners=!1,((W,J)=>{let ne={$flags$:0,$hostElement$:W,$cmpMeta$:J,$instanceValues$:new Map};ne.$onReadyPromise$=new Promise(ie=>ne.$onReadyResolve$=ie),W[\"s-p\"]=[],W[\"s-rc\"]=[],toe.set(W,ne)})(G=this,R),1&R.$flags$)if(G.shadowRoot){if(G.shadowRoot.mode!==\"open\")throw new Error(`Unable to re-use existing shadow root for ${R.$tagName$}! Mode is set to ${G.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else G.attachShadow({mode:\"open\"})}connectedCallback(){u3(this),this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),m&&(clearTimeout(m),m=null),g?h.push(this):Cl.jmp(()=>(G=>{if((1&Cl.$flags$)==0){let W=u3(G),J=W.$cmpMeta$,ne=(J.$tagName$,()=>{});if(1&W.$flags$)W?.$lazyInstance$?Are(W.$lazyInstance$):W?.$onReadyPromise$&&W.$onReadyPromise$.then(()=>Are(W.$lazyInstance$));else{W.$flags$|=1;{let ie=G;for(;ie=ie.parentNode||ie.host;)if(ie[\"s-p\"]){u7e(W,W.$ancestorComponent$=ie);break}}J.$members$&&Object.entries(J.$members$).map(([ie,[Z]])=>{if(31&Z&&G.hasOwnProperty(ie)){let ae=G[ie];delete G[ie],G[ie]=ae}}),Eat(G,W,J)}ne()}})(this))}disconnectedCallback(){Cl.jmp(()=>(async G=>{if((1&Cl.$flags$)==0){let W=u3(G);W?.$lazyInstance$?x8e(W.$lazyInstance$):W?.$onReadyPromise$&&W.$onReadyPromise$.then(()=>x8e(W.$lazyInstance$))}})(this))}componentOnReady(){return u3(this).$onReadyPromise$}};R.$lazyBundleId$=E[0],i.includes(L)||a.get(L)||(o.push(L),a.define(L,h7e(D,R,1)))})}),o.length>0&&(b&&(d.textContent+=e7e),d.textContent+=o.sort()+\"{visibility:hidden}.hydrated{visibility:inherit}\",d.innerHTML.length)){d.setAttribute(\"data-styles\",\"\");let E=(n=Cl.$nonce$)!=null?n:r7e(E1);E!=null&&d.setAttribute(\"nonce\",E),c.insertBefore(d,u?u.nextSibling:c.firstChild)}g=!1,h.length?h.map(E=>E.connectedCallback()):Cl.jmp(()=>m=setTimeout(d7e,30)),r()};(function(){if(typeof window<\"u\"&&window.Reflect!==void 0&&window.customElements!==void 0){var t=HTMLElement;window.HTMLElement=function(){return Reflect.construct(t,[],this.constructor)},HTMLElement.prototype=t.prototype,HTMLElement.prototype.constructor=HTMLElement,Object.setPrototypeOf(HTMLElement,t)}})();kat=Object.freeze({__proto__:null,defineCustomElements:async(t,e)=>{if(typeof window<\"u\")return await void 0,Sat([[\"mm-install-modal_3\",[[1,\"mm-install-modal\",{link:[1],sdkVersion:[1,\"sdk-version\"],preferDesktop:[4,\"prefer-desktop\"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:[\"updatePreferDesktop\"]}],[1,\"mm-pending-modal\",{displayOTP:[4,\"display-o-t-p\"],sdkVersion:[1,\"sdk-version\"],otpCode:[1,\"otp-code\"],translationsLoaded:[32]}],[1,\"mm-select-modal\",{link:[1],sdkVersion:[1,\"sdk-version\"],preferDesktop:[4,\"prefer-desktop\"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:[\"updatePreferDesktop\"]}]]]],e)},setNonce:t=>Cl.$nonce$=t}),_at={fontFamily:\"Roboto, sans-serif\"},loe=({className:t},e)=>ve(\"div\",{style:_at,class:t},e),Bne=({Icon:t,text:e})=>ve(\"div\",{class:\"flexContainer\",style:{padding:\"6\",flexDirection:\"row\"}},ve(\"div\",{class:\"flexItem1\"},ve(t,null)),ve(\"div\",{class:\"flexItem11\"},ve(\"span\",{style:{lineHeight:\"2\",color:\"black\"}},e))),Cat=()=>ve(\"svg\",{width:\"20\",height:\"18\",viewBox:\"0 0 20 18\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},ve(\"path\",{d:\"M20.0002 7.9702V10.0302C20.0002 10.5802 19.5602 11.0302 19.0002 11.0502H17.0402C15.9602 11.0502 14.9702 10.2602 14.8802 9.1802C14.8202 8.5502 15.0602 7.9602 15.4802 7.5502C15.8502 7.1702 16.3602 6.9502 16.9202 6.9502H19.0002C19.5602 6.9702 20.0002 7.4202 20.0002 7.9702Z\",fill:\"#037DD6\"}),ve(\"path\",{d:\"M18.47 12.55H17.04C15.14 12.55 13.54 11.12 13.38 9.3C13.29 8.26 13.67 7.22 14.43 6.48C15.07 5.82 15.96 5.45 16.92 5.45H18.47C18.76 5.45 19 5.21 18.97 4.92C18.75 2.49 17.14 0.83 14.75 0.55C14.51 0.51 14.26 0.5 14 0.5H5C4.72 0.5 4.45 0.52 4.19 0.56C1.64 0.88 0 2.78 0 5.5V12.5C0 15.26 2.24 17.5 5 17.5H14C16.8 17.5 18.73 15.75 18.97 13.08C19 12.79 18.76 12.55 18.47 12.55ZM11 6.75H5C4.59 6.75 4.25 6.41 4.25 6C4.25 5.59 4.59 5.25 5 5.25H11C11.41 5.25 11.75 5.59 11.75 6C11.75 6.41 11.41 6.75 11 6.75Z\",fill:\"#037DD6\"})),Aat=()=>ve(\"svg\",{width:\"20\",height:\"18\",viewBox:\"0 0 20 18\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},ve(\"path\",{d:\"M14.44 0.0999756C12.63 0.0999756 11.01 0.979976 10 2.32998C8.99 0.979976 7.37 0.0999756 5.56 0.0999756C2.49 0.0999756 0 2.59998 0 5.68998C0 6.87998 0.19 7.97998 0.52 8.99998C2.1 14 6.97 16.99 9.38 17.81C9.72 17.93 10.28 17.93 10.62 17.81C13.03 16.99 17.9 14 19.48 8.99998C19.81 7.97998 20 6.87998 20 5.68998C20 2.59998 17.51 0.0999756 14.44 0.0999756Z\",fill:\"#037DD6\"})),Tat=()=>ve(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 20 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},ve(\"path\",{d:\"M16.28 7.53V6.28C16.28 3.58 15.63 0 10 0C4.37 0 3.72 3.58 3.72 6.28V7.53C0.92 7.88 0 9.3 0 12.79V14.65C0 18.75 1.25 20 5.35 20H14.65C18.75 20 20 18.75 20 14.65V12.79C20 9.3 19.08 7.88 16.28 7.53ZM10 16.74C8.33 16.74 6.98 15.38 6.98 13.72C6.98 12.05 8.34 10.7 10 10.7C11.66 10.7 13.02 12.06 13.02 13.72C13.02 15.39 11.67 16.74 10 16.74ZM5.35 7.44C5.27 7.44 5.2 7.44 5.12 7.44V6.28C5.12 3.35 5.95 1.4 10 1.4C14.05 1.4 14.88 3.35 14.88 6.28V7.45C14.8 7.45 14.73 7.45 14.65 7.45H5.35V7.44Z\",fill:\"#037DD6\"})),Rat=()=>ve(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},ve(\"path\",{d:\"M16.4405 8.8999C20.0405 9.2099 21.5105 11.0599 21.5105 15.1099V15.2399C21.5105 19.7099 19.7205 21.4999 15.2505 21.4999H8.74047C4.27047 21.4999 2.48047 19.7099 2.48047 15.2399V15.1099C2.48047 11.0899 3.93047 9.2399 7.47047 8.9099\",stroke:\"white\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M12 2V14.88\",stroke:\"white\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M15.3504 12.6499L12.0004 15.9999L8.65039 12.6499\",stroke:\"white\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}));doe=()=>ve(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},ve(\"rect\",{width:\"16\",height:\"16\",fill:\"white\"}),ve(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M2.40554 2.40554C2.94627 1.86482 3.82296 1.86482 4.36369 2.40554L8 6.04186L11.6363 2.40554C12.177 1.86482 13.0537 1.86482 13.5945 2.40554C14.1352 2.94627 14.1352 3.82296 13.5945 4.36369L9.95814 8L13.5945 11.6363C14.1352 12.177 14.1352 13.0537 13.5945 13.5945C13.0537 14.1352 12.177 14.1352 11.6363 13.5945L8 9.95814L4.36369 13.5945C3.82296 14.1352 2.94627 14.1352 2.40554 13.5945C1.86482 13.0537 1.86482 12.177 2.40554 11.6363L6.04186 8L2.40554 4.36369C1.86482 3.82296 1.86482 2.94627 2.40554 2.40554Z\",fill:\"#BBC0C5\"})),foe=()=>ve(\"svg\",{width:\"273\",height:\"51\",viewBox:\"0 0 273 51\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},ve(\"path\",{d:\"M240.882 25.9263C239.472 24.997 237.916 24.3361 236.443 23.5101C235.489 22.9731 234.473 22.4982 233.643 21.8167C232.233 20.6602 232.524 18.3885 233.996 17.3973C236.112 15.993 239.617 16.7777 239.99 19.6483C239.99 19.7102 240.052 19.7515 240.114 19.7515H243.308C243.391 19.7515 243.454 19.6896 243.433 19.607C243.267 17.6244 242.5 15.9723 241.089 14.9191C239.741 13.9072 238.206 13.3702 236.568 13.3702C228.127 13.3702 227.359 22.271 231.901 25.0796C232.42 25.41 236.879 27.6404 238.455 28.611C240.032 29.5816 240.529 31.3576 239.845 32.7619C239.223 34.0423 237.605 34.9303 235.987 34.8271C234.224 34.7238 232.855 33.7738 232.378 32.2869C232.295 32.0185 232.254 31.5022 232.254 31.275C232.254 31.2131 232.192 31.1511 232.129 31.1511H228.666C228.604 31.1511 228.541 31.2131 228.541 31.275C228.541 33.7738 229.164 35.1575 230.864 36.4172C232.461 37.615 234.203 38.1106 236.008 38.1106C240.737 38.1106 243.184 35.4466 243.682 32.6793C244.117 29.974 243.308 27.5371 240.882 25.9263Z\",fill:\"#24292E\"}),ve(\"path\",{d:\"M90.4943 13.8246H88.9595H87.2795C87.2173 13.8246 87.1758 13.8659 87.1551 13.9072L84.3137 23.2416C84.2722 23.3655 84.1063 23.3655 84.0648 23.2416L81.2234 13.9072C81.2026 13.8452 81.1612 13.8246 81.0989 13.8246H79.419H77.8842H75.8102C75.748 13.8246 75.6857 13.8865 75.6857 13.9485V37.7802C75.6857 37.8422 75.748 37.9041 75.8102 37.9041H79.2738C79.336 37.9041 79.3982 37.8422 79.3982 37.7802V19.6689C79.3982 19.5244 79.6056 19.5037 79.6471 19.6276L82.5093 29.024L82.7167 29.6849C82.7374 29.7468 82.7789 29.7675 82.8411 29.7675H85.4959C85.5581 29.7675 85.5996 29.7262 85.6203 29.6849L85.8277 29.024L88.6899 19.6276C88.7313 19.4831 88.9387 19.5244 88.9387 19.6689V37.7802C88.9387 37.8422 89.001 37.9041 89.0632 37.9041H92.5268C92.589 37.9041 92.6513 37.8422 92.6513 37.7802V13.9485C92.6513 13.8865 92.589 13.8246 92.5268 13.8246H90.4943Z\",fill:\"#24292E\"}),ve(\"path\",{d:\"M187.849 13.8246C187.787 13.8246 187.745 13.8659 187.725 13.9072L184.883 23.2416C184.842 23.3655 184.676 23.3655 184.634 23.2416L181.793 13.9072C181.772 13.8452 181.731 13.8246 181.668 13.8246H176.4C176.338 13.8246 176.276 13.8865 176.276 13.9485V37.7802C176.276 37.8422 176.338 37.9041 176.4 37.9041H179.864C179.926 37.9041 179.988 37.8422 179.988 37.7802V19.6689C179.988 19.5244 180.196 19.5037 180.237 19.6276L183.099 29.024L183.307 29.6849C183.328 29.7468 183.369 29.7675 183.431 29.7675H186.086C186.148 29.7675 186.19 29.7262 186.211 29.6849L186.418 29.024L189.28 19.6276C189.322 19.4831 189.529 19.5244 189.529 19.6689V37.7802C189.529 37.8422 189.591 37.9041 189.653 37.9041H193.117C193.179 37.9041 193.241 37.8422 193.241 37.7802V13.9485C193.241 13.8865 193.179 13.8246 193.117 13.8246H187.849Z\",fill:\"#24292E\"}),ve(\"path\",{d:\"M143.174 13.8246H136.724H133.261H126.81C126.748 13.8246 126.686 13.8865 126.686 13.9485V16.9223C126.686 16.9843 126.748 17.0462 126.81 17.0462H133.136V37.7802C133.136 37.8422 133.198 37.9041 133.261 37.9041H136.724C136.786 37.9041 136.849 37.8422 136.849 37.7802V17.0462H143.174C143.237 17.0462 143.299 16.9843 143.299 16.9223V13.9485C143.299 13.8865 143.257 13.8246 143.174 13.8246Z\",fill:\"#24292E\"}),ve(\"path\",{d:\"M163.604 37.9041H166.756C166.839 37.9041 166.901 37.8215 166.881 37.7389L160.368 13.8245C160.347 13.7626 160.306 13.7419 160.244 13.7419H159.041H156.925H155.722C155.66 13.7419 155.619 13.7832 155.598 13.8245L149.085 37.7389C149.065 37.8215 149.127 37.9041 149.21 37.9041H152.362C152.425 37.9041 152.466 37.8628 152.487 37.8215L154.374 30.862C154.395 30.8 154.436 30.7794 154.499 30.7794H161.467C161.53 30.7794 161.571 30.8207 161.592 30.862L163.479 37.8215C163.5 37.8628 163.562 37.9041 163.604 37.9041ZM155.328 27.3719L157.859 18.0581C157.9 17.9342 158.066 17.9342 158.107 18.0581L160.638 27.3719C160.659 27.4545 160.596 27.5371 160.513 27.5371H155.453C155.37 27.5371 155.308 27.4545 155.328 27.3719Z\",fill:\"#24292E\"}),ve(\"path\",{d:\"M217.362 37.9041H220.515C220.598 37.9041 220.66 37.8215 220.639 37.7389L214.127 13.8245C214.106 13.7626 214.065 13.7419 214.002 13.7419H212.8H210.684H209.481C209.419 13.7419 209.377 13.7832 209.357 13.8245L202.844 37.7389C202.823 37.8215 202.886 37.9041 202.969 37.9041H206.121C206.183 37.9041 206.225 37.8628 206.246 37.8215L208.133 30.862C208.154 30.8 208.195 30.7794 208.257 30.7794H215.226C215.288 30.7794 215.33 30.8207 215.351 30.862L217.238 37.8215C217.259 37.8628 217.3 37.9041 217.362 37.9041ZM209.087 27.3719L211.617 18.0581C211.659 17.9342 211.825 17.9342 211.866 18.0581L214.397 27.3719C214.417 27.4545 214.355 27.5371 214.272 27.5371H209.211C209.129 27.5371 209.066 27.4545 209.087 27.3719Z\",fill:\"#24292E\"}),ve(\"path\",{d:\"M106.713 34.3727V26.9795C106.713 26.9176 106.775 26.8556 106.837 26.8556H116.067C116.129 26.8556 116.191 26.7936 116.191 26.7317V23.7579C116.191 23.6959 116.129 23.634 116.067 23.634H106.837C106.775 23.634 106.713 23.572 106.713 23.5101V17.1907C106.713 17.1288 106.775 17.0668 106.837 17.0668H117.332C117.394 17.0668 117.457 17.0049 117.457 16.9429V13.9691C117.457 13.9072 117.394 13.8452 117.332 13.8452H106.713H103.125C103.063 13.8452 103.001 13.9072 103.001 13.9691V17.0668V23.6546V26.8763V34.5173V37.7802C103.001 37.8422 103.063 37.9041 103.125 37.9041H106.713H117.768C117.83 37.9041 117.892 37.8422 117.892 37.7802V34.6412C117.892 34.5792 117.83 34.5173 117.768 34.5173H106.817C106.755 34.4966 106.713 34.4553 106.713 34.3727Z\",fill:\"#24292E\"}),ve(\"path\",{d:\"M272.532 37.6976L260.544 25.3687C260.502 25.3274 260.502 25.2448 260.544 25.2035L271.329 14.0517C271.412 13.9691 271.349 13.8452 271.246 13.8452H266.828C266.787 13.8452 266.766 13.8659 266.745 13.8865L257.599 23.3449C257.516 23.4275 257.391 23.3655 257.391 23.2623V13.9691C257.391 13.9072 257.329 13.8452 257.267 13.8452H253.803C253.741 13.8452 253.679 13.9072 253.679 13.9691V37.8009C253.679 37.8628 253.741 37.9248 253.803 37.9248H257.267C257.329 37.9248 257.391 37.8628 257.391 37.8009V27.3099C257.391 27.2067 257.536 27.1447 257.599 27.2273L267.969 37.8835C267.989 37.9041 268.031 37.9248 268.052 37.9248H272.469C272.552 37.9041 272.615 37.7596 272.532 37.6976Z\",fill:\"#24292E\"}),ve(\"path\",{d:\"M52.021 1L31.0526 16.4886L34.9517 7.36063L52.021 1Z\",fill:\"#E17726\",stroke:\"#E17726\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M3.65491 1L24.4366 16.6331L20.7241 7.36063L3.65491 1Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M44.4716 36.9127L38.8925 45.4211L50.8389 48.7047L54.261 37.0986L44.4716 36.9127Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M1.43555 37.0986L4.83695 48.7047L16.7626 45.4211L11.2042 36.9127L1.43555 37.0986Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M16.1197 22.5395L12.8013 27.5371L24.6232 28.074L24.2292 15.3734L16.1197 22.5395Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M39.5561 22.5394L31.3222 15.2288L31.0526 28.0739L42.8746 27.537L39.5561 22.5394Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M16.7626 45.4212L23.918 41.9724L17.7582 37.1813L16.7626 45.4212Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M31.7578 41.9724L38.8925 45.4212L37.9177 37.1813L31.7578 41.9724Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M38.8923 45.4212L31.7577 41.9724L32.3384 46.5983L32.2762 48.5602L38.8923 45.4212Z\",fill:\"#D5BFB2\",stroke:\"#D5BFB2\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M16.7625 45.4212L23.3994 48.5602L23.3579 46.5983L23.9179 41.9724L16.7625 45.4212Z\",fill:\"#D5BFB2\",stroke:\"#D5BFB2\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M23.5239 34.1249L17.5922 32.3902L21.7818 30.4696L23.5239 34.1249Z\",fill:\"#233447\",stroke:\"#233447\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M32.1517 34.1249L33.8939 30.4696L38.1042 32.3902L32.1517 34.1249Z\",fill:\"#233447\",stroke:\"#233447\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M16.7626 45.4212L17.7996 36.9128L11.2042 37.0987L16.7626 45.4212Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M37.8761 36.9128L38.8924 45.4212L44.4715 37.0987L37.8761 36.9128Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M42.8745 27.5371L31.0526 28.074L32.1518 34.1249L33.894 30.4696L38.1042 32.3902L42.8745 27.5371Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M17.5922 32.3902L21.7817 30.4696L23.5239 34.1249L24.6232 28.074L12.8012 27.5371L17.5922 32.3902Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M12.8013 27.5371L17.7582 37.1813L17.5923 32.3902L12.8013 27.5371Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M38.1044 32.3902L37.9177 37.1813L42.8746 27.5371L38.1044 32.3902Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M24.6232 28.0741L23.524 34.125L24.9136 41.2703L25.2247 31.8533L24.6232 28.0741Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M31.0526 28.0741L30.4719 31.8327L30.7623 41.2703L32.1519 34.125L31.0526 28.0741Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M32.1519 34.1249L30.7623 41.2702L31.7578 41.9724L37.9177 37.1813L38.1043 32.3901L32.1519 34.1249Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M17.5922 32.3901L17.7581 37.1813L23.918 41.9724L24.9135 41.2702L23.5239 34.1249L17.5922 32.3901Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M32.2763 48.5602L32.3385 46.5983L31.7993 46.1439H23.8765L23.358 46.5983L23.3995 48.5602L16.7626 45.4211L19.0855 47.3211L23.7935 50.5633H31.8615L36.5903 47.3211L38.8924 45.4211L32.2763 48.5602Z\",fill:\"#C0AC9D\",stroke:\"#C0AC9D\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M31.7578 41.9724L30.7622 41.2703H24.9135L23.918 41.9724L23.358 46.5983L23.8765 46.144H31.7993L32.3385 46.5983L31.7578 41.9724Z\",fill:\"#24292E\",stroke:\"#24292E\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M52.9128 17.5005L54.6757 8.95079L52.021 1L31.7578 15.9723L39.5561 22.5394L50.5692 25.7404L52.9958 22.9111L51.938 22.147L53.618 20.6188L52.3321 19.6276L54.0121 18.3472L52.9128 17.5005Z\",fill:\"#763E1A\",stroke:\"#763E1A\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M1 8.95079L2.78366 17.5005L1.64295 18.3472L3.34365 19.6276L2.05775 20.6188L3.73771 22.147L2.67996 22.9111L5.10657 25.7404L16.1196 22.5394L23.918 15.9723L3.65475 1L1 8.95079Z\",fill:\"#763E1A\",stroke:\"#763E1A\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M50.5692 25.7404L39.5561 22.5394L42.8746 27.5371L37.9177 37.1813L44.4716 37.0987H54.261L50.5692 25.7404Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M16.1196 22.5394L5.10651 25.7404L1.43549 37.0987H11.2041L17.7581 37.1813L12.8011 27.5371L16.1196 22.5394Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M31.0526 28.0741L31.7578 15.9724L34.9518 7.36072H20.7239L23.9179 15.9724L24.6231 28.0741L24.8927 31.8739L24.9135 41.2703H30.7622L30.783 31.8739L31.0526 28.0741Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}));AO=class t{static size(e,n){if(typeof e==\"number\"&&(e={height:e,width:e}),!Number.isSafeInteger(e.height)&&e.height!==1/0)throw new Error(`Bitmap: wrong height=${e.height} (${typeof e.height})`);if(!Number.isSafeInteger(e.width)&&e.width!==1/0)throw new Error(`Bitmap: wrong width=${e.width} (${typeof e.width})`);return n!==void 0&&(e={width:Math.min(e.width,n.width),height:Math.min(e.height,n.height)}),e}static fromString(e){let n=(e=e.replace(/^\\\\n+/g,\"\").replace(/\\\\n+$/g,\"\")).split(`\\n`),r=n.length,o=new Array(r),i;for(let a of n){let c=a.split(\"\").map(u=>{if(u===\"X\")return!0;if(u===\" \")return!1;if(u!==\"?\")throw new Error(`Bitmap.fromString: unknown symbol=${u}`)});if(i&&c.length!==i)throw new Error(`Bitmap.fromString different row sizes: width=${i} cur=${c.length}`);i=c.length,o.push(c)}return i||(i=0),new t({height:r,width:i},o)}constructor(e,n){let{height:r,width:o}=t.size(e);this.data=n||Array.from({length:r},()=>Mh(o,void 0)),this.height=r,this.width=o}point(e){return this.data[e.y][e.x]}isInside(e){return 0<=e.x&&e.x<this.width&&0<=e.y&&e.y<this.height}size(e){if(!e)return{height:this.height,width:this.width};let{x:n,y:r}=this.xy(e);return{height:this.height-r,width:this.width-n}}xy(e){if(typeof e==\"number\"&&(e={x:e,y:e}),!Number.isSafeInteger(e.x))throw new Error(`Bitmap: wrong x=${e.x}`);if(!Number.isSafeInteger(e.y))throw new Error(`Bitmap: wrong y=${e.y}`);return e.x=E8e(e.x,this.width),e.y=E8e(e.y,this.height),e}rect(e,n,r){let{x:o,y:i}=this.xy(e),{height:a,width:c}=t.size(n,this.size({x:o,y:i}));for(let u=0;u<a;u++)for(let d=0;d<c;d++)this.data[i+u][o+d]=typeof r==\"function\"?r({x:d,y:u},this.data[i+u][o+d]):r;return this}rectRead(e,n,r){return this.rect(e,n,(o,i)=>(r(o,i),i))}hLine(e,n,r){return this.rect(e,{width:n,height:1},r)}vLine(e,n,r){return this.rect(e,{width:1,height:n},r)}border(e=2,n){let r=this.height+2*e,o=this.width+2*e,i=Mh(e,n),a=Array.from({length:e},()=>Mh(o,n));return new t({height:r,width:o},[...a,...this.data.map(c=>[...i,...c,...i]),...a])}embed(e,n){return this.rect(e,n.size(),({x:r,y:o})=>n.data[o][r])}rectSlice(e,n=this.size()){let r=new t(t.size(n,this.size(this.xy(e))));return this.rect(e,n,({x:o,y:i},a)=>r.data[i][o]=a),r}inverse(){let{height:e,width:n}=this;return new t({height:n,width:e}).rect({x:0,y:0},1/0,({x:r,y:o})=>this.data[r][o])}scale(e){if(!Number.isSafeInteger(e)||e>1024)throw new Error(`Wrong scale factor: ${e}`);let{height:n,width:r}=this;return new t({height:e*n,width:e*r}).rect({x:0,y:0},1/0,({x:o,y:i})=>this.data[Math.floor(i/e)][Math.floor(o/e)])}clone(){return new t(this.size()).rect({x:0,y:0},this.size(),({x:e,y:n})=>this.data[n][e])}assertDrawn(){this.rectRead(0,1/0,(e,n)=>{if(typeof n!=\"boolean\")throw new Error(\"Invalid color type=\"+typeof n)})}toString(){return this.data.map(e=>e.map(n=>n===void 0?\"?\":n?\"X\":\" \").join(\"\")).join(`\\n`)}toASCII(){let{height:e,width:n,data:r}=this,o=\"\";for(let i=0;i<e;i+=2){for(let a=0;a<n;a++){let c=r[i][a],u=i+1>=e||r[i+1][a];c||u?!c&&u?o+=\"\\\\u2580\":c&&!u?o+=\"\\\\u2584\":c&&u&&(o+=\" \"):o+=\"\\\\u2588\"}o+=`\\n`}return o}toTerm(){let e=\"\\\\x1B[0m\",n=`\\\\x1B[1;47m  ${e}`,r=`\\\\x1B[40m  ${e}`;return this.data.map(o=>o.map(i=>i?r:n).join(\"\")).join(`\\n`)}toSVG(){let e=`<svg xmlns:svg=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 ${this.width} ${this.height}\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">`;return this.rectRead(0,1/0,({x:n,y:r},o)=>{o&&(e+=`<rect x=\"${n}\" y=\"${r}\" width=\"1\" height=\"1\" />`)}),e+=\"</svg>\",e}toGIF(){let e=c=>[255&c,c>>>8&255],n=[...e(this.width),...e(this.height)],r=[];this.rectRead(0,1/0,(c,u)=>r.push(+(u===!0)));let o=126,i=[71,73,70,56,55,97,...n,246,0,0,255,255,255,...Mh(381,0),44,0,0,0,0,...n,0,7],a=Math.floor(r.length/o);for(let c=0;c<a;c++)i.push(127,128,...r.slice(o*c,o*(c+1)).map(u=>+u));return i.push(r.length%o+1,128,...r.slice(a*o).map(c=>+c)),i.push(1,129,0,59),new Uint8Array(i)}toImage(e=!1){let{height:n,width:r}=this.size(),o=new Uint8Array(n*r*(e?3:4)),i=0;for(let a=0;a<n;a++)for(let c=0;c<r;c++){let u=this.data[a][c]?0:255;o[i++]=u,o[i++]=u,o[i++]=u,e||(o[i++]=255)}return{height:n,width:r,data:o}}},C8e=[\"low\",\"medium\",\"quartile\",\"high\"],A8e=[\"numeric\",\"alphanumeric\",\"byte\",\"kanji\",\"eci\"],Iat=[26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706],Oat={low:[7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],medium:[10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],quartile:[13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],high:[17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]},Pat={low:[1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],medium:[1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],quartile:[1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],high:[1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]},_u={size:{encode:t=>21+4*(t-1),decode:t=>(t-17)/4},sizeType:t=>Math.floor((t+7)/17),alignmentPatterns(t){if(t===1)return[];let e=_u.size.encode(t)-6-1,n=e-6,r=Math.ceil(n/28),o=Math.floor(n/r);o%2?o+=1:n%r*2>=r&&(o+=2);let i=[6];for(let a=1;a<r;a++)i.push(e-(r-a)*o);return i.push(e),i},ECCode:{low:1,medium:0,quartile:3,high:2},formatMask:21522,formatBits(t,e){let n=_u.ECCode[t]<<3|e,r=n;for(let o=0;o<10;o++)r=r<<1^1335*(r>>9);return(n<<10|r)^_u.formatMask},versionBits(t){let e=t;for(let n=0;n<12;n++)e=e<<1^7973*(e>>11);return t<<12|e},alphabet:{numeric:_8e(\"0123456789\"),alphanumerc:_8e(\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:\")},lengthBits:(t,e)=>({numeric:[10,12,14],alphanumeric:[9,11,13],byte:[8,16,16],kanji:[8,10,12],eci:[0,0,0]})[e][_u.sizeType(t)],modeBits:{numeric:\"0001\",alphanumeric:\"0010\",byte:\"0100\",kanji:\"1000\",eci:\"0111\"},capacity(t,e){let n=Iat[t-1],r=Oat[e][t-1],o=Pat[e][t-1],i=Math.floor(n/o)-r,a=o-n%o;return{words:r,numBlocks:o,shortBlocks:a,blockLen:i,capacity:8*(n-r*o),total:(r+i)*o+o-a}}},Tre=[(t,e)=>(t+e)%2==0,(t,e)=>e%2==0,(t,e)=>t%3==0,(t,e)=>(t+e)%3==0,(t,e)=>(Math.floor(e/2)+Math.floor(t/3))%2==0,(t,e)=>t*e%2+t*e%3==0,(t,e)=>(t*e%2+t*e%3)%2==0,(t,e)=>((t+e)%2+t*e%3)%2==0],Xt={tables:(t=>{let e=Mh(256,0),n=Mh(256,0);for(let r=0,o=1;r<256;r++)e[r]=o,n[o]=r,o<<=1,256&o&&(o^=285);return{exp:e,log:n}})(),exp:t=>Xt.tables.exp[t],log(t){if(t===0)throw new Error(`GF.log: wrong arg=${t}`);return Xt.tables.log[t]%255},mul:(t,e)=>t===0||e===0?0:Xt.tables.exp[(Xt.tables.log[t]+Xt.tables.log[e])%255],add:(t,e)=>t^e,pow:(t,e)=>Xt.tables.exp[Xt.tables.log[t]*e%255],inv(t){if(t===0)throw new Error(`GF.inverse: wrong arg=${t}`);return Xt.tables.exp[255-Xt.tables.log[t]]},polynomial(t){if(t.length==0)throw new Error(\"GF.polymomial: wrong length\");if(t[0]!==0)return t;let e=0;for(;e<t.length-1&&t[e]==0;e++);return t.slice(e)},monomial(t,e){if(t<0)throw new Error(`GF.monomial: wrong degree=${t}`);if(e==0)return[0];let n=Mh(t+1,0);return n[0]=e,Xt.polynomial(n)},degree:t=>t.length-1,coefficient:(t,e)=>t[Xt.degree(t)-e],mulPoly(t,e){if(t[0]===0||e[0]===0)return[0];let n=Mh(t.length+e.length-1,0);for(let r=0;r<t.length;r++)for(let o=0;o<e.length;o++)n[r+o]=Xt.add(n[r+o],Xt.mul(t[r],e[o]));return Xt.polynomial(n)},mulPolyScalar(t,e){if(e==0)return[0];if(e==1)return t;let n=Mh(t.length,0);for(let r=0;r<t.length;r++)n[r]=Xt.mul(t[r],e);return Xt.polynomial(n)},mulPolyMonomial(t,e,n){if(e<0)throw new Error(\"GF.mulPolyMonomial: wrong degree\");if(n==0)return[0];let r=Mh(t.length+e,0);for(let o=0;o<t.length;o++)r[o]=Xt.mul(t[o],n);return Xt.polynomial(r)},addPoly(t,e){if(t[0]===0)return e;if(e[0]===0)return t;let n=t,r=e;n.length>r.length&&([n,r]=[r,n]);let o=Mh(r.length,0),i=r.length-n.length,a=r.slice(0,i);for(let c=0;c<a.length;c++)o[c]=a[c];for(let c=i;c<r.length;c++)o[c]=Xt.add(n[c-i],r[c]);return Xt.polynomial(o)},remainderPoly(t,e){let n=Array.from(t);for(let r=0;r<t.length-e.length+1;r++){let o=n[r];if(o!==0)for(let i=1;i<e.length;i++)e[i]!==0&&(n[r+i]=Xt.add(n[r+i],Xt.mul(e[i],o)))}return n.slice(t.length-e.length+1,n.length)},divisorPoly(t){let e=[1];for(let n=0;n<t;n++)e=Xt.mulPoly(e,[1,Xt.pow(2,n)]);return e},evalPoly(t,e){if(e==0)return Xt.coefficient(t,0);let n=t[0];for(let r=1;r<t.length;r++)n=Xt.add(Xt.mul(e,n),t[r]);return n},euclidian(t,e,n){Xt.degree(t)<Xt.degree(e)&&([t,e]=[e,t]);let r=t,o=e,i=[0],a=[1];for(;2*Xt.degree(o)>=n;){let d=r,h=i;if(r=o,i=a,r[0]===0)throw new Error(\"rLast[0] === 0\");o=d;let m=[0],g=Xt.inv(r[0]);for(;Xt.degree(o)>=Xt.degree(r)&&o[0]!==0;){let b=Xt.degree(o)-Xt.degree(r),E=Xt.mul(o[0],g);m=Xt.addPoly(m,Xt.monomial(b,E)),o=Xt.addPoly(o,Xt.mulPolyMonomial(r,b,E))}if(m=Xt.mulPoly(m,i),a=Xt.addPoly(m,h),Xt.degree(o)>=Xt.degree(r))throw new Error(`Division failed r: ${o}, rLast: ${r}`)}let c=Xt.coefficient(a,0);if(c==0)throw new Error(\"sigmaTilde(0) was zero\");let u=Xt.inv(c);return[Xt.mulPolyScalar(a,u),Xt.mulPolyScalar(o,u)]}};Dne={DESKTOP:\"Desktop\",MOBILE:\"Mobile\",META_MASK_MOBILE_APP:\"MetaMask mobile app\",SCAN_TO_CONNECT:\"Scan to connect and sign with\",CONNECT_WITH_EXTENSION:\"Connect With MetaMask Extension\",INSTALL_MODAL:{TRUSTED_BY_USERS:\"Trusted by over 30 million users to buy, store, send and swap crypto securely\",LEADING_CRYPTO_WALLET:\"The leading crypto wallet & gateway to blockchain apps built on Ethereum Mainnet, Polygon, Optimism, and many other networks\",CONTROL_DIGITAL_INTERACTIONS:\"Puts you in control of your digital interactions by making power of cryptography more accessible\",INSTALL_META_MASK_EXTENSION:\"Install MetaMask Extension\"},PENDING_MODAL:{OPEN_META_MASK_SELECT_CODE:\"Please open the MetaMask wallet app and select the code on the screen OR disconnect\",OPEN_META_MASK_CONTINUE:\"Open the MetaMask app to continue with your session.\",NUMBER_AFTER_OPEN_NOTICE:\"If a number doesn\\'t appear after opening MetaMask, please click disconnect and re-scan the QRCode.\",DISCONNECT:\"Disconnect\"},SELECT_MODAL:{CRYPTO_TAKE_CONTROL_TEXT:\"Take control of your crypto and explore the blockchain with the wallet trusted by over 30 million people worldwide\"},META_MASK_MODAL:{ADDRESS_COPIED:\"Address copied to clipboard!\",DISCONNECT:\"Disconnect\",ACTIVE_NETWORK:\"Active Network\"}},qO=class{constructor(e){var n;this.translations=Dne,this.supportedLocales=[\"es\",\"fr\",\"he\",\"it\",\"pt\",\"tr\"],this.baseUrl=(n=e?.baseUrl)!==null&&n!==void 0?n:\"https://raw.githubusercontent.com/MetaMask/metamask-sdk/refs/heads/gh-pages/locales\"}getBrowserLanguage(){if((navigator.languages||[navigator.language]).some(n=>n.toLowerCase().startsWith(\"en\")))return\"en\";let e=navigator.language.toLowerCase().split(\"-\")[0];return this.supportedLocales.includes(e)?e:\"en\"}async init(e){let n=this.getBrowserLanguage()||e.fallbackLng;await this.loadTranslations(n)}async loadTranslations(e){let n=e.split(\"-\")[0];if(n!==\"en\"&&this.supportedLocales.includes(n))try{let r=`${this.baseUrl}/${n}.json`,o=await fetch(r);if(!o.ok)throw new Error(`HTTP error! status: ${o.status}`);this.translations=await o.json()}catch(r){console.warn(`\\\\u274C Failed to load ${n} translations, falling back to English:`,r),this.translations=Dne}else this.translations=Dne}t(e){return this.getNestedTranslation(e,this.translations)||e}getNestedTranslation(e,n){let r=e.split(\".\"),o=n;for(let i of r){if(typeof o!=\"object\")return\"\";o=o[i]}return typeof o==\"string\"?o:\"\"}};(function(t){t.SDK_MODAL_VIEWED=\"sdk_modal_viewed\",t.SDK_MODAL_BUTTON_CLICKED=\"sdk_modal_button_clicked\",t.SDK_MODAL_TOGGLE_CHANGED=\"sdk_modal_toggle_changed\"})(TO||(TO={}));m7e=class{constructor(t){noe(this,t),this.close=f3(this,\"close\",7),this.startDesktopOnboarding=f3(this,\"startDesktopOnboarding\",7),this.trackAnalytics=f3(this,\"trackAnalytics\",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.onClose=this.onClose.bind(this),this.onStartDesktopOnboardingHandler=this.onStartDesktopOnboardingHandler.bind(this),this.setTab=this.setTab.bind(this),this.render=this.render.bind(this),this.setTab(this.preferDesktop?1:2),this.i18nInstance=new qO}componentDidLoad(){this.trackAnalytics.emit({event:TO.SDK_MODAL_VIEWED,params:{extensionInstalled:!1,tab:this.tab===1?\"desktop\":\"mobile\"}})}async connectedCallback(){await this.i18nInstance.init({fallbackLng:\"en\"}),this.translationsLoaded=!0}updatePreferDesktop(t){t?this.setTab(1):this.setTab(2)}onClose(t=!1){this.close.emit({shouldTerminate:t})}onStartDesktopOnboardingHandler(){this.trackAnalytics.emit({event:TO.SDK_MODAL_BUTTON_CLICKED,params:{button_type:\"install_extension\",tab:\"desktop\"}}),this.startDesktopOnboarding.emit()}setTab(t,e=!1){e&&this.trackAnalytics.emit({event:TO.SDK_MODAL_TOGGLE_CHANGED,params:{toggle:this.tab===1?\"desktop_to_mobile\":\"mobile_to_desktop\"}}),this.tab=t,this.isDefaultTab=!1}render(){if(!this.translationsLoaded)return null;let t=r=>this.i18nInstance.t(r),e=this.isDefaultTab?this.preferDesktop?1:2:this.tab,n=p7e(this.link,\"svg\",{ecc:\"medium\",scale:2});return ve(loe,{className:\"install-model\"},ve(\"div\",{class:\"backdrop\",onClick:()=>this.onClose(!0)}),ve(\"div\",{class:\"modal\"},ve(\"div\",{class:\"closeButtonContainer\"},ve(\"div\",{class:\"right\"},ve(\"span\",{class:\"closeButton\",onClick:()=>this.onClose(!0)},ve(doe,null)))),ve(\"div\",{class:\"logoContainer\"},ve(foe,null)),ve(\"div\",null,ve(\"div\",{class:\"tabcontainer\"},ve(\"div\",{class:\"flexContainer\"},ve(\"div\",{onClick:()=>this.setTab(1,!0),class:\"tab flexItem \"+(e===1?\"tabactive\":\"\")},t(\"DESKTOP\")),ve(\"div\",{onClick:()=>this.setTab(2,!0),class:\"tab flexItem \"+(e===2?\"tabactive\":\"\")},t(\"MOBILE\")))),ve(\"div\",{style:{display:e===1?\"none\":\"block\"}},ve(\"div\",{class:\"flexContainer\"},ve(\"div\",{class:\"flexItem\",style:{textAlign:\"center\",marginTop:\"4\"}},n&&ve(\"div\",{id:\"sdk-mm-qrcode\",class:\"center\",innerHTML:n}),ve(\"div\",{class:\"connectMobileText\"},t(\"SCAN_TO_CONNECT\"),\" \",ve(\"br\",null),ve(\"span\",{class:\"blue\"},ve(\"b\",null,t(\"META_MASK_MOBILE_APP\"))))))),ve(\"div\",{style:{display:e===2?\"none\":\"block\"}},ve(\"div\",{class:\"item\"},ve(Bne,{Icon:Aat,text:t(\"INSTALL_MODAL.TRUSTED_BY_USERS\")})),ve(\"div\",{class:\"item\"},ve(Bne,{Icon:Cat,text:t(\"INSTALL_MODAL.LEADING_CRYPTO_WALLET\")})),ve(\"div\",{class:\"item\"},ve(Bne,{Icon:Tat,text:t(\"INSTALL_MODAL.CONTROL_DIGITAL_INTERACTIONS\")})),ve(\"button\",{class:\"button\",onClick:()=>this.onStartDesktopOnboardingHandler()},ve(Rat,null),ve(\"span\",{class:\"installExtensionText\"},t(\"INSTALL_MODAL.INSTALL_META_MASK_EXTENSION\"))))),ve(uoe,{version:this.sdkVersion})))}get el(){return yq(this)}static get watchers(){return{preferDesktop:[\"updatePreferDesktop\"]}}};m7e.style=`.flexContainer {\\n    display: flex;\\n    justify-content: center;\\n    align-items: center;\\n    flex-direction: row;\\n}\\n\\n.flexItem {\\n    flex: 1;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.flexItem11 {\\n    flex: 11;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.flexItem1 {\\n    flex: 1;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.tab {\\n    padding: 8px;\\n    cursor: pointer;\\n    background-color: #F2F4F6;\\n    font-size: 12px;\\n    text-align: center;\\n    color: #24292E;\\n}\\n\\n.tabcontainer {\\n    padding: 4px;\\n    background-color: #F2F4F6;\\n    border-radius: 8px;\\n    margin-bottom: 30px;\\n    margin-top: 30px;\\n}\\n\\n.tabactive {\\n    background-color: white;\\n    -webkit-transition: background-color 300ms linear;\\n    -ms-transition: background-color 300ms linear;\\n    transition: background-color 300ms linear;\\n    border-radius: 8px;\\n}\\n\\n.item {\\n    font-size: 12px;\\n    margin-bottom: 16px;\\n    border-radius: 8px;\\n    padding: 10px;\\n    border: 2px #F2F4F6 solid;\\n    color: #24292E;\\n}\\n\\n.extensionLabel {\\n    font-style: normal;\\n    font-weight: bold;\\n    font-size: 14px;\\n    text-align: cetner;\\n    color: #24272A;\\n}\\n\\n.notice {\\n    font-size: 12px;\\n    margin-left: 10px;\\n    margin-right: 10px;\\n    color: grey;\\n}\\n\\n.button {\\n    margin-top: 41.5px;\\n    margin-bottom: 20px;\\n    width: 100%;\\n    display: flex;\\n    flex-direction: row;\\n    justify-content: center;\\n    align-items: center;\\n    padding: 12px 20px;\\n    background: #037DD6;\\n    border-radius: 32px;\\n    color: white;\\n    border: 0;\\n    font-size: 14px;\\n    cursor: pointer;\\n}\\n\\n.backdrop {\\n    visibility: visible;\\n    position: fixed;\\n    top: 0;\\n    left: 0;\\n    right: 0;\\n    bottom: 0;\\n    width: 100%;\\n    z-index: 99998;\\n    background: rgba(0, 0, 0, 0.87);\\n    opacity: 0.3;\\n}\\n\\n.modal {\\n    visibility: visible;\\n    position: fixed;\\n    left: 50%;\\n    transform: translate(-50%, -50%);\\n    z-index: 99999;\\n    background: white;\\n    padding: 20px;\\n    border-radius: 8px;\\n    top: 50%;\\n    max-width: 100%;\\n    width: 460px;\\n    min-width: 300px;\\n    box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n    -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n    color: #BBC0C5;\\n    cursor: pointer;\\n}\\n\\n.logoContainer {\\n    margin-left: 24px;\\n    margin-right: 24px;\\n    margin-top: 24px;\\n    display: flex;\\n    align-items: center;\\n    justify-content: center;\\n}\\n\\n.connectMobileText {\\n    font-size: 14px;\\n    color: black;\\n    margin-top: 28px;\\n    margin-bottom: 28px;\\n    line-height: 2;\\n}\\n\\n.blue {\\n    color: #037DD6;\\n    font-weight: 700;\\n}\\n\\n.installExtensionText {\\n    margin-left: 10px;\\n}\\n\\n.center {\\n    display: flex;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.right {\\n    display: flex;\\n    align-items: center;\\n    justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n    svg {\\n        width: 50%;\\n    }\\n}`;g7e=class{constructor(t){noe(this,t),this.close=f3(this,\"close\",7),this.disconnect=f3(this,\"disconnect\",7),this.updateOTPValue=f3(this,\"updateOTPValue\",7),this.displayOTP=void 0,this.sdkVersion=void 0,this.otpCode=void 0,this.translationsLoaded=!1,this.i18nInstance=new qO}async connectedCallback(){await this.i18nInstance.init({fallbackLng:\"en\"}),this.translationsLoaded=!0}onClose(){this.close.emit()}onDisconnect(){this.disconnect.emit()}onUpdateOTPValueHandler(t){this.updateOTPValue.emit({otpValue:t})}disconnectedCallback(){this.onClose()}render(){var t;if(!this.translationsLoaded)return null;let e=(t=this.displayOTP)===null||t===void 0||t,n=this.sdkVersion,r=o=>this.i18nInstance.t(o);return ve(loe,{className:\"pending-modal\"},ve(\"div\",{class:\"backdrop\",onClick:()=>this.onClose()}),ve(\"div\",{class:\"modal\"},ve(\"div\",{class:\"closeButtonContainer\"},ve(\"div\",{class:\"right\"},ve(\"span\",{class:\"closeButton\",onClick:()=>this.onClose()},ve(doe,null)))),ve(\"div\",{class:\"logoContainer\"},ve(foe,null)),ve(\"div\",null,ve(\"div\",{class:\"flexContainer\",style:{flexDirection:\"column\",color:\"black\"}},ve(\"div\",{class:\"flexItem\",style:{textAlign:\"center\",marginTop:\"30px\",marginBottom:\"30px\",fontSize:\"16px\"}},r(e?\"PENDING_MODAL.OPEN_META_MASK_SELECT_CODE\":\"PENDING_MODAL.OPEN_META_MASK_CONTINUE\")),ve(\"div\",{id:\"sdk-mm-otp-value\",style:{padding:\"10px\",fontSize:\"32px\",display:this.otpCode?\"block\":\"none\"}},this.otpCode),e&&ve(\"div\",{class:\"notice\"},\"* \",r(\"PENDING_MODAL.NUMBER_AFTER_OPEN_NOTICE\"))),ve(\"div\",{style:{marginTop:\"20px\"}},ve(\"button\",{class:\"button blue\",style:{marginTop:\"5px\",color:\"#0376C9\",borderColor:\"#0376C9\",borderWidth:\"1px\",borderStyle:\"solid\",backgroundColor:\"white\"},onClick:()=>this.onDisconnect()},r(\"PENDING_MODAL.DISCONNECT\")))),ve(uoe,{version:n})))}get el(){return yq(this)}};g7e.style=`.flexContainer {\\n    display: flex;\\n    justify-content: center;\\n    align-items: center;\\n    flex-direction: row;\\n}\\n\\n.flexItem {\\n    flex: 1;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.flexItem11 {\\n    flex: 11;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.flexItem1 {\\n    flex: 1;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.tab {\\n    padding: 8px;\\n    cursor: pointer;\\n    background-color: #F2F4F6;\\n    font-size: 12px;\\n    text-align: center;\\n    color: #24292E;\\n}\\n\\n.tabcontainer {\\n    padding: 4px;\\n    background-color: #F2F4F6;\\n    border-radius: 8px;\\n    margin-bottom: 30px;\\n    margin-top: 30px;\\n}\\n\\n.tabactive {\\n    background-color: white;\\n    -webkit-transition: background-color 300ms linear;\\n    -ms-transition: background-color 300ms linear;\\n    transition: background-color 300ms linear;\\n    border-radius: 8px;\\n}\\n\\n.item {\\n    font-size: 12px;\\n    margin-bottom: 16px;\\n    border-radius: 8px;\\n    padding: 10px;\\n    border: 2px #F2F4F6 solid;\\n    color: #24292E;\\n}\\n\\n.extensionLabel {\\n    font-style: normal;\\n    font-weight: bold;\\n    font-size: 14px;\\n    text-align: cetner;\\n    color: #24272A;\\n}\\n\\n.notice {\\n    font-size: 12px;\\n    margin-left: 10px;\\n    margin-right: 10px;\\n    color: grey;\\n}\\n\\n.button {\\n    margin-top: 41.5px;\\n    margin-bottom: 20px;\\n    width: 100%;\\n    display: flex;\\n    flex-direction: row;\\n    justify-content: center;\\n    align-items: center;\\n    padding: 12px 20px;\\n    background: #037DD6;\\n    border-radius: 32px;\\n    color: white;\\n    border: 0;\\n    font-size: 14px;\\n    cursor: pointer;\\n}\\n\\n.backdrop {\\n    visibility: visible;\\n    position: fixed;\\n    top: 0;\\n    left: 0;\\n    right: 0;\\n    bottom: 0;\\n    width: 100%;\\n    z-index: 99998;\\n    background: rgba(0, 0, 0, 0.87);\\n    opacity: 0.3;\\n}\\n\\n.modal {\\n    visibility: visible;\\n    position: fixed;\\n    left: 50%;\\n    transform: translate(-50%, -50%);\\n    z-index: 99999;\\n    background: white;\\n    padding: 20px;\\n    border-radius: 8px;\\n    top: 50%;\\n    max-width: 100%;\\n    width: 460px;\\n    min-width: 300px;\\n    box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n    -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n    color: #BBC0C5;\\n    cursor: pointer;\\n}\\n\\n.logoContainer {\\n    margin-left: 24px;\\n    margin-right: 24px;\\n    margin-top: 24px;\\n    display: flex;\\n    align-items: center;\\n    justify-content: center;\\n}\\n\\n.connectMobileText {\\n    font-size: 14px;\\n    color: black;\\n    margin-top: 28px;\\n    margin-bottom: 28px;\\n    line-height: 2;\\n}\\n\\n.blue {\\n    color: #037DD6;\\n    font-weight: 700;\\n}\\n\\n.installExtensionText {\\n    margin-left: 10px;\\n}\\n\\n.center {\\n    display: flex;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.right {\\n    display: flex;\\n    align-items: center;\\n    justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n    svg {\\n        width: 50%;\\n    }\\n}`;Lat=()=>ve(\"svg\",{width:\"21\",height:\"15\",viewBox:\"0 0 21 15\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},ve(\"path\",{d:\"M14.1364 14.9851C13.5909 14.9851 13.2273 14.5851 13.2273 13.9851C13.2273 13.3851 13.5909 12.9851 14.1364 12.9851C16.6818 12.9851 18.6818 10.7851 18.6818 7.98508C18.6818 5.18508 16.6818 2.98508 14.1364 2.98508C11.5909 2.98508 9.59091 5.18508 9.59091 7.98508C9.59091 8.58508 9.22727 8.98508 8.68182 8.98508C8.13636 8.98508 7.77273 8.58508 7.77273 7.98508C7.77273 4.08508 10.5909 0.985077 14.1364 0.985077C17.6818 0.985077 20.5 4.08508 20.5 7.98508C20.5 11.8851 17.6818 14.9851 14.1364 14.9851ZM6.68182 14.7851C3.22727 14.7851 0.5 11.6851 0.5 7.98508C0.5 4.28508 3.22727 1.18508 6.68182 1.18508C7.22727 1.18508 7.59091 1.58508 7.59091 2.18508C7.59091 2.78508 7.22727 3.18508 6.68182 3.18508C4.22727 3.18508 2.31818 5.38508 2.31818 7.98508C2.31818 10.5851 4.22727 12.7851 6.68182 12.7851C9.13636 12.7851 11.0455 10.6851 11.0455 7.98508C11.0455 7.38508 11.4091 6.98508 11.9545 6.98508C12.5 6.98508 12.8636 7.38508 12.8636 7.98508C12.7727 11.6851 10.0455 14.7851 6.68182 14.7851Z\",fill:\"white\"})),Bat=()=>ve(\"svg\",{width:\"400\",height:\"300\",viewBox:\"0 0 467 300\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},ve(\"path\",{d:\"M312.387 280.629C312.549 280.583 312.247 280.735 312.387 280.629L339.678 260.425C340.088 260.118 340.132 259.156 340.07 258.647C340.008 258.138 339.573 258.257 339.106 258.084L311.712 247.455C311.292 247.301 311.308 247.402 310.939 247.673C310.569 247.944 310.356 248.21 310.356 248.672L310.459 279.504C310.461 280.025 311.163 280.619 311.614 280.847C311.913 280.996 312.072 280.718 312.387 280.629ZM336.204 259.736L312.979 276.292L313.439 251.139L336.204 259.736Z\",fill:\"url(#paint0_linear_1356_14057)\"}),ve(\"path\",{d:\"M324.639 260.342C324.358 259.547 323.485 258.91 322.707 259.215C319.6 260.432 318.17 262.313 317.287 264.066C316.482 265.665 316.197 267.482 314.188 268.269C312.178 269.055 310.763 268.663 309.162 268.007C307.406 267.287 305.504 266.182 302.397 267.399C299.289 268.616 297.859 270.497 296.976 272.25C296.171 273.849 295.697 274.886 293.685 275.673C291.675 276.459 290.261 276.067 288.659 275.411C286.903 274.691 284.999 273.587 281.894 274.803C278.789 276.019 277.549 278.681 276.666 280.434C275.861 282.034 275.386 283.07 273.374 283.857C272.596 284.161 271.931 285.055 272.211 285.849C272.492 286.644 273.365 287.281 274.143 286.977C277.25 285.76 278.68 283.879 279.563 282.125C280.368 280.526 280.65 278.71 282.662 277.923C284.672 277.136 286.087 277.528 287.688 278.184C289.444 278.904 291.348 280.009 294.453 278.793C297.561 277.576 298.991 275.695 299.874 273.941C300.679 272.342 301.153 271.306 303.165 270.519C305.175 269.732 306.589 270.124 308.191 270.78C309.947 271.5 311.849 272.605 314.956 271.388C318.063 270.172 319.301 267.511 320.184 265.757C320.989 264.158 321.466 263.121 323.476 262.335C324.254 262.032 324.919 261.137 324.639 260.342Z\",fill:\"url(#paint1_linear_1356_14057)\"}),ve(\"path\",{d:\"M389.034 111.124C388.968 112.406 387.342 113.113 386.324 113.549C384.297 114.419 382.089 114.493 379.942 114.5C376.607 114.509 373.215 114.163 369.89 113.976C366.712 113.798 363.156 113.311 360.03 114.232C357.705 114.919 355.667 116.762 353.452 117.739C351.129 118.765 348.957 119.198 346.489 119.687C335.569 121.85 323.587 120.825 312.656 119.977C311.92 119.92 312.539 118.997 313.237 118.981C313.207 118.815 313.001 118.394 313.045 118.201C313.086 118.029 312.781 117.586 312.853 117.421C312.67 117.198 313.316 117.427 313.626 117.204C315.912 115.557 318.721 114.79 321.363 115.041C324.677 115.355 327.293 116.04 330.641 115.781C334.392 115.491 338.125 114.787 341.857 114.312C345.142 113.892 349.09 113.941 352.106 112.28C352.916 111.834 353.137 111.262 353.269 110.287C353.331 109.828 353.672 108.969 353.658 108.511C353.629 107.529 354.191 107.886 355.013 107.298C356.857 105.981 358.274 105.516 360.428 105.784C362.841 106.083 365.264 107.273 367.578 107.953C370.761 108.888 374.328 108.646 377.631 108.477C380.517 108.329 383.141 107.901 385.944 108.653C387.013 108.941 389.104 109.745 389.034 111.124Z\",fill:\"url(#paint2_linear_1356_14057)\"}),ve(\"path\",{d:\"M278.118 85.4414C280.313 83.8186 283.302 83.9 285.853 83.2728C290.501 82.127 295.644 78.4476 300.549 79.1524C301.299 79.2595 300.904 81.0355 300.159 80.9295C300.131 80.9256 300.187 80.9333 300.159 80.9295C300.089 81.0185 299.516 81.1051 299.385 81.1463C294.999 82.515 292.895 87.5083 289.126 89.8598C287.799 90.688 286.771 90.8351 285.258 90.9441C283.515 91.0691 280.964 90.5775 279.269 90.1219C277.15 89.5532 275.965 87.034 278.118 85.4414Z\",fill:\"url(#paint3_linear_1356_14057)\"}),ve(\"path\",{d:\"M122.567 166.093C113.597 172.832 104.535 179.836 99.517 190.092C98.5342 192.099 97.519 195.019 97.9533 197.204C98.9699 202.316 105.76 203.049 110.691 201.96C113.468 201.347 116.325 199.231 115.921 196.319C115.576 193.81 113.158 192.986 112.072 190.73C110.779 188.04 112.35 184.97 114.218 182.62C128.134 165.099 150.074 157.394 171.093 151.607C175.385 150.425 180.897 147.69 180.581 143.099C180.372 140.072 177.118 137.683 174.221 137.383C171.324 137.082 168.481 138.773 165.715 139.776C158.416 142.419 151.17 143.799 143.489 143.526C136.865 143.29 130.976 143.316 129.562 150.781C128.138 158.276 129.53 160.863 122.567 166.093Z\",fill:\"url(#paint4_linear_1356_14057)\"}),ve(\"path\",{d:\"M79.1056 153.531C60.3932 164.378 43.7478 178.354 32.8214 197.415C30.3313 201.76 27.9216 206.554 27.1821 211.512C26.4448 216.47 27.7591 222.525 30.8133 226.337C34.908 231.446 41.6938 232.915 48.1811 233.125C50.7248 233.208 53.0035 233.066 55.3316 231.947C57.6602 230.83 59.7548 228.359 59.5978 225.742C59.3303 221.315 54.5491 219.665 50.9271 217.34C42.6566 212.037 40.4958 199.493 44.2381 190.032C47.9803 180.57 55.8228 173.173 63.2316 166.338C67.229 162.651 71.5194 158.372 76.777 157.522C79.9167 157.015 83.4706 157.589 86.6295 157.252C93.9004 156.479 99.64 151.404 105.588 146.912C115.048 139.765 126.045 134.283 137.501 132.093C141.913 131.248 146.293 130.493 149.682 127.831C151.37 126.507 150.803 123.567 148.726 123.93C138.542 125.713 128.652 131.135 119.142 134.758C105.627 139.914 91.7133 146.223 79.1056 153.531Z\",fill:\"url(#paint5_linear_1356_14057)\"}),ve(\"path\",{d:\"M96.3677 117.321C96.0315 116.64 95.2914 116.612 94.6293 116.975C91.9858 118.417 91.5452 120.509 90.9466 122.178C90.4004 123.702 89.3647 124.67 87.6542 125.604C85.9437 126.538 85.0983 126.316 83.5956 125.91C81.9481 125.465 79.8603 125.424 77.2168 126.866C74.5734 128.309 74.1348 130.401 73.5341 132.07C72.9879 133.593 71.9522 134.562 70.2417 135.496C68.5313 136.43 67.6859 136.208 66.1832 135.801C64.5357 135.357 62.2569 134.538 59.6128 135.978C56.9694 137.42 56.5308 139.512 55.9301 141.181C55.3839 142.705 54.5398 144.454 52.8293 145.388C52.1667 145.748 52.1006 146.485 52.439 147.165C52.7752 147.845 53.5153 147.874 54.1773 147.511C56.8208 146.069 57.2594 143.977 57.86 142.307C58.4062 140.784 59.4419 139.815 61.1524 138.881C62.8629 137.948 63.7083 138.17 65.211 138.576C66.8585 139.021 68.9458 139.059 71.5898 137.619C74.2333 136.177 74.6718 134.085 75.2725 132.416C75.8187 130.892 76.8544 129.924 78.5649 128.99C80.2754 128.056 81.1207 128.278 82.6235 128.684C84.2709 129.129 86.5503 129.95 89.1938 128.507C91.8373 127.065 92.2779 124.973 92.8765 123.304C93.4227 121.78 94.2663 120.03 95.9773 119.098C96.6378 118.738 96.7039 118.001 96.3677 117.321Z\",fill:\"#FBC49D\"}),ve(\"path\",{d:\"M391.827 164.699C392.04 164.639 392.39 164.573 392.6 164.481C393.87 163.921 395.363 162.429 395.893 161.051C396.421 159.673 396.237 158.321 395.712 156.931C394.629 154.061 391.777 152.62 389.155 153.775C386.531 154.931 384.962 158.455 386.042 161.325C387.038 163.963 389.369 165.392 391.827 164.699ZM394.166 157.367C394.529 158.332 394.52 159.751 394.156 160.706C393.792 161.662 393.1 162.534 392.218 162.921C390.398 163.723 388.338 162.878 387.589 160.889C387.226 159.925 387.234 158.506 387.599 157.55C387.963 156.594 388.654 155.723 389.536 155.336C391.356 154.534 393.416 155.376 394.166 157.367Z\",fill:\"#86E29B\"}),ve(\"path\",{d:\"M62.7198 108.691C64.4912 108.191 66.6152 106.609 67.5596 104.824C68.4273 103.187 68.465 101.455 67.9609 99.7066C67.4547 97.9586 66.0792 96.5141 64.4963 95.6786C62.9135 94.843 61.2077 94.8578 59.4756 95.4255C57.7435 95.9933 56.2768 97.4364 55.409 99.074C53.6185 102.456 55.2032 106.494 58.4723 108.22C60.0142 109.035 61.1315 109.138 62.7198 108.691ZM60.6304 96.7682C61.819 96.4332 63.0232 96.8871 64.1048 97.4571C65.2463 98.0603 66.0495 98.8796 66.4145 100.142C66.7791 101.403 66.4488 103.299 65.8224 104.48C64.5299 106.919 61.2212 107.686 58.8638 106.441C56.5063 105.197 55.8538 101.858 57.1462 99.4185C57.7726 98.2375 58.6059 97.3957 59.8573 96.9862C59.9214 96.9635 60.5631 96.7872 60.6304 96.7682Z\",fill:\"#FFB0EB\"}),ve(\"path\",{d:\"M77.0217 242.979C75.9542 243.28 75.1664 242.151 74.9029 241.074C74.6394 239.996 75 239.378 76.0676 239.077C77.1351 238.776 78.5053 238.907 78.7688 239.984C79.0323 241.061 78.0893 242.678 77.0217 242.979Z\",fill:\"url(#paint6_linear_1356_14057)\"}),ve(\"path\",{d:\"M380.506 184.577C379.439 184.878 378.651 183.749 378.387 182.672C378.124 181.594 378.484 180.976 379.552 180.675C380.619 180.374 381.99 180.505 382.253 181.582C382.517 182.659 381.574 184.276 380.506 184.577Z\",fill:\"url(#paint7_linear_1356_14057)\"}),ve(\"path\",{d:\"M348.82 246.969C347.752 247.27 346.382 247.14 346.119 246.063C345.855 244.985 346.798 243.369 347.866 243.068C348.933 242.767 349.721 243.896 349.985 244.973C350.248 246.05 349.888 246.669 348.82 246.969Z\",fill:\"url(#paint8_linear_1356_14057)\"}),ve(\"path\",{d:\"M140.419 282.412C139.351 282.713 138.754 282.365 138.491 281.288C138.227 280.21 138.397 278.812 139.464 278.511C140.532 278.21 142.093 279.121 142.357 280.198C142.62 281.275 141.486 282.111 140.419 282.412Z\",fill:\"url(#paint9_linear_1356_14057)\"}),ve(\"path\",{d:\"M121.462 101.679C120.395 101.979 119.798 101.631 119.534 100.554C119.271 99.4764 119.44 98.0779 120.508 97.777C121.575 97.4761 123.136 98.3868 123.4 99.4642C123.663 100.542 122.53 101.378 121.462 101.679Z\",fill:\"url(#paint10_linear_1356_14057)\"}),ve(\"path\",{d:\"M370.749 159.005C369.682 159.306 368.311 159.175 368.048 158.098C367.784 157.021 368.727 155.404 369.795 155.103C370.863 154.802 371.65 155.931 371.914 157.008C372.177 158.086 371.817 158.704 370.749 159.005Z\",fill:\"url(#paint11_linear_1356_14057)\"}),ve(\"path\",{d:\"M384.211 245.345C383.143 245.646 381.773 245.515 381.51 244.438C381.246 243.361 382.189 241.744 383.257 241.443C384.324 241.142 385.112 242.271 385.376 243.348C385.639 244.426 385.278 245.044 384.211 245.345Z\",fill:\"url(#paint12_linear_1356_14057)\"}),ve(\"path\",{d:\"M364.771 41.3873C363.063 41.8687 361.337 40.8616 360.915 39.1378C360.493 37.414 361.536 35.6263 363.244 35.1449C364.953 34.6634 366.679 35.6706 367.101 37.3944C367.522 39.1182 366.479 40.9059 364.771 41.3873Z\",fill:\"url(#paint13_linear_1356_14057)\"}),ve(\"path\",{d:\"M404.311 77.905C404.602 77.8231 404.875 77.9236 405.084 77.6871C405.437 77.2908 404.814 76.6385 404.703 76.1265L401.277 58.7418C401.149 58.163 400.687 57.5371 400.123 57.3991C399.558 57.2611 398.969 57.3812 398.576 57.835L385.784 73.1179C385.395 73.564 385.199 74.3453 385.393 74.8964C385.585 75.4481 385.978 76.1646 386.548 76.2391L403.538 78.123C403.744 78.1479 404.114 77.9607 404.311 77.905ZM398.948 62.7348L401.811 74.4394L389.841 72.8085L398.948 62.7348Z\",fill:\"#FFB0EB\"}),ve(\"path\",{d:\"M97.5393 295.311C97.7108 295.263 97.4284 295.461 97.5393 295.311L108.785 280.464C108.975 280.211 108.718 279.972 108.594 279.684C108.47 279.396 108.124 279.917 107.821 279.902L88.5106 278.672C88.2101 278.659 87.895 278.62 87.7374 278.89C87.5798 279.159 87.7755 279.402 87.9283 279.67L96.5753 294.749C96.7102 294.99 97.2696 295.297 97.5393 295.311C97.6283 295.319 97.4556 295.335 97.5393 295.311ZM106.465 281.118L96.9667 292.97L90.6295 280.577L106.465 281.118Z\",fill:\"#86E29B\"}),ve(\"path\",{d:\"M393.699 108.848C389.518 104.446 414.629 114.366 413.945 120.659C413.259 126.952 401.355 129.102 403.894 123.491C406.042 118.747 400.376 115.876 393.699 108.848Z\",fill:\"#FBC49D\"}),ve(\"path\",{d:\"M139.414 115.959C139.434 115.953 139.392 115.965 139.414 115.959C141.963 115.2 143.436 111.976 142.717 109.189C142.37 107.839 141.526 107.199 140.408 106.504C139.289 105.808 138.171 105.449 136.933 105.815C135.698 106.182 134.85 107.033 134.222 108.247C133.595 109.461 133.282 111.234 133.63 112.585C133.978 113.935 134.821 114.574 135.94 115.27C137.04 115.952 138.199 116.301 139.414 115.959ZM137.315 107.375C138.222 107.12 139.005 106.994 139.825 107.502C140.661 108.02 140.912 108.618 141.171 109.625C141.708 111.704 140.935 113.834 139.032 114.398C138.11 114.675 137.356 114.791 136.522 114.272C135.686 113.753 135.436 113.155 135.176 112.149C134.917 111.142 134.718 109.714 135.186 108.81C135.654 107.905 136.394 107.649 137.315 107.375C137.329 107.371 137.299 107.38 137.315 107.375Z\",fill:\"#75C4FD\"}),ve(\"path\",{d:\"M308.981 78.7519C310.052 78.4043 311.158 78.7096 312.265 78.6613C313.655 78.6006 314.936 78.517 316.323 78.3531C319.497 77.9795 322.798 77.4906 325.984 77.3012C329.309 77.1025 332.514 76.8551 335.836 77.0295C338.809 77.1842 342.163 77.3405 345.105 77.7558C352.129 78.7468 359.331 79.0578 366.347 80.1158C372.252 81.008 377.93 82.1319 383.722 83.5644C385.925 84.0054 388.267 85.0754 389.126 85.3792C389.421 85.4833 389.37 85.8347 389.317 86.1595C389.306 86.2271 389.353 86.1146 389.317 86.1595C388.269 87.414 386.564 86.8124 385.259 86.4677C384.406 86.241 381.488 85.9494 381.011 85.9957C380.14 86.0815 379.277 86.014 379.656 87.2114C380.122 88.6824 382.391 89.7375 383.704 90.2419C385.883 91.0803 388.771 91.2561 390.845 92.4015C392.968 92.821 395.425 93.5002 397.022 93.9986C402.83 95.8103 407.806 98.8678 413.033 102.002C415.503 103.482 417.829 104.764 419.973 106.72C421.647 108.248 423.771 109.882 424.595 112.091C425.113 113.482 424.451 115.471 422.848 115.085C420.353 114.488 419.638 111.665 418.227 109.714C415.003 105.251 410.067 102.067 405.118 100.06C402.64 99.0556 399.803 98.729 397.204 98.1176C394.411 97.4613 391.597 97.0442 388.707 97.1736C385.646 97.3097 382.846 97.5534 379.819 98.0078C377.027 98.4264 374.252 98.4441 371.514 97.8441C368.766 97.2421 366.276 96.7553 363.6 95.9021C361.662 95.2848 359.013 94.5583 357.232 93.5247C355.699 92.6339 355.631 91.2381 357.241 90.186C359.87 88.4656 362.778 89.8021 365.546 90.3497C365.561 90.3527 365.532 90.3468 365.546 90.3497C367.858 90.804 369.649 90.098 371.923 89.3884C372.489 89.2128 373.255 89.0482 373.47 88.953C374.383 88.5432 375.895 87.8227 375.407 86.7394C374.868 85.5457 372.659 84.8846 371.55 84.4891C369.74 83.8428 368.053 82.9215 366.147 82.6743C365.654 82.6095 365.109 83.1606 364.6 83.1097C363.36 83.1121 361.769 83.348 360.543 83.418C357.43 83.5916 354.583 83.6228 351.464 83.4719C348.714 83.3377 346.432 82.8542 343.741 82.3102C340.773 81.7101 337.52 81.5879 334.471 81.5839C331.393 81.5811 328.6 81.7214 325.583 82.4181C322.758 83.0702 319.757 83.6198 316.887 84.0326C314.698 84.3481 312.467 84.6054 310.319 84.2137C309.079 83.9871 306.994 83.3394 306.461 81.9635C305.846 80.3659 307.736 79.1556 308.981 78.7519Z\",fill:\"url(#paint14_linear_1356_14057)\"}),ve(\"path\",{d:\"M242.269 242.95C242.295 242.947 242.244 242.955 242.269 242.95C244.934 242.606 247.53 241.858 250.2 241.574C253.133 241.264 256.006 240.56 258.906 239.982C263.26 239.117 268.026 238.52 272.254 237.097C274.429 236.365 276.067 235.298 278.251 234.592C280.361 233.909 283.058 233.12 285.216 232.652C289.317 231.764 293.049 231.66 297.016 230.198C301.109 228.69 305.088 226.673 308.819 224.409C312.645 222.086 316.282 219.769 320.622 218.62C322.381 218.154 323.919 218.219 325.65 218.886C327.016 219.413 327.739 220.337 327.196 221.79C326.557 223.504 324.659 224.7 323.131 225.423C320.854 226.5 319.53 227.184 317.134 227.927C314.619 228.707 311.888 229.24 309.395 230.083C308.226 230.947 307.17 232.522 306.105 233.501C303.996 235.441 301.666 237.03 298.945 237.996C292.934 240.129 286.354 238.602 280.183 239.056C279.661 239.095 279.162 239.442 278.635 239.487C275.592 240.135 272.2 240.63 269.156 241.294C264.546 242.299 260.456 243.409 255.808 244.179C251.971 244.814 243.815 245.854 243.815 245.854L242.074 245.505C240.575 245.281 240.751 243.152 242.269 242.95Z\",fill:\"url(#paint15_linear_1356_14057)\"}),ve(\"path\",{d:\"M432.985 171.626C438.212 165.465 445.109 153.64 442.906 144.649C442.162 137.999 433.671 132.912 424.963 135.518C420.16 136.957 416.435 142.146 419.724 144.498C420.656 145.164 422.187 145.591 423.391 145.969C434.204 149.375 434.925 162.538 425.069 169.683C421.087 172.569 416.347 174.292 411.914 176.719C400.151 183.162 399.887 196.847 387.7 202.712C382.326 205.298 375.761 206.838 370.297 209.275C359.98 213.88 352.555 221.733 342.241 226.341C337.225 228.584 330.266 231.632 323.483 234.12C321.475 234.855 321.999 237.058 324.056 236.46C324.098 236.449 324.017 236.474 324.056 236.46C329.079 234.971 334.437 233.161 339.331 231.33C352.278 226.48 365.28 220.971 377.43 214.775C401.78 202.367 416.881 190.609 432.985 171.626Z\",fill:\"url(#paint16_linear_1356_14057)\"}),ve(\"path\",{d:\"M343.644 241.104C348.002 234.144 357.126 232.455 364.343 231.134C368.176 230.431 372.406 229.878 376.137 228.662C380.691 227.175 384.558 224.095 388.327 221.077C389.452 220.177 391.204 218.466 392.393 217.436C393.185 216.748 393.644 216.026 394.33 215.225C396 213.275 399.599 209.812 401.687 208.16C403.263 206.914 407.779 204.758 408.259 207.986C408.611 210.359 406.379 213.087 404.961 214.747C402.224 217.953 398.998 221.079 395.475 223.243C391.749 225.531 387.701 227.439 383.674 229.051C381.672 229.853 379.519 230.073 377.486 230.785C376.001 231.307 374.486 232.236 373.037 232.866C371.034 233.738 368.99 234.28 367.041 235.38C364.436 236.849 361.782 238.783 359.108 240.105C356.331 241.477 353.823 242.691 350.791 243.27C348.6 243.687 345.501 243.641 343.836 241.884C343.526 241.554 343.389 241.51 343.644 241.104Z\",fill:\"url(#paint17_linear_1356_14057)\"}),ve(\"path\",{d:\"M190.163 273.219C222.905 268.849 232.64 262.943 213.962 259.057C195.285 255.172 187.5 262.08 188.434 266.2C189.366 270.32 180.381 271.326 169.286 272.39C158.193 273.454 157.141 276.354 190.163 273.219Z\",fill:\"url(#paint18_linear_1356_14057)\"}),ve(\"path\",{d:\"M295.952 95.4242L241.395 135.226L251.54 111.77L295.952 95.4242Z\",fill:\"#E17726\",stroke:\"#E17726\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M170.111 95.4242L224.181 135.598L214.522 111.77L170.111 95.4242Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M276.309 187.712L261.793 209.576L292.876 218.014L301.78 188.189L276.309 187.712Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M164.336 188.189L173.186 218.014L204.215 209.576L189.753 187.712L164.336 188.189Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M202.542 150.776L193.908 163.618L224.667 164.998L223.642 132.36L202.542 150.776Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M263.52 150.775L242.097 131.989L241.395 164.998L272.154 163.618L263.52 150.775Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M204.215 209.576L222.832 200.714L206.805 188.402L204.215 209.576Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M243.23 200.714L261.793 209.576L259.257 188.402L243.23 200.714Z\",fill:\"#E27625\",stroke:\"#E27625\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M261.793 209.576L243.23 200.714L244.741 212.601L244.579 217.643L261.793 209.576Z\",fill:\"#D5BFB2\",stroke:\"#D5BFB2\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M204.215 209.576L221.483 217.643L221.375 212.601L222.832 200.714L204.215 209.576Z\",fill:\"#D5BFB2\",stroke:\"#D5BFB2\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M221.807 180.547L206.373 176.09L217.274 171.154L221.807 180.547Z\",fill:\"#233447\",stroke:\"#233447\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M244.255 180.547L248.788 171.154L259.742 176.09L244.255 180.547Z\",fill:\"#233447\",stroke:\"#233447\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M204.215 209.576L206.913 187.712L189.753 188.189L204.215 209.576Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M259.149 187.712L261.793 209.576L276.309 188.189L259.149 187.712Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M272.154 163.618L241.395 164.998L244.255 180.547L248.788 171.154L259.742 176.09L272.154 163.618Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M206.373 176.09L217.274 171.154L221.807 180.547L224.667 164.998L193.908 163.618L206.373 176.09Z\",fill:\"#CC6228\",stroke:\"#CC6228\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M193.908 163.618L206.805 188.402L206.373 176.09L193.908 163.618Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M259.743 176.09L259.257 188.402L272.154 163.618L259.743 176.09Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M224.667 164.998L221.807 180.548L225.422 198.909L226.232 174.71L224.667 164.998Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M241.395 164.998L239.884 174.657L240.64 198.909L244.255 180.548L241.395 164.998Z\",fill:\"#E27525\",stroke:\"#E27525\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M244.255 180.547L240.64 198.909L243.23 200.714L259.257 188.402L259.743 176.09L244.255 180.547Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M206.373 176.09L206.805 188.402L222.832 200.714L225.422 198.909L221.807 180.547L206.373 176.09Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M244.579 217.643L244.741 212.601L243.338 211.434H222.724L221.375 212.601L221.483 217.643L204.215 209.576L210.259 214.459L222.508 222.791H243.5L255.803 214.459L261.793 209.576L244.579 217.643Z\",fill:\"#C0AC9D\",stroke:\"#C0AC9D\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M243.23 200.714L240.64 198.909H225.422L222.832 200.714L221.375 212.601L222.724 211.434H243.338L244.741 212.601L243.23 200.714Z\",fill:\"#161616\",stroke:\"#161616\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M298.272 137.827L302.859 115.856L295.952 95.4242L243.23 133.899L263.52 150.775L292.174 159.001L298.488 151.731L295.736 149.767L300.107 145.84L296.761 143.293L301.132 140.002L298.272 137.827Z\",fill:\"#763E1A\",stroke:\"#763E1A\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M163.203 115.856L167.844 137.827L164.876 140.002L169.301 143.293L165.955 145.84L170.326 149.767L167.574 151.731L173.888 159.001L202.542 150.775L222.832 133.899L170.11 95.4242L163.203 115.856Z\",fill:\"#763E1A\",stroke:\"#763E1A\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M292.175 159.001L263.52 150.775L272.154 163.618L259.257 188.402L276.309 188.189H301.78L292.175 159.001Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M202.542 150.775L173.888 159.001L164.336 188.189H189.753L206.805 188.402L193.908 163.618L202.542 150.775Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"path\",{d:\"M241.395 164.998L243.23 133.9L251.54 111.77H214.522L222.832 133.9L224.667 164.998L225.368 174.763L225.422 198.909H240.64L240.694 174.763L241.395 164.998Z\",fill:\"#F5841F\",stroke:\"#F5841F\",\"stroke-width\":\"0.94513\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),ve(\"defs\",null,ve(\"linearGradient\",{id:\"paint0_linear_1356_14057\",x1:\"335.991\",y1:\"250.487\",x2:\"303.873\",y2:\"266.801\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#FFE466\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),ve(\"linearGradient\",{id:\"paint1_linear_1356_14057\",x1:\"276.993\",y1:\"303.722\",x2:\"205.254\",y2:\"401.574\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"0.0929\",\"stop-color\":\"#81C2F6\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#F0B8BD\"})),ve(\"linearGradient\",{id:\"paint2_linear_1356_14057\",x1:\"271.074\",y1:\"119.924\",x2:\"553.077\",y2:\"104.53\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#FFE466\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),ve(\"linearGradient\",{id:\"paint3_linear_1356_14057\",x1:\"264.209\",y1:\"91.0943\",x2:\"357.834\",y2:\"72.8792\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#FFE466\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),ve(\"linearGradient\",{id:\"paint4_linear_1356_14057\",x1:\"212.46\",y1:\"121.997\",x2:\"92.6119\",y2:\"183.406\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#FFE466\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),ve(\"linearGradient\",{id:\"paint5_linear_1356_14057\",x1:\"23.0498\",y1:\"204.411\",x2:\"161.86\",y2:\"163.003\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"0.0929\",\"stop-color\":\"#81C2F6\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#F0B8BD\"})),ve(\"linearGradient\",{id:\"paint6_linear_1356_14057\",x1:\"78.8647\",y1:\"240.375\",x2:\"74.9655\",y2:\"241.328\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),ve(\"linearGradient\",{id:\"paint7_linear_1356_14057\",x1:\"382.349\",y1:\"181.971\",x2:\"378.45\",y2:\"182.925\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),ve(\"linearGradient\",{id:\"paint8_linear_1356_14057\",x1:\"349.889\",y1:\"244.583\",x2:\"345.99\",y2:\"245.537\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),ve(\"linearGradient\",{id:\"paint9_linear_1356_14057\",x1:\"142.262\",y1:\"279.808\",x2:\"138.362\",y2:\"280.762\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),ve(\"linearGradient\",{id:\"paint10_linear_1356_14057\",x1:\"123.305\",y1:\"99.0746\",x2:\"119.406\",y2:\"100.028\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),ve(\"linearGradient\",{id:\"paint11_linear_1356_14057\",x1:\"371.818\",y1:\"156.617\",x2:\"367.919\",y2:\"157.571\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),ve(\"linearGradient\",{id:\"paint12_linear_1356_14057\",x1:\"385.281\",y1:\"242.958\",x2:\"381.382\",y2:\"243.911\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),ve(\"linearGradient\",{id:\"paint13_linear_1356_14057\",x1:\"367.125\",y1:\"37.5052\",x2:\"360.843\",y2:\"38.8076\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#75C3FC\"})),ve(\"linearGradient\",{id:\"paint14_linear_1356_14057\",x1:\"300.182\",y1:\"91.321\",x2:\"479.464\",y2:\"104.041\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#FFE466\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),ve(\"linearGradient\",{id:\"paint15_linear_1356_14057\",x1:\"363.434\",y1:\"201.232\",x2:\"102.977\",y2:\"302.269\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#FFE466\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})),ve(\"linearGradient\",{id:\"paint16_linear_1356_14057\",x1:\"447.962\",y1:\"165.159\",x2:\"313.049\",y2:\"197.95\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"0.0929\",\"stop-color\":\"#81C2F6\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#F0B8BD\"})),ve(\"linearGradient\",{id:\"paint17_linear_1356_14057\",x1:\"410.211\",y1:\"215.859\",x2:\"341.378\",y2:\"232.788\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#75C3FC\"}),ve(\"stop\",{offset:\"0.0929\",\"stop-color\":\"#81C2F6\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#F0B8BD\"})),ve(\"linearGradient\",{id:\"paint18_linear_1356_14057\",x1:\"222.282\",y1:\"258.986\",x2:\"162.257\",y2:\"273.774\",gradientUnits:\"userSpaceOnUse\"},ve(\"stop\",{\"stop-color\":\"#FFE466\"}),ve(\"stop\",{offset:\"1\",\"stop-color\":\"#FFAFEA\"})))),y7e=class{constructor(t){noe(this,t),this.close=f3(this,\"close\",7),this.connectWithExtension=f3(this,\"connectWithExtension\",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.i18nInstance=new qO,this.setTab(this.preferDesktop?1:2)}async connectedCallback(){await this.i18nInstance.init({fallbackLng:\"en\"}),this.translationsLoaded=!0}onClose(t=!1){this.close.emit({shouldTerminate:t})}connectWithExtensionHandler(){this.connectWithExtension.emit()}setTab(t){this.tab=t,this.isDefaultTab=!1}disconnectedCallback(){this.onClose()}updatePreferDesktop(t){t?this.setTab(1):this.setTab(2)}render(){if(!this.translationsLoaded)return null;let t=o=>this.i18nInstance.t(o),e=this.sdkVersion,n=this.isDefaultTab?this.preferDesktop?1:2:this.tab,r=p7e(this.link,\"svg\",{ecc:\"medium\",scale:2});return ve(loe,{className:\"select-modal\"},ve(\"div\",{class:\"backdrop\",onClick:()=>this.onClose(!0)}),ve(\"div\",{class:\"modal\"},ve(\"div\",{class:\"closeButtonContainer\"},ve(\"div\",{class:\"right\"},ve(\"span\",{class:\"closeButton\",onClick:()=>this.onClose(!0)},ve(doe,null)))),ve(\"div\",{class:\"logoContainer\"},ve(foe,null)),ve(\"div\",null,ve(\"div\",{class:\"tabcontainer\"},ve(\"div\",{class:\"flexContainer\"},ve(\"div\",{onClick:()=>this.setTab(1),class:\"tab flexItem \"+(n===1?\"tabactive\":\"\")},t(\"DESKTOP\")),ve(\"div\",{onClick:()=>this.setTab(2),class:\"tab flexItem \"+(n===2?\"tabactive\":\"\")},t(\"MOBILE\")))),ve(\"div\",{style:{display:n===1?\"none\":\"block\"}},ve(\"div\",{class:\"flexContainer\"},ve(\"div\",{class:\"flexItem\",style:{textAlign:\"center\",marginTop:\"4\"}},ve(\"div\",{class:\"center\",id:\"sdk-mm-qrcode\",innerHTML:r}),ve(\"div\",{class:\"connectMobileText\"},t(\"SCAN_TO_CONNECT\"),ve(\"br\",null),ve(\"span\",{class:\"blue\"},ve(\"b\",null,t(\"META_MASK_MOBILE_APP\"))))))),ve(\"div\",{style:{display:n===2?\"none\":\"block\"}},ve(\"div\",{style:{display:\"flex\",justifyContent:\"center\",height:\"300\",marginTop:\"-20\"}},ve(Bat,null)),ve(\"div\",{class:\"extensionLabel\"},t(\"SELECT_MODAL.CRYPTO_TAKE_CONTROL_TEXT\")),ve(\"button\",{class:\"button\",onClick:()=>this.connectWithExtensionHandler()},ve(Lat,null),ve(\"span\",{class:\"installExtensionText\"},t(\"CONNECT_WITH_EXTENSION\"))))),ve(uoe,{version:e})))}get el(){return yq(this)}static get watchers(){return{preferDesktop:[\"updatePreferDesktop\"]}}};y7e.style=`.flexContainer {\\n    display: flex;\\n    justify-content: center;\\n    align-items: center;\\n    flex-direction: row;\\n}\\n\\n.flexItem {\\n    flex: 1;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.flexItem11 {\\n    flex: 11;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.flexItem1 {\\n    flex: 1;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.tab {\\n    padding: 8px;\\n    cursor: pointer;\\n    background-color: #F2F4F6;\\n    font-size: 12px;\\n    text-align: center;\\n    color: #24292E;\\n}\\n\\n.tabcontainer {\\n    padding: 4px;\\n    background-color: #F2F4F6;\\n    border-radius: 8px;\\n    margin-bottom: 30px;\\n    margin-top: 30px;\\n}\\n\\n.tabactive {\\n    background-color: white;\\n    -webkit-transition: background-color 300ms linear;\\n    -ms-transition: background-color 300ms linear;\\n    transition: background-color 300ms linear;\\n    border-radius: 8px;\\n}\\n\\n.item {\\n    font-size: 12px;\\n    margin-bottom: 16px;\\n    border-radius: 8px;\\n    padding: 10px;\\n    border: 2px #F2F4F6 solid;\\n    color: #24292E;\\n}\\n\\n.extensionLabel {\\n    font-style: normal;\\n    font-weight: bold;\\n    font-size: 14px;\\n    text-align: cetner;\\n    color: #24272A;\\n}\\n\\n.notice {\\n    font-size: 12px;\\n    margin-left: 10px;\\n    margin-right: 10px;\\n    color: grey;\\n}\\n\\n.button {\\n    margin-top: 41.5px;\\n    margin-bottom: 20px;\\n    width: 100%;\\n    display: flex;\\n    flex-direction: row;\\n    justify-content: center;\\n    align-items: center;\\n    padding: 12px 20px;\\n    background: #037DD6;\\n    border-radius: 32px;\\n    color: white;\\n    border: 0;\\n    font-size: 14px;\\n    cursor: pointer;\\n}\\n\\n.backdrop {\\n    visibility: visible;\\n    position: fixed;\\n    top: 0;\\n    left: 0;\\n    right: 0;\\n    bottom: 0;\\n    width: 100%;\\n    z-index: 99998;\\n    background: rgba(0, 0, 0, 0.87);\\n    opacity: 0.3;\\n}\\n\\n.modal {\\n    visibility: visible;\\n    position: fixed;\\n    left: 50%;\\n    transform: translate(-50%, -50%);\\n    z-index: 99999;\\n    background: white;\\n    padding: 20px;\\n    border-radius: 8px;\\n    top: 50%;\\n    max-width: 100%;\\n    width: 460px;\\n    min-width: 300px;\\n    box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n    -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n    color: #BBC0C5;\\n    cursor: pointer;\\n}\\n\\n.logoContainer {\\n    margin-left: 24px;\\n    margin-right: 24px;\\n    margin-top: 24px;\\n    display: flex;\\n    align-items: center;\\n    justify-content: center;\\n}\\n\\n.connectMobileText {\\n    font-size: 14px;\\n    color: black;\\n    margin-top: 28px;\\n    margin-bottom: 28px;\\n    line-height: 2;\\n}\\n\\n.blue {\\n    color: #037DD6;\\n    font-weight: 700;\\n}\\n\\n.installExtensionText {\\n    margin-left: 10px;\\n}\\n\\n.center {\\n    display: flex;\\n    justify-content: center;\\n    align-items: center;\\n}\\n\\n.right {\\n    display: flex;\\n    align-items: center;\\n    justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n    svg {\\n        width: 50%;\\n    }\\n}`;Dat=Object.freeze({__proto__:null,mm_install_modal:m7e,mm_pending_modal:g7e,mm_select_modal:y7e})});var W7e=be((ggn,q7e)=>{\"use strict\";p();var Tq=Xy().Buffer;function Alt(t){if(t.length>=255)throw new TypeError(\"Alphabet too long\");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var r=0;r<t.length;r++){var o=t.charAt(r),i=o.charCodeAt(0);if(e[i]!==255)throw new TypeError(o+\" is ambiguous\");e[i]=r}var a=t.length,c=t.charAt(0),u=Math.log(a)/Math.log(256),d=Math.log(256)/Math.log(a);function h(b){if((Array.isArray(b)||b instanceof Uint8Array)&&(b=Tq.from(b)),!Tq.isBuffer(b))throw new TypeError(\"Expected Buffer\");if(b.length===0)return\"\";for(var E=0,C=0,T=0,R=b.length;T!==R&&b[T]===0;)T++,E++;for(var L=(R-T)*d+1>>>0,D=new Uint8Array(L);T!==R;){for(var G=b[T],W=0,J=L-1;(G!==0||W<C)&&J!==-1;J--,W++)G+=256*D[J]>>>0,D[J]=G%a>>>0,G=G/a>>>0;if(G!==0)throw new Error(\"Non-zero carry\");C=W,T++}for(var ne=L-C;ne!==L&&D[ne]===0;)ne++;for(var ie=c.repeat(E);ne<L;++ne)ie+=t.charAt(D[ne]);return ie}function m(b){if(typeof b!=\"string\")throw new TypeError(\"Expected String\");if(b.length===0)return Tq.alloc(0);for(var E=0,C=0,T=0;b[E]===c;)C++,E++;for(var R=(b.length-E)*u+1>>>0,L=new Uint8Array(R);E<b.length;){var D=b.charCodeAt(E);if(D>255)return;var G=e[D];if(G===255)return;for(var W=0,J=R-1;(G!==0||W<T)&&J!==-1;J--,W++)G+=a*L[J]>>>0,L[J]=G%256>>>0,G=G/256>>>0;if(G!==0)throw new Error(\"Non-zero carry\");T=W,E++}for(var ne=R-T;ne!==R&&L[ne]===0;)ne++;var ie=Tq.allocUnsafe(C+(R-ne));ie.fill(0,0,C);for(var Z=C;ne!==R;)ie[Z++]=L[ne++];return ie}function g(b){var E=m(b);if(E)return E;throw new Error(\"Non-base\"+a+\" character\")}return{encode:h,decodeUnsafe:m,decode:g}}q7e.exports=Alt});var koe=be((bgn,V7e)=>{p();var Tlt=W7e(),Rlt=\"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz\";V7e.exports=Tlt(Rlt)});var $7e=be(Aoe=>{\"use strict\";p();function n2(t,e,n){return e<=t&&t<=n}function Mq(t){if(t===void 0)return{};if(t===Object(t))return t;throw TypeError(\"Could not convert argument to dictionary\")}function Ilt(t){for(var e=String(t),n=e.length,r=0,o=[];r<n;){var i=e.charCodeAt(r);if(i<55296||i>57343)o.push(i);else if(56320<=i&&i<=57343)o.push(65533);else if(55296<=i&&i<=56319)if(r===n-1)o.push(65533);else{var a=t.charCodeAt(r+1);if(56320<=a&&a<=57343){var c=i&1023,u=a&1023;o.push(65536+(c<<10)+u),r+=1}else o.push(65533)}r+=1}return o}function Olt(t){for(var e=\"\",n=0;n<t.length;++n){var r=t[n];r<=65535?e+=String.fromCharCode(r):(r-=65536,e+=String.fromCharCode((r>>10)+55296,(r&1023)+56320))}return e}var Rq=-1;function Coe(t){this.tokens=[].slice.call(t)}Coe.prototype={endOfStream:function(){return!this.tokens.length},read:function(){return this.tokens.length?this.tokens.shift():Rq},prepend:function(t){if(Array.isArray(t))for(var e=t;e.length;)this.tokens.unshift(e.pop());else this.tokens.unshift(t)},push:function(t){if(Array.isArray(t))for(var e=t;e.length;)this.tokens.push(e.shift());else this.tokens.push(t)}};var MA=-1;function _oe(t,e){if(t)throw TypeError(\"Decoder error\");return e||65533}var Iq=\"utf-8\";function Oq(t,e){if(!(this instanceof Oq))return new Oq(t,e);if(t=t!==void 0?String(t).toLowerCase():Iq,t!==Iq)throw new Error(\"Encoding not supported. Only utf-8 is supported\");e=Mq(e),this._streaming=!1,this._BOMseen=!1,this._decoder=null,this._fatal=!!e.fatal,this._ignoreBOM=!!e.ignoreBOM,Object.defineProperty(this,\"encoding\",{value:\"utf-8\"}),Object.defineProperty(this,\"fatal\",{value:this._fatal}),Object.defineProperty(this,\"ignoreBOM\",{value:this._ignoreBOM})}Oq.prototype={decode:function(e,n){var r;typeof e==\"object\"&&e instanceof ArrayBuffer?r=new Uint8Array(e):typeof e==\"object\"&&\"buffer\"in e&&e.buffer instanceof ArrayBuffer?r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength):r=new Uint8Array(0),n=Mq(n),this._streaming||(this._decoder=new Plt({fatal:this._fatal}),this._BOMseen=!1),this._streaming=!!n.stream;for(var o=new Coe(r),i=[],a;!o.endOfStream()&&(a=this._decoder.handler(o,o.read()),a!==MA);)a!==null&&(Array.isArray(a)?i.push.apply(i,a):i.push(a));if(!this._streaming){do{if(a=this._decoder.handler(o,o.read()),a===MA)break;a!==null&&(Array.isArray(a)?i.push.apply(i,a):i.push(a))}while(!o.endOfStream());this._decoder=null}return i.length&&[\"utf-8\"].indexOf(this.encoding)!==-1&&!this._ignoreBOM&&!this._BOMseen&&(i[0]===65279?(this._BOMseen=!0,i.shift()):this._BOMseen=!0),Olt(i)}};function Pq(t,e){if(!(this instanceof Pq))return new Pq(t,e);if(t=t!==void 0?String(t).toLowerCase():Iq,t!==Iq)throw new Error(\"Encoding not supported. Only utf-8 is supported\");e=Mq(e),this._streaming=!1,this._encoder=null,this._options={fatal:!!e.fatal},Object.defineProperty(this,\"encoding\",{value:\"utf-8\"})}Pq.prototype={encode:function(e,n){e=e?String(e):\"\",n=Mq(n),this._streaming||(this._encoder=new Mlt(this._options)),this._streaming=!!n.stream;for(var r=[],o=new Coe(Ilt(e)),i;!o.endOfStream()&&(i=this._encoder.handler(o,o.read()),i!==MA);)Array.isArray(i)?r.push.apply(r,i):r.push(i);if(!this._streaming){for(;i=this._encoder.handler(o,o.read()),i!==MA;)Array.isArray(i)?r.push.apply(r,i):r.push(i);this._encoder=null}return new Uint8Array(r)}};function Plt(t){var e=t.fatal,n=0,r=0,o=0,i=128,a=191;this.handler=function(c,u){if(u===Rq&&o!==0)return o=0,_oe(e);if(u===Rq)return MA;if(o===0){if(n2(u,0,127))return u;if(n2(u,194,223))o=1,n=u-192;else if(n2(u,224,239))u===224&&(i=160),u===237&&(a=159),o=2,n=u-224;else if(n2(u,240,244))u===240&&(i=144),u===244&&(a=143),o=3,n=u-240;else return _oe(e);return n=n<<6*o,null}if(!n2(u,i,a))return n=o=r=0,i=128,a=191,c.prepend(u),_oe(e);if(i=128,a=191,r+=1,n+=u-128<<6*(o-r),r!==o)return null;var d=n;return n=o=r=0,d}}function Mlt(t){var e=t.fatal;this.handler=function(n,r){if(r===Rq)return MA;if(n2(r,0,127))return r;var o,i;n2(r,128,2047)?(o=1,i=192):n2(r,2048,65535)?(o=2,i=224):n2(r,65536,1114111)&&(o=3,i=240);for(var a=[(r>>6*o)+i];o>0;){var c=r>>6*(o-1);a.push(128|c&63),o-=1}return a}}Aoe.TextEncoder=Pq;Aoe.TextDecoder=Oq});var Q7e=be(fi=>{\"use strict\";p();var Nlt=fi&&fi.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n),Object.defineProperty(t,r,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),Llt=fi&&fi.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,\"default\",{enumerable:!0,value:e})}:function(t,e){t.default=e}),I1=fi&&fi.__decorate||function(t,e,n,r){var o=arguments.length,i=o<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect==\"object\"&&typeof Reflect.decorate==\"function\")i=Reflect.decorate(t,e,n,r);else for(var c=t.length-1;c>=0;c--)(a=t[c])&&(i=(o<3?a(i):o>3?a(e,n,i):a(e,n))||i);return o>3&&i&&Object.defineProperty(e,n,i),i},Blt=fi&&fi.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)n!==\"default\"&&Object.hasOwnProperty.call(t,n)&&Nlt(e,t,n);return Llt(e,t),e},K7e=fi&&fi.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(fi,\"__esModule\",{value:!0});fi.deserializeUnchecked=fi.deserialize=fi.serialize=fi.BinaryReader=fi.BinaryWriter=fi.BorshError=fi.baseDecode=fi.baseEncode=void 0;var x3=K7e(q6()),G7e=K7e(koe()),Dlt=Blt($7e()),Flt=typeof TextDecoder!=\"function\"?Dlt.TextDecoder:TextDecoder,Ult=new Flt(\"utf-8\",{fatal:!0});function jlt(t){return typeof t==\"string\"&&(t=globalThis.Buffer.from(t,\"utf8\")),G7e.default.encode(globalThis.Buffer.from(t))}fi.baseEncode=jlt;function zlt(t){return globalThis.Buffer.from(G7e.default.decode(t))}fi.baseDecode=zlt;var Toe=1024,Rl=class extends Error{constructor(e){super(e),this.fieldPath=[],this.originalMessage=e}addToFieldPath(e){this.fieldPath.splice(0,0,e),this.message=this.originalMessage+\": \"+this.fieldPath.join(\".\")}};fi.BorshError=Rl;var Nq=class{constructor(){this.buf=globalThis.Buffer.alloc(Toe),this.length=0}maybeResize(){this.buf.length<16+this.length&&(this.buf=globalThis.Buffer.concat([this.buf,globalThis.Buffer.alloc(Toe)]))}writeU8(e){this.maybeResize(),this.buf.writeUInt8(e,this.length),this.length+=1}writeU16(e){this.maybeResize(),this.buf.writeUInt16LE(e,this.length),this.length+=2}writeU32(e){this.maybeResize(),this.buf.writeUInt32LE(e,this.length),this.length+=4}writeU64(e){this.maybeResize(),this.writeBuffer(globalThis.Buffer.from(new x3.default(e).toArray(\"le\",8)))}writeU128(e){this.maybeResize(),this.writeBuffer(globalThis.Buffer.from(new x3.default(e).toArray(\"le\",16)))}writeU256(e){this.maybeResize(),this.writeBuffer(globalThis.Buffer.from(new x3.default(e).toArray(\"le\",32)))}writeU512(e){this.maybeResize(),this.writeBuffer(globalThis.Buffer.from(new x3.default(e).toArray(\"le\",64)))}writeBuffer(e){this.buf=globalThis.Buffer.concat([globalThis.Buffer.from(this.buf.subarray(0,this.length)),e,globalThis.Buffer.alloc(Toe)]),this.length+=e.length}writeString(e){this.maybeResize();let n=globalThis.Buffer.from(e,\"utf8\");this.writeU32(n.length),this.writeBuffer(n)}writeFixedArray(e){this.writeBuffer(globalThis.Buffer.from(e))}writeArray(e,n){this.maybeResize(),this.writeU32(e.length);for(let r of e)this.maybeResize(),n(r)}toArray(){return this.buf.subarray(0,this.length)}};fi.BinaryWriter=Nq;function O1(t,e,n){let r=n.value;n.value=function(...o){try{return r.apply(this,o)}catch(i){if(i instanceof RangeError){let a=i.code;if([\"ERR_BUFFER_OUT_OF_BOUNDS\",\"ERR_OUT_OF_RANGE\"].indexOf(a)>=0)throw new Rl(\"Reached the end of buffer when deserializing\")}throw i}}}var Pd=class{constructor(e){this.buf=e,this.offset=0}readU8(){let e=this.buf.readUInt8(this.offset);return this.offset+=1,e}readU16(){let e=this.buf.readUInt16LE(this.offset);return this.offset+=2,e}readU32(){let e=this.buf.readUInt32LE(this.offset);return this.offset+=4,e}readU64(){let e=this.readBuffer(8);return new x3.default(e,\"le\")}readU128(){let e=this.readBuffer(16);return new x3.default(e,\"le\")}readU256(){let e=this.readBuffer(32);return new x3.default(e,\"le\")}readU512(){let e=this.readBuffer(64);return new x3.default(e,\"le\")}readBuffer(e){if(this.offset+e>this.buf.length)throw new Rl(`Expected buffer length ${e} isn\\'t within bounds`);let n=this.buf.slice(this.offset,this.offset+e);return this.offset+=e,n}readString(){let e=this.readU32(),n=this.readBuffer(e);try{return Ult.decode(n)}catch(r){throw new Rl(`Error decoding UTF-8 string: ${r}`)}}readFixedArray(e){return new Uint8Array(this.readBuffer(e))}readArray(e){let n=this.readU32(),r=Array();for(let o=0;o<n;++o)r.push(e());return r}};I1([O1],Pd.prototype,\"readU8\",null);I1([O1],Pd.prototype,\"readU16\",null);I1([O1],Pd.prototype,\"readU32\",null);I1([O1],Pd.prototype,\"readU64\",null);I1([O1],Pd.prototype,\"readU128\",null);I1([O1],Pd.prototype,\"readU256\",null);I1([O1],Pd.prototype,\"readU512\",null);I1([O1],Pd.prototype,\"readString\",null);I1([O1],Pd.prototype,\"readFixedArray\",null);I1([O1],Pd.prototype,\"readArray\",null);fi.BinaryReader=Pd;function Z7e(t){return t.charAt(0).toUpperCase()+t.slice(1)}function ek(t,e,n,r,o){try{if(typeof r==\"string\")o[`write${Z7e(r)}`](n);else if(r instanceof Array)if(typeof r[0]==\"number\"){if(n.length!==r[0])throw new Rl(`Expecting byte array of length ${r[0]}, but got ${n.length} bytes`);o.writeFixedArray(n)}else if(r.length===2&&typeof r[1]==\"number\"){if(n.length!==r[1])throw new Rl(`Expecting byte array of length ${r[1]}, but got ${n.length} bytes`);for(let i=0;i<r[1];i++)ek(t,null,n[i],r[0],o)}else o.writeArray(n,i=>{ek(t,e,i,r[0],o)});else if(r.kind!==void 0)switch(r.kind){case\"option\":{n==null?o.writeU8(0):(o.writeU8(1),ek(t,e,n,r.type,o));break}case\"map\":{o.writeU32(n.size),n.forEach((i,a)=>{ek(t,e,a,r.key,o),ek(t,e,i,r.value,o)});break}default:throw new Rl(`FieldType ${r} unrecognized`)}else Y7e(t,n,o)}catch(i){throw i instanceof Rl&&i.addToFieldPath(e),i}}function Y7e(t,e,n){if(typeof e.borshSerialize==\"function\"){e.borshSerialize(n);return}let r=t.get(e.constructor);if(!r)throw new Rl(`Class ${e.constructor.name} is missing in schema`);if(r.kind===\"struct\")r.fields.map(([o,i])=>{ek(t,o,e[o],i,n)});else if(r.kind===\"enum\"){let o=e[r.field];for(let i=0;i<r.values.length;++i){let[a,c]=r.values[i];if(a===o){n.writeU8(i),ek(t,a,e[a],c,n);break}}}else throw new Rl(`Unexpected schema kind: ${r.kind} for ${e.constructor.name}`)}function Hlt(t,e,n=Nq){let r=new n;return Y7e(t,e,r),r.toArray()}fi.serialize=Hlt;function tk(t,e,n,r){try{if(typeof n==\"string\")return r[`read${Z7e(n)}`]();if(n instanceof Array){if(typeof n[0]==\"number\")return r.readFixedArray(n[0]);if(typeof n[1]==\"number\"){let o=[];for(let i=0;i<n[1];i++)o.push(tk(t,null,n[0],r));return o}else return r.readArray(()=>tk(t,e,n[0],r))}if(n.kind===\"option\")return r.readU8()?tk(t,e,n.type,r):void 0;if(n.kind===\"map\"){let o=new Map,i=r.readU32();for(let a=0;a<i;a++){let c=tk(t,e,n.key,r),u=tk(t,e,n.value,r);o.set(c,u)}return o}return Roe(t,n,r)}catch(o){throw o instanceof Rl&&o.addToFieldPath(e),o}}function Roe(t,e,n){if(typeof e.borshDeserialize==\"function\")return e.borshDeserialize(n);let r=t.get(e);if(!r)throw new Rl(`Class ${e.name} is missing in schema`);if(r.kind===\"struct\"){let o={};for(let[i,a]of t.get(e).fields)o[i]=tk(t,i,a,n);return new e(o)}if(r.kind===\"enum\"){let o=n.readU8();if(o>=r.values.length)throw new Rl(`Enum index: ${o} is out of range`);let[i,a]=r.values[o],c=tk(t,i,a,n);return new e({[i]:c})}throw new Rl(`Unexpected schema kind: ${r.kind} for ${e.constructor.name}`)}function qlt(t,e,n,r=Pd){let o=new r(n),i=Roe(t,e,o);if(o.offset<n.length)throw new Rl(`Unexpected ${n.length-o.offset} bytes after deserialized data`);return i}fi.deserialize=qlt;function Wlt(t,e,n,r=Pd){let o=new r(n);return Roe(t,e,o)}fi.deserializeUnchecked=Wlt});var Moe=be(ze=>{\"use strict\";p();Object.defineProperty(ze,\"__esModule\",{value:!0});ze.s16=ze.s8=ze.nu64be=ze.u48be=ze.u40be=ze.u32be=ze.u24be=ze.u16be=ze.nu64=ze.u48=ze.u40=ze.u32=ze.u24=ze.u16=ze.u8=ze.offset=ze.greedy=ze.Constant=ze.UTF8=ze.CString=ze.Blob=ze.Boolean=ze.BitField=ze.BitStructure=ze.VariantLayout=ze.Union=ze.UnionLayoutDiscriminator=ze.UnionDiscriminator=ze.Structure=ze.Sequence=ze.DoubleBE=ze.Double=ze.FloatBE=ze.Float=ze.NearInt64BE=ze.NearInt64=ze.NearUInt64BE=ze.NearUInt64=ze.IntBE=ze.Int=ze.UIntBE=ze.UInt=ze.OffsetLayout=ze.GreedyCount=ze.ExternalLayout=ze.bindConstructorLayout=ze.nameWithProperty=ze.Layout=ze.uint8ArrayToBuffer=ze.checkUint8Array=void 0;ze.constant=ze.utf8=ze.cstr=ze.blob=ze.unionLayoutDiscriminator=ze.union=ze.seq=ze.bits=ze.struct=ze.f64be=ze.f64=ze.f32be=ze.f32=ze.ns64be=ze.s48be=ze.s40be=ze.s32be=ze.s24be=ze.s16be=ze.ns64=ze.s48=ze.s40=ze.s32=ze.s24=void 0;var Ooe=Kb();function BA(t){if(!(t instanceof Uint8Array))throw new TypeError(\"b must be a Uint8Array\")}ze.checkUint8Array=BA;function wo(t){return BA(t),Ooe.Buffer.from(t.buffer,t.byteOffset,t.length)}ze.uint8ArrayToBuffer=wo;var No=class{constructor(e,n){if(!Number.isInteger(e))throw new TypeError(\"span must be an integer\");this.span=e,this.property=n}makeDestinationObject(){return{}}getSpan(e,n){if(0>this.span)throw new RangeError(\"indeterminate span\");return this.span}replicate(e){let n=Object.create(this.constructor.prototype);return Object.assign(n,this),n.property=e,n}fromArray(e){}};ze.Layout=No;function Poe(t,e){return e.property?t+\"[\"+e.property+\"]\":t}ze.nameWithProperty=Poe;function Vlt(t,e){if(typeof t!=\"function\")throw new TypeError(\"Class must be constructor\");if(Object.prototype.hasOwnProperty.call(t,\"layout_\"))throw new Error(\"Class is already bound to a layout\");if(!(e&&e instanceof No))throw new TypeError(\"layout must be a Layout\");if(Object.prototype.hasOwnProperty.call(e,\"boundConstructor_\"))throw new Error(\"layout is already bound to a constructor\");t.layout_=e,e.boundConstructor_=t,e.makeDestinationObject=()=>new t,Object.defineProperty(t.prototype,\"encode\",{value(n,r){return e.encode(this,n,r)},writable:!0}),Object.defineProperty(t,\"decode\",{value(n,r){return e.decode(n,r)},writable:!0})}ze.bindConstructorLayout=Vlt;var Ru=class extends No{isCount(){throw new Error(\"ExternalLayout is abstract\")}};ze.ExternalLayout=Ru;var Lq=class extends Ru{constructor(e=1,n){if(!Number.isInteger(e)||0>=e)throw new TypeError(\"elementSpan must be a (positive) integer\");super(-1,n),this.elementSpan=e}isCount(){return!0}decode(e,n=0){BA(e);let r=e.length-n;return Math.floor(r/this.elementSpan)}encode(e,n,r){return 0}};ze.GreedyCount=Lq;var eP=class extends Ru{constructor(e,n=0,r){if(!(e instanceof No))throw new TypeError(\"layout must be a Layout\");if(!Number.isInteger(n))throw new TypeError(\"offset must be integer or undefined\");super(e.span,r||e.property),this.layout=e,this.offset=n}isCount(){return this.layout instanceof Nf||this.layout instanceof Bh}decode(e,n=0){return this.layout.decode(e,n+this.offset)}encode(e,n,r=0){return this.layout.encode(e,n,r+this.offset)}};ze.OffsetLayout=eP;var Nf=class extends No{constructor(e,n){if(super(e,n),6<this.span)throw new RangeError(\"span must not exceed 6 bytes\")}decode(e,n=0){return wo(e).readUIntLE(n,this.span)}encode(e,n,r=0){return wo(n).writeUIntLE(e,r,this.span),this.span}};ze.UInt=Nf;var Bh=class extends No{constructor(e,n){if(super(e,n),6<this.span)throw new RangeError(\"span must not exceed 6 bytes\")}decode(e,n=0){return wo(e).readUIntBE(n,this.span)}encode(e,n,r=0){return wo(n).writeUIntBE(e,r,this.span),this.span}};ze.UIntBE=Bh;var r2=class extends No{constructor(e,n){if(super(e,n),6<this.span)throw new RangeError(\"span must not exceed 6 bytes\")}decode(e,n=0){return wo(e).readIntLE(n,this.span)}encode(e,n,r=0){return wo(n).writeIntLE(e,r,this.span),this.span}};ze.Int=r2;var E3=class extends No{constructor(e,n){if(super(e,n),6<this.span)throw new RangeError(\"span must not exceed 6 bytes\")}decode(e,n=0){return wo(e).readIntBE(n,this.span)}encode(e,n,r=0){return wo(n).writeIntBE(e,r,this.span),this.span}};ze.IntBE=E3;var Ioe=Math.pow(2,32);function Jq(t){let e=Math.floor(t/Ioe),n=t-e*Ioe;return{hi32:e,lo32:n}}function Xq(t,e){return t*Ioe+e}var Bq=class extends No{constructor(e){super(8,e)}decode(e,n=0){let r=wo(e),o=r.readUInt32LE(n),i=r.readUInt32LE(n+4);return Xq(i,o)}encode(e,n,r=0){let o=Jq(e),i=wo(n);return i.writeUInt32LE(o.lo32,r),i.writeUInt32LE(o.hi32,r+4),8}};ze.NearUInt64=Bq;var Dq=class extends No{constructor(e){super(8,e)}decode(e,n=0){let r=wo(e),o=r.readUInt32BE(n),i=r.readUInt32BE(n+4);return Xq(o,i)}encode(e,n,r=0){let o=Jq(e),i=wo(n);return i.writeUInt32BE(o.hi32,r),i.writeUInt32BE(o.lo32,r+4),8}};ze.NearUInt64BE=Dq;var Fq=class extends No{constructor(e){super(8,e)}decode(e,n=0){let r=wo(e),o=r.readUInt32LE(n),i=r.readInt32LE(n+4);return Xq(i,o)}encode(e,n,r=0){let o=Jq(e),i=wo(n);return i.writeUInt32LE(o.lo32,r),i.writeInt32LE(o.hi32,r+4),8}};ze.NearInt64=Fq;var Uq=class extends No{constructor(e){super(8,e)}decode(e,n=0){let r=wo(e),o=r.readInt32BE(n),i=r.readUInt32BE(n+4);return Xq(o,i)}encode(e,n,r=0){let o=Jq(e),i=wo(n);return i.writeInt32BE(o.hi32,r),i.writeUInt32BE(o.lo32,r+4),8}};ze.NearInt64BE=Uq;var jq=class extends No{constructor(e){super(4,e)}decode(e,n=0){return wo(e).readFloatLE(n)}encode(e,n,r=0){return wo(n).writeFloatLE(e,r),4}};ze.Float=jq;var zq=class extends No{constructor(e){super(4,e)}decode(e,n=0){return wo(e).readFloatBE(n)}encode(e,n,r=0){return wo(n).writeFloatBE(e,r),4}};ze.FloatBE=zq;var Hq=class extends No{constructor(e){super(8,e)}decode(e,n=0){return wo(e).readDoubleLE(n)}encode(e,n,r=0){return wo(n).writeDoubleLE(e,r),8}};ze.Double=Hq;var qq=class extends No{constructor(e){super(8,e)}decode(e,n=0){return wo(e).readDoubleBE(n)}encode(e,n,r=0){return wo(n).writeDoubleBE(e,r),8}};ze.DoubleBE=qq;var Wq=class extends No{constructor(e,n,r){if(!(e instanceof No))throw new TypeError(\"elementLayout must be a Layout\");if(!(n instanceof Ru&&n.isCount()||Number.isInteger(n)&&0<=n))throw new TypeError(\"count must be non-negative integer or an unsigned integer ExternalLayout\");let o=-1;!(n instanceof Ru)&&0<e.span&&(o=n*e.span),super(o,r),this.elementLayout=e,this.count=n}getSpan(e,n=0){if(0<=this.span)return this.span;let r=0,o=this.count;if(o instanceof Ru&&(o=o.decode(e,n)),0<this.elementLayout.span)r=o*this.elementLayout.span;else{let i=0;for(;i<o;)r+=this.elementLayout.getSpan(e,n+r),++i}return r}decode(e,n=0){let r=[],o=0,i=this.count;for(i instanceof Ru&&(i=i.decode(e,n));o<i;)r.push(this.elementLayout.decode(e,n)),n+=this.elementLayout.getSpan(e,n),o+=1;return r}encode(e,n,r=0){let o=this.elementLayout,i=e.reduce((a,c)=>a+o.encode(c,n,r+a),0);return this.count instanceof Ru&&this.count.encode(e.length,n,r),i}};ze.Sequence=Wq;var Vq=class extends No{constructor(e,n,r){if(!(Array.isArray(e)&&e.reduce((i,a)=>i&&a instanceof No,!0)))throw new TypeError(\"fields must be array of Layout instances\");typeof n==\"boolean\"&&r===void 0&&(r=n,n=void 0);for(let i of e)if(0>i.span&&i.property===void 0)throw new Error(\"fields cannot contain unnamed variable-length layout\");let o=-1;try{o=e.reduce((i,a)=>i+a.getSpan(),0)}catch{}super(o,n),this.fields=e,this.decodePrefixes=!!r}getSpan(e,n=0){if(0<=this.span)return this.span;let r=0;try{r=this.fields.reduce((o,i)=>{let a=i.getSpan(e,n);return n+=a,o+a},0)}catch{throw new RangeError(\"indeterminate span\")}return r}decode(e,n=0){BA(e);let r=this.makeDestinationObject();for(let o of this.fields)if(o.property!==void 0&&(r[o.property]=o.decode(e,n)),n+=o.getSpan(e,n),this.decodePrefixes&&e.length===n)break;return r}encode(e,n,r=0){let o=r,i=0,a=0;for(let c of this.fields){let u=c.span;if(a=0<u?u:0,c.property!==void 0){let d=e[c.property];d!==void 0&&(a=c.encode(d,n,r),0>u&&(u=c.getSpan(n,r)))}i=r,r+=u}return i+a-o}fromArray(e){let n=this.makeDestinationObject();for(let r of this.fields)r.property!==void 0&&0<e.length&&(n[r.property]=e.shift());return n}layoutFor(e){if(typeof e!=\"string\")throw new TypeError(\"property must be string\");for(let n of this.fields)if(n.property===e)return n}offsetOf(e){if(typeof e!=\"string\")throw new TypeError(\"property must be string\");let n=0;for(let r of this.fields){if(r.property===e)return n;0>r.span?n=-1:0<=n&&(n+=r.span)}}};ze.Structure=Vq;var tP=class{constructor(e){this.property=e}decode(e,n){throw new Error(\"UnionDiscriminator is abstract\")}encode(e,n,r){throw new Error(\"UnionDiscriminator is abstract\")}};ze.UnionDiscriminator=tP;var LA=class extends tP{constructor(e,n){if(!(e instanceof Ru&&e.isCount()))throw new TypeError(\"layout must be an unsigned integer ExternalLayout\");super(n||e.property||\"variant\"),this.layout=e}decode(e,n){return this.layout.decode(e,n)}encode(e,n,r){return this.layout.encode(e,n,r)}};ze.UnionLayoutDiscriminator=LA;var nP=class extends No{constructor(e,n,r){let o;if(e instanceof Nf||e instanceof Bh)o=new LA(new eP(e));else if(e instanceof Ru&&e.isCount())o=new LA(e);else if(e instanceof tP)o=e;else throw new TypeError(\"discr must be a UnionDiscriminator or an unsigned integer layout\");if(n===void 0&&(n=null),!(n===null||n instanceof No))throw new TypeError(\"defaultLayout must be null or a Layout\");if(n!==null){if(0>n.span)throw new Error(\"defaultLayout must have constant span\");n.property===void 0&&(n=n.replicate(\"content\"))}let i=-1;n&&(i=n.span,0<=i&&(e instanceof Nf||e instanceof Bh)&&(i+=o.layout.span)),super(i,r),this.discriminator=o,this.usesPrefixDiscriminator=e instanceof Nf||e instanceof Bh,this.defaultLayout=n,this.registry={};let a=this.defaultGetSourceVariant.bind(this);this.getSourceVariant=function(c){return a(c)},this.configGetSourceVariant=function(c){a=c.bind(this)}}getSpan(e,n=0){if(0<=this.span)return this.span;let r=this.getVariant(e,n);if(!r)throw new Error(\"unable to determine span for unrecognized variant\");return r.getSpan(e,n)}defaultGetSourceVariant(e){if(Object.prototype.hasOwnProperty.call(e,this.discriminator.property)){if(this.defaultLayout&&this.defaultLayout.property&&Object.prototype.hasOwnProperty.call(e,this.defaultLayout.property))return;let n=this.registry[e[this.discriminator.property]];if(n&&(!n.layout||n.property&&Object.prototype.hasOwnProperty.call(e,n.property)))return n}else for(let n in this.registry){let r=this.registry[n];if(r.property&&Object.prototype.hasOwnProperty.call(e,r.property))return r}throw new Error(\"unable to infer src variant\")}decode(e,n=0){let r,o=this.discriminator,i=o.decode(e,n),a=this.registry[i];if(a===void 0){let c=this.defaultLayout,u=0;this.usesPrefixDiscriminator&&(u=o.layout.span),r=this.makeDestinationObject(),r[o.property]=i,r[c.property]=c.decode(e,n+u)}else r=a.decode(e,n);return r}encode(e,n,r=0){let o=this.getSourceVariant(e);if(o===void 0){let i=this.discriminator,a=this.defaultLayout,c=0;return this.usesPrefixDiscriminator&&(c=i.layout.span),i.encode(e[i.property],n,r),c+a.encode(e[a.property],n,r+c)}return o.encode(e,n,r)}addVariant(e,n,r){let o=new $q(this,e,n,r);return this.registry[e]=o,o}getVariant(e,n=0){let r;return e instanceof Uint8Array?r=this.discriminator.decode(e,n):r=e,this.registry[r]}};ze.Union=nP;var $q=class extends No{constructor(e,n,r,o){if(!(e instanceof nP))throw new TypeError(\"union must be a Union\");if(!Number.isInteger(n)||0>n)throw new TypeError(\"variant must be a (non-negative) integer\");if(typeof r==\"string\"&&o===void 0&&(o=r,r=null),r){if(!(r instanceof No))throw new TypeError(\"layout must be a Layout\");if(e.defaultLayout!==null&&0<=r.span&&r.span>e.defaultLayout.span)throw new Error(\"variant span exceeds span of containing union\");if(typeof o!=\"string\")throw new TypeError(\"variant must have a String property\")}let i=e.span;0>e.span&&(i=r?r.span:0,0<=i&&e.usesPrefixDiscriminator&&(i+=e.discriminator.layout.span)),super(i,o),this.union=e,this.variant=n,this.layout=r||null}getSpan(e,n=0){if(0<=this.span)return this.span;let r=0;this.union.usesPrefixDiscriminator&&(r=this.union.discriminator.layout.span);let o=0;return this.layout&&(o=this.layout.getSpan(e,n+r)),r+o}decode(e,n=0){let r=this.makeDestinationObject();if(this!==this.union.getVariant(e,n))throw new Error(\"variant mismatch\");let o=0;return this.union.usesPrefixDiscriminator&&(o=this.union.discriminator.layout.span),this.layout?r[this.property]=this.layout.decode(e,n+o):this.property?r[this.property]=!0:this.union.usesPrefixDiscriminator&&(r[this.union.discriminator.property]=this.variant),r}encode(e,n,r=0){let o=0;if(this.union.usesPrefixDiscriminator&&(o=this.union.discriminator.layout.span),this.layout&&!Object.prototype.hasOwnProperty.call(e,this.property))throw new TypeError(\"variant lacks property \"+this.property);this.union.discriminator.encode(this.variant,n,r);let i=o;if(this.layout&&(this.layout.encode(e[this.property],n,r+o),i+=this.layout.getSpan(n,r+o),0<=this.union.span&&i>this.union.span))throw new Error(\"encoded variant overruns containing union\");return i}fromArray(e){if(this.layout)return this.layout.fromArray(e)}};ze.VariantLayout=$q;function NA(t){return 0>t&&(t+=4294967296),t}var rP=class extends No{constructor(e,n,r){if(!(e instanceof Nf||e instanceof Bh))throw new TypeError(\"word must be a UInt or UIntBE layout\");if(typeof n==\"string\"&&r===void 0&&(r=n,n=!1),4<e.span)throw new RangeError(\"word cannot exceed 32 bits\");super(e.span,r),this.word=e,this.msb=!!n,this.fields=[];let o=0;this._packedSetValue=function(i){return o=NA(i),this},this._packedGetValue=function(){return o}}decode(e,n=0){let r=this.makeDestinationObject(),o=this.word.decode(e,n);this._packedSetValue(o);for(let i of this.fields)i.property!==void 0&&(r[i.property]=i.decode(e));return r}encode(e,n,r=0){let o=this.word.decode(n,r);this._packedSetValue(o);for(let i of this.fields)if(i.property!==void 0){let a=e[i.property];a!==void 0&&i.encode(a)}return this.word.encode(this._packedGetValue(),n,r)}addField(e,n){let r=new oP(this,e,n);return this.fields.push(r),r}addBoolean(e){let n=new Kq(this,e);return this.fields.push(n),n}fieldFor(e){if(typeof e!=\"string\")throw new TypeError(\"property must be string\");for(let n of this.fields)if(n.property===e)return n}};ze.BitStructure=rP;var oP=class{constructor(e,n,r){if(!(e instanceof rP))throw new TypeError(\"container must be a BitStructure\");if(!Number.isInteger(n)||0>=n)throw new TypeError(\"bits must be positive integer\");let o=8*e.span,i=e.fields.reduce((a,c)=>a+c.bits,0);if(n+i>o)throw new Error(\"bits too long for span remainder (\"+(o-i)+\" of \"+o+\" remain)\");this.container=e,this.bits=n,this.valueMask=(1<<n)-1,n===32&&(this.valueMask=4294967295),this.start=i,this.container.msb&&(this.start=o-i-n),this.wordMask=NA(this.valueMask<<this.start),this.property=r}decode(e,n){let r=this.container._packedGetValue();return NA(r&this.wordMask)>>>this.start}encode(e){if(typeof e!=\"number\"||!Number.isInteger(e)||e!==NA(e&this.valueMask))throw new TypeError(Poe(\"BitField.encode\",this)+\" value must be integer not exceeding \"+this.valueMask);let n=this.container._packedGetValue(),r=NA(e<<this.start);this.container._packedSetValue(NA(n&~this.wordMask)|r)}};ze.BitField=oP;var Kq=class extends oP{constructor(e,n){super(e,1,n)}decode(e,n){return!!super.decode(e,n)}encode(e){typeof e==\"boolean\"&&(e=+e),super.encode(e)}};ze.Boolean=Kq;var Gq=class extends No{constructor(e,n){if(!(e instanceof Ru&&e.isCount()||Number.isInteger(e)&&0<=e))throw new TypeError(\"length must be positive integer or an unsigned integer ExternalLayout\");let r=-1;e instanceof Ru||(r=e),super(r,n),this.length=e}getSpan(e,n){let r=this.span;return 0>r&&(r=this.length.decode(e,n)),r}decode(e,n=0){let r=this.span;return 0>r&&(r=this.length.decode(e,n)),wo(e).slice(n,n+r)}encode(e,n,r){let o=this.length;if(this.length instanceof Ru&&(o=e.length),!(e instanceof Uint8Array&&o===e.length))throw new TypeError(Poe(\"Blob.encode\",this)+\" requires (length \"+o+\") Uint8Array as src\");if(r+o>n.length)throw new RangeError(\"encoding overruns Uint8Array\");let i=wo(e);return wo(n).write(i.toString(\"hex\"),r,o,\"hex\"),this.length instanceof Ru&&this.length.encode(o,n,r),o}};ze.Blob=Gq;var Zq=class extends No{constructor(e){super(-1,e)}getSpan(e,n=0){BA(e);let r=n;for(;r<e.length&&e[r]!==0;)r+=1;return 1+r-n}decode(e,n=0){let r=this.getSpan(e,n);return wo(e).slice(n,n+r-1).toString(\"utf-8\")}encode(e,n,r=0){typeof e!=\"string\"&&(e=String(e));let o=Ooe.Buffer.from(e,\"utf8\"),i=o.length;if(r+i>n.length)throw new RangeError(\"encoding overruns Buffer\");let a=wo(n);return o.copy(a,r),a[r+i]=0,i+1}};ze.CString=Zq;var Yq=class extends No{constructor(e,n){if(typeof e==\"string\"&&n===void 0&&(n=e,e=void 0),e===void 0)e=-1;else if(!Number.isInteger(e))throw new TypeError(\"maxSpan must be an integer\");super(-1,n),this.maxSpan=e}getSpan(e,n=0){return BA(e),e.length-n}decode(e,n=0){let r=this.getSpan(e,n);if(0<=this.maxSpan&&this.maxSpan<r)throw new RangeError(\"text length exceeds maxSpan\");return wo(e).slice(n,n+r).toString(\"utf-8\")}encode(e,n,r=0){typeof e!=\"string\"&&(e=String(e));let o=Ooe.Buffer.from(e,\"utf8\"),i=o.length;if(0<=this.maxSpan&&this.maxSpan<i)throw new RangeError(\"text length exceeds maxSpan\");if(r+i>n.length)throw new RangeError(\"encoding overruns Buffer\");return o.copy(wo(n),r),i}};ze.UTF8=Yq;var Qq=class extends No{constructor(e,n){super(0,n),this.value=e}decode(e,n){return this.value}encode(e,n,r){return 0}};ze.Constant=Qq;ze.greedy=(t,e)=>new Lq(t,e);ze.offset=(t,e,n)=>new eP(t,e,n);ze.u8=t=>new Nf(1,t);ze.u16=t=>new Nf(2,t);ze.u24=t=>new Nf(3,t);ze.u32=t=>new Nf(4,t);ze.u40=t=>new Nf(5,t);ze.u48=t=>new Nf(6,t);ze.nu64=t=>new Bq(t);ze.u16be=t=>new Bh(2,t);ze.u24be=t=>new Bh(3,t);ze.u32be=t=>new Bh(4,t);ze.u40be=t=>new Bh(5,t);ze.u48be=t=>new Bh(6,t);ze.nu64be=t=>new Dq(t);ze.s8=t=>new r2(1,t);ze.s16=t=>new r2(2,t);ze.s24=t=>new r2(3,t);ze.s32=t=>new r2(4,t);ze.s40=t=>new r2(5,t);ze.s48=t=>new r2(6,t);ze.ns64=t=>new Fq(t);ze.s16be=t=>new E3(2,t);ze.s24be=t=>new E3(3,t);ze.s32be=t=>new E3(4,t);ze.s40be=t=>new E3(5,t);ze.s48be=t=>new E3(6,t);ze.ns64be=t=>new Uq(t);ze.f32=t=>new jq(t);ze.f32be=t=>new zq(t);ze.f64=t=>new Hq(t);ze.f64be=t=>new qq(t);ze.struct=(t,e,n)=>new Vq(t,e,n);ze.bits=(t,e,n)=>new rP(t,e,n);ze.seq=(t,e,n)=>new Wq(t,e,n);ze.union=(t,e,n)=>new nP(t,e,n);ze.unionLayoutDiscriminator=(t,e)=>new LA(t,e);ze.blob=(t,e)=>new Gq(t,e);ze.cstr=t=>new Zq(t);ze.utf8=(t,e)=>new Yq(t,e);ze.constant=(t,e)=>new Qq(t,e)});var gRe=be((Ugn,mRe)=>{\"use strict\";p();var rpt=(Oz(),go(Tte)).v4,opt=function(t,e,n,r){if(typeof t!=\"string\")throw new TypeError(t+\" must be a string\");r=r||{};let o=typeof r.version==\"number\"?r.version:2;if(o!==1&&o!==2)throw new TypeError(o+\" must be 1 or 2\");let i={method:t};if(o===2&&(i.jsonrpc=\"2.0\"),e){if(typeof e!=\"object\"&&!Array.isArray(e))throw new TypeError(e+\" must be an object, array or omitted\");i.params=e}if(typeof n>\"u\"){let a=typeof r.generator==\"function\"?r.generator:function(){return rpt()};i.id=a(i,r)}else o===2&&n===null?r.notificationIdNull&&(i.id=null):i.id=n;return i};mRe.exports=opt});var bRe=be((zgn,yRe)=>{\"use strict\";p();var ipt=(Oz(),go(Tte)).v4,spt=gRe(),aP=function(t,e){if(!(this instanceof aP))return new aP(t,e);e||(e={}),this.options={reviver:typeof e.reviver<\"u\"?e.reviver:null,replacer:typeof e.replacer<\"u\"?e.replacer:null,generator:typeof e.generator<\"u\"?e.generator:function(){return ipt()},version:typeof e.version<\"u\"?e.version:2,notificationIdNull:typeof e.notificationIdNull==\"boolean\"?e.notificationIdNull:!1},this.callServer=t};yRe.exports=aP;aP.prototype.request=function(t,e,n,r){let o=this,i=null,a=Array.isArray(t)&&typeof e==\"function\";if(this.options.version===1&&a)throw new TypeError(\"JSON-RPC 1.0 does not support batching\");if(a||!a&&t&&typeof t==\"object\"&&typeof e==\"function\")r=e,i=t;else{typeof n==\"function\"&&(r=n,n=void 0);let d=typeof r==\"function\";try{i=spt(t,e,n,{generator:this.options.generator,version:this.options.version,notificationIdNull:this.options.notificationIdNull})}catch(h){if(d)return r(h);throw h}if(!d)return i}let u;try{u=JSON.stringify(i,this.options.replacer)}catch(d){return r(d)}return this.callServer(u,function(d,h){o._parseResponse(d,h,r)}),i};aP.prototype._parseResponse=function(t,e,n){if(t){n(t);return}if(!e)return n();let r;try{r=JSON.parse(e,this.options.reviver)}catch(o){return n(o)}if(n.length===3)if(Array.isArray(r)){let o=function(a){return typeof a.error<\"u\"},i=function(a){return!o(a)};return n(null,r.filter(o),r.filter(i))}else return n(null,r.error,r.result);n(null,r)}});var nOe=be((O3,tOe)=>{p();var QW=typeof globalThis<\"u\"&&globalThis||typeof self<\"u\"&&self||typeof globalThis<\"u\"&&globalThis,JW=function(){function t(){this.fetch=!1,this.DOMException=QW.DOMException}return t.prototype=QW,new t}();(function(t){var e=function(n){var r=typeof t<\"u\"&&t||typeof self<\"u\"&&self||typeof t<\"u\"&&t||{},o={searchParams:\"URLSearchParams\"in r,iterable:\"Symbol\"in r&&\"iterator\"in Symbol,blob:\"FileReader\"in r&&\"Blob\"in r&&function(){try{return new Blob,!0}catch{return!1}}(),formData:\"FormData\"in r,arrayBuffer:\"ArrayBuffer\"in r};function i(V){return V&&DataView.prototype.isPrototypeOf(V)}if(o.arrayBuffer)var a=[\"[object Int8Array]\",\"[object Uint8Array]\",\"[object Uint8ClampedArray]\",\"[object Int16Array]\",\"[object Uint16Array]\",\"[object Int32Array]\",\"[object Uint32Array]\",\"[object Float32Array]\",\"[object Float64Array]\"],c=ArrayBuffer.isView||function(V){return V&&a.indexOf(Object.prototype.toString.call(V))>-1};function u(V){if(typeof V!=\"string\"&&(V=String(V)),/[^a-z0-9\\\\-#$%&\\'*+.^_`|~!]/i.test(V)||V===\"\")throw new TypeError(\\'Invalid character in header field name: \"\\'+V+\\'\"\\');return V.toLowerCase()}function d(V){return typeof V!=\"string\"&&(V=String(V)),V}function h(V){var $={next:function(){var F=V.shift();return{done:F===void 0,value:F}}};return o.iterable&&($[Symbol.iterator]=function(){return $}),$}function m(V){this.map={},V instanceof m?V.forEach(function($,F){this.append(F,$)},this):Array.isArray(V)?V.forEach(function($){if($.length!=2)throw new TypeError(\"Headers constructor: expected name/value pair to be length 2, found\"+$.length);this.append($[0],$[1])},this):V&&Object.getOwnPropertyNames(V).forEach(function($){this.append($,V[$])},this)}m.prototype.append=function(V,$){V=u(V),$=d($);var F=this.map[V];this.map[V]=F?F+\", \"+$:$},m.prototype.delete=function(V){delete this.map[u(V)]},m.prototype.get=function(V){return V=u(V),this.has(V)?this.map[V]:null},m.prototype.has=function(V){return this.map.hasOwnProperty(u(V))},m.prototype.set=function(V,$){this.map[u(V)]=d($)},m.prototype.forEach=function(V,$){for(var F in this.map)this.map.hasOwnProperty(F)&&V.call($,this.map[F],F,this)},m.prototype.keys=function(){var V=[];return this.forEach(function($,F){V.push(F)}),h(V)},m.prototype.values=function(){var V=[];return this.forEach(function($){V.push($)}),h(V)},m.prototype.entries=function(){var V=[];return this.forEach(function($,F){V.push([F,$])}),h(V)},o.iterable&&(m.prototype[Symbol.iterator]=m.prototype.entries);function g(V){if(!V._noBody){if(V.bodyUsed)return Promise.reject(new TypeError(\"Already read\"));V.bodyUsed=!0}}function b(V){return new Promise(function($,F){V.onload=function(){$(V.result)},V.onerror=function(){F(V.error)}})}function E(V){var $=new FileReader,F=b($);return $.readAsArrayBuffer(V),F}function C(V){var $=new FileReader,F=b($),_=/charset=([A-Za-z0-9_-]+)/.exec(V.type),O=_?_[1]:\"utf-8\";return $.readAsText(V,O),F}function T(V){for(var $=new Uint8Array(V),F=new Array($.length),_=0;_<$.length;_++)F[_]=String.fromCharCode($[_]);return F.join(\"\")}function R(V){if(V.slice)return V.slice(0);var $=new Uint8Array(V.byteLength);return $.set(new Uint8Array(V)),$.buffer}function L(){return this.bodyUsed=!1,this._initBody=function(V){this.bodyUsed=this.bodyUsed,this._bodyInit=V,V?typeof V==\"string\"?this._bodyText=V:o.blob&&Blob.prototype.isPrototypeOf(V)?this._bodyBlob=V:o.formData&&FormData.prototype.isPrototypeOf(V)?this._bodyFormData=V:o.searchParams&&URLSearchParams.prototype.isPrototypeOf(V)?this._bodyText=V.toString():o.arrayBuffer&&o.blob&&i(V)?(this._bodyArrayBuffer=R(V.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(V)||c(V))?this._bodyArrayBuffer=R(V):this._bodyText=V=Object.prototype.toString.call(V):(this._noBody=!0,this._bodyText=\"\"),this.headers.get(\"content-type\")||(typeof V==\"string\"?this.headers.set(\"content-type\",\"text/plain;charset=UTF-8\"):this._bodyBlob&&this._bodyBlob.type?this.headers.set(\"content-type\",this._bodyBlob.type):o.searchParams&&URLSearchParams.prototype.isPrototypeOf(V)&&this.headers.set(\"content-type\",\"application/x-www-form-urlencoded;charset=UTF-8\"))},o.blob&&(this.blob=function(){var V=g(this);if(V)return V;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error(\"could not read FormData body as blob\");return Promise.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var V=g(this);return V||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer))}else{if(o.blob)return this.blob().then(E);throw new Error(\"could not read as ArrayBuffer\")}},this.text=function(){var V=g(this);if(V)return V;if(this._bodyBlob)return C(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(T(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error(\"could not read FormData body as text\");return Promise.resolve(this._bodyText)},o.formData&&(this.formData=function(){return this.text().then(J)}),this.json=function(){return this.text().then(JSON.parse)},this}var D=[\"CONNECT\",\"DELETE\",\"GET\",\"HEAD\",\"OPTIONS\",\"PATCH\",\"POST\",\"PUT\",\"TRACE\"];function G(V){var $=V.toUpperCase();return D.indexOf($)>-1?$:V}function W(V,$){if(!(this instanceof W))throw new TypeError(\\'Please use the \"new\" operator, this DOM object constructor cannot be called as a function.\\');$=$||{};var F=$.body;if(V instanceof W){if(V.bodyUsed)throw new TypeError(\"Already read\");this.url=V.url,this.credentials=V.credentials,$.headers||(this.headers=new m(V.headers)),this.method=V.method,this.mode=V.mode,this.signal=V.signal,!F&&V._bodyInit!=null&&(F=V._bodyInit,V.bodyUsed=!0)}else this.url=String(V);if(this.credentials=$.credentials||this.credentials||\"same-origin\",($.headers||!this.headers)&&(this.headers=new m($.headers)),this.method=G($.method||this.method||\"GET\"),this.mode=$.mode||this.mode||null,this.signal=$.signal||this.signal||function(){if(\"AbortController\"in r){var z=new AbortController;return z.signal}}(),this.referrer=null,(this.method===\"GET\"||this.method===\"HEAD\")&&F)throw new TypeError(\"Body not allowed for GET or HEAD requests\");if(this._initBody(F),(this.method===\"GET\"||this.method===\"HEAD\")&&($.cache===\"no-store\"||$.cache===\"no-cache\")){var _=/([?&])_=[^&]*/;if(_.test(this.url))this.url=this.url.replace(_,\"$1_=\"+new Date().getTime());else{var O=/\\\\?/;this.url+=(O.test(this.url)?\"&\":\"?\")+\"_=\"+new Date().getTime()}}}W.prototype.clone=function(){return new W(this,{body:this._bodyInit})};function J(V){var $=new FormData;return V.trim().split(\"&\").forEach(function(F){if(F){var _=F.split(\"=\"),O=_.shift().replace(/\\\\+/g,\" \"),z=_.join(\"=\").replace(/\\\\+/g,\" \");$.append(decodeURIComponent(O),decodeURIComponent(z))}}),$}function ne(V){var $=new m,F=V.replace(/\\\\r?\\\\n[\\\\t ]+/g,\" \");return F.split(\"\\\\r\").map(function(_){return _.indexOf(`\\n`)===0?_.substr(1,_.length):_}).forEach(function(_){var O=_.split(\":\"),z=O.shift().trim();if(z){var N=O.join(\":\").trim();try{$.append(z,N)}catch(B){console.warn(\"Response \"+B.message)}}}),$}L.call(W.prototype);function ie(V,$){if(!(this instanceof ie))throw new TypeError(\\'Please use the \"new\" operator, this DOM object constructor cannot be called as a function.\\');if($||($={}),this.type=\"default\",this.status=$.status===void 0?200:$.status,this.status<200||this.status>599)throw new RangeError(\"Failed to construct \\'Response\\': The status provided (0) is outside the range [200, 599].\");this.ok=this.status>=200&&this.status<300,this.statusText=$.statusText===void 0?\"\":\"\"+$.statusText,this.headers=new m($.headers),this.url=$.url||\"\",this._initBody(V)}L.call(ie.prototype),ie.prototype.clone=function(){return new ie(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},ie.error=function(){var V=new ie(null,{status:200,statusText:\"\"});return V.ok=!1,V.status=0,V.type=\"error\",V};var Z=[301,302,303,307,308];ie.redirect=function(V,$){if(Z.indexOf($)===-1)throw new RangeError(\"Invalid status code\");return new ie(null,{status:$,headers:{location:V}})},n.DOMException=r.DOMException;try{new n.DOMException}catch{n.DOMException=function($,F){this.message=$,this.name=F;var _=Error($);this.stack=_.stack},n.DOMException.prototype=Object.create(Error.prototype),n.DOMException.prototype.constructor=n.DOMException}function ae(V,$){return new Promise(function(F,_){var O=new W(V,$);if(O.signal&&O.signal.aborted)return _(new n.DOMException(\"Aborted\",\"AbortError\"));var z=new XMLHttpRequest;function N(){z.abort()}z.onload=function(){var q={statusText:z.statusText,headers:ne(z.getAllResponseHeaders()||\"\")};O.url.indexOf(\"file://\")===0&&(z.status<200||z.status>599)?q.status=200:q.status=z.status,q.url=\"responseURL\"in z?z.responseURL:q.headers.get(\"X-Request-URL\");var H=\"response\"in z?z.response:z.responseText;setTimeout(function(){F(new ie(H,q))},0)},z.onerror=function(){setTimeout(function(){_(new TypeError(\"Network request failed\"))},0)},z.ontimeout=function(){setTimeout(function(){_(new TypeError(\"Network request timed out\"))},0)},z.onabort=function(){setTimeout(function(){_(new n.DOMException(\"Aborted\",\"AbortError\"))},0)};function B(q){try{return q===\"\"&&r.location.href?r.location.href:q}catch{return q}}if(z.open(O.method,B(O.url),!0),O.credentials===\"include\"?z.withCredentials=!0:O.credentials===\"omit\"&&(z.withCredentials=!1),\"responseType\"in z&&(o.blob?z.responseType=\"blob\":o.arrayBuffer&&(z.responseType=\"arraybuffer\")),$&&typeof $.headers==\"object\"&&!($.headers instanceof m||r.Headers&&$.headers instanceof r.Headers)){var j=[];Object.getOwnPropertyNames($.headers).forEach(function(q){j.push(u(q)),z.setRequestHeader(q,d($.headers[q]))}),O.headers.forEach(function(q,H){j.indexOf(H)===-1&&z.setRequestHeader(H,q)})}else O.headers.forEach(function(q,H){z.setRequestHeader(H,q)});O.signal&&(O.signal.addEventListener(\"abort\",N),z.onreadystatechange=function(){z.readyState===4&&O.signal.removeEventListener(\"abort\",N)}),z.send(typeof O._bodyInit>\"u\"?null:O._bodyInit)})}return ae.polyfill=!0,r.fetch||(r.fetch=ae,r.Headers=m,r.Request=W,r.Response=ie),n.Headers=m,n.Request=W,n.Response=ie,n.fetch=ae,Object.defineProperty(n,\"__esModule\",{value:!0}),n}({})})(JW);JW.fetch.ponyfill=!0;delete JW.fetch.polyfill;var mT=QW.fetch?QW:JW;O3=mT.fetch;O3.default=mT.fetch;O3.fetch=mT.fetch;O3.Headers=mT.Headers;O3.Request=mT.Request;O3.Response=mT.Response;tOe.exports=O3});var _Me=be(zV=>{\"use strict\";p();(function(){function t(x,k,P,Q){return\"\"+k+(P===\"s\"?\"\\\\\\\\73 \":\"\\\\\\\\53 \")+Q}function e(x,k,P,Q){return\"\"+k+(P===\"s\"?\"\\\\\\\\u0073\":\"\\\\\\\\u0053\")+Q}function n(x){return Object.prototype.toString.call(x).replace(/^\\\\[object (.*)\\\\]$/,function(k,P){return P})}function r(x){var k=JSON.stringify(x);return\\'\"\\'+x+\\'\"\\'===k?x:k}function o(x){switch(typeof x){case\"string\":return JSON.stringify(10>=x.length?x:x.slice(0,10)+\"...\");case\"object\":return el(x)?\"[...]\":x!==null&&x.$$typeof===ob?\"client\":(x=n(x),x===\"Object\"?\"{...}\":x);case\"function\":return x.$$typeof===ob?\"client\":(x=x.displayName||x.name)?\"function \"+x:\"function\";default:return String(x)}}function i(x){if(typeof x==\"string\")return x;switch(x){case op:return\"Suspense\";case Vu:return\"SuspenseList\"}if(typeof x==\"object\")switch(x.$$typeof){case Gf:return i(x.render);case $u:return i(x.type);case Js:var k=x._payload;x=x._init;try{return i(x(k))}catch{}}return\"\"}function a(x,k){var P=n(x);if(P!==\"Object\"&&P!==\"Array\")return P;var Q=-1,oe=0;if(el(x))if(R2.has(x)){var de=R2.get(x);P=\"<\"+i(de)+\">\";for(var Re=0;Re<x.length;Re++){var Pe=x[Re];Pe=typeof Pe==\"string\"?Pe:typeof Pe==\"object\"&&Pe!==null?\"{\"+a(Pe)+\"}\":\"{\"+o(Pe)+\"}\",\"\"+Re===k?(Q=P.length,oe=Pe.length,P+=Pe):P=15>Pe.length&&40>P.length+Pe.length?P+Pe:P+\"{...}\"}P+=\"</\"+i(de)+\">\"}else{for(P=\"[\",de=0;de<x.length;de++)0<de&&(P+=\", \"),Re=x[de],Re=typeof Re==\"object\"&&Re!==null?a(Re):o(Re),\"\"+de===k?(Q=P.length,oe=Re.length,P+=Re):P=10>Re.length&&40>P.length+Re.length?P+Re:P+\"...\";P+=\"]\"}else if(x.$$typeof===Vm)P=\"<\"+i(x.type)+\"/>\";else{if(x.$$typeof===ob)return\"client\";if(tl.has(x)){for(P=tl.get(x),P=\"<\"+(i(P)||\"...\"),de=Object.keys(x),Re=0;Re<de.length;Re++){P+=\" \",Pe=de[Re],P+=r(Pe)+\"=\";var nt=x[Pe],Ne=Pe===k&&typeof nt==\"object\"&&nt!==null?a(nt):o(nt);typeof nt!=\"string\"&&(Ne=\"{\"+Ne+\"}\"),Pe===k?(Q=P.length,oe=Ne.length,P+=Ne):P=10>Ne.length&&40>P.length+Ne.length?P+Ne:P+\"...\"}P+=\">\"}else{for(P=\"{\",de=Object.keys(x),Re=0;Re<de.length;Re++)0<Re&&(P+=\", \"),Pe=de[Re],P+=r(Pe)+\": \",nt=x[Pe],nt=typeof nt==\"object\"&&nt!==null?a(nt):o(nt),Pe===k?(Q=P.length,oe=nt.length,P+=nt):P=10>nt.length&&40>P.length+nt.length?P+nt:P+\"...\";P+=\"}\"}}return k===void 0?P:-1<Q&&0<oe?(x=\" \".repeat(Q)+\"^\".repeat(oe),`\\n  `+P+`\\n  `+x):`\\n  `+P}function c(x,k){var P=x.length&3,Q=x.length-P,oe=k;for(k=0;k<Q;){var de=x.charCodeAt(k)&255|(x.charCodeAt(++k)&255)<<8|(x.charCodeAt(++k)&255)<<16|(x.charCodeAt(++k)&255)<<24;++k,de=3432918353*(de&65535)+((3432918353*(de>>>16)&65535)<<16)&4294967295,de=de<<15|de>>>17,de=461845907*(de&65535)+((461845907*(de>>>16)&65535)<<16)&4294967295,oe^=de,oe=oe<<13|oe>>>19,oe=5*(oe&65535)+((5*(oe>>>16)&65535)<<16)&4294967295,oe=(oe&65535)+27492+(((oe>>>16)+58964&65535)<<16)}switch(de=0,P){case 3:de^=(x.charCodeAt(k+2)&255)<<16;case 2:de^=(x.charCodeAt(k+1)&255)<<8;case 1:de^=x.charCodeAt(k)&255,de=3432918353*(de&65535)+((3432918353*(de>>>16)&65535)<<16)&4294967295,de=de<<15|de>>>17,oe^=461845907*(de&65535)+((461845907*(de>>>16)&65535)<<16)&4294967295}return oe^=x.length,oe^=oe>>>16,oe=2246822507*(oe&65535)+((2246822507*(oe>>>16)&65535)<<16)&4294967295,oe^=oe>>>13,oe=3266489909*(oe&65535)+((3266489909*(oe>>>16)&65535)<<16)&4294967295,(oe^oe>>>16)>>>0}function u(x){return typeof Symbol==\"function\"&&Symbol.toStringTag&&x[Symbol.toStringTag]||x.constructor.name||\"Object\"}function d(x){try{return h(x),!1}catch{return!0}}function h(x){return\"\"+x}function m(x,k){if(d(x))return console.error(\"The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.\",k,u(x)),h(x)}function g(x,k){if(d(x))return console.error(\"The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.\",k,u(x)),h(x)}function b(x){if(d(x))return console.error(\"The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before using it here.\",u(x)),h(x)}function E(x){return Yr.call(wa,x)?!0:Yr.call(ib,x)?!1:XT.test(x)?wa[x]=!0:(ib[x]=!0,console.error(\"Invalid attribute name: `%s`\",x),!1)}function C(x,k){jg[k.type]||k.onChange||k.onInput||k.readOnly||k.disabled||k.value==null||console.error(x===\"select\"?\"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set `onChange`.\":\"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`.\"),k.onChange||k.readOnly||k.disabled||k.checked==null||console.error(\"You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.\")}function T(x,k){if(Yr.call(Yf,k)&&Yf[k])return!0;if(sp.test(k)){if(x=\"aria-\"+k.slice(4).toLowerCase(),x=Zf.hasOwnProperty(x)?x:null,x==null)return console.error(\"Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.\",k),Yf[k]=!0;if(k!==x)return console.error(\"Invalid ARIA attribute `%s`. Did you mean `%s`?\",k,x),Yf[k]=!0}if(cE.test(k)){if(x=k.toLowerCase(),x=Zf.hasOwnProperty(x)?x:null,x==null)return Yf[k]=!0,!1;k!==x&&(console.error(\"Unknown ARIA attribute `%s`. Did you mean `%s`?\",k,x),Yf[k]=!0)}return!0}function R(x,k){var P=[],Q;for(Q in k)T(x,Q)||P.push(Q);k=P.map(function(oe){return\"`\"+oe+\"`\"}).join(\", \"),P.length===1?console.error(\"Invalid aria prop %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props\",k,x):1<P.length&&console.error(\"Invalid aria props %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props\",k,x)}function L(x,k,P,Q){if(Yr.call(Is,k)&&Is[k])return!0;var oe=k.toLowerCase();if(oe===\"onfocusin\"||oe===\"onfocusout\")return console.error(\"React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React.\"),Is[k]=!0;if(typeof P==\"function\"&&(x===\"form\"&&k===\"action\"||x===\"input\"&&k===\"formAction\"||x===\"button\"&&k===\"formAction\"))return!0;if(Q!=null){if(x=Q.possibleRegistrationNames,Q.registrationNameDependencies.hasOwnProperty(k))return!0;if(Q=x.hasOwnProperty(oe)?x[oe]:null,Q!=null)return console.error(\"Invalid event handler property `%s`. Did you mean `%s`?\",k,Q),Is[k]=!0;if(uo.test(k))return console.error(\"Unknown event handler property `%s`. It will be ignored.\",k),Is[k]=!0}else if(uo.test(k))return Ar.test(k)&&console.error(\"Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.\",k),Is[k]=!0;if(lE.test(k)||ap.test(k))return!0;if(oe===\"innerhtml\")return console.error(\"Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`.\"),Is[k]=!0;if(oe===\"aria\")return console.error(\"The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead.\"),Is[k]=!0;if(oe===\"is\"&&P!==null&&P!==void 0&&typeof P!=\"string\")return console.error(\"Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.\",typeof P),Is[k]=!0;if(typeof P==\"number\"&&isNaN(P))return console.error(\"Received NaN for the `%s` attribute. If this is expected, cast the value to a string.\",k),Is[k]=!0;if(xa.hasOwnProperty(oe)){if(oe=xa[oe],oe!==k)return console.error(\"Invalid DOM property `%s`. Did you mean `%s`?\",k,oe),Is[k]=!0}else if(k!==oe)return console.error(\"React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.\",k,oe),Is[k]=!0;switch(k){case\"dangerouslySetInnerHTML\":case\"children\":case\"style\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"ref\":return!0;case\"innerText\":case\"textContent\":return!0}switch(typeof P){case\"boolean\":switch(k){case\"autoFocus\":case\"checked\":case\"multiple\":case\"muted\":case\"selected\":case\"contentEditable\":case\"spellCheck\":case\"draggable\":case\"value\":case\"autoReverse\":case\"externalResourcesRequired\":case\"focusable\":case\"preserveAlpha\":case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":case\"capture\":case\"download\":case\"inert\":return!0;default:return oe=k.toLowerCase().slice(0,5),oe===\"data-\"||oe===\"aria-\"?!0:(P?console.error(\\'Received `%s` for a non-boolean attribute `%s`.\\\\n\\\\nIf you want to write it to the DOM, pass a string instead: %s=\"%s\" or %s={value.toString()}.\\',P,k,k,P,k):console.error(\\'Received `%s` for a non-boolean attribute `%s`.\\\\n\\\\nIf you want to write it to the DOM, pass a string instead: %s=\"%s\" or %s={value.toString()}.\\\\n\\\\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.\\',P,k,k,P,k,k,k),Is[k]=!0)}case\"function\":case\"symbol\":return Is[k]=!0,!1;case\"string\":if(P===\"false\"||P===\"true\"){switch(k){case\"checked\":case\"selected\":case\"multiple\":case\"muted\":case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":case\"inert\":break;default:return!0}console.error(\"Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?\",P,k,P===\"false\"?\"The browser will interpret it as a truthy value.\":\\'Although this works, it will not work as expected if you pass the string \"false\".\\',k,P),Is[k]=!0}}return!0}function D(x,k,P){var Q=[],oe;for(oe in k)L(x,oe,k[oe],P)||Q.push(oe);k=Q.map(function(de){return\"`\"+de+\"`\"}).join(\", \"),Q.length===1?console.error(\"Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://react.dev/link/attribute-behavior \",k,x):1<Q.length&&console.error(\"Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://react.dev/link/attribute-behavior \",k,x)}function G(x){return x.replace(sb,function(k,P){return P.toUpperCase()})}function W(x){if(typeof x==\"boolean\"||typeof x==\"number\"||typeof x==\"bigint\")return\"\"+x;b(x),x=\"\"+x;var k=Qf.exec(x);if(k){var P=\"\",Q,oe=0;for(Q=k.index;Q<x.length;Q++){switch(x.charCodeAt(Q)){case 34:k=\"&quot;\";break;case 38:k=\"&amp;\";break;case 39:k=\"&#x27;\";break;case 60:k=\"&lt;\";break;case 62:k=\"&gt;\";break;default:continue}oe!==Q&&(P+=x.slice(oe,Q)),oe=Q+1,P+=k}x=oe!==Q?P+x.slice(oe,Q):P}return x}function J(x){return O2.test(\"\"+x)?\"javascript:throw new Error(\\'React has blocked a javascript: URL as a security precaution.\\')\":x}function ne(x){return b(x),(\"\"+x).replace(lb,e)}function ie(x,k,P,Q,oe){return{idPrefix:x===void 0?\"\":x,nextFormID:0,streamingFormat:0,bootstrapScriptContent:P,bootstrapScripts:Q,bootstrapModules:oe,instructions:Wd,hasBody:!1,hasHtml:!1,unknownResources:{},dnsResources:{},connectResources:{default:{},anonymous:{},credentials:{}},imageResources:{},styleResources:{},scriptResources:{},moduleUnknownResources:{},moduleScriptResources:{}}}function Z(){return{htmlChunks:null,headChunks:null,bodyChunks:null,contribution:M2}}function ae(x,k,P){return{insertionMode:x,selectedValue:k,tagScope:P}}function V(x,k,P){switch(k){case\"noscript\":return ae(pi,null,x.tagScope|1);case\"select\":return ae(pi,P.value!=null?P.value:P.defaultValue,x.tagScope);case\"svg\":return ae(na,null,x.tagScope);case\"picture\":return ae(pi,null,x.tagScope|2);case\"math\":return ae(Ku,null,x.tagScope);case\"foreignObject\":return ae(pi,null,x.tagScope);case\"table\":return ae(ub,null,x.tagScope);case\"thead\":case\"tbody\":case\"tfoot\":return ae(lp,null,x.tagScope);case\"colgroup\":return ae(Hg,null,x.tagScope);case\"tr\":return ae(Jm,null,x.tagScope);case\"head\":if(x.insertionMode<pi)return ae(Qm,null,x.tagScope);break;case\"html\":if(x.insertionMode===Ym)return ae(Lo,null,x.tagScope)}return x.insertionMode>=ub||x.insertionMode<pi?ae(pi,null,x.tagScope):x}function $(x,k){if(typeof k!=\"object\")throw Error(\"The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + \\'em\\'}} when using JSX.\");var P=!0,Q;for(Q in k)if(Yr.call(k,Q)){var oe=k[Q];if(oe!=null&&typeof oe!=\"boolean\"&&oe!==\"\"){if(Q.indexOf(\"--\")===0){var de=W(Q);g(oe,Q),oe=W((\"\"+oe).trim())}else{de=Q;var Re=oe;if(-1<de.indexOf(\"-\")){var Pe=de;cp.hasOwnProperty(Pe)&&cp[Pe]||(cp[Pe]=!0,console.error(\"Unsupported style property %s. Did you mean %s?\",Pe,G(Pe.replace(Uk,\"ms-\"))))}else if(uE.test(de))Pe=de,cp.hasOwnProperty(Pe)&&cp[Pe]||(cp[Pe]=!0,console.error(\"Unsupported vendor-prefixed style property %s. Did you mean %s?\",Pe,Pe.charAt(0).toUpperCase()+Pe.slice(1)));else if(zg.test(Re)){Pe=de;var nt=Re;jl.hasOwnProperty(nt)&&jl[nt]||(jl[nt]=!0,console.error(`Style property values shouldn\\'t contain a semicolon. Try \"%s: %s\" instead.`,Pe,nt.replace(zg,\"\")))}typeof Re==\"number\"&&(isNaN(Re)?dE||(dE=!0,console.error(\"`NaN` is an invalid value for the `%s` css style property.\",de)):isFinite(Re)||ab||(ab=!0,console.error(\"`Infinity` is an invalid value for the `%s` css style property.\",de))),de=Q,Re=ns.get(de),Re!==void 0||(Re=W(de.replace(qd,\"-$1\").toLowerCase().replace(Xs,\"-ms-\")),ns.set(de,Re)),de=Re,typeof oe==\"number\"?oe=oe===0||aE.has(Q)?\"\"+oe:oe+\"px\":(g(oe,Q),oe=W((\"\"+oe).trim()))}P?(P=!1,x.push(xc,de,db,oe)):x.push(hE,de,db,oe)}}P||x.push(Sa)}function F(x,k,P){P&&typeof P!=\"function\"&&typeof P!=\"symbol\"&&x.push(Ea,k,qg)}function _(x,k,P){typeof P!=\"function\"&&typeof P!=\"symbol\"&&typeof P!=\"boolean\"&&x.push(Ea,k,rl,W(P),Sa)}function O(x,k){this.push(\\'<input type=\"hidden\"\\'),z(x),_(this,\"name\",k),_(this,\"value\",x),this.push(Xf)}function z(x){if(typeof x!=\"string\")throw Error(\"File/Blob fields are not yet supported in progressive forms. Will fallback to client hydration.\")}function N(x,k){if(typeof k.$$FORM_ACTION==\"function\"){var P=x.nextFormID++;x=x.idPrefix+P;try{var Q=k.$$FORM_ACTION(x);if(Q){var oe=Q.data;oe?.forEach(z)}return Q}catch(de){if(typeof de==\"object\"&&de!==null&&typeof de.then==\"function\")throw de;console.error(`Failed to serialize an action for progressive enhancement:\\n%s`,de)}}return null}function B(x,k,P,Q,oe,de,Re,Pe){var nt=null;if(typeof Q==\"function\"){Pe===null||ol||(ol=!0,console.error(\\'Cannot specify a \"name\" prop for a button that specifies a function as a formAction. React needs it to encode which action should be invoked. It will get overridden.\\')),oe===null&&de===null||gt||(gt=!0,console.error(\"Cannot specify a formEncType or formMethod for a button that specifies a function as a formAction. React provides those automatically. They will get overridden.\")),Re===null||In||(In=!0,console.error(\"Cannot specify a formTarget for a button that specifies a function as a formAction. The function will always be executed in the same window.\"));var Ne=N(k,Q);Ne!==null?(Pe=Ne.name,Q=Ne.action||\"\",oe=Ne.encType,de=Ne.method,Re=Ne.target,nt=Ne.data):(x.push(Ea,\"formAction\",rl,Vd,Sa),Re=de=oe=Q=Pe=null,U(k,P))}return Pe!=null&&j(x,\"name\",Pe),Q!=null&&j(x,\"formAction\",Q),oe!=null&&j(x,\"formEncType\",oe),de!=null&&j(x,\"formMethod\",de),Re!=null&&j(x,\"formTarget\",Re),nt}function j(x,k,P){switch(k){case\"className\":_(x,\"class\",P);break;case\"tabIndex\":_(x,\"tabindex\",P);break;case\"dir\":case\"role\":case\"viewBox\":case\"width\":case\"height\":_(x,k,P);break;case\"style\":$(x,P);break;case\"src\":case\"href\":if(P===\"\"){console.error(k===\"src\"?\\'An empty string (\"\") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\':\\'An empty string (\"\") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\',k,k);break}case\"action\":case\"formAction\":if(P==null||typeof P==\"function\"||typeof P==\"symbol\"||typeof P==\"boolean\")break;m(P,k),P=J(\"\"+P),x.push(Ea,k,rl,W(P),Sa);break;case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"ref\":break;case\"autoFocus\":case\"multiple\":case\"muted\":F(x,k.toLowerCase(),P);break;case\"xlinkHref\":if(typeof P==\"function\"||typeof P==\"symbol\"||typeof P==\"boolean\")break;m(P,k),P=J(\"\"+P),x.push(Ea,\"xlink:href\",rl,W(P),Sa);break;case\"contentEditable\":case\"spellCheck\":case\"draggable\":case\"value\":case\"autoReverse\":case\"externalResourcesRequired\":case\"focusable\":case\"preserveAlpha\":typeof P!=\"function\"&&typeof P!=\"symbol\"&&x.push(Ea,k,rl,W(P),Sa);break;case\"inert\":P!==\"\"||P2[k]||(P2[k]=!0,console.error(\"Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.\",k));case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":P&&typeof P!=\"function\"&&typeof P!=\"symbol\"&&x.push(Ea,k,qg);break;case\"capture\":case\"download\":P===!0?x.push(Ea,k,qg):P!==!1&&typeof P!=\"function\"&&typeof P!=\"symbol\"&&x.push(Ea,k,rl,W(P),Sa);break;case\"cols\":case\"rows\":case\"size\":case\"span\":typeof P!=\"function\"&&typeof P!=\"symbol\"&&!isNaN(P)&&1<=P&&x.push(Ea,k,rl,W(P),Sa);break;case\"rowSpan\":case\"start\":typeof P==\"function\"||typeof P==\"symbol\"||isNaN(P)||x.push(Ea,k,rl,W(P),Sa);break;case\"xlinkActuate\":_(x,\"xlink:actuate\",P);break;case\"xlinkArcrole\":_(x,\"xlink:arcrole\",P);break;case\"xlinkRole\":_(x,\"xlink:role\",P);break;case\"xlinkShow\":_(x,\"xlink:show\",P);break;case\"xlinkTitle\":_(x,\"xlink:title\",P);break;case\"xlinkType\":_(x,\"xlink:type\",P);break;case\"xmlBase\":_(x,\"xml:base\",P);break;case\"xmlLang\":_(x,\"xml:lang\",P);break;case\"xmlSpace\":_(x,\"xml:space\",P);break;default:if((!(2<k.length)||k[0]!==\"o\"&&k[0]!==\"O\"||k[1]!==\"n\"&&k[1]!==\"N\")&&(k=I2.get(k)||k,E(k))){switch(typeof P){case\"function\":case\"symbol\":return;case\"boolean\":var Q=k.toLowerCase().slice(0,5);if(Q!==\"data-\"&&Q!==\"aria-\")return}x.push(Ea,k,rl,W(P),Sa)}}}function q(x,k,P){if(k!=null){if(P!=null)throw Error(\"Can only set one of `children` or `props.dangerouslySetInnerHTML`.\");if(typeof k!=\"object\"||!(\"__html\"in k))throw Error(\"`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.\");k=k.__html,k!=null&&(b(k),x.push(\"\"+k))}}function H(x,k){var P=x[k];P!=null&&(P=el(P),x.multiple&&!P?console.error(\"The `%s` prop supplied to <select> must be an array if `multiple` is true.\",k):!x.multiple&&P&&console.error(\"The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.\",k))}function I(x){var k=\"\";return iE.Children.forEach(x,function(P){P!=null&&(k+=P,e0||typeof P==\"string\"||typeof P==\"number\"||typeof P==\"bigint\"||(e0=!0,console.error(\"Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>.\")))}),k}function U(x,k){(x.instructions&16)===Wd&&(x.instructions|=16,k.bootstrapChunks.unshift(k.startInlineScript,up,\"<\\\\/script>\"))}function X(x,k){x.push(Me(\"link\"));for(var P in k)if(Yr.call(k,P)){var Q=k[P];if(Q!=null)switch(P){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(\"link is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");default:j(x,P,Q)}}return x.push(Xf),null}function ee(x){return b(x),(\"\"+x).replace(Vg,t)}function se(x,k,P){x.push(Me(P));for(var Q in k)if(Yr.call(k,Q)){var oe=k[Q];if(oe!=null)switch(Q){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(P+\" is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");default:j(x,Q,oe)}}return x.push(Xf),null}function pe(x,k){x.push(Me(\"title\"));var P=null,Q=null,oe;for(oe in k)if(Yr.call(k,oe)){var de=k[oe];if(de!=null)switch(oe){case\"children\":P=de;break;case\"dangerouslySetInnerHTML\":Q=de;break;default:j(x,oe,de)}}return x.push(oi),k=Array.isArray(P)?2>P.length?P[0]:null:P,typeof k!=\"function\"&&typeof k!=\"symbol\"&&k!==null&&k!==void 0&&x.push(W(\"\"+k)),q(x,Q,P),x.push(wt(\"title\")),null}function ye(x,k){x.push(Me(\"script\"));var P=null,Q=null,oe;for(oe in k)if(Yr.call(k,oe)){var de=k[oe];if(de!=null)switch(oe){case\"children\":P=de;break;case\"dangerouslySetInnerHTML\":Q=de;break;default:j(x,oe,de)}}return x.push(oi),P!=null&&typeof P!=\"string\"&&(k=typeof P==\"number\"?\"a number for children\":Array.isArray(P)?\"an array for children\":\"something unexpected for children\",console.error(\"A script element was rendered with %s. If script element has children it must be a single string. Consider using dangerouslySetInnerHTML or passing a plain string as children.\",k)),q(x,Q,P),typeof P==\"string\"&&x.push(ne(P)),x.push(wt(\"script\")),null}function xe(x,k,P){x.push(Me(P));var Q=P=null,oe;for(oe in k)if(Yr.call(k,oe)){var de=k[oe];if(de!=null)switch(oe){case\"children\":P=de;break;case\"dangerouslySetInnerHTML\":Q=de;break;default:j(x,oe,de)}}return x.push(oi),q(x,Q,P),P}function _e(x,k,P){x.push(Me(P));var Q=P=null,oe;for(oe in k)if(Yr.call(k,oe)){var de=k[oe];if(de!=null)switch(oe){case\"children\":P=de;break;case\"dangerouslySetInnerHTML\":Q=de;break;default:j(x,oe,de)}}return x.push(oi),q(x,Q,P),typeof P==\"string\"?(x.push(W(P)),null):P}function Me(x){var k=hb.get(x);if(k===void 0){if(!Gu.test(x))throw Error(\"Invalid tag: \"+x);k=\"<\"+x,hb.set(x,k)}return k}function qe(x,k,P,Q,oe,de,Re,Pe,nt,Ne){R(k,P),k!==\"input\"&&k!==\"textarea\"&&k!==\"select\"||P==null||P.value!==null||ec||(ec=!0,k===\"select\"&&P.multiple?console.error(\"`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.\",k):console.error(\"`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.\",k));e:if(k.indexOf(\"-\")===-1)var Et=!1;else switch(k){case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":Et=!1;break e;default:Et=!0}switch(Et||typeof P.is==\"string\"||D(k,P,null),!P.suppressContentEditableWarning&&P.contentEditable&&P.children!=null&&console.error(\"A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional.\"),Pe.insertionMode!==na&&Pe.insertionMode!==Ku&&k.indexOf(\"-\")===-1&&k.toLowerCase()!==k&&console.error(\"<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.\",k),k){case\"div\":case\"span\":case\"svg\":case\"path\":break;case\"a\":x.push(Me(\"a\"));var At=null,Rt=null,Ft;for(Ft in P)if(Yr.call(P,Ft)){var lt=P[Ft];if(lt!=null)switch(Ft){case\"children\":At=lt;break;case\"dangerouslySetInnerHTML\":Rt=lt;break;case\"href\":lt===\"\"?_(x,\"href\",\"\"):j(x,Ft,lt);break;default:j(x,Ft,lt)}}if(x.push(oi),q(x,Rt,At),typeof At==\"string\"){x.push(W(At));var Kn=null}else Kn=At;return Kn;case\"g\":case\"p\":case\"li\":break;case\"select\":C(\"select\",P),H(P,\"value\"),H(P,\"defaultValue\"),P.value===void 0||P.defaultValue===void 0||Xm||(console.error(\"Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://react.dev/link/controlled-components\"),Xm=!0),x.push(Me(\"select\"));var Sn=null,mn=null,un;for(un in P)if(Yr.call(P,un)){var Vi=P[un];if(Vi!=null)switch(un){case\"children\":Sn=Vi;break;case\"dangerouslySetInnerHTML\":mn=Vi;break;case\"defaultValue\":case\"value\":break;default:j(x,un,Vi)}}return x.push(oi),q(x,mn,Sn),Sn;case\"option\":var cn=Pe.selectedValue;x.push(Me(\"option\"));var Tn=null,ro=null,Oi=null,$i=null,ii;for(ii in P)if(Yr.call(P,ii)){var Co=P[ii];if(Co!=null)switch(ii){case\"children\":Tn=Co;break;case\"selected\":Oi=Co,tc||(console.error(\"Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>.\"),tc=!0);break;case\"dangerouslySetInnerHTML\":$i=Co;break;case\"value\":ro=Co;default:j(x,ii,Co)}}if(cn!=null){if(ro!==null){m(ro,\"value\");var _c=\"\"+ro}else $i===null||t0||(t0=!0,console.error(\"Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected.\")),_c=I(Tn);if(el(cn)){for(var Aa=0;Aa<cn.length;Aa++)if(m(cn[Aa],\"value\"),\"\"+cn[Aa]===_c){x.push(\\' selected=\"\"\\');break}}else m(cn,\"select.value\"),\"\"+cn===_c&&x.push(\\' selected=\"\"\\')}else Oi&&x.push(\\' selected=\"\"\\');return x.push(oi),q(x,$i,Tn),Tn;case\"textarea\":C(\"textarea\",P),P.value===void 0||P.defaultValue===void 0||N2||(console.error(\"Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://react.dev/link/controlled-components\"),N2=!0),x.push(Me(\"textarea\"));var Er=null,w=null,S=null,M;for(M in P)if(Yr.call(P,M)){var Y=P[M];if(Y!=null)switch(M){case\"children\":S=Y;break;case\"value\":Er=Y;break;case\"defaultValue\":w=Y;break;case\"dangerouslySetInnerHTML\":throw Error(\"`dangerouslySetInnerHTML` does not make sense on <textarea>.\");default:j(x,M,Y)}}if(Er===null&&w!==null&&(Er=w),x.push(oi),S!=null){if(console.error(\"Use the `defaultValue` or `value` props instead of setting children on <textarea>.\"),Er!=null)throw Error(\"If you supply `defaultValue` on a <textarea>, do not pass children.\");if(el(S)){if(1<S.length)throw Error(\"<textarea> can only have at most one child.\");b(S[0]),Er=\"\"+S[0]}b(S),Er=\"\"+S}return typeof Er==\"string\"&&Er[0]===`\\n`&&x.push(Yo),Er!==null&&(m(Er,\"value\"),x.push(W(\"\"+Er))),null;case\"input\":C(\"input\",P),x.push(Me(\"input\"));var re=null,ue=null,Ee=null,Ae=null,Le=null,Ie=null,pt=null,ut=null,_t=null,bt;for(bt in P)if(Yr.call(P,bt)){var rt=P[bt];if(rt!=null)switch(bt){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(\"input is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");case\"name\":re=rt;break;case\"formAction\":ue=rt;break;case\"formEncType\":Ee=rt;break;case\"formMethod\":Ae=rt;break;case\"formTarget\":Le=rt;break;case\"defaultChecked\":_t=rt;break;case\"defaultValue\":pt=rt;break;case\"checked\":ut=rt;break;case\"value\":Ie=rt;break;default:j(x,bt,rt)}}ue===null||P.type===\"image\"||P.type===\"submit\"||eh||(eh=!0,console.error(\\'An input can only specify a formAction along with type=\"submit\" or type=\"image\".\\'));var kn=B(x,Q,oe,ue,Ee,Ae,Le,re);return ut===null||_t===null||Wg||(console.error(\"%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components\",\"A component\",P.type),Wg=!0),Ie===null||pt===null||fb||(console.error(\"%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components\",\"A component\",P.type),fb=!0),ut!==null?F(x,\"checked\",ut):_t!==null&&F(x,\"checked\",_t),Ie!==null?j(x,\"value\",Ie):pt!==null&&j(x,\"value\",pt),x.push(Xf),kn?.forEach(O,x),null;case\"button\":x.push(Me(\"button\"));var Tr=null,_n=null,Gt=null,Bo=null,Lr=null,Rn=null,os=null,Ps;for(Ps in P)if(Yr.call(P,Ps)){var si=P[Ps];if(si!=null)switch(Ps){case\"children\":Tr=si;break;case\"dangerouslySetInnerHTML\":_n=si;break;case\"name\":Gt=si;break;case\"formAction\":Bo=si;break;case\"formEncType\":Lr=si;break;case\"formMethod\":Rn=si;break;case\"formTarget\":os=si;break;default:j(x,Ps,si)}}Bo===null||P.type==null||P.type===\"submit\"||eh||(eh=!0,console.error(\\'A button can only specify a formAction along with type=\"submit\" or no type.\\'));var gi=B(x,Q,oe,Bo,Lr,Rn,os,Gt);if(x.push(oi),gi?.forEach(O,x),q(x,_n,Tr),typeof Tr==\"string\"){x.push(W(Tr));var po=null}else po=Tr;return po;case\"form\":x.push(Me(\"form\"));var Jo=null,yi=null,Bn=null,mo=null,Br=null,is=null,ss;for(ss in P)if(Yr.call(P,ss)){var Pi=P[ss];if(Pi!=null)switch(ss){case\"children\":Jo=Pi;break;case\"dangerouslySetInnerHTML\":yi=Pi;break;case\"action\":Bn=Pi;break;case\"encType\":mo=Pi;break;case\"method\":Br=Pi;break;case\"target\":is=Pi;break;default:j(x,ss,Pi)}}var rc=null,Ki=null;if(typeof Bn==\"function\"){mo===null&&Br===null||gt||(gt=!0,console.error(\"Cannot specify a encType or method for a form that specifies a function as the action. React provides those automatically. They will get overridden.\")),is===null||In||(In=!0,console.error(\"Cannot specify a target for a form that specifies a function as the action. The function will always be executed in the same window.\"));var oc=N(Q,Bn);oc!==null?(Bn=oc.action||\"\",mo=oc.encType,Br=oc.method,is=oc.target,rc=oc.data,Ki=oc.name):(x.push(Ea,\"action\",rl,Vd,Sa),is=Br=mo=Bn=null,U(Q,oe))}if(Bn!=null&&j(x,\"action\",Bn),mo!=null&&j(x,\"encType\",mo),Br!=null&&j(x,\"method\",Br),is!=null&&j(x,\"target\",is),x.push(oi),Ki!==null&&(x.push(\\'<input type=\"hidden\"\\'),_(x,\"name\",Ki),x.push(Xf),rc?.forEach(O,x)),q(x,yi,Jo),typeof Jo==\"string\"){x.push(W(Jo));var Ju=null}else Ju=Jo;return Ju;case\"menuitem\":x.push(Me(\"menuitem\"));for(var Un in P)if(Yr.call(P,Un)){var cl=P[Un];if(cl!=null)switch(Un){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(\"menuitems cannot have `children` nor `dangerouslySetInnerHTML`.\");default:j(x,Un,cl)}}return x.push(oi),null;case\"object\":x.push(Me(\"object\"));var Ta=null,Xu=null,gs;for(gs in P)if(Yr.call(P,gs)){var Mi=P[gs];if(Mi!=null)switch(gs){case\"children\":Ta=Mi;break;case\"dangerouslySetInnerHTML\":Xu=Mi;break;case\"data\":m(Mi,\"data\");var Ao=J(\"\"+Mi);if(Ao===\"\"){console.error(\\'An empty string (\"\") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\',gs,gs);break}x.push(Ea,\"data\",rl,W(Ao),Sa);break;default:j(x,gs,Mi)}}if(x.push(oi),q(x,Xu,Ta),typeof Ta==\"string\"){x.push(W(Ta));var ys=null}else ys=Ta;return ys;case\"title\":var ia=Pe.insertionMode,$l=!!(Pe.tagScope&1);if(Yr.call(P,\"children\")){var as=P.children,Cc=Array.isArray(as)?2>as.length?as[0]:null:as;Array.isArray(as)&&1<as.length?console.error(\"React expects the `children` prop of <title> tags to be a string, number, bigint, or object with a novel `toString` method but found an Array with length %s instead. Browsers treat all child Nodes of <title> tags as Text content and React expects to be able to convert `children` of <title> tags to a single string value which is why Arrays of length greater than 1 are not supported. When using JSX it can be common to combine text nodes and value nodes. For example: <title>hello {nameOfUser}</title>. While not immediately apparent, `children` in this case is an Array with length 2. If your `children` prop is using this form try rewriting it using a template string: <title>{`hello ${nameOfUser}`}</title>.\",as.length):typeof Cc==\"function\"||typeof Cc==\"symbol\"?console.error(\"React expect children of <title> tags to be a string, number, bigint, or object with a novel `toString` method but found %s instead. Browsers treat all child Nodes of <title> tags as Text content and React expects to be able to convert children of <title> tags to a single string value.\",typeof Cc==\"function\"?\"a Function\":\"a Sybmol\"):Cc&&Cc.toString==={}.toString&&(Cc.$$typeof!=null?console.error(\"React expects the `children` prop of <title> tags to be a string, number, bigint, or object with a novel `toString` method but found an object that appears to be a React element which never implements a suitable `toString` method. Browsers treat all child Nodes of <title> tags as Text content and React expects to be able to convert children of <title> tags to a single string value which is why rendering React elements is not supported. If the `children` of <title> is a React Component try moving the <title> tag into that component. If the `children` of <title> is some HTML markup change it to be Text only to be valid HTML.\"):console.error(\"React expects the `children` prop of <title> tags to be a string, number, bigint, or object with a novel `toString` method but found an object that does not implement a suitable `toString` method. Browsers treat all child Nodes of <title> tags as Text content and React expects to be able to convert children of <title> tags to a single string value. Using the default `toString` method available on every object is almost certainly an error. Consider whether the `children` of this <title> is an object in error and change it to a string or number value if so. Otherwise implement a `toString` method that React can use to produce a valid <title>.\"))}if(ia===na||$l||P.itemProp!=null)var Ra=pe(x,P);else Ne?Ra=null:(pe(oe.hoistableChunks,P),Ra=void 0);return Ra;case\"link\":var sa=P.rel,To=P.href,Ms=P.precedence;if(Pe.insertionMode===na||Pe.tagScope&1||P.itemProp!=null||typeof sa!=\"string\"||typeof To!=\"string\"||To===\"\"){sa===\"stylesheet\"&&typeof P.precedence==\"string\"&&(typeof To==\"string\"&&To||console.error(\\'React encountered a `<link rel=\"stylesheet\" .../>` with a `precedence` prop and expected the `href` prop to be a non-empty string but ecountered %s instead. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop ensure there is a non-empty string `href` prop as well, otherwise remove the `precedence` prop.\\',To===null?\"`null`\":To===void 0?\"`undefined`\":To===\"\"?\"an empty string\":\\'something with type \"\\'+typeof To+\\'\"\\')),X(x,P);var ic=null}else if(P.rel===\"stylesheet\")if(typeof Ms!=\"string\"||P.disabled!=null||P.onLoad||P.onError){if(typeof Ms==\"string\"){if(P.disabled!=null)console.error(\\'React encountered a `<link rel=\"stylesheet\" .../>` with a `precedence` prop and a `disabled` prop. The presence of the `disabled` prop indicates an intent to manage the stylesheet active state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the `disabled` prop, otherwise remove the `precedence` prop.\\');else if(P.onLoad||P.onError){var Ac=P.onLoad&&P.onError?\"`onLoad` and `onError` props\":P.onLoad?\"`onLoad` prop\":\"`onError` prop\";console.error(\\'React encountered a `<link rel=\"stylesheet\" .../>` with a `precedence` prop and %s. The presence of loading and error handlers indicates an intent to manage the stylesheet loading state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the %s, otherwise remove the `precedence` prop.\\',Ac,Ac)}}ic=X(x,P)}else{var sc=oe.styles.get(Ms),Kl=Q.styleResources.hasOwnProperty(To)?Q.styleResources[To]:void 0;if(Kl!==ko){Q.styleResources[To]=ko,sc||(sc={precedence:W(Ms),rules:[],hrefs:[],sheets:new Map},oe.styles.set(Ms,sc));var aa={state:a0,props:Ii({},P,{\"data-precedence\":P.precedence,precedence:null})};if(Kl){Kl.length===2&&Ri(aa.props,Kl);var ll=oe.preloads.stylesheets.get(To);ll&&0<ll.length?ll.length=0:aa.state=gb}sc.sheets.set(To,aa),Re&&Re.stylesheets.add(aa)}else if(sc){var Tc=sc.sheets.get(To);Tc&&Re&&Re.stylesheets.add(Tc)}nt&&x.push(\"<!-- -->\"),ic=null}else P.onLoad||P.onError?ic=X(x,P):(nt&&x.push(\"<!-- -->\"),ic=Ne?null:X(oe.hoistableChunks,P));return ic;case\"script\":var ul=P.async;if(typeof P.src!=\"string\"||!P.src||!ul||typeof ul==\"function\"||typeof ul==\"symbol\"||P.onLoad||P.onError||Pe.insertionMode===na||Pe.tagScope&1||P.itemProp!=null)var dl=ye(x,P);else{var Ia=P.src;if(P.type===\"module\")var ca=Q.moduleScriptResources,ah=oe.preloads.moduleScripts;else ca=Q.scriptResources,ah=oe.preloads.scripts;var pn=ca.hasOwnProperty(Ia)?ca[Ia]:void 0;if(pn!==ko){ca[Ia]=ko;var Gl=P;if(pn){pn.length===2&&(Gl=Ii({},P),Ri(Gl,pn));var Zl=ah.get(Ia);Zl&&(Zl.length=0)}var gp=[];oe.scripts.add(gp),ye(gp,Gl)}nt&&x.push(\"<!-- -->\"),dl=null}return dl;case\"style\":var ac=Pe.insertionMode,Yl=!!(Pe.tagScope&1);if(Yr.call(P,\"children\")){var cs=P.children,bs=Array.isArray(cs)?2>cs.length?cs[0]:null:cs;(typeof bs==\"function\"||typeof bs==\"symbol\"||Array.isArray(bs))&&console.error(\"React expect children of <style> tags to be a string, number, or object with a `toString` method but found %s instead. In browsers style Elements can only have `Text` Nodes as children.\",typeof bs==\"function\"?\"a Function\":typeof bs==\"symbol\"?\"a Sybmol\":\"an Array\")}var Do=P.precedence,bi=P.href;if(ac===na||Yl||P.itemProp!=null||typeof Do!=\"string\"||typeof bi!=\"string\"||bi===\"\"){x.push(Me(\"style\"));var Sr=null,b0=null,vi;for(vi in P)if(Yr.call(P,vi)){var fl=P[vi];if(fl!=null)switch(vi){case\"children\":Sr=fl;break;case\"dangerouslySetInnerHTML\":b0=fl;break;default:j(x,vi,fl)}}x.push(oi);var Ns=Array.isArray(Sr)?2>Sr.length?Sr[0]:null:Sr;typeof Ns!=\"function\"&&typeof Ns!=\"symbol\"&&Ns!==null&&Ns!==void 0&&x.push(ee(Ns)),q(x,b0,Sr),x.push(wt(\"style\"));var v0=null}else{bi.includes(\" \")&&console.error(\\'React expected the `href` prop for a <style> tag opting into hoisting semantics using the `precedence` prop to not have any spaces but ecountered spaces instead. using spaces in this prop will cause hydration of this style to fail on the client. The href for the <style> where this ocurred is \"%s\".\\',bi);var Xo=oe.styles.get(Do),hr=Q.styleResources.hasOwnProperty(bi)?Q.styleResources[bi]:void 0;if(hr!==ko){Q.styleResources[bi]=ko,hr&&console.error(\\'React encountered a hoistable style tag for the same href as a preload: \"%s\". When using a style tag to inline styles you should not also preload it as a stylsheet.\\',bi),Xo?Xo.hrefs.push(W(bi)):(Xo={precedence:W(Do),rules:[],hrefs:[W(bi)],sheets:new Map},oe.styles.set(Do,Xo));var Ql=Xo.rules,Ro=null,ch=null,ed;for(ed in P)if(Yr.call(P,ed)){var Qd=P[ed];if(Qd!=null)switch(ed){case\"children\":Ro=Qd;break;case\"dangerouslySetInnerHTML\":ch=Qd}}var Jd=Array.isArray(Ro)?2>Ro.length?Ro[0]:null:Ro;typeof Jd!=\"function\"&&typeof Jd!=\"symbol\"&&Jd!==null&&Jd!==void 0&&Ql.push(ee(Jd)),q(Ql,ch,Ro)}Xo&&Re&&Re.styles.add(Xo),nt&&x.push(\"<!-- -->\"),v0=void 0}return v0;case\"meta\":if(Pe.insertionMode===na||Pe.tagScope&1||P.itemProp!=null)var Oa=se(x,P,\"meta\");else nt&&x.push(\"<!-- -->\"),Oa=Ne?null:typeof P.charSet==\"string\"?se(oe.charsetChunks,P,\"meta\"):P.name===\"viewport\"?se(oe.viewportChunks,P,\"meta\"):se(oe.hoistableChunks,P,\"meta\");return Oa;case\"listing\":case\"pre\":x.push(Me(k));var Xd=null,Jl=null,Xl;for(Xl in P)if(Yr.call(P,Xl)){var cc=P[Xl];if(cc!=null)switch(Xl){case\"children\":Xd=cc;break;case\"dangerouslySetInnerHTML\":Jl=cc;break;default:j(x,Xl,cc)}}if(x.push(oi),Jl!=null){if(Xd!=null)throw Error(\"Can only set one of `children` or `props.dangerouslySetInnerHTML`.\");if(typeof Jl!=\"object\"||!(\"__html\"in Jl))throw Error(\"`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.\");var eu=Jl.__html;eu!=null&&(typeof eu==\"string\"&&0<eu.length&&eu[0]===`\\n`?x.push(Yo,eu):(b(eu),x.push(\"\"+eu)))}return typeof Xd==\"string\"&&Xd[0]===`\\n`&&x.push(Yo),Xd;case\"img\":var Gi=P.src,ei=P.srcSet;if(!(P.loading===\"lazy\"||!Gi&&!ei||typeof Gi!=\"string\"&&Gi!=null||typeof ei!=\"string\"&&ei!=null)&&P.fetchPriority!==\"low\"&&!(Pe.tagScope&3)&&(typeof Gi!=\"string\"||Gi[4]!==\":\"||Gi[0]!==\"d\"&&Gi[0]!==\"D\"||Gi[1]!==\"a\"&&Gi[1]!==\"A\"||Gi[2]!==\"t\"&&Gi[2]!==\"T\"||Gi[3]!==\"a\"&&Gi[3]!==\"A\")&&(typeof ei!=\"string\"||ei[4]!==\":\"||ei[0]!==\"d\"&&ei[0]!==\"D\"||ei[1]!==\"a\"&&ei[1]!==\"A\"||ei[2]!==\"t\"&&ei[2]!==\"T\"||ei[3]!==\"a\"&&ei[3]!==\"A\")){var cy=typeof P.sizes==\"string\"?P.sizes:void 0,ef=ei?ei+`\\n`+(cy||\"\"):Gi,w0=oe.preloads.images,tf=w0.get(ef);if(tf)(P.fetchPriority===\"high\"||10>oe.highImagePreloads.size)&&(w0.delete(ef),oe.highImagePreloads.add(tf));else if(!Q.imageResources.hasOwnProperty(ef)){Q.imageResources[ef]=ta;var nf=P.crossOrigin,ly=typeof nf==\"string\"?nf===\"use-credentials\"?nf:\"\":void 0,rf=oe.headers,hl;rf&&0<rf.remainingCapacity&&typeof P.srcSet!=\"string\"&&(P.fetchPriority===\"high\"||500>rf.highImagePreloads.length)&&(hl=le(Gi,\"image\",{imageSrcSet:P.srcSet,imageSizes:P.sizes,crossOrigin:ly,integrity:P.integrity,nonce:P.nonce,type:P.type,fetchPriority:P.fetchPriority,referrerPolicy:P.refererPolicy}),0<=(rf.remainingCapacity-=hl.length+2))?(oe.resets.image[ef]=ta,rf.highImagePreloads&&(rf.highImagePreloads+=\", \"),rf.highImagePreloads+=hl):(tf=[],X(tf,{rel:\"preload\",as:\"image\",href:ei?void 0:Gi,imageSrcSet:ei,imageSizes:cy,crossOrigin:ly,integrity:P.integrity,type:P.type,fetchPriority:P.fetchPriority,referrerPolicy:P.referrerPolicy}),P.fetchPriority===\"high\"||10>oe.highImagePreloads.size?oe.highImagePreloads.add(tf):(oe.bulkPreloads.add(tf),w0.set(ef,tf)))}}return se(x,P,\"img\");case\"base\":case\"area\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"keygen\":case\"param\":case\"source\":case\"track\":case\"wbr\":return se(x,P,k);case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":break;case\"head\":if(Pe.insertionMode<pi){var yp=de||oe.preamble;if(yp.headChunks)throw Error(\"The `<head>` tag may only be rendered once.\");yp.headChunks=[];var of=xe(yp.headChunks,P,\"head\")}else of=_e(x,P,\"head\");return of;case\"body\":if(Pe.insertionMode<pi){var x0=de||oe.preamble;if(x0.bodyChunks)throw Error(\"The `<body>` tag may only be rendered once.\");x0.bodyChunks=[];var Rb=xe(x0.bodyChunks,P,\"body\")}else Rb=_e(x,P,\"body\");return Rb;case\"html\":if(Pe.insertionMode===Ym){var bp=de||oe.preamble;if(bp.htmlChunks)throw Error(\"The `<html>` tag may only be rendered once.\");bp.htmlChunks=[J2];var UE=xe(bp.htmlChunks,P,\"html\")}else UE=_e(x,P,\"html\");return UE;default:if(k.indexOf(\"-\")!==-1){x.push(Me(k));var lh=null,jE=null,E0;for(E0 in P)if(Yr.call(P,E0)){var Ls=P[E0];if(Ls!=null){var zE=E0;switch(E0){case\"children\":lh=Ls;break;case\"dangerouslySetInnerHTML\":jE=Ls;break;case\"style\":$(x,Ls);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"ref\":break;case\"className\":zE=\"class\";default:if(E(E0)&&typeof Ls!=\"function\"&&typeof Ls!=\"symbol\"&&Ls!==!1){if(Ls===!0)Ls=\"\";else if(typeof Ls==\"object\")continue;x.push(Ea,zE,rl,W(Ls),Sa)}}}}return x.push(oi),q(x,jE,lh),lh}}return _e(x,P,k)}function wt(x){var k=pE.get(x);return k===void 0&&(k=\"</\"+x+\">\",pE.set(x,k)),k}function Ge(x,k){x=x.preamble,x.htmlChunks===null&&k.htmlChunks&&(x.htmlChunks=k.htmlChunks,k.contribution|=1),x.headChunks===null&&k.headChunks&&(x.headChunks=k.headChunks,k.contribution|=4),x.bodyChunks===null&&k.bodyChunks&&(x.bodyChunks=k.bodyChunks,k.contribution|=2)}function ht(x,k){k=k.bootstrapChunks;for(var P=0;P<k.length-1;P++)x.push(k[P]);return P<k.length?(P=k[P],k.length=0,x.push(P)):!0}function Ct(x,k,P){if(x.push(Ec),P===null)throw Error(\"An ID must have been assigned before we can complete the boundary.\");return x.push(k.boundaryPrefix),k=P.toString(16),x.push(k),x.push(nc)}function dt(x,k){k=k.contribution,k!==M2&&(x.push(F2),x.push(\"\"+k),x.push($g))}function Ze(x,k,P,Q){switch(P.insertionMode){case Ym:case Lo:case Qm:case pi:return x.push(U2),x.push(k.segmentPrefix),k=Q.toString(16),x.push(k),x.push(r0);case na:return x.push(pb),x.push(k.segmentPrefix),k=Q.toString(16),x.push(k),x.push(mb);case Ku:return x.push(jk),x.push(k.segmentPrefix),k=Q.toString(16),x.push(k),x.push(gE);case ub:return x.push(bE),x.push(k.segmentPrefix),k=Q.toString(16),x.push(k),x.push(z2);case lp:return x.push(vE),x.push(k.segmentPrefix),k=Q.toString(16),x.push(k),x.push(t7);case Jm:return x.push(Hk),x.push(k.segmentPrefix),k=Q.toString(16),x.push(k),x.push(qk);case Hg:return x.push(Wk),x.push(k.segmentPrefix),k=Q.toString(16),x.push(k),x.push(Vk);default:throw Error(\"Unknown insertion mode. This is a bug in React.\")}}function rn(x,k){switch(k.insertionMode){case Ym:case Lo:case Qm:case pi:return x.push(mE);case na:return x.push(j2);case Ku:return x.push(yE);case ub:return x.push(zk);case lp:return x.push(wE);case Jm:return x.push(xE);case Hg:return x.push(Kg);default:throw Error(\"Unknown insertion mode. This is a bug in React.\")}}function zt(x){return JSON.stringify(x).replace(CE,function(k){switch(k){case\"<\":return\"\\\\\\\\u003c\";case\"\\\\u2028\":return\"\\\\\\\\u2028\";case\"\\\\u2029\":return\"\\\\\\\\u2029\";default:throw Error(\"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}})}function Bt(x){return JSON.stringify(x).replace(Gk,function(k){switch(k){case\"&\":return\"\\\\\\\\u0026\";case\">\":return\"\\\\\\\\u003e\";case\"<\":return\"\\\\\\\\u003c\";case\"\\\\u2028\":return\"\\\\\\\\u2028\";case\"\\\\u2029\":return\"\\\\\\\\u2029\";default:throw Error(\"escapeJSObjectForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}})}function Mt(x){var k=x.rules,P=x.hrefs;0<k.length&&P.length===0&&console.error(\"React expected to have at least one href for an a hoistable style but found none. This is a bug in React.\");var Q=0;if(P.length){for(this.push(Zk),this.push(x.precedence),this.push(AE);Q<P.length-1;Q++)this.push(P[Q]),this.push(RE);for(this.push(P[Q]),this.push(Yk),Q=0;Q<k.length;Q++)this.push(k[Q]);Z2=this.push(Qk),Yg=!0,k.length=0,P.length=0}}function qt(x){return x.state!==Qg?Yg=!0:!1}function Wt(x,k,P){return Yg=!1,Z2=!0,k.styles.forEach(Mt,x),k.stylesheets.forEach(qt),Yg&&(P.stylesToHoist=!0),Z2}function zn(x){for(var k=0;k<x.length;k++)this.push(x[k]);x.length=0}function Mn(x){X(th,x.props);for(var k=0;k<th.length;k++)this.push(th[k]);th.length=0,x.state=Qg}function br(x){var k=0<x.sheets.size;x.sheets.forEach(Mn,this),x.sheets.clear();var P=x.rules,Q=x.hrefs;if(!k||Q.length){if(this.push(TE),this.push(x.precedence),x=0,Q.length){for(this.push(Jk);x<Q.length-1;x++)this.push(Q[x]),this.push(RE);this.push(Q[x])}for(this.push(s0),x=0;x<P.length;x++)this.push(P[x]);this.push(IE),P.length=0,Q.length=0}}function Zs(x){if(x.state===a0){x.state=gb;var k=x.props;for(X(th,{rel:\"preload\",as:\"style\",href:x.props.href,crossOrigin:k.crossOrigin,fetchPriority:k.fetchPriority,integrity:k.integrity,media:k.media,hrefLang:k.hrefLang,referrerPolicy:k.referrerPolicy}),x=0;x<th.length;x++)this.push(th[x]);th.length=0}}function Pr(x){x.sheets.forEach(Zs,this),x.sheets.clear()}function vr(x,k){x.push(Y2);var P=Y2;k.stylesheets.forEach(function(Q){if(Q.state!==Qg)if(Q.state===PE)x.push(P),Q=Q.props.href,m(Q,\"href\"),Q=Bt(\"\"+Q),x.push(Q),x.push(Q2),P=Xk;else{x.push(P);var oe=Q.props[\"data-precedence\"],de=Q.props,Re=J(\"\"+Q.props.href);Re=Bt(Re),x.push(Re),m(oe,\"precedence\"),oe=\"\"+oe,x.push(OE),oe=Bt(oe),x.push(oe);for(var Pe in de)if(Yr.call(de,Pe)&&(oe=de[Pe],oe!=null))switch(Pe){case\"href\":case\"rel\":case\"precedence\":case\"data-precedence\":break;case\"children\":case\"dangerouslySetInnerHTML\":throw Error(\"link is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");default:hi(x,Pe,oe)}x.push(Q2),P=Xk,Q.state=PE}}),x.push(Q2)}function hi(x,k,P){var Q=k.toLowerCase();switch(typeof P){case\"function\":case\"symbol\":return}switch(k){case\"innerHTML\":case\"dangerouslySetInnerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"style\":case\"ref\":return;case\"className\":Q=\"class\",m(P,Q),k=\"\"+P;break;case\"hidden\":if(P===!1)return;k=\"\";break;case\"src\":case\"href\":P=J(P),m(P,Q),k=\"\"+P;break;default:if(2<k.length&&(k[0]===\"o\"||k[0]===\"O\")&&(k[1]===\"n\"||k[1]===\"N\")||!E(k))return;m(P,Q),k=\"\"+P}x.push(OE),Q=Bt(Q),x.push(Q),x.push(OE),Q=Bt(k),x.push(Q)}function er(){return{styles:new Set,stylesheets:new Set}}function wr(x,k,P,Q){(x.scriptResources.hasOwnProperty(P)||x.moduleScriptResources.hasOwnProperty(P))&&console.error(\\'Internal React Error: React expected bootstrap script or module with src \"%s\" to not have been preloaded already. please file an issue\\',P),x.scriptResources[P]=ko,x.moduleScriptResources[P]=ko,x=[],X(x,Q),k.bootstrapScripts.add(x)}function Ri(x,k){x.crossOrigin==null&&(x.crossOrigin=k[0]),x.integrity==null&&(x.integrity=k[1])}function le(x,k,P){x=Te(x),k=tt(k,\"as\"),k=\"<\"+x+\\'>; rel=preload; as=\"\\'+k+\\'\"\\';for(var Q in P)Yr.call(P,Q)&&(x=P[Q],typeof x==\"string\"&&(k+=\"; \"+Q.toLowerCase()+\\'=\"\\'+tt(x,Q)+\\'\"\\'));return k}function Te(x){return m(x,\"href\"),(\"\"+x).replace(e_,xt)}function xt(x){switch(x){case\"<\":return\"%3C\";case\">\":return\"%3E\";case`\\n`:return\"%0A\";case\"\\\\r\":return\"%0D\";default:throw Error(\"escapeLinkHrefForHeaderContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}function tt(x,k){return d(x)&&(console.error(\"The provided `%s` option is an unsupported type %s. This value must be coerced to a string before using it here.\",k,u(x)),h(x)),(\"\"+x).replace(oa,It)}function It(x){switch(x){case\\'\"\\':return\"%22\";case\"\\'\":return\"%27\";case\";\":return\"%3B\";case\",\":return\"%2C\";case`\\n`:return\"%0A\";case\"\\\\r\":return\"%0D\";default:throw Error(\"escapeStringForLinkHeaderQuotedParamValueContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}function hn(x){this.styles.add(x)}function Dt(x){this.stylesheets.add(x)}function sn(x,k){var P=x.idPrefix,Q=[],oe=x.bootstrapScriptContent,de=x.bootstrapScripts,Re=x.bootstrapModules;if(oe!==void 0&&Q.push(\"<script>\",ne(oe),\"<\\\\/script>\"),P={placeholderPrefix:P+\"P:\",segmentPrefix:P+\"S:\",boundaryPrefix:P+\"B:\",startInlineScript:\"<script>\",preamble:Z(),externalRuntimeScript:null,bootstrapChunks:Q,importMapChunks:[],onHeaders:void 0,headers:null,resets:{font:{},dns:{},connect:{default:{},anonymous:{},credentials:{}},image:{},style:{}},charsetChunks:[],viewportChunks:[],hoistableChunks:[],preconnects:new Set,fontPreloads:new Set,highImagePreloads:new Set,styles:new Map,bootstrapScripts:new Set,scripts:new Set,bulkPreloads:new Set,preloads:{images:new Map,stylesheets:new Map,scripts:new Map,moduleScripts:new Map},nonce:void 0,hoistableState:null,stylesToHoist:!1},de!==void 0)for(oe=0;oe<de.length;oe++){var Pe=de[oe],nt,Ne=void 0,Et=void 0,At={rel:\"preload\",as:\"script\",fetchPriority:\"low\",nonce:void 0};typeof Pe==\"string\"?At.href=nt=Pe:(At.href=nt=Pe.src,At.integrity=Et=typeof Pe.integrity==\"string\"?Pe.integrity:void 0,At.crossOrigin=Ne=typeof Pe==\"string\"||Pe.crossOrigin==null?void 0:Pe.crossOrigin===\"use-credentials\"?\"use-credentials\":\"\"),wr(x,P,nt,At),Q.push(\\'<script src=\"\\',W(nt)),typeof Et==\"string\"&&Q.push(\\'\" integrity=\"\\',W(Et)),typeof Ne==\"string\"&&Q.push(\\'\" crossorigin=\"\\',W(Ne)),Q.push(\\'\" async=\"\"><\\\\/script>\\')}if(Re!==void 0)for(de=0;de<Re.length;de++)oe=Re[de],Ne=nt=void 0,Et={rel:\"modulepreload\",fetchPriority:\"low\",nonce:void 0},typeof oe==\"string\"?Et.href=Pe=oe:(Et.href=Pe=oe.src,Et.integrity=Ne=typeof oe.integrity==\"string\"?oe.integrity:void 0,Et.crossOrigin=nt=typeof oe==\"string\"||oe.crossOrigin==null?void 0:oe.crossOrigin===\"use-credentials\"?\"use-credentials\":\"\"),wr(x,P,Pe,Et),Q.push(\\'<script type=\"module\" src=\"\\',W(Pe)),typeof Ne==\"string\"&&Q.push(\\'\" integrity=\"\\',W(Ne)),typeof nt==\"string\"&&Q.push(\\'\" crossorigin=\"\\',W(nt)),Q.push(\\'\" async=\"\"><\\\\/script>\\');return{placeholderPrefix:P.placeholderPrefix,segmentPrefix:P.segmentPrefix,boundaryPrefix:P.boundaryPrefix,startInlineScript:P.startInlineScript,preamble:P.preamble,externalRuntimeScript:P.externalRuntimeScript,bootstrapChunks:P.bootstrapChunks,importMapChunks:P.importMapChunks,onHeaders:P.onHeaders,headers:P.headers,resets:P.resets,charsetChunks:P.charsetChunks,viewportChunks:P.viewportChunks,hoistableChunks:P.hoistableChunks,preconnects:P.preconnects,fontPreloads:P.fontPreloads,highImagePreloads:P.highImagePreloads,styles:P.styles,bootstrapScripts:P.bootstrapScripts,scripts:P.scripts,bulkPreloads:P.bulkPreloads,preloads:P.preloads,stylesToHoist:P.stylesToHoist,generateStaticMarkup:k}}function bn(x,k,P,Q){return P.generateStaticMarkup?(x.push(W(k)),!1):(k===\"\"?x=Q:(Q&&x.push(\"<!-- -->\"),x.push(W(k)),x=!0),x)}function Fn(x,k,P,Q){k.generateStaticMarkup||P&&Q&&x.push(\"<!-- -->\")}function en(x){if(x==null)return null;if(typeof x==\"function\")return x.$$typeof===yb?null:x.displayName||x.name||null;if(typeof x==\"string\")return x;switch(x){case np:return\"Fragment\";case rp:return\"Profiler\";case $m:return\"StrictMode\";case op:return\"Suspense\";case Vu:return\"SuspenseList\";case Km:return\"Activity\"}if(typeof x==\"object\")switch(typeof x.tag==\"number\"&&console.error(\"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"),x.$$typeof){case T2:return\"Portal\";case Dg:return(x.displayName||\"Context\")+\".Provider\";case Bg:return(x._context.displayName||\"Context\")+\".Consumer\";case Gf:var k=x.render;return x=x.displayName,x||(x=k.displayName||k.name||\"\",x=x!==\"\"?\"ForwardRef(\"+x+\")\":\"ForwardRef\"),x;case $u:return k=x.displayName||null,k!==null?k:en(x.type)||\"Memo\";case Js:k=x._payload,x=x._init;try{return en(x(k))}catch{}}return null}function ni(x,k){if(x!==k){x.context._currentValue2=x.parentValue,x=x.parent;var P=k.parent;if(x===null){if(P!==null)throw Error(\"The stacks must reach the root at the same time. This is a bug in React.\")}else{if(P===null)throw Error(\"The stacks must reach the root at the same time. This is a bug in React.\");ni(x,P)}k.context._currentValue2=k.value}}function jr(x){x.context._currentValue2=x.parentValue,x=x.parent,x!==null&&jr(x)}function Eo(x){var k=x.parent;k!==null&&Eo(k),x.context._currentValue2=x.value}function zu(x,k){if(x.context._currentValue2=x.parentValue,x=x.parent,x===null)throw Error(\"The depth must equal at least at zero before reaching the root. This is a bug in React.\");x.depth===k.depth?ni(x,k):zu(x,k)}function tr(x,k){var P=k.parent;if(P===null)throw Error(\"The depth must equal at least at zero before reaching the root. This is a bug in React.\");x.depth===P.depth?ni(x,P):tr(x,P),k.context._currentValue2=k.value}function dr(x){var k=sl;k!==x&&(k===null?Eo(x):x===null?jr(k):k.depth===x.depth?ni(k,x):k.depth>x.depth?zu(k,x):tr(k,x),sl=x)}function Bl(x){if(x!==null&&typeof x!=\"function\"){var k=String(x);fp.has(k)||(fp.add(k),console.error(\"Expected the last optional `callback` argument to be a function. Instead received: %s.\",x))}}function vn(x,k){x=(x=x.constructor)&&en(x)||\"ReactClass\";var P=x+\".\"+k;ME[P]||(console.error(`Can only update a mounting component. This usually means you called %s() outside componentWillMount() on the server. This is a no-op.\\n\\nPlease check the code for the %s component.`,k,x),ME[P]=!0)}function zr(x,k,P){var Q=x.id;x=x.overflow;var oe=32-wb(Q)-1;Q&=~(1<<oe),P+=1;var de=32-wb(k)+oe;if(30<de){var Re=oe-oe%5;return de=(Q&(1<<Re)-1).toString(32),Q>>=Re,oe-=Re,{id:1<<32-wb(k)+oe|P<<oe|Q,overflow:de+x}}return{id:1<<de|P<<oe|Q,overflow:x}}function Dd(x){return x>>>=0,x===0?32:31-(tw(x)/DE|0)|0}function Mr(){}function So(x,k,P){switch(P=x[P],P===void 0?x.push(k):P!==k&&(k.then(Mr,Mr),k=P),k.status){case\"fulfilled\":return k.value;case\"rejected\":throw k.reason;default:switch(typeof k.status==\"string\"?k.then(Mr,Mr):(x=k,x.status=\"pending\",x.then(function(Q){if(k.status===\"pending\"){var oe=k;oe.status=\"fulfilled\",oe.value=Q}},function(Q){if(k.status===\"pending\"){var oe=k;oe.status=\"rejected\",oe.reason=Q}})),k.status){case\"fulfilled\":return k.value;case\"rejected\":throw k.reason}throw hp=k,Gd}}function jt(){if(hp===null)throw Error(\"Expected a suspended thenable. This is a bug in React. Please file an issue.\");var x=hp;return hp=null,x}function xr(x,k){return x===k&&(x!==0||1/x===1/k)||x!==x&&k!==k}function En(){if(Zu===null)throw Error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`);return Wl&&console.error(\"Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks\"),Zu}function Hu(){if(0<d0)throw Error(\"Rendered more hooks than during the previous render\");return{memoizedState:null,queue:null,next:null}}function Zr(){return _o===null?Sb===null?(Xg=!1,Sb=_o=Hu()):(Xg=!0,_o=Sb):_o.next===null?(Xg=!1,_o=_o.next=Hu()):(Xg=!0,_o=_o.next),_o}function Cr(){var x=ih;return ih=null,x}function Ys(){Wl=!1,Eb=Jg=Wi=Zu=null,u0=!1,Sb=null,d0=0,_o=Yu=null}function Zc(x){return Wl&&console.error(\"Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().\"),x._currentValue2}function Zo(x,k){return typeof k==\"function\"?k(x):k}function qu(x,k,P){if(x!==Zo&&(pp=\"useReducer\"),Zu=En(),_o=Zr(),Xg){if(P=_o.queue,k=P.dispatch,Yu!==null){var Q=Yu.get(P);if(Q!==void 0){Yu.delete(P),P=_o.memoizedState;do{var oe=Q.action;Wl=!0,P=x(P,oe),Wl=!1,Q=Q.next}while(Q!==null);return _o.memoizedState=P,[P,k]}}return[_o.memoizedState,k]}return Wl=!0,x=x===Zo?typeof k==\"function\"?k():k:P!==void 0?P(k):k,Wl=!1,_o.memoizedState=x,x=_o.queue={last:null,dispatch:null},x=x.dispatch=Wu.bind(null,Zu,x),[_o.memoizedState,x]}function ts(x,k){if(Zu=En(),_o=Zr(),k=k===void 0?null:k,_o!==null){var P=_o.memoizedState;if(P!==null&&k!==null){e:{var Q=P[1];if(Q===null)console.error(\"%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.\",pp),Q=!1;else{k.length!==Q.length&&console.error(`The final argument passed to %s changed size between renders. The order and size of this array must remain constant.\\n\\nPrevious: %s\\nIncoming: %s`,pp,\"[\"+k.join(\", \")+\"]\",\"[\"+Q.join(\", \")+\"]\");for(var oe=0;oe<Q.length&&oe<k.length;oe++)if(!xb(k[oe],Q[oe])){Q=!1;break e}Q=!0}}if(Q)return P[0]}}return Wl=!0,x=x(),Wl=!1,_o.memoizedState=[x,k],x}function Wu(x,k,P){if(25<=d0)throw Error(\"Too many re-renders. React limits the number of renders to prevent an infinite loop.\");if(x===Zu)if(u0=!0,x={action:P,next:null},Yu===null&&(Yu=new Map),P=Yu.get(k),P===void 0)Yu.set(k,x);else{for(k=P;k.next!==null;)k=k.next;k.next=x}}function Yc(){throw Error(\"startTransition cannot be called during server rendering.\")}function Ya(){throw Error(\"Cannot update optimistic state while rendering.\")}function Qa(x,k,P){En();var Q=oh++,oe=Jg;if(typeof x.$$FORM_ACTION==\"function\"){var de=null,Re=Eb;oe=oe.formState;var Pe=x.$$IS_SIGNATURE_EQUAL;if(oe!==null&&typeof Pe==\"function\"){var nt=oe[1];Pe.call(x,oe[2],oe[3])&&(de=P!==void 0?\"p\"+P:\"k\"+c(JSON.stringify([Re,null,Q]),0),nt===de&&(ql=Q,k=oe[0]))}var Ne=x.bind(null,k);return x=function(At){Ne(At)},typeof Ne.$$FORM_ACTION==\"function\"&&(x.$$FORM_ACTION=function(At){At=Ne.$$FORM_ACTION(At),P!==void 0&&(m(P,\"target\"),P+=\"\",At.action=P);var Rt=At.data;return Rt&&(de===null&&(de=P!==void 0?\"p\"+P:\"k\"+c(JSON.stringify([Re,null,Q]),0)),Rt.append(\"$ACTION_KEY\",de)),At}),[k,x,!1]}var Et=x.bind(null,k);return[k,function(At){Et(At)},!1]}function ya(x){var k=ey;return ey+=1,ih===null&&(ih=[]),So(ih,x,k)}function Dl(){throw Error(\"Cache cannot be refreshed during server rendering.\")}function Ja(){}function Fl(){}function Fd(){if(mp===0){nw=console.log,Zd=console.info,h0=console.warn,t_=console.error,rw=console.group,Ca=console.groupCollapsed,ny=console.groupEnd;var x={configurable:!0,enumerable:!0,value:Fl,writable:!0};Object.defineProperties(console,{info:x,log:x,warn:x,error:x,group:x,groupCollapsed:x,groupEnd:x})}mp++}function Cg(){if(mp--,mp===0){var x={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Ii({},x,{value:nw}),info:Ii({},x,{value:Zd}),warn:Ii({},x,{value:h0}),error:Ii({},x,{value:t_}),group:Ii({},x,{value:rw}),groupCollapsed:Ii({},x,{value:Ca}),groupEnd:Ii({},x,{value:ny})})}0>mp&&console.error(\"disabledDepth fell below zero. This is a bug in React. Please file an issue.\")}function ri(x){if(ry===void 0)try{throw Error()}catch(P){var k=P.stack.trim().match(/\\\\n( *(at )?)/);ry=k&&k[1]||\"\",kc=-1<P.stack.indexOf(`\\n    at`)?\" (<anonymous>)\":-1<P.stack.indexOf(\"@\")?\"@unknown:0:0\":\"\"}return`\\n`+ry+x+kc}function bc(x,k){if(!x||fo)return\"\";var P=kb.get(x);if(P!==void 0)return P;fo=!0,P=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var Q=null;Q=ea.H,ea.H=null,Fd();try{var oe={DetermineComponentFrameRoot:function(){try{if(k){var Rt=function(){throw Error()};if(Object.defineProperty(Rt.prototype,\"props\",{set:function(){throw Error()}}),typeof Reflect==\"object\"&&Reflect.construct){try{Reflect.construct(Rt,[])}catch(lt){var Ft=lt}Reflect.construct(x,[],Rt)}else{try{Rt.call()}catch(lt){Ft=lt}x.call(Rt.prototype)}}else{try{throw Error()}catch(lt){Ft=lt}(Rt=x())&&typeof Rt.catch==\"function\"&&Rt.catch(function(){})}}catch(lt){if(lt&&Ft&&typeof lt.stack==\"string\")return[lt.stack,Ft.stack]}return[null,null]}};oe.DetermineComponentFrameRoot.displayName=\"DetermineComponentFrameRoot\";var de=Object.getOwnPropertyDescriptor(oe.DetermineComponentFrameRoot,\"name\");de&&de.configurable&&Object.defineProperty(oe.DetermineComponentFrameRoot,\"name\",{value:\"DetermineComponentFrameRoot\"});var Re=oe.DetermineComponentFrameRoot(),Pe=Re[0],nt=Re[1];if(Pe&&nt){var Ne=Pe.split(`\\n`),Et=nt.split(`\\n`);for(Re=de=0;de<Ne.length&&!Ne[de].includes(\"DetermineComponentFrameRoot\");)de++;for(;Re<Et.length&&!Et[Re].includes(\"DetermineComponentFrameRoot\");)Re++;if(de===Ne.length||Re===Et.length)for(de=Ne.length-1,Re=Et.length-1;1<=de&&0<=Re&&Ne[de]!==Et[Re];)Re--;for(;1<=de&&0<=Re;de--,Re--)if(Ne[de]!==Et[Re]){if(de!==1||Re!==1)do if(de--,Re--,0>Re||Ne[de]!==Et[Re]){var At=`\\n`+Ne[de].replace(\" at new \",\" at \");return x.displayName&&At.includes(\"<anonymous>\")&&(At=At.replace(\"<anonymous>\",x.displayName)),typeof x==\"function\"&&kb.set(x,At),At}while(1<=de&&0<=Re);break}}}finally{fo=!1,ea.H=Q,Cg(),Error.prepareStackTrace=P}return Ne=(Ne=x?x.displayName||x.name:\"\")?ri(Ne):\"\",typeof x==\"function\"&&kb.set(x,Ne),Ne}function Qc(x){var k=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,x=x.stack,Error.prepareStackTrace=k,x.startsWith(`Error: react-stack-top-frame\\n`)&&(x=x.slice(29)),k=x.indexOf(`\\n`),k!==-1&&(x=x.slice(k+1)),k=x.indexOf(\"react-stack-bottom-frame\"),k!==-1&&(k=x.lastIndexOf(`\\n`,k)),k!==-1)x=x.slice(0,k);else return\"\";return x}function Vh(x){if(typeof x==\"string\")return ri(x);if(typeof x==\"function\")return x.prototype&&x.prototype.isReactComponent?bc(x,!0):bc(x,!1);if(typeof x==\"object\"&&x!==null){switch(x.$$typeof){case Gf:return bc(x.render,!1);case $u:return bc(x.type,!1);case Js:var k=x,P=k._payload;k=k._init;try{x=k(P)}catch{return ri(\"Lazy\")}return Vh(x)}if(typeof x.name==\"string\")return P=x.env,ri(x.name+(P?\" [\"+P+\"]\":\"\"))}switch(x){case Vu:return ri(\"SuspenseList\");case op:return ri(\"Suspense\")}return\"\"}function Wf(x){if(typeof x==\"object\"&&x!==null&&typeof x.environmentName==\"string\"){var k=x.environmentName;x=[x].slice(0),typeof x[0]==\"string\"?x.splice(0,1,\"[%s] \"+x[0],\" \"+k+\" \"):x.splice(0,0,\"[%s] \",\" \"+k+\" \"),x.unshift(console),k=X2.apply(console.error,x),k()}else console.error(x);return null}function Ud(){}function nE(x,k,P,Q,oe,de,Re,Pe,nt,Ne,Et){var At=new Set;this.destination=null,this.flushScheduled=!1,this.resumableState=x,this.renderState=k,this.rootFormatContext=P,this.progressiveChunkSize=Q===void 0?12800:Q,this.status=10,this.fatalError=null,this.pendingRootTasks=this.allPendingTasks=this.nextSegmentId=0,this.completedPreambleSegments=this.completedRootSegment=null,this.abortableTasks=At,this.pingedTasks=[],this.clientRenderedBoundaries=[],this.completedBoundaries=[],this.partialBoundaries=[],this.trackedPostpones=null,this.onError=oe===void 0?Wf:oe,this.onPostpone=Ne===void 0?Ud:Ne,this.onAllReady=de===void 0?Ud:de,this.onShellReady=Re===void 0?Ud:Re,this.onShellError=Pe===void 0?Ud:Pe,this.onFatalError=nt===void 0?Ud:nt,this.formState=Et===void 0?null:Et,this.didWarnForKey=null}function X1(x,k,P,Q,oe,de,Re,Pe,nt,Ne,Et,At){var Rt=m0();return 1e3<Rt-Qu&&(ea.recentlyCreatedOwnerStacks=0,Qu=Rt),k=new nE(k,P,Q,oe,de,Re,Pe,nt,Ne,Et,At),P=Um(k,0,null,Q,!1,!1),P.parentFlushed=!0,x=Ag(k,null,x,-1,null,P,null,null,k.abortableTasks,null,Q,null,BE,null,!1,il,null),Kh(x),k.pingedTasks.push(x),k}function vc(x,k){x.pingedTasks.push(k),x.pingedTasks.length===1&&(x.flushScheduled=x.destination!==null,Jc(x))}function jd(x,k,P,Q){return{status:Vl,rootSegmentID:-1,parentFlushed:!1,pendingTasks:0,completedSegments:[],byteSize:0,fallbackAbortableTasks:k,errorDigest:null,contentState:er(),fallbackState:er(),contentPreamble:P,fallbackPreamble:Q,trackedContentKeyPath:null,trackedFallbackNode:null,errorMessage:null,errorStack:null,errorComponentStack:null}}function Ag(x,k,P,Q,oe,de,Re,Pe,nt,Ne,Et,At,Rt,Ft,lt,Kn,Sn){x.allPendingTasks++,oe===null?x.pendingRootTasks++:oe.pendingTasks++;var mn={replay:null,node:P,childIndex:Q,ping:function(){return vc(x,mn)},blockedBoundary:oe,blockedSegment:de,blockedPreamble:Re,hoistableState:Pe,abortSet:nt,keyPath:Ne,formatContext:Et,context:At,treeContext:Rt,componentStack:Ft,thenableState:k,isFallback:lt};return mn.debugTask=Sn,nt.add(mn),mn}function C2(x,k,P,Q,oe,de,Re,Pe,nt,Ne,Et,At,Rt,Ft,lt,Kn){x.allPendingTasks++,de===null?x.pendingRootTasks++:de.pendingTasks++,P.pendingTasks++;var Sn={replay:P,node:Q,childIndex:oe,ping:function(){return vc(x,Sn)},blockedBoundary:de,blockedSegment:null,blockedPreamble:null,hoistableState:Re,abortSet:Pe,keyPath:nt,formatContext:Ne,context:Et,treeContext:At,componentStack:Rt,thenableState:k,isFallback:Ft};return Sn.debugTask=Kn,Pe.add(Sn),Sn}function Um(x,k,P,Q,oe,de){return{status:Vl,parentFlushed:!1,id:-1,index:k,chunks:[],children:[],preambleChildren:[],parentFormatContext:Q,boundary:P,lastPushedText:oe,textEmbedded:de}}function $h(){if(al===null||al.componentStack===null)return\"\";var x=al.componentStack;try{var k=\"\";if(typeof x.type==\"string\")k+=ri(x.type);else if(typeof x.type==\"function\"){if(!x.owner){var P=k,Q=x.type,oe=Q?Q.displayName||Q.name:\"\",de=oe?ri(oe):\"\";k=P+de}}else x.owner||(k+=Vh(x.type));for(;x;)P=null,x.debugStack!=null?P=Qc(x.debugStack):(de=x,de.stack!=null&&(P=typeof de.stack!=\"string\"?de.stack=Qc(de.stack):de.stack)),(x=x.owner)&&P&&(k+=`\\n`+P);var Re=k}catch(Pe){Re=`\\nError generating stack: `+Pe.message+`\\n`+Pe.stack}return Re}function Tg(x,k){if(k!=null)for(var P=0;P<k.length;P++){var Q=k[P];typeof Q.name==\"string\"&&Q.debugStack!==void 0&&(x.componentStack={parent:x.componentStack,type:Q,owner:Q.owner,stack:Q.debugStack},x.debugTask=Q.debugTask)}}function Kh(x){var k=x.node;if(typeof k==\"object\"&&k!==null)switch(k.$$typeof){case Vm:var P=k.type,Q=k._owner,oe=k._debugStack;Tg(x,k._debugInfo),x.debugTask=k._debugTask,x.componentStack={parent:x.componentStack,type:P,owner:Q,stack:oe};break;case Js:Tg(x,k._debugInfo);break;default:typeof k.then==\"function\"&&Tg(x,k._debugInfo)}}function Gh(x){var k={};return x&&Object.defineProperty(k,\"componentStack\",{configurable:!0,enumerable:!0,get:function(){try{var P=\"\",Q=x;do P+=Vh(Q.type),Q=Q.parent;while(Q);var oe=P}catch(de){oe=`\\nError generating stack: `+de.message+`\\n`+de.stack}return Object.defineProperty(k,\"componentStack\",{value:oe}),oe}}),k}function Zh(x,k,P,Q,oe){x.errorDigest=k,P instanceof Error?(k=String(P.message),P=String(P.stack)):(k=typeof P==\"object\"&&P!==null?a(P):String(P),P=null),oe=oe?`Switched to client rendering because the server rendering aborted due to:\\n\\n`:`Switched to client rendering because the server rendering errored:\\n\\n`,x.errorMessage=oe+k,x.errorStack=P!==null?oe+P:null,x.errorComponentStack=Q.componentStack}function Qs(x,k,P,Q){if(x=x.onError,k=Q?Q.run(x.bind(null,k,P)):x(k,P),k!=null&&typeof k!=\"string\")console.error(\\'onError returned something with a type other than \"string\". onError should return a string and may return null or undefined but must not return anything else. It received something of type \"%s\" instead\\',typeof k);else return k}function zd(x,k,P,Q){P=x.onShellError;var oe=x.onFatalError;Q?(Q.run(P.bind(null,k)),Q.run(oe.bind(null,k))):(P(k),oe(k)),x.destination!==null?(x.status=Os,x.destination.destroy(k)):(x.status=13,x.fatalError=k)}function eb(x,k,P,Q,oe,de){var Re=k.thenableState;for(k.thenableState=null,Zu={},Wi=k,Jg=x,Eb=P,Wl=!1,oh=_a=0,ql=-1,ey=0,ih=Re,x=_b(Q,oe,de);u0;)u0=!1,oh=_a=0,ql=-1,ey=0,d0+=1,_o=null,x=Q(oe,de);return Ys(),x}function Hd(x,k,P,Q,oe,de,Re){var Pe=!1;if(de!==0&&x.formState!==null){var nt=k.blockedSegment;if(nt!==null){Pe=!0,nt=nt.chunks;for(var Ne=0;Ne<de;Ne++)Ne===Re?nt.push(\"<!--F!-->\"):nt.push(\"<!--F-->\")}}de=k.keyPath,k.keyPath=P,oe?(P=k.treeContext,k.treeContext=zr(P,1,0),Xa(x,k,Q,-1),k.treeContext=P):Pe?Xa(x,k,Q,-1):ms(x,k,Q,-1),k.keyPath=de}function Vf(x,k,P,Q,oe,de){if(typeof Q==\"function\")if(Q.prototype&&Q.prototype.isReactComponent){var Re=oe;if(\"ref\"in oe){Re={};for(var Pe in oe)Pe!==\"ref\"&&(Re[Pe]=oe[Pe])}var nt=Q.defaultProps;if(nt){Re===oe&&(Re=Ii({},Re,oe));for(var Ne in nt)Re[Ne]===void 0&&(Re[Ne]=nt[Ne])}var Et=Re,At=il,Rt=Q.contextType;if(\"contextType\"in Q&&Rt!==null&&(Rt===void 0||Rt.$$typeof!==Dg)&&!Kd.has(Q)){Kd.add(Q);var Ft=Rt===void 0?\" However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file.\":typeof Rt!=\"object\"?\" However, it is set to a \"+typeof Rt+\".\":Rt.$$typeof===Bg?\" Did you accidentally pass the Context.Consumer instead?\":\" However, it is set to an object with keys {\"+Object.keys(Rt).join(\", \")+\"}.\";console.error(\"%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s\",en(Q)||\"Component\",Ft)}typeof Rt==\"object\"&&Rt!==null&&(At=Rt._currentValue2);var lt=new Q(Et,At);if(typeof Q.getDerivedStateFromProps==\"function\"&&(lt.state===null||lt.state===void 0)){var Kn=en(Q)||\"Component\";NE.has(Kn)||(NE.add(Kn),console.error(\"`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.\",Kn,lt.state===null?\"null\":\"undefined\",Kn))}if(typeof Q.getDerivedStateFromProps==\"function\"||typeof lt.getSnapshotBeforeUpdate==\"function\"){var Sn=null,mn=null,un=null;if(typeof lt.componentWillMount==\"function\"&&lt.componentWillMount.__suppressDeprecationWarning!==!0?Sn=\"componentWillMount\":typeof lt.UNSAFE_componentWillMount==\"function\"&&(Sn=\"UNSAFE_componentWillMount\"),typeof lt.componentWillReceiveProps==\"function\"&&lt.componentWillReceiveProps.__suppressDeprecationWarning!==!0?mn=\"componentWillReceiveProps\":typeof lt.UNSAFE_componentWillReceiveProps==\"function\"&&(mn=\"UNSAFE_componentWillReceiveProps\"),typeof lt.componentWillUpdate==\"function\"&&lt.componentWillUpdate.__suppressDeprecationWarning!==!0?un=\"componentWillUpdate\":typeof lt.UNSAFE_componentWillUpdate==\"function\"&&(un=\"UNSAFE_componentWillUpdate\"),Sn!==null||mn!==null||un!==null){var Vi=en(Q)||\"Component\",cn=typeof Q.getDerivedStateFromProps==\"function\"?\"getDerivedStateFromProps()\":\"getSnapshotBeforeUpdate()\";$d.has(Vi)||($d.add(Vi),console.error(`Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n%s uses %s but also contains the following legacy lifecycles:%s%s%s\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\nhttps://react.dev/link/unsafe-component-lifecycles`,Vi,cn,Sn!==null?`\\n  `+Sn:\"\",mn!==null?`\\n  `+mn:\"\",un!==null?`\\n  `+un:\"\"))}}var Tn=en(Q)||\"Component\";lt.render||(Q.prototype&&typeof Q.prototype.render==\"function\"?console.error(\"No `render` method found on the %s instance: did you accidentally return an object from the constructor?\",Tn):console.error(\"No `render` method found on the %s instance: you may have forgotten to define `render`.\",Tn)),!lt.getInitialState||lt.getInitialState.isReactClassApproved||lt.state||console.error(\"getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?\",Tn),lt.getDefaultProps&&!lt.getDefaultProps.isReactClassApproved&&console.error(\"getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.\",Tn),lt.contextType&&console.error(\"contextType was defined as an instance property on %s. Use a static property to define contextType instead.\",Tn),Q.childContextTypes&&!vb.has(Q)&&(vb.add(Q),console.error(\"%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)\",Tn)),Q.contextTypes&&!l0.has(Q)&&(l0.add(Q),console.error(\"%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with static contextType instead. (https://react.dev/link/legacy-context)\",Tn)),typeof lt.componentShouldUpdate==\"function\"&&console.error(\"%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.\",Tn),Q.prototype&&Q.prototype.isPureReactComponent&&typeof lt.shouldComponentUpdate<\"u\"&&console.error(\"%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.\",en(Q)||\"A pure component\"),typeof lt.componentDidUnmount==\"function\"&&console.error(\"%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?\",Tn),typeof lt.componentDidReceiveProps==\"function\"&&console.error(\"%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().\",Tn),typeof lt.componentWillRecieveProps==\"function\"&&console.error(\"%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?\",Tn),typeof lt.UNSAFE_componentWillRecieveProps==\"function\"&&console.error(\"%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?\",Tn);var ro=lt.props!==Et;lt.props!==void 0&&ro&&console.error(\"When calling super() in `%s`, make sure to pass up the same props that your component\\'s constructor was passed.\",Tn),lt.defaultProps&&console.error(\"Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.\",Tn,Tn),typeof lt.getSnapshotBeforeUpdate!=\"function\"||typeof lt.componentDidUpdate==\"function\"||rh.has(Q)||(rh.add(Q),console.error(\"%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.\",en(Q))),typeof lt.getDerivedStateFromProps==\"function\"&&console.error(\"%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.\",Tn),typeof lt.getDerivedStateFromError==\"function\"&&console.error(\"%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.\",Tn),typeof Q.getSnapshotBeforeUpdate==\"function\"&&console.error(\"%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.\",Tn);var Oi=lt.state;Oi&&(typeof Oi!=\"object\"||el(Oi))&&console.error(\"%s.state: must be set to an object or null\",Tn),typeof lt.getChildContext==\"function\"&&typeof Q.childContextTypes!=\"object\"&&console.error(\"%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().\",Tn);var $i=lt.state!==void 0?lt.state:null;lt.updater=LE,lt.props=Et,lt.state=$i;var ii={queue:[],replace:!1};lt._reactInternals=ii;var Co=Q.contextType;if(lt.context=typeof Co==\"object\"&&Co!==null?Co._currentValue2:il,lt.state===Et){var _c=en(Q)||\"Component\";bb.has(_c)||(bb.add(_c),console.error(\"%s: It is not recommended to assign props directly to state because updates to props won\\'t be reflected in state. In most cases, it is better to use props directly.\",_c))}var Aa=Q.getDerivedStateFromProps;if(typeof Aa==\"function\"){var Er=Aa(Et,$i);if(Er===void 0){var w=en(Q)||\"Component\";ew.has(w)||(ew.add(w),console.error(\"%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.\",w))}var S=Er==null?$i:Ii({},$i,Er);lt.state=S}if(typeof Q.getDerivedStateFromProps!=\"function\"&&typeof lt.getSnapshotBeforeUpdate!=\"function\"&&(typeof lt.UNSAFE_componentWillMount==\"function\"||typeof lt.componentWillMount==\"function\")){var M=lt.state;if(typeof lt.componentWillMount==\"function\"){if(lt.componentWillMount.__suppressDeprecationWarning!==!0){var Y=en(Q)||\"Unknown\";nh[Y]||(console.warn(`componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\\n\\n* Move code from componentWillMount to componentDidMount (preferred in most cases) or the constructor.\\n\\nPlease update the following components: %s`,Y),nh[Y]=!0)}lt.componentWillMount()}if(typeof lt.UNSAFE_componentWillMount==\"function\"&&lt.UNSAFE_componentWillMount(),M!==lt.state&&(console.error(\"%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component\\'s constructor). Use setState instead.\",en(Q)||\"Component\"),LE.enqueueReplaceState(lt,lt.state,null)),ii.queue!==null&&0<ii.queue.length){var re=ii.queue,ue=ii.replace;if(ii.queue=null,ii.replace=!1,ue&&re.length===1)lt.state=re[0];else{for(var Ee=ue?re[0]:lt.state,Ae=!0,Le=ue?1:0;Le<re.length;Le++){var Ie=re[Le],pt=typeof Ie==\"function\"?Ie.call(lt,Ee,Et,void 0):Ie;pt!=null&&(Ae?(Ae=!1,Ee=Ii({},Ee,pt)):Ii(Ee,pt))}lt.state=Ee}}else ii.queue=null}var ut=oy(lt);if(x.status===12)throw null;lt.props!==Et&&(Ab||console.error(\"It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.\",en(Q)||\"a component\"),Ab=!0);var _t=k.keyPath;k.keyPath=P,ms(x,k,ut,-1),k.keyPath=_t}else{if(Q.prototype&&typeof Q.prototype.render==\"function\"){var bt=en(Q)||\"Unknown\";n_[bt]||(console.error(\"The <%s /> component appears to have a render method, but doesn\\'t extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.\",bt,bt),n_[bt]=!0)}var rt=eb(x,k,P,Q,oe,void 0);if(x.status===12)throw null;var kn=_a!==0,Tr=oh,_n=ql;if(Q.contextTypes){var Gt=en(Q)||\"Unknown\";y0[Gt]||(y0[Gt]=!0,console.error(\"%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with React.useContext() instead. (https://react.dev/link/legacy-context)\",Gt))}if(Q&&Q.childContextTypes&&console.error(`childContextTypes cannot be defined on a function component.\\n  %s.childContextTypes = ...`,Q.displayName||Q.name||\"Component\"),typeof Q.getDerivedStateFromProps==\"function\"){var Bo=en(Q)||\"Unknown\";iw[Bo]||(console.error(\"%s: Function components do not support getDerivedStateFromProps.\",Bo),iw[Bo]=!0)}if(typeof Q.contextType==\"object\"&&Q.contextType!==null){var Lr=en(Q)||\"Unknown\";Cb[Lr]||(console.error(\"%s: Function components do not support contextType.\",Lr),Cb[Lr]=!0)}Hd(x,k,P,rt,kn,Tr,_n)}else if(typeof Q==\"string\"){var Rn=k.blockedSegment;if(Rn===null){var os=oe.children,Ps=k.formatContext,si=k.keyPath;k.formatContext=V(Ps,Q,oe),k.keyPath=P,Xa(x,k,os,-1),k.formatContext=Ps,k.keyPath=si}else{var gi=qe(Rn.chunks,Q,oe,x.resumableState,x.renderState,k.blockedPreamble,k.hoistableState,k.formatContext,Rn.lastPushedText,k.isFallback);Rn.lastPushedText=!1;var po=k.formatContext,Jo=k.keyPath;if(k.keyPath=P,(k.formatContext=V(po,Q,oe)).insertionMode===Qm){var yi=Um(x,0,null,k.formatContext,!1,!1);Rn.preambleChildren.push(yi);var Bn=Ag(x,null,gi,-1,k.blockedBoundary,yi,k.blockedPreamble,k.hoistableState,x.abortableTasks,k.keyPath,k.formatContext,k.context,k.treeContext,k.componentStack,k.isFallback,il,k.debugTask);Kh(Bn),x.pingedTasks.push(Bn)}else Xa(x,k,gi,-1);k.formatContext=po,k.keyPath=Jo;e:{var mo=Rn.chunks,Br=x.resumableState;switch(Q){case\"title\":case\"style\":case\"script\":case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"input\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":break e;case\"body\":if(po.insertionMode<=Lo){Br.hasBody=!0;break e}break;case\"html\":if(po.insertionMode===Ym){Br.hasHtml=!0;break e}break;case\"head\":if(po.insertionMode<=Lo)break e}mo.push(wt(Q))}Rn.lastPushedText=!1}}else{switch(Q){case ip:case $m:case rp:case np:var is=k.keyPath;k.keyPath=P,ms(x,k,oe.children,-1),k.keyPath=is;return;case Km:if(oe.mode!==\"hidden\"){var ss=k.keyPath;k.keyPath=P,ms(x,k,oe.children,-1),k.keyPath=ss}return;case Vu:var Pi=k.keyPath;k.keyPath=P,ms(x,k,oe.children,-1),k.keyPath=Pi;return;case Rs:case Xc:throw Error(\"ReactDOMServer does not yet support scope components.\");case op:e:if(k.replay!==null){var rc=k.keyPath;k.keyPath=P;var Ki=oe.children;try{Xa(x,k,Ki,-1)}finally{k.keyPath=rc}}else{var oc=k.keyPath,Ju=k.blockedBoundary,Un=k.blockedPreamble,cl=k.hoistableState,Ta=k.blockedSegment,Xu=oe.fallback,gs=oe.children,Mi=new Set,Ao=k.formatContext.insertionMode<pi?jd(x,Mi,Z(),Z()):jd(x,Mi,null,null);x.trackedPostpones!==null&&(Ao.trackedContentKeyPath=P);var ys=Um(x,Ta.chunks.length,Ao,k.formatContext,!1,!1);Ta.children.push(ys),Ta.lastPushedText=!1;var ia=Um(x,0,null,k.formatContext,!1,!1);if(ia.parentFlushed=!0,x.trackedPostpones!==null){var $l=[P[0],\"Suspense Fallback\",P[2]],as=[$l[1],$l[2],[],null];x.trackedPostpones.workingMap.set($l,as),Ao.trackedFallbackNode=as,k.blockedSegment=ys,k.blockedPreamble=Ao.fallbackPreamble,k.keyPath=$l,ys.status=6;try{Xa(x,k,Xu,-1),Fn(ys.chunks,x.renderState,ys.lastPushedText,ys.textEmbedded),ys.status=Qo}catch(cs){throw ys.status=x.status===12?3:4,cs}finally{k.blockedSegment=Ta,k.blockedPreamble=Un,k.keyPath=oc}var Cc=Ag(x,null,gs,-1,Ao,ia,Ao.contentPreamble,Ao.contentState,k.abortSet,P,k.formatContext,k.context,k.treeContext,k.componentStack,k.isFallback,il,k.debugTask);Kh(Cc),x.pingedTasks.push(Cc)}else{k.blockedBoundary=Ao,k.blockedPreamble=Ao.contentPreamble,k.hoistableState=Ao.contentState,k.blockedSegment=ia,k.keyPath=P,ia.status=6;try{if(Xa(x,k,gs,-1),Fn(ia.chunks,x.renderState,ia.lastPushedText,ia.textEmbedded),ia.status=Qo,Kf(Ao,ia),Ao.pendingTasks===0&&Ao.status===Vl){Ao.status=Qo,x.pendingRootTasks===0&&k.blockedPreamble&&Jh(x);break e}}catch(cs){if(Ao.status=rs,x.status===12){ia.status=3;var Ra=x.fatalError}else ia.status=4,Ra=cs;var sa=Gh(k.componentStack),To=Qs(x,Ra,sa,k.debugTask);Zh(Ao,To,Ra,sa,!1),jm(x,Ao)}finally{k.blockedBoundary=Ju,k.blockedPreamble=Un,k.hoistableState=cl,k.blockedSegment=Ta,k.keyPath=oc}var Ms=Ag(x,null,Xu,-1,Ju,ys,Ao.fallbackPreamble,Ao.fallbackState,Mi,[P[0],\"Suspense Fallback\",P[2]],k.formatContext,k.context,k.treeContext,k.componentStack,!0,il,k.debugTask);Kh(Ms),x.pingedTasks.push(Ms)}}return}if(typeof Q==\"object\"&&Q!==null)switch(Q.$$typeof){case Gf:if(\"ref\"in oe){var ic={};for(var Ac in oe)Ac!==\"ref\"&&(ic[Ac]=oe[Ac])}else ic=oe;var sc=eb(x,k,P,Q.render,ic,de);Hd(x,k,P,sc,_a!==0,oh,ql);return;case $u:Vf(x,k,P,Q.type,oe,de);return;case sE:case Dg:var Kl=oe.value,aa=oe.children,ll=k.context,Tc=k.keyPath,ul=Q._currentValue2;Q._currentValue2=Kl,Q._currentRenderer2!==void 0&&Q._currentRenderer2!==null&&Q._currentRenderer2!==c0&&console.error(\"Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.\"),Q._currentRenderer2=c0;var dl=sl,Ia={parent:dl,depth:dl===null?0:dl.depth+1,context:Q,parentValue:ul,value:Kl};sl=Ia,k.context=Ia,k.keyPath=P,ms(x,k,aa,-1);var ca=sl;if(ca===null)throw Error(\"Tried to pop a Context at the root of the app. This is a bug in React.\");ca.context!==Q&&console.error(\"The parent context is not the expected context. This is probably a bug in React.\"),ca.context._currentValue2=ca.parentValue,Q._currentRenderer2!==void 0&&Q._currentRenderer2!==null&&Q._currentRenderer2!==c0&&console.error(\"Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.\"),Q._currentRenderer2=c0;var ah=sl=ca.parent;k.context=ah,k.keyPath=Tc,ll!==k.context&&console.error(\"Popping the context provider did not return back to the original snapshot. This is a bug in React.\");return;case Bg:var pn=Q._context,Gl=oe.children;typeof Gl!=\"function\"&&console.error(\"A context consumer was rendered with multiple children, or a child that isn\\'t a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it.\");var Zl=Gl(pn._currentValue2),gp=k.keyPath;k.keyPath=P,ms(x,k,Zl,-1),k.keyPath=gp;return;case Js:var ac=Yd(Q);if(x.status===12)throw null;Vf(x,k,P,ac,oe,de);return}var Yl=\"\";throw(Q===void 0||typeof Q==\"object\"&&Q!==null&&Object.keys(Q).length===0)&&(Yl+=\" You likely forgot to export your component from the file it\\'s defined in, or you might have mixed up default and named imports.\"),Error(\"Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: \"+((Q==null?Q:typeof Q)+\".\"+Yl))}}function Rg(x,k,P,Q,oe){var de=k.replay,Re=k.blockedBoundary,Pe=Um(x,0,null,k.formatContext,!1,!1);Pe.id=P,Pe.parentFlushed=!0;try{k.replay=null,k.blockedSegment=Pe,Xa(x,k,Q,oe),Pe.status=Qo,Re===null?x.completedRootSegment=Pe:(Kf(Re,Pe),Re.parentFlushed&&x.partialBoundaries.push(Re))}finally{k.replay=de,k.blockedSegment=null}}function Yh(x,k,P,Q,oe,de,Re,Pe,nt,Ne){de=Ne.nodes;for(var Et=0;Et<de.length;Et++){var At=de[Et];if(oe===At[1]){if(At.length===4){if(Q!==null&&Q!==At[0])throw Error(\"Expected the resume to render <\"+At[0]+\"> in this slot but instead it rendered <\"+Q+\">. The tree doesn\\'t match so React will fallback to client rendering.\");var Rt=At[2];At=At[3],Q=k.node,k.replay={nodes:Rt,slots:At,pendingTasks:1};try{if(Vf(x,k,P,Re,Pe,nt),k.replay.pendingTasks===1&&0<k.replay.nodes.length)throw Error(\"Couldn\\'t find all resumable slots by key/index during replaying. The tree doesn\\'t match so React will fallback to client rendering.\");k.replay.pendingTasks--}catch(cn){if(typeof cn==\"object\"&&cn!==null&&(cn===Gd||typeof cn.then==\"function\"))throw k.node===Q&&(k.replay=Ne),cn;k.replay.pendingTasks--,Re=Gh(k.componentStack),Pe=x,x=k.blockedBoundary,P=cn,nt=At,At=Qs(Pe,P,Re,k.debugTask),Qh(Pe,x,Rt,nt,P,At,Re,!1)}k.replay=Ne}else{if(Re!==op)throw Error(\"Expected the resume to render <Suspense> in this slot but instead it rendered <\"+(en(Re)||\"Unknown\")+\">. The tree doesn\\'t match so React will fallback to client rendering.\");e:{Ne=void 0,Re=At[5],nt=At[2],Q=At[3],oe=At[4]===null?[]:At[4][2],At=At[4]===null?null:At[4][3];var Ft=k.keyPath,lt=k.replay,Kn=k.blockedBoundary,Sn=k.hoistableState,mn=Pe.children,un=Pe.fallback,Vi=new Set;Pe=k.formatContext.insertionMode<pi?jd(x,Vi,Z(),Z()):jd(x,Vi,null,null),Pe.parentFlushed=!0,Pe.rootSegmentID=Re,k.blockedBoundary=Pe,k.hoistableState=Pe.contentState,k.keyPath=P,k.replay={nodes:nt,slots:Q,pendingTasks:1};try{if(Xa(x,k,mn,-1),k.replay.pendingTasks===1&&0<k.replay.nodes.length)throw Error(\"Couldn\\'t find all resumable slots by key/index during replaying. The tree doesn\\'t match so React will fallback to client rendering.\");if(k.replay.pendingTasks--,Pe.pendingTasks===0&&Pe.status===Vl){Pe.status=Qo,x.completedBoundaries.push(Pe);break e}}catch(cn){Pe.status=rs,Rt=Gh(k.componentStack),Ne=Qs(x,cn,Rt,k.debugTask),Zh(Pe,Ne,cn,Rt,!1),k.replay.pendingTasks--,x.clientRenderedBoundaries.push(Pe)}finally{k.blockedBoundary=Kn,k.hoistableState=Sn,k.replay=lt,k.keyPath=Ft}Pe=C2(x,null,{nodes:oe,slots:At,pendingTasks:0},un,-1,Kn,Pe.fallbackState,Vi,[P[0],\"Suspense Fallback\",P[2]],k.formatContext,k.context,k.treeContext,k.componentStack,!0,il,k.debugTask),Kh(Pe),x.pingedTasks.push(Pe)}}de.splice(Et,1);break}}}function ms(x,k,P,Q){k.replay!==null&&typeof k.replay.slots==\"number\"?Rg(x,k,k.replay.slots,P,Q):(k.node=P,k.childIndex=Q,P=k.componentStack,Q=k.debugTask,Kh(k),Ul(x,k),k.componentStack=P,k.debugTask=Q)}function Ul(x,k){var P=k.node,Q=k.childIndex;if(P!==null){if(typeof P==\"object\"){switch(P.$$typeof){case Vm:var oe=P.type,de=P.key;P=P.props;var Re=P.ref;Re=Re!==void 0?Re:null;var Pe=k.debugTask,nt=en(oe);de=de??(Q===-1?0:Q);var Ne=[k.keyPath,nt,de];k.replay!==null?Pe?Pe.run(Yh.bind(null,x,k,Ne,nt,de,Q,oe,P,Re,k.replay)):Yh(x,k,Ne,nt,de,Q,oe,P,Re,k.replay):Pe?Pe.run(Vf.bind(null,x,k,Ne,oe,P,Re)):Vf(x,k,Ne,oe,P,Re);return;case T2:throw Error(\"Portals are not currently supported by the server renderer. Render them conditionally so that they only appear on the client render.\");case Js:if(P=Yd(P),x.status===12)throw null;ms(x,k,P,Q);return}if(el(P)){ba(x,k,P,Q);return}if(P===null||typeof P!=\"object\"?de=null:(oe=Ug&&P[Ug]||P[\"@@iterator\"],de=typeof oe==\"function\"?oe:null),de&&(oe=de.call(P))){if(oe===P?(Q!==-1||k.componentStack===null||typeof k.componentStack.type!=\"function\"||Object.prototype.toString.call(k.componentStack.type)!==\"[object GeneratorFunction]\"||Object.prototype.toString.call(oe)!==\"[object Generator]\")&&(Tb||console.error(\"Using Iterators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. You can also use an Iterable that can iterate multiple times over the same items.\"),Tb=!0):P.entries!==de||ay||(console.error(\"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"),ay=!0),P=oe.next(),!P.done){de=[];do de.push(P.value),P=oe.next();while(!P.done);ba(x,k,de,Q)}return}if(typeof P.then==\"function\")return k.thenableState=null,ms(x,k,ya(P),Q);if(P.$$typeof===Dg)return ms(x,k,P._currentValue2,Q);throw x=Object.prototype.toString.call(P),Error(\"Objects are not valid as a React child (found: \"+(x===\"[object Object]\"?\"object with keys {\"+Object.keys(P).join(\", \")+\"}\":x)+\"). If you meant to render a collection of children, use an array instead.\")}typeof P==\"string\"?(k=k.blockedSegment,k!==null&&(k.lastPushedText=bn(k.chunks,P,x.renderState,k.lastPushedText))):typeof P==\"number\"||typeof P==\"bigint\"?(k=k.blockedSegment,k!==null&&(k.lastPushedText=bn(k.chunks,\"\"+P,x.renderState,k.lastPushedText))):(typeof P==\"function\"&&(x=P.displayName||P.name||\"Component\",console.error(\"Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.\",x,x)),typeof P==\"symbol\"&&console.error(`Symbols are not valid as a React child.\\n  %s`,String(P)))}}function ba(x,k,P,Q){var oe=k.keyPath,de=k.componentStack,Re=k.debugTask;if(Tg(k,k.node._debugInfo),Q!==-1&&(k.keyPath=[k.keyPath,\"Fragment\",Q],k.replay!==null)){for(var Pe=k.replay,nt=Pe.nodes,Ne=0;Ne<nt.length;Ne++){var Et=nt[Ne];if(Et[1]===Q){Q=Et[2],Et=Et[3],k.replay={nodes:Q,slots:Et,pendingTasks:1};try{if(ba(x,k,P,-1),k.replay.pendingTasks===1&&0<k.replay.nodes.length)throw Error(\"Couldn\\'t find all resumable slots by key/index during replaying. The tree doesn\\'t match so React will fallback to client rendering.\");k.replay.pendingTasks--}catch(mn){if(typeof mn==\"object\"&&mn!==null&&(mn===Gd||typeof mn.then==\"function\"))throw mn;k.replay.pendingTasks--;var At=Gh(k.componentStack);P=k.blockedBoundary;var Rt=mn,Ft=Et;Et=Qs(x,Rt,At,k.debugTask),Qh(x,P,Q,Ft,Rt,Et,At,!1)}k.replay=Pe,nt.splice(Ne,1);break}}k.keyPath=oe,k.componentStack=de,k.debugTask=Re;return}if(Pe=k.treeContext,nt=P.length,k.replay!==null&&(Ne=k.replay.slots,Ne!==null&&typeof Ne==\"object\")){for(Q=0;Q<nt;Q++)Et=P[Q],k.treeContext=zr(Pe,nt,Q),Rt=Ne[Q],typeof Rt==\"number\"?(Rg(x,k,Rt,Et,Q),delete Ne[Q]):Xa(x,k,Et,Q);k.treeContext=Pe,k.keyPath=oe,k.componentStack=de,k.debugTask=Re;return}for(Ne=0;Ne<nt;Ne++){if(Q=P[Ne],Ft=x,Et=k,Rt=Q,Rt!==null&&typeof Rt==\"object\"&&(Rt.$$typeof===Vm||Rt.$$typeof===T2)&&Rt._store&&(!Rt._store.validated&&Rt.key==null||Rt._store.validated===2)){if(typeof Rt._store!=\"object\")throw Error(\"React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.\");if(Rt._store.validated=1,At=Ft.didWarnForKey,At==null&&(At=Ft.didWarnForKey=new WeakSet),Ft=Et.componentStack,Ft!==null&&!At.has(Ft)){At.add(Ft);var lt=en(Rt.type);At=Rt._owner;var Kn=Ft.owner;if(Ft=\"\",Kn&&typeof Kn.type<\"u\"){var Sn=en(Kn.type);Sn&&(Ft=`\\n\\nCheck the render method of \\\\``+Sn+\"`.\")}Ft||lt&&(Ft=`\\n\\nCheck the top-level render call using <`+lt+\">.\"),lt=\"\",At!=null&&Kn!==At&&(Kn=null,typeof At.type<\"u\"?Kn=en(At.type):typeof At.name==\"string\"&&(Kn=At.name),Kn&&(lt=\" It was passed a child from \"+Kn+\".\")),At=Et.componentStack,Et.componentStack={parent:Et.componentStack,type:Rt.type,owner:Rt._owner,stack:Rt._debugStack},console.error(\\'Each child in a list should have a unique \"key\" prop.%s%s See https://react.dev/link/warning-keys for more information.\\',Ft,lt),Et.componentStack=At}}k.treeContext=zr(Pe,nt,Ne),Xa(x,k,Q,Ne)}k.treeContext=Pe,k.keyPath=oe,k.componentStack=de,k.debugTask=Re}function jm(x,k){x=x.trackedPostpones,x!==null&&(k=k.trackedContentKeyPath,k!==null&&(k=x.workingMap.get(k),k!==void 0&&(k.length=4,k[2]=[],k[3]=null)))}function rE(x,k,P){return C2(x,P,k.replay,k.node,k.childIndex,k.blockedBoundary,k.hoistableState,k.abortSet,k.keyPath,k.formatContext,k.context,k.treeContext,k.componentStack,k.isFallback,il,k.debugTask)}function oE(x,k,P){var Q=k.blockedSegment,oe=Um(x,Q.chunks.length,null,k.formatContext,Q.lastPushedText,!0);return Q.children.push(oe),Q.lastPushedText=!1,Ag(x,P,k.node,k.childIndex,k.blockedBoundary,oe,k.blockedPreamble,k.hoistableState,k.abortSet,k.keyPath,k.formatContext,k.context,k.treeContext,k.componentStack,k.isFallback,il,k.debugTask)}function Xa(x,k,P,Q){var oe=k.formatContext,de=k.context,Re=k.keyPath,Pe=k.treeContext,nt=k.componentStack,Ne=k.debugTask,Et=k.blockedSegment;if(Et===null)try{return ms(x,k,P,Q)}catch(Ft){if(Ys(),P=Ft===Gd?jt():Ft,typeof P==\"object\"&&P!==null){if(typeof P.then==\"function\"){Q=Cr(),x=rE(x,k,Q).ping,P.then(x,x),k.formatContext=oe,k.context=de,k.keyPath=Re,k.treeContext=Pe,k.componentStack=nt,k.debugTask=Ne,dr(de);return}if(P.message===\"Maximum call stack size exceeded\"){P=Cr(),P=rE(x,k,P),x.pingedTasks.push(P),k.formatContext=oe,k.context=de,k.keyPath=Re,k.treeContext=Pe,k.componentStack=nt,k.debugTask=Ne,dr(de);return}}}else{var At=Et.children.length,Rt=Et.chunks.length;try{return ms(x,k,P,Q)}catch(Ft){if(Ys(),Et.children.length=At,Et.chunks.length=Rt,P=Ft===Gd?jt():Ft,typeof P==\"object\"&&P!==null){if(typeof P.then==\"function\"){Q=Cr(),x=oE(x,k,Q).ping,P.then(x,x),k.formatContext=oe,k.context=de,k.keyPath=Re,k.treeContext=Pe,k.componentStack=nt,k.debugTask=Ne,dr(de);return}if(P.message===\"Maximum call stack size exceeded\"){P=Cr(),P=oE(x,k,P),x.pingedTasks.push(P),k.formatContext=oe,k.context=de,k.keyPath=Re,k.treeContext=Pe,k.componentStack=nt,k.debugTask=Ne,dr(de);return}}}}throw k.formatContext=oe,k.context=de,k.keyPath=Re,k.treeContext=Pe,dr(de),P}function zm(x){var k=x.blockedBoundary;x=x.blockedSegment,x!==null&&(x.status=3,qm(this,k,x))}function Qh(x,k,P,Q,oe,de,Re,Pe){for(var nt=0;nt<P.length;nt++){var Ne=P[nt];if(Ne.length===4)Qh(x,k,Ne[2],Ne[3],oe,de,Re,Pe);else{var Et=x;Ne=Ne[5];var At=oe,Rt=de,Ft=Re,lt=Pe,Kn=jd(Et,new Set,null,null);Kn.parentFlushed=!0,Kn.rootSegmentID=Ne,Kn.status=rs,Zh(Kn,Rt,At,Ft,lt),Kn.parentFlushed&&Et.clientRenderedBoundaries.push(Kn)}}if(P.length=0,Q!==null){if(k===null)throw Error(\"We should not have any resumable nodes in the shell. This is a bug in React.\");if(k.status!==rs&&(k.status=rs,Zh(k,de,oe,Re,Pe),k.parentFlushed&&x.clientRenderedBoundaries.push(k)),typeof Q==\"object\")for(var Sn in Q)delete Q[Sn]}}function wc(x,k,P){var Q=x.blockedBoundary,oe=x.blockedSegment;if(oe!==null){if(oe.status===6)return;oe.status=3}if(oe=Gh(x.componentStack),Q===null){if(k.status!==13&&k.status!==Os){if(Q=x.replay,Q===null){Qs(k,P,oe,null),zd(k,P,oe,null);return}Q.pendingTasks--,Q.pendingTasks===0&&0<Q.nodes.length&&(x=Qs(k,P,oe,null),Qh(k,null,Q.nodes,Q.slots,P,x,oe,!0)),k.pendingRootTasks--,k.pendingRootTasks===0&&$f(k)}}else Q.pendingTasks--,Q.status!==rs&&(Q.status=rs,x=Qs(k,P,oe,null),Q.status=rs,Zh(Q,x,P,oe,!0),jm(k,Q),Q.parentFlushed&&k.clientRenderedBoundaries.push(Q)),Q.fallbackAbortableTasks.forEach(function(de){return wc(de,k,P)}),Q.fallbackAbortableTasks.clear();k.allPendingTasks--,k.allPendingTasks===0&&Hm(k)}function Ig(x,k){try{var P=x.renderState,Q=P.onHeaders;if(Q){var oe=P.headers;if(oe){P.headers=null;var de=oe.preconnects;if(oe.fontPreloads&&(de&&(de+=\", \"),de+=oe.fontPreloads),oe.highImagePreloads&&(de&&(de+=\", \"),de+=oe.highImagePreloads),!k){var Re=P.styles.values(),Pe=Re.next();e:for(;0<oe.remainingCapacity&&!Pe.done;Pe=Re.next())for(var nt=Pe.value.sheets.values(),Ne=nt.next();0<oe.remainingCapacity&&!Ne.done;Ne=nt.next()){var Et=Ne.value,At=Et.props,Rt=At.href,Ft=Et.props,lt=le(Ft.href,\"style\",{crossOrigin:Ft.crossOrigin,integrity:Ft.integrity,nonce:Ft.nonce,type:Ft.type,fetchPriority:Ft.fetchPriority,referrerPolicy:Ft.referrerPolicy,media:Ft.media});if(0<=(oe.remainingCapacity-=lt.length+2))P.resets.style[Rt]=ta,de&&(de+=\", \"),de+=lt,P.resets.style[Rt]=typeof At.crossOrigin==\"string\"||typeof At.integrity==\"string\"?[At.crossOrigin,At.integrity]:ta;else break e}}Q(de?{Link:de}:{})}}}catch(Kn){Qs(x,Kn,{},null)}}function $f(x){x.trackedPostpones===null&&Ig(x,!0),x.trackedPostpones===null&&Jh(x),x.onShellError=Ud,x=x.onShellReady,x()}function Hm(x){Ig(x,x.trackedPostpones===null?!0:x.completedRootSegment===null||x.completedRootSegment.status!==sh),Jh(x),x=x.onAllReady,x()}function Kf(x,k){if(k.chunks.length===0&&k.children.length===1&&k.children[0].boundary===null&&k.children[0].id===-1){var P=k.children[0];P.id=k.id,P.parentFlushed=!0,P.status===Qo&&Kf(x,P)}else x.completedSegments.push(k)}function qm(x,k,P){if(k===null){if(P!==null&&P.parentFlushed){if(x.completedRootSegment!==null)throw Error(\"There can only be one root segment. This is a bug in React.\");x.completedRootSegment=P}x.pendingRootTasks--,x.pendingRootTasks===0&&$f(x)}else k.pendingTasks--,k.status!==rs&&(k.pendingTasks===0?(k.status===Vl&&(k.status=Qo),P!==null&&P.parentFlushed&&P.status===Qo&&Kf(k,P),k.parentFlushed&&x.completedBoundaries.push(k),k.status===Qo&&(k.fallbackAbortableTasks.forEach(zm,x),k.fallbackAbortableTasks.clear(),x.pendingRootTasks===0&&x.trackedPostpones===null&&k.contentPreamble!==null&&Jh(x))):P!==null&&P.parentFlushed&&P.status===Qo&&(Kf(k,P),k.completedSegments.length===1&&k.parentFlushed&&x.partialBoundaries.push(k)));x.allPendingTasks--,x.allPendingTasks===0&&Hm(x)}function Jc(x){if(x.status!==Os&&x.status!==13){var k=sl,P=ea.H;ea.H=ty;var Q=ea.A;ea.A=FE;var oe=ho;ho=x;var de=ea.getCurrentStack;ea.getCurrentStack=$h;var Re=f0;f0=x.resumableState;try{var Pe=x.pingedTasks,nt;for(nt=0;nt<Pe.length;nt++){var Ne=x,Et=Pe[nt],At=Et.blockedSegment;if(At===null){var Rt=void 0,Ft=Ne;if(Ne=Et,Ne.replay.pendingTasks!==0){dr(Ne.context),Rt=al,al=Ne;try{if(typeof Ne.replay.slots==\"number\"?Rg(Ft,Ne,Ne.replay.slots,Ne.node,Ne.childIndex):Ul(Ft,Ne),Ne.replay.pendingTasks===1&&0<Ne.replay.nodes.length)throw Error(\"Couldn\\'t find all resumable slots by key/index during replaying. The tree doesn\\'t match so React will fallback to client rendering.\");Ne.replay.pendingTasks--,Ne.abortSet.delete(Ne),qm(Ft,Ne.blockedBoundary,null)}catch(S){Ys();var lt=S===Gd?jt():S;if(typeof lt==\"object\"&&lt!==null&&typeof lt.then==\"function\"){var Kn=Ne.ping;lt.then(Kn,Kn),Ne.thenableState=Cr()}else{Ne.replay.pendingTasks--,Ne.abortSet.delete(Ne);var Sn=Gh(Ne.componentStack),mn=void 0,un=Ft,Vi=Ne.blockedBoundary,cn=Ft.status===12?Ft.fatalError:lt,Tn=Sn,ro=Ne.replay.nodes,Oi=Ne.replay.slots;mn=Qs(un,cn,Tn,Ne.debugTask),Qh(un,Vi,ro,Oi,cn,mn,Tn,!1),Ft.pendingRootTasks--,Ft.pendingRootTasks===0&&$f(Ft),Ft.allPendingTasks--,Ft.allPendingTasks===0&&Hm(Ft)}}finally{al=Rt}}}else if(Ft=Rt=void 0,mn=Et,un=At,un.status===Vl){un.status=6,dr(mn.context),Ft=al,al=mn;var $i=un.children.length,ii=un.chunks.length;try{Ul(Ne,mn),Fn(un.chunks,Ne.renderState,un.lastPushedText,un.textEmbedded),mn.abortSet.delete(mn),un.status=Qo,qm(Ne,mn.blockedBoundary,un)}catch(S){Ys(),un.children.length=$i,un.chunks.length=ii;var Co=S===Gd?jt():Ne.status===12?Ne.fatalError:S;if(typeof Co==\"object\"&&Co!==null&&typeof Co.then==\"function\"){un.status=Vl,mn.thenableState=Cr();var _c=mn.ping;Co.then(_c,_c)}else{var Aa=Gh(mn.componentStack);mn.abortSet.delete(mn),un.status=4;var Er=mn.blockedBoundary,w=mn.debugTask;Rt=Qs(Ne,Co,Aa,w),Er===null?zd(Ne,Co,Aa,w):(Er.pendingTasks--,Er.status!==rs&&(Er.status=rs,Zh(Er,Rt,Co,Aa,!1),jm(Ne,Er),Er.parentFlushed&&Ne.clientRenderedBoundaries.push(Er),Ne.pendingRootTasks===0&&Ne.trackedPostpones===null&&Er.contentPreamble!==null&&Jh(Ne))),Ne.allPendingTasks--,Ne.allPendingTasks===0&&Hm(Ne)}}finally{al=Ft}}}Pe.splice(0,nt),x.destination!==null&&Ng(x,x.destination)}catch(S){Pe={},Qs(x,S,Pe,null),zd(x,S,Pe,null)}finally{f0=Re,ea.H=P,ea.A=Q,ea.getCurrentStack=de,P===ty&&dr(k),ho=oe}}}function va(x,k,P){k.preambleChildren.length&&P.push(k.preambleChildren);for(var Q=!1,oe=0;oe<k.children.length;oe++)Q=Og(x,k.children[oe],P)||Q;return Q}function Og(x,k,P){var Q=k.boundary;if(Q===null)return va(x,k,P);var oe=Q.contentPreamble,de=Q.fallbackPreamble;if(oe===null||de===null)return!1;switch(Q.status){case Qo:if(Ge(x.renderState,oe),k=Q.completedSegments[0],!k)throw Error(\"A previously unvisited boundary must have exactly one root segment. This is a bug in React.\");return va(x,k,P);case sh:if(x.trackedPostpones!==null)return!0;case rs:if(k.status===Qo)return Ge(x.renderState,de),va(x,k,P);default:return!0}}function Jh(x){if(x.completedRootSegment&&x.completedPreambleSegments===null){var k=[],P=Og(x,x.completedRootSegment,k),Q=x.renderState.preamble;(P===!1||Q.headChunks&&Q.bodyChunks)&&(x.completedPreambleSegments=k)}}function Wm(x,k,P,Q){switch(P.parentFlushed=!0,P.status){case Vl:P.id=x.nextSegmentId++;case sh:return Q=P.id,P.lastPushedText=!1,P.textEmbedded=!1,x=x.renderState,k.push(L2),k.push(x.placeholderPrefix),x=Q.toString(16),k.push(x),k.push(e7);case Qo:P.status=sy;var oe=!0,de=P.chunks,Re=0;P=P.children;for(var Pe=0;Pe<P.length;Pe++){for(oe=P[Pe];Re<oe.index;Re++)k.push(de[Re]);oe=Xh(x,k,oe,Q)}for(;Re<de.length-1;Re++)k.push(de[Re]);return Re<de.length&&(oe=k.push(de[Re])),oe;default:throw Error(\"Aborted, errored or already flushed boundaries should not be flushed again. This is a bug in React.\")}}function Xh(x,k,P,Q){var oe=P.boundary;if(oe===null)return Wm(x,k,P,Q);if(oe.parentFlushed=!0,oe.status===rs){if(!x.renderState.generateStaticMarkup){var de=oe.errorDigest,Re=oe.errorMessage,Pe=oe.errorStack,nt=oe.errorComponentStack;k.push(ka),k.push(B2),de&&(k.push(zl),de=W(de),k.push(de),k.push(mi)),Re&&(k.push(dp),Re=W(Re),k.push(Re),k.push(mi)),Pe&&(k.push(Hl),Pe=W(Pe),k.push(Pe),k.push(mi)),nt&&(k.push(D2),nt=W(nt),k.push(nt),k.push(mi)),k.push(n0)}return Wm(x,k,P,Q),x.renderState.generateStaticMarkup?k=!0:((x=oe.fallbackPreamble)&&dt(k,x),k=k.push(Nr)),k}if(oe.status!==Qo)return oe.status===Vl&&(oe.rootSegmentID=x.nextSegmentId++),0<oe.completedSegments.length&&x.partialBoundaries.push(oe),Ct(k,x.renderState,oe.rootSegmentID),Q&&(oe=oe.fallbackState,oe.styles.forEach(hn,Q),oe.stylesheets.forEach(Dt,Q)),Wm(x,k,P,Q),k.push(Nr);if(oe.byteSize>x.progressiveChunkSize)return oe.rootSegmentID=x.nextSegmentId++,x.completedBoundaries.push(oe),Ct(k,x.renderState,oe.rootSegmentID),Wm(x,k,P,Q),k.push(Nr);if(Q&&(P=oe.contentState,P.styles.forEach(hn,Q),P.stylesheets.forEach(Dt,Q)),x.renderState.generateStaticMarkup||k.push(ra),P=oe.completedSegments,P.length!==1)throw Error(\"A previously unvisited boundary must have exactly one root segment. This is a bug in React.\");return Xh(x,k,P[0],Q),x.renderState.generateStaticMarkup?k=!0:((x=oe.contentPreamble)&&dt(k,x),k=k.push(Nr)),k}function Pg(x,k,P,Q){return Ze(k,x.renderState,P.parentFormatContext,P.id),Xh(x,k,P,Q),rn(k,P.parentFormatContext)}function Mg(x,k,P){for(var Q=P.completedSegments,oe=0;oe<Q.length;oe++)tb(x,k,P,Q[oe]);Q.length=0,Wt(k,P.contentState,x.renderState),Q=x.resumableState,x=x.renderState,oe=P.rootSegmentID,P=P.contentState;var de=x.stylesToHoist;return x.stylesToHoist=!1,k.push(x.startInlineScript),de?(Q.instructions&Zm)===Wd?(Q.instructions=Q.instructions|Jf|Zm,k.push(EE)):(Q.instructions&Jf)===Wd?(Q.instructions|=Jf,k.push(i0)):k.push(Sc):(Q.instructions&Zm)===Wd?(Q.instructions|=Zm,k.push(Gg)):k.push(W2),Q=oe.toString(16),k.push(x.boundaryPrefix),k.push(Q),k.push(V2),k.push(x.segmentPrefix),k.push(Q),de?(k.push(SE),vr(k,P)):k.push(Kk),P=k.push(kE),ht(k,x)&&P}function tb(x,k,P,Q){if(Q.status===sy)return!0;var oe=P.contentState,de=Q.id;if(de===-1){if((Q.id=P.rootSegmentID)===-1)throw Error(\"A root segment ID must have been assigned by now. This is a bug in React.\");return Pg(x,k,Q,oe)}return de===P.rootSegmentID?Pg(x,k,Q,oe):(Pg(x,k,Q,oe),P=x.resumableState,x=x.renderState,k.push(x.startInlineScript),(P.instructions&fE)===Wd?(P.instructions|=fE,k.push(o0)):k.push($k),k.push(x.segmentPrefix),de=de.toString(16),k.push(de),k.push(H2),k.push(x.placeholderPrefix),k.push(de),k=k.push(q2),k)}function Ng(x,k){try{if(!(0<x.pendingRootTasks)){var P,Q=x.completedRootSegment;if(Q!==null){if(Q.status===sh)return;var oe=x.completedPreambleSegments;if(oe===null)return;var de=x.renderState,Re=de.preamble,Pe=Re.htmlChunks,nt=Re.headChunks,Ne;if(Pe){for(Ne=0;Ne<Pe.length;Ne++)k.push(Pe[Ne]);if(nt)for(Ne=0;Ne<nt.length;Ne++)k.push(nt[Ne]);else{var Et=Me(\"head\");k.push(Et),k.push(oi)}}else if(nt)for(Ne=0;Ne<nt.length;Ne++)k.push(nt[Ne]);var At=de.charsetChunks;for(Ne=0;Ne<At.length;Ne++)k.push(At[Ne]);At.length=0,de.preconnects.forEach(zn,k),de.preconnects.clear();var Rt=de.viewportChunks;for(Ne=0;Ne<Rt.length;Ne++)k.push(Rt[Ne]);Rt.length=0,de.fontPreloads.forEach(zn,k),de.fontPreloads.clear(),de.highImagePreloads.forEach(zn,k),de.highImagePreloads.clear(),de.styles.forEach(br,k);var Ft=de.importMapChunks;for(Ne=0;Ne<Ft.length;Ne++)k.push(Ft[Ne]);Ft.length=0,de.bootstrapScripts.forEach(zn,k),de.scripts.forEach(zn,k),de.scripts.clear(),de.bulkPreloads.forEach(zn,k),de.bulkPreloads.clear();var lt=de.hoistableChunks;for(Ne=0;Ne<lt.length;Ne++)k.push(lt[Ne]);for(de=lt.length=0;de<oe.length;de++){var Kn=oe[de];for(Re=0;Re<Kn.length;Re++)Xh(x,k,Kn[Re],null)}var Sn=x.renderState.preamble,mn=Sn.headChunks;if(Sn.htmlChunks||mn){var un=wt(\"head\");k.push(un)}var Vi=Sn.bodyChunks;if(Vi)for(oe=0;oe<Vi.length;oe++)k.push(Vi[oe]);Xh(x,k,Q,null),x.completedRootSegment=null,ht(k,x.renderState)}var cn=x.renderState;Q=0;var Tn=cn.viewportChunks;for(Q=0;Q<Tn.length;Q++)k.push(Tn[Q]);Tn.length=0,cn.preconnects.forEach(zn,k),cn.preconnects.clear(),cn.fontPreloads.forEach(zn,k),cn.fontPreloads.clear(),cn.highImagePreloads.forEach(zn,k),cn.highImagePreloads.clear(),cn.styles.forEach(Pr,k),cn.scripts.forEach(zn,k),cn.scripts.clear(),cn.bulkPreloads.forEach(zn,k),cn.bulkPreloads.clear();var ro=cn.hoistableChunks;for(Q=0;Q<ro.length;Q++)k.push(ro[Q]);ro.length=0;var Oi=x.clientRenderedBoundaries;for(P=0;P<Oi.length;P++){var $i=Oi[P];cn=k;var ii=x.resumableState,Co=x.renderState,_c=$i.rootSegmentID,Aa=$i.errorDigest,Er=$i.errorMessage,w=$i.errorStack,S=$i.errorComponentStack;cn.push(Co.startInlineScript),(ii.instructions&nl)===Wd?(ii.instructions|=nl,cn.push($2)):cn.push(_E),cn.push(Co.boundaryPrefix);var M=_c.toString(16);if(cn.push(M),cn.push(K2),Aa||Er||w||S){cn.push(Zg);var Y=zt(Aa||\"\");cn.push(Y)}if(Er||w||S){cn.push(Zg);var re=zt(Er||\"\");cn.push(re)}if(w||S){cn.push(Zg);var ue=zt(w||\"\");cn.push(ue)}if(S){cn.push(Zg);var Ee=zt(S);cn.push(Ee)}var Ae=cn.push(G2);if(!Ae){x.destination=null,P++,Oi.splice(0,P);return}}Oi.splice(0,P);var Le=x.completedBoundaries;for(P=0;P<Le.length;P++)if(!Mg(x,k,Le[P])){x.destination=null,P++,Le.splice(0,P);return}Le.splice(0,P);var Ie=x.partialBoundaries;for(P=0;P<Ie.length;P++){e:{Oi=x,$i=k;var pt=Ie[P],ut=pt.completedSegments;for(Ae=0;Ae<ut.length;Ae++)if(!tb(Oi,$i,pt,ut[Ae])){Ae++,ut.splice(0,Ae);var _t=!1;break e}ut.splice(0,Ae),_t=Wt($i,pt.contentState,Oi.renderState)}if(!_t){x.destination=null,P++,Ie.splice(0,P);return}}Ie.splice(0,P);var bt=x.completedBoundaries;for(P=0;P<bt.length;P++)if(!Mg(x,k,bt[P])){x.destination=null,P++,bt.splice(0,P);return}bt.splice(0,P)}}finally{x.allPendingTasks===0&&x.pingedTasks.length===0&&x.clientRenderedBoundaries.length===0&&x.completedBoundaries.length===0&&(x.flushScheduled=!1,P=x.resumableState,P.hasBody&&(Ie=wt(\"body\"),k.push(Ie)),P.hasHtml&&(P=wt(\"html\"),k.push(P)),x.abortableTasks.size!==0&&console.error(\"There was still abortable task at the root when we closed. This is a bug in React.\"),x.status=Os,k.push(null),x.destination=null)}}function A2(x){x.flushScheduled=x.destination!==null,Jc(x),x.status===10&&(x.status=11),x.trackedPostpones===null&&Ig(x,x.pendingRootTasks===0)}function ep(x){if(x.flushScheduled===!1&&x.pingedTasks.length===0&&x.destination!==null){x.flushScheduled=!0;var k=x.destination;k?Ng(x,k):x.flushScheduled=!1}}function tp(x,k){if(x.status===13)x.status=Os,k.destroy(x.fatalError);else if(x.status!==Os&&x.destination===null){x.destination=k;try{Ng(x,k)}catch(P){k={},Qs(x,P,k,null),zd(x,P,k,null)}}}function nb(x,k){(x.status===11||x.status===10)&&(x.status=12);try{var P=x.abortableTasks;if(0<P.size){var Q=k===void 0?Error(\"The render was aborted by the server without a reason.\"):typeof k==\"object\"&&k!==null&&typeof k.then==\"function\"?Error(\"The render was aborted by the server with a promise.\"):k;x.fatalError=Q,P.forEach(function(oe){return wc(oe,x,Q)}),P.clear()}x.destination!==null&&Ng(x,x.destination)}catch(oe){k={},Qs(x,oe,k,null),zd(x,oe,k,null)}}function Lg(){}function rb(x,k,P,Q){var oe=!1,de=null,Re=\"\",Pe=!1;if(k=ie(k?k.identifierPrefix:void 0),x=X1(x,k,sn(k,P),ae(Ym,null,0),1/0,Lg,void 0,function(){Pe=!0},void 0,void 0,void 0),A2(x),nb(x,Q),tp(x,{push:function(nt){return nt!==null&&(Re+=nt),!0},destroy:function(nt){oe=!0,de=nt}}),oe&&de!==Q)throw de;if(!Pe)throw Error(\"A component suspended while responding to synchronous input. This will cause the UI to be replaced with a loading indicator. To fix, updates that suspend should be wrapped with startTransition.\");return Re}var iE=et(),Fk=I0(),Vm=Symbol.for(\"react.transitional.element\"),T2=Symbol.for(\"react.portal\"),np=Symbol.for(\"react.fragment\"),$m=Symbol.for(\"react.strict_mode\"),rp=Symbol.for(\"react.profiler\"),sE=Symbol.for(\"react.provider\"),Bg=Symbol.for(\"react.consumer\"),Dg=Symbol.for(\"react.context\"),Gf=Symbol.for(\"react.forward_ref\"),op=Symbol.for(\"react.suspense\"),Vu=Symbol.for(\"react.suspense_list\"),$u=Symbol.for(\"react.memo\"),Js=Symbol.for(\"react.lazy\"),Xc=Symbol.for(\"react.scope\"),Km=Symbol.for(\"react.activity\"),ip=Symbol.for(\"react.legacy_hidden\"),Fg=Symbol.for(\"react.memo_cache_sentinel\"),Rs=Symbol.for(\"react.view_transition\"),Ug=Symbol.iterator,el=Array.isArray,tl=new WeakMap,R2=new WeakMap,ob=Symbol.for(\"react.client.reference\"),Ii=Object.assign,Yr=Object.prototype.hasOwnProperty,XT=RegExp(\"^[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),ib={},wa={},aE=new Set(\"animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp\".split(\" \")),I2=new Map([[\"acceptCharset\",\"accept-charset\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"],[\"crossOrigin\",\"crossorigin\"],[\"accentHeight\",\"accent-height\"],[\"alignmentBaseline\",\"alignment-baseline\"],[\"arabicForm\",\"arabic-form\"],[\"baselineShift\",\"baseline-shift\"],[\"capHeight\",\"cap-height\"],[\"clipPath\",\"clip-path\"],[\"clipRule\",\"clip-rule\"],[\"colorInterpolation\",\"color-interpolation\"],[\"colorInterpolationFilters\",\"color-interpolation-filters\"],[\"colorProfile\",\"color-profile\"],[\"colorRendering\",\"color-rendering\"],[\"dominantBaseline\",\"dominant-baseline\"],[\"enableBackground\",\"enable-background\"],[\"fillOpacity\",\"fill-opacity\"],[\"fillRule\",\"fill-rule\"],[\"floodColor\",\"flood-color\"],[\"floodOpacity\",\"flood-opacity\"],[\"fontFamily\",\"font-family\"],[\"fontSize\",\"font-size\"],[\"fontSizeAdjust\",\"font-size-adjust\"],[\"fontStretch\",\"font-stretch\"],[\"fontStyle\",\"font-style\"],[\"fontVariant\",\"font-variant\"],[\"fontWeight\",\"font-weight\"],[\"glyphName\",\"glyph-name\"],[\"glyphOrientationHorizontal\",\"glyph-orientation-horizontal\"],[\"glyphOrientationVertical\",\"glyph-orientation-vertical\"],[\"horizAdvX\",\"horiz-adv-x\"],[\"horizOriginX\",\"horiz-origin-x\"],[\"imageRendering\",\"image-rendering\"],[\"letterSpacing\",\"letter-spacing\"],[\"lightingColor\",\"lighting-color\"],[\"markerEnd\",\"marker-end\"],[\"markerMid\",\"marker-mid\"],[\"markerStart\",\"marker-start\"],[\"overlinePosition\",\"overline-position\"],[\"overlineThickness\",\"overline-thickness\"],[\"paintOrder\",\"paint-order\"],[\"panose-1\",\"panose-1\"],[\"pointerEvents\",\"pointer-events\"],[\"renderingIntent\",\"rendering-intent\"],[\"shapeRendering\",\"shape-rendering\"],[\"stopColor\",\"stop-color\"],[\"stopOpacity\",\"stop-opacity\"],[\"strikethroughPosition\",\"strikethrough-position\"],[\"strikethroughThickness\",\"strikethrough-thickness\"],[\"strokeDasharray\",\"stroke-dasharray\"],[\"strokeDashoffset\",\"stroke-dashoffset\"],[\"strokeLinecap\",\"stroke-linecap\"],[\"strokeLinejoin\",\"stroke-linejoin\"],[\"strokeMiterlimit\",\"stroke-miterlimit\"],[\"strokeOpacity\",\"stroke-opacity\"],[\"strokeWidth\",\"stroke-width\"],[\"textAnchor\",\"text-anchor\"],[\"textDecoration\",\"text-decoration\"],[\"textRendering\",\"text-rendering\"],[\"transformOrigin\",\"transform-origin\"],[\"underlinePosition\",\"underline-position\"],[\"underlineThickness\",\"underline-thickness\"],[\"unicodeBidi\",\"unicode-bidi\"],[\"unicodeRange\",\"unicode-range\"],[\"unitsPerEm\",\"units-per-em\"],[\"vAlphabetic\",\"v-alphabetic\"],[\"vHanging\",\"v-hanging\"],[\"vIdeographic\",\"v-ideographic\"],[\"vMathematical\",\"v-mathematical\"],[\"vectorEffect\",\"vector-effect\"],[\"vertAdvY\",\"vert-adv-y\"],[\"vertOriginX\",\"vert-origin-x\"],[\"vertOriginY\",\"vert-origin-y\"],[\"wordSpacing\",\"word-spacing\"],[\"writingMode\",\"writing-mode\"],[\"xmlnsXlink\",\"xmlns:xlink\"],[\"xHeight\",\"x-height\"]]),jg={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0},Zf={\"aria-current\":0,\"aria-description\":0,\"aria-details\":0,\"aria-disabled\":0,\"aria-hidden\":0,\"aria-invalid\":0,\"aria-keyshortcuts\":0,\"aria-label\":0,\"aria-roledescription\":0,\"aria-autocomplete\":0,\"aria-checked\":0,\"aria-expanded\":0,\"aria-haspopup\":0,\"aria-level\":0,\"aria-modal\":0,\"aria-multiline\":0,\"aria-multiselectable\":0,\"aria-orientation\":0,\"aria-placeholder\":0,\"aria-pressed\":0,\"aria-readonly\":0,\"aria-required\":0,\"aria-selected\":0,\"aria-sort\":0,\"aria-valuemax\":0,\"aria-valuemin\":0,\"aria-valuenow\":0,\"aria-valuetext\":0,\"aria-atomic\":0,\"aria-busy\":0,\"aria-live\":0,\"aria-relevant\":0,\"aria-dropeffect\":0,\"aria-grabbed\":0,\"aria-activedescendant\":0,\"aria-colcount\":0,\"aria-colindex\":0,\"aria-colspan\":0,\"aria-controls\":0,\"aria-describedby\":0,\"aria-errormessage\":0,\"aria-flowto\":0,\"aria-labelledby\":0,\"aria-owns\":0,\"aria-posinset\":0,\"aria-rowcount\":0,\"aria-rowindex\":0,\"aria-rowspan\":0,\"aria-setsize\":0},Yf={},cE=RegExp(\"^(aria)-[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),sp=RegExp(\"^(aria)[A-Z][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),ec=!1,xa={accept:\"accept\",acceptcharset:\"acceptCharset\",\"accept-charset\":\"acceptCharset\",accesskey:\"accessKey\",action:\"action\",allowfullscreen:\"allowFullScreen\",alt:\"alt\",as:\"as\",async:\"async\",autocapitalize:\"autoCapitalize\",autocomplete:\"autoComplete\",autocorrect:\"autoCorrect\",autofocus:\"autoFocus\",autoplay:\"autoPlay\",autosave:\"autoSave\",capture:\"capture\",cellpadding:\"cellPadding\",cellspacing:\"cellSpacing\",challenge:\"challenge\",charset:\"charSet\",checked:\"checked\",children:\"children\",cite:\"cite\",class:\"className\",classid:\"classID\",classname:\"className\",cols:\"cols\",colspan:\"colSpan\",content:\"content\",contenteditable:\"contentEditable\",contextmenu:\"contextMenu\",controls:\"controls\",controlslist:\"controlsList\",coords:\"coords\",crossorigin:\"crossOrigin\",dangerouslysetinnerhtml:\"dangerouslySetInnerHTML\",data:\"data\",datetime:\"dateTime\",default:\"default\",defaultchecked:\"defaultChecked\",defaultvalue:\"defaultValue\",defer:\"defer\",dir:\"dir\",disabled:\"disabled\",disablepictureinpicture:\"disablePictureInPicture\",disableremoteplayback:\"disableRemotePlayback\",download:\"download\",draggable:\"draggable\",enctype:\"encType\",enterkeyhint:\"enterKeyHint\",fetchpriority:\"fetchPriority\",for:\"htmlFor\",form:\"form\",formmethod:\"formMethod\",formaction:\"formAction\",formenctype:\"formEncType\",formnovalidate:\"formNoValidate\",formtarget:\"formTarget\",frameborder:\"frameBorder\",headers:\"headers\",height:\"height\",hidden:\"hidden\",high:\"high\",href:\"href\",hreflang:\"hrefLang\",htmlfor:\"htmlFor\",httpequiv:\"httpEquiv\",\"http-equiv\":\"httpEquiv\",icon:\"icon\",id:\"id\",imagesizes:\"imageSizes\",imagesrcset:\"imageSrcSet\",inert:\"inert\",innerhtml:\"innerHTML\",inputmode:\"inputMode\",integrity:\"integrity\",is:\"is\",itemid:\"itemID\",itemprop:\"itemProp\",itemref:\"itemRef\",itemscope:\"itemScope\",itemtype:\"itemType\",keyparams:\"keyParams\",keytype:\"keyType\",kind:\"kind\",label:\"label\",lang:\"lang\",list:\"list\",loop:\"loop\",low:\"low\",manifest:\"manifest\",marginwidth:\"marginWidth\",marginheight:\"marginHeight\",max:\"max\",maxlength:\"maxLength\",media:\"media\",mediagroup:\"mediaGroup\",method:\"method\",min:\"min\",minlength:\"minLength\",multiple:\"multiple\",muted:\"muted\",name:\"name\",nomodule:\"noModule\",nonce:\"nonce\",novalidate:\"noValidate\",open:\"open\",optimum:\"optimum\",pattern:\"pattern\",placeholder:\"placeholder\",playsinline:\"playsInline\",poster:\"poster\",preload:\"preload\",profile:\"profile\",radiogroup:\"radioGroup\",readonly:\"readOnly\",referrerpolicy:\"referrerPolicy\",rel:\"rel\",required:\"required\",reversed:\"reversed\",role:\"role\",rows:\"rows\",rowspan:\"rowSpan\",sandbox:\"sandbox\",scope:\"scope\",scoped:\"scoped\",scrolling:\"scrolling\",seamless:\"seamless\",selected:\"selected\",shape:\"shape\",size:\"size\",sizes:\"sizes\",span:\"span\",spellcheck:\"spellCheck\",src:\"src\",srcdoc:\"srcDoc\",srclang:\"srcLang\",srcset:\"srcSet\",start:\"start\",step:\"step\",style:\"style\",summary:\"summary\",tabindex:\"tabIndex\",target:\"target\",title:\"title\",type:\"type\",usemap:\"useMap\",value:\"value\",width:\"width\",wmode:\"wmode\",wrap:\"wrap\",about:\"about\",accentheight:\"accentHeight\",\"accent-height\":\"accentHeight\",accumulate:\"accumulate\",additive:\"additive\",alignmentbaseline:\"alignmentBaseline\",\"alignment-baseline\":\"alignmentBaseline\",allowreorder:\"allowReorder\",alphabetic:\"alphabetic\",amplitude:\"amplitude\",arabicform:\"arabicForm\",\"arabic-form\":\"arabicForm\",ascent:\"ascent\",attributename:\"attributeName\",attributetype:\"attributeType\",autoreverse:\"autoReverse\",azimuth:\"azimuth\",basefrequency:\"baseFrequency\",baselineshift:\"baselineShift\",\"baseline-shift\":\"baselineShift\",baseprofile:\"baseProfile\",bbox:\"bbox\",begin:\"begin\",bias:\"bias\",by:\"by\",calcmode:\"calcMode\",capheight:\"capHeight\",\"cap-height\":\"capHeight\",clip:\"clip\",clippath:\"clipPath\",\"clip-path\":\"clipPath\",clippathunits:\"clipPathUnits\",cliprule:\"clipRule\",\"clip-rule\":\"clipRule\",color:\"color\",colorinterpolation:\"colorInterpolation\",\"color-interpolation\":\"colorInterpolation\",colorinterpolationfilters:\"colorInterpolationFilters\",\"color-interpolation-filters\":\"colorInterpolationFilters\",colorprofile:\"colorProfile\",\"color-profile\":\"colorProfile\",colorrendering:\"colorRendering\",\"color-rendering\":\"colorRendering\",contentscripttype:\"contentScriptType\",contentstyletype:\"contentStyleType\",cursor:\"cursor\",cx:\"cx\",cy:\"cy\",d:\"d\",datatype:\"datatype\",decelerate:\"decelerate\",descent:\"descent\",diffuseconstant:\"diffuseConstant\",direction:\"direction\",display:\"display\",divisor:\"divisor\",dominantbaseline:\"dominantBaseline\",\"dominant-baseline\":\"dominantBaseline\",dur:\"dur\",dx:\"dx\",dy:\"dy\",edgemode:\"edgeMode\",elevation:\"elevation\",enablebackground:\"enableBackground\",\"enable-background\":\"enableBackground\",end:\"end\",exponent:\"exponent\",externalresourcesrequired:\"externalResourcesRequired\",fill:\"fill\",fillopacity:\"fillOpacity\",\"fill-opacity\":\"fillOpacity\",fillrule:\"fillRule\",\"fill-rule\":\"fillRule\",filter:\"filter\",filterres:\"filterRes\",filterunits:\"filterUnits\",floodopacity:\"floodOpacity\",\"flood-opacity\":\"floodOpacity\",floodcolor:\"floodColor\",\"flood-color\":\"floodColor\",focusable:\"focusable\",fontfamily:\"fontFamily\",\"font-family\":\"fontFamily\",fontsize:\"fontSize\",\"font-size\":\"fontSize\",fontsizeadjust:\"fontSizeAdjust\",\"font-size-adjust\":\"fontSizeAdjust\",fontstretch:\"fontStretch\",\"font-stretch\":\"fontStretch\",fontstyle:\"fontStyle\",\"font-style\":\"fontStyle\",fontvariant:\"fontVariant\",\"font-variant\":\"fontVariant\",fontweight:\"fontWeight\",\"font-weight\":\"fontWeight\",format:\"format\",from:\"from\",fx:\"fx\",fy:\"fy\",g1:\"g1\",g2:\"g2\",glyphname:\"glyphName\",\"glyph-name\":\"glyphName\",glyphorientationhorizontal:\"glyphOrientationHorizontal\",\"glyph-orientation-horizontal\":\"glyphOrientationHorizontal\",glyphorientationvertical:\"glyphOrientationVertical\",\"glyph-orientation-vertical\":\"glyphOrientationVertical\",glyphref:\"glyphRef\",gradienttransform:\"gradientTransform\",gradientunits:\"gradientUnits\",hanging:\"hanging\",horizadvx:\"horizAdvX\",\"horiz-adv-x\":\"horizAdvX\",horizoriginx:\"horizOriginX\",\"horiz-origin-x\":\"horizOriginX\",ideographic:\"ideographic\",imagerendering:\"imageRendering\",\"image-rendering\":\"imageRendering\",in2:\"in2\",in:\"in\",inlist:\"inlist\",intercept:\"intercept\",k1:\"k1\",k2:\"k2\",k3:\"k3\",k4:\"k4\",k:\"k\",kernelmatrix:\"kernelMatrix\",kernelunitlength:\"kernelUnitLength\",kerning:\"kerning\",keypoints:\"keyPoints\",keysplines:\"keySplines\",keytimes:\"keyTimes\",lengthadjust:\"lengthAdjust\",letterspacing:\"letterSpacing\",\"letter-spacing\":\"letterSpacing\",lightingcolor:\"lightingColor\",\"lighting-color\":\"lightingColor\",limitingconeangle:\"limitingConeAngle\",local:\"local\",markerend:\"markerEnd\",\"marker-end\":\"markerEnd\",markerheight:\"markerHeight\",markermid:\"markerMid\",\"marker-mid\":\"markerMid\",markerstart:\"markerStart\",\"marker-start\":\"markerStart\",markerunits:\"markerUnits\",markerwidth:\"markerWidth\",mask:\"mask\",maskcontentunits:\"maskContentUnits\",maskunits:\"maskUnits\",mathematical:\"mathematical\",mode:\"mode\",numoctaves:\"numOctaves\",offset:\"offset\",opacity:\"opacity\",operator:\"operator\",order:\"order\",orient:\"orient\",orientation:\"orientation\",origin:\"origin\",overflow:\"overflow\",overlineposition:\"overlinePosition\",\"overline-position\":\"overlinePosition\",overlinethickness:\"overlineThickness\",\"overline-thickness\":\"overlineThickness\",paintorder:\"paintOrder\",\"paint-order\":\"paintOrder\",panose1:\"panose1\",\"panose-1\":\"panose1\",pathlength:\"pathLength\",patterncontentunits:\"patternContentUnits\",patterntransform:\"patternTransform\",patternunits:\"patternUnits\",pointerevents:\"pointerEvents\",\"pointer-events\":\"pointerEvents\",points:\"points\",pointsatx:\"pointsAtX\",pointsaty:\"pointsAtY\",pointsatz:\"pointsAtZ\",popover:\"popover\",popovertarget:\"popoverTarget\",popovertargetaction:\"popoverTargetAction\",prefix:\"prefix\",preservealpha:\"preserveAlpha\",preserveaspectratio:\"preserveAspectRatio\",primitiveunits:\"primitiveUnits\",property:\"property\",r:\"r\",radius:\"radius\",refx:\"refX\",refy:\"refY\",renderingintent:\"renderingIntent\",\"rendering-intent\":\"renderingIntent\",repeatcount:\"repeatCount\",repeatdur:\"repeatDur\",requiredextensions:\"requiredExtensions\",requiredfeatures:\"requiredFeatures\",resource:\"resource\",restart:\"restart\",result:\"result\",results:\"results\",rotate:\"rotate\",rx:\"rx\",ry:\"ry\",scale:\"scale\",security:\"security\",seed:\"seed\",shaperendering:\"shapeRendering\",\"shape-rendering\":\"shapeRendering\",slope:\"slope\",spacing:\"spacing\",specularconstant:\"specularConstant\",specularexponent:\"specularExponent\",speed:\"speed\",spreadmethod:\"spreadMethod\",startoffset:\"startOffset\",stddeviation:\"stdDeviation\",stemh:\"stemh\",stemv:\"stemv\",stitchtiles:\"stitchTiles\",stopcolor:\"stopColor\",\"stop-color\":\"stopColor\",stopopacity:\"stopOpacity\",\"stop-opacity\":\"stopOpacity\",strikethroughposition:\"strikethroughPosition\",\"strikethrough-position\":\"strikethroughPosition\",strikethroughthickness:\"strikethroughThickness\",\"strikethrough-thickness\":\"strikethroughThickness\",string:\"string\",stroke:\"stroke\",strokedasharray:\"strokeDasharray\",\"stroke-dasharray\":\"strokeDasharray\",strokedashoffset:\"strokeDashoffset\",\"stroke-dashoffset\":\"strokeDashoffset\",strokelinecap:\"strokeLinecap\",\"stroke-linecap\":\"strokeLinecap\",strokelinejoin:\"strokeLinejoin\",\"stroke-linejoin\":\"strokeLinejoin\",strokemiterlimit:\"strokeMiterlimit\",\"stroke-miterlimit\":\"strokeMiterlimit\",strokewidth:\"strokeWidth\",\"stroke-width\":\"strokeWidth\",strokeopacity:\"strokeOpacity\",\"stroke-opacity\":\"strokeOpacity\",suppresscontenteditablewarning:\"suppressContentEditableWarning\",suppresshydrationwarning:\"suppressHydrationWarning\",surfacescale:\"surfaceScale\",systemlanguage:\"systemLanguage\",tablevalues:\"tableValues\",targetx:\"targetX\",targety:\"targetY\",textanchor:\"textAnchor\",\"text-anchor\":\"textAnchor\",textdecoration:\"textDecoration\",\"text-decoration\":\"textDecoration\",textlength:\"textLength\",textrendering:\"textRendering\",\"text-rendering\":\"textRendering\",to:\"to\",transform:\"transform\",transformorigin:\"transformOrigin\",\"transform-origin\":\"transformOrigin\",typeof:\"typeof\",u1:\"u1\",u2:\"u2\",underlineposition:\"underlinePosition\",\"underline-position\":\"underlinePosition\",underlinethickness:\"underlineThickness\",\"underline-thickness\":\"underlineThickness\",unicode:\"unicode\",unicodebidi:\"unicodeBidi\",\"unicode-bidi\":\"unicodeBidi\",unicoderange:\"unicodeRange\",\"unicode-range\":\"unicodeRange\",unitsperem:\"unitsPerEm\",\"units-per-em\":\"unitsPerEm\",unselectable:\"unselectable\",valphabetic:\"vAlphabetic\",\"v-alphabetic\":\"vAlphabetic\",values:\"values\",vectoreffect:\"vectorEffect\",\"vector-effect\":\"vectorEffect\",version:\"version\",vertadvy:\"vertAdvY\",\"vert-adv-y\":\"vertAdvY\",vertoriginx:\"vertOriginX\",\"vert-origin-x\":\"vertOriginX\",vertoriginy:\"vertOriginY\",\"vert-origin-y\":\"vertOriginY\",vhanging:\"vHanging\",\"v-hanging\":\"vHanging\",videographic:\"vIdeographic\",\"v-ideographic\":\"vIdeographic\",viewbox:\"viewBox\",viewtarget:\"viewTarget\",visibility:\"visibility\",vmathematical:\"vMathematical\",\"v-mathematical\":\"vMathematical\",vocab:\"vocab\",widths:\"widths\",wordspacing:\"wordSpacing\",\"word-spacing\":\"wordSpacing\",writingmode:\"writingMode\",\"writing-mode\":\"writingMode\",x1:\"x1\",x2:\"x2\",x:\"x\",xchannelselector:\"xChannelSelector\",xheight:\"xHeight\",\"x-height\":\"xHeight\",xlinkactuate:\"xlinkActuate\",\"xlink:actuate\":\"xlinkActuate\",xlinkarcrole:\"xlinkArcrole\",\"xlink:arcrole\":\"xlinkArcrole\",xlinkhref:\"xlinkHref\",\"xlink:href\":\"xlinkHref\",xlinkrole:\"xlinkRole\",\"xlink:role\":\"xlinkRole\",xlinkshow:\"xlinkShow\",\"xlink:show\":\"xlinkShow\",xlinktitle:\"xlinkTitle\",\"xlink:title\":\"xlinkTitle\",xlinktype:\"xlinkType\",\"xlink:type\":\"xlinkType\",xmlbase:\"xmlBase\",\"xml:base\":\"xmlBase\",xmllang:\"xmlLang\",\"xml:lang\":\"xmlLang\",xmlns:\"xmlns\",\"xml:space\":\"xmlSpace\",xmlnsxlink:\"xmlnsXlink\",\"xmlns:xlink\":\"xmlnsXlink\",xmlspace:\"xmlSpace\",y1:\"y1\",y2:\"y2\",y:\"y\",ychannelselector:\"yChannelSelector\",z:\"z\",zoomandpan:\"zoomAndPan\"},Is={},uo=/^on./,Ar=/^on[^A-Z]/,lE=RegExp(\"^(aria)-[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),ap=RegExp(\"^(aria)[A-Z][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),uE=/^(?:webkit|moz|o)[A-Z]/,Uk=/^-ms-/,sb=/-(.)/g,zg=/;\\\\s*$/,cp={},jl={},dE=!1,ab=!1,Qf=/[\"\\'&<>]/,qd=/([A-Z])/g,Xs=/^ms-/,O2=/^[\\\\u0000-\\\\u001F ]*j[\\\\r\\\\n\\\\t]*a[\\\\r\\\\n\\\\t]*v[\\\\r\\\\n\\\\t]*a[\\\\r\\\\n\\\\t]*s[\\\\r\\\\n\\\\t]*c[\\\\r\\\\n\\\\t]*r[\\\\r\\\\n\\\\t]*i[\\\\r\\\\n\\\\t]*p[\\\\r\\\\n\\\\t]*t[\\\\r\\\\n\\\\t]*:/i,ea=iE.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,cb=Fk.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Gm=Object.freeze({pending:!1,data:null,method:null,action:null}),Hr=cb.d;cb.d={f:Hr.f,r:Hr.r,D:function(x){var k=ho||null;if(k){var P=k.resumableState,Q=k.renderState;if(typeof x==\"string\"&&x){if(!P.dnsResources.hasOwnProperty(x)){P.dnsResources[x]=ko,P=Q.headers;var oe,de;(de=P&&0<P.remainingCapacity)&&(de=(oe=\"<\"+Te(x)+\">; rel=dns-prefetch\",0<=(P.remainingCapacity-=oe.length+2))),de?(Q.resets.dns[x]=ko,P.preconnects&&(P.preconnects+=\", \"),P.preconnects+=oe):(oe=[],X(oe,{href:x,rel:\"dns-prefetch\"}),Q.preconnects.add(oe))}ep(k)}}else Hr.D(x)},C:function(x,k){var P=ho||null;if(P){var Q=P.resumableState,oe=P.renderState;if(typeof x==\"string\"&&x){var de=k===\"use-credentials\"?\"credentials\":typeof k==\"string\"?\"anonymous\":\"default\";if(!Q.connectResources[de].hasOwnProperty(x)){Q.connectResources[de][x]=ko,Q=oe.headers;var Re,Pe;if(Pe=Q&&0<Q.remainingCapacity){if(Pe=\"<\"+Te(x)+\">; rel=preconnect\",typeof k==\"string\"){var nt=tt(k,\"crossOrigin\");Pe+=\\'; crossorigin=\"\\'+nt+\\'\"\\'}Pe=(Re=Pe,0<=(Q.remainingCapacity-=Re.length+2))}Pe?(oe.resets.connect[de][x]=ko,Q.preconnects&&(Q.preconnects+=\", \"),Q.preconnects+=Re):(de=[],X(de,{rel:\"preconnect\",href:x,crossOrigin:k}),oe.preconnects.add(de))}ep(P)}}else Hr.C(x,k)},L:function(x,k,P){var Q=ho||null;if(Q){var oe=Q.resumableState,de=Q.renderState;if(k&&x){switch(k){case\"image\":if(P)var Re=P.imageSrcSet,Pe=P.imageSizes,nt=P.fetchPriority;var Ne=Re?Re+`\\n`+(Pe||\"\"):x;if(oe.imageResources.hasOwnProperty(Ne))return;oe.imageResources[Ne]=ta,oe=de.headers;var Et;oe&&0<oe.remainingCapacity&&typeof Re!=\"string\"&&nt===\"high\"&&(Et=le(x,k,P),0<=(oe.remainingCapacity-=Et.length+2))?(de.resets.image[Ne]=ta,oe.highImagePreloads&&(oe.highImagePreloads+=\", \"),oe.highImagePreloads+=Et):(oe=[],X(oe,Ii({rel:\"preload\",href:Re?void 0:x,as:k},P)),nt===\"high\"?de.highImagePreloads.add(oe):(de.bulkPreloads.add(oe),de.preloads.images.set(Ne,oe)));break;case\"style\":if(oe.styleResources.hasOwnProperty(x))return;Re=[],X(Re,Ii({rel:\"preload\",href:x,as:k},P)),oe.styleResources[x]=!P||typeof P.crossOrigin!=\"string\"&&typeof P.integrity!=\"string\"?ta:[P.crossOrigin,P.integrity],de.preloads.stylesheets.set(x,Re),de.bulkPreloads.add(Re);break;case\"script\":if(oe.scriptResources.hasOwnProperty(x))return;Re=[],de.preloads.scripts.set(x,Re),de.bulkPreloads.add(Re),X(Re,Ii({rel:\"preload\",href:x,as:k},P)),oe.scriptResources[x]=!P||typeof P.crossOrigin!=\"string\"&&typeof P.integrity!=\"string\"?ta:[P.crossOrigin,P.integrity];break;default:if(oe.unknownResources.hasOwnProperty(k)){if(Re=oe.unknownResources[k],Re.hasOwnProperty(x))return}else Re={},oe.unknownResources[k]=Re;if(Re[x]=ta,(oe=de.headers)&&0<oe.remainingCapacity&&k===\"font\"&&(Ne=le(x,k,P),0<=(oe.remainingCapacity-=Ne.length+2)))de.resets.font[x]=ta,oe.fontPreloads&&(oe.fontPreloads+=\", \"),oe.fontPreloads+=Ne;else switch(oe=[],x=Ii({rel:\"preload\",href:x,as:k},P),X(oe,x),k){case\"font\":de.fontPreloads.add(oe);break;default:de.bulkPreloads.add(oe)}}ep(Q)}}else Hr.L(x,k,P)},m:function(x,k){var P=ho||null;if(P){var Q=P.resumableState,oe=P.renderState;if(x){var de=k&&typeof k.as==\"string\"?k.as:\"script\";switch(de){case\"script\":if(Q.moduleScriptResources.hasOwnProperty(x))return;de=[],Q.moduleScriptResources[x]=!k||typeof k.crossOrigin!=\"string\"&&typeof k.integrity!=\"string\"?ta:[k.crossOrigin,k.integrity],oe.preloads.moduleScripts.set(x,de);break;default:if(Q.moduleUnknownResources.hasOwnProperty(de)){var Re=Q.unknownResources[de];if(Re.hasOwnProperty(x))return}else Re={},Q.moduleUnknownResources[de]=Re;de=[],Re[x]=ta}X(de,Ii({rel:\"modulepreload\",href:x},k)),oe.bulkPreloads.add(de),ep(P)}}else Hr.m(x,k)},X:function(x,k){var P=ho||null;if(P){var Q=P.resumableState,oe=P.renderState;if(x){var de=Q.scriptResources.hasOwnProperty(x)?Q.scriptResources[x]:void 0;de!==ko&&(Q.scriptResources[x]=ko,k=Ii({src:x,async:!0},k),de&&(de.length===2&&Ri(k,de),x=oe.preloads.scripts.get(x))&&(x.length=0),x=[],oe.scripts.add(x),ye(x,k),ep(P))}}else Hr.X(x,k)},S:function(x,k,P){var Q=ho||null;if(Q){var oe=Q.resumableState,de=Q.renderState;if(x){k=k||\"default\";var Re=de.styles.get(k),Pe=oe.styleResources.hasOwnProperty(x)?oe.styleResources[x]:void 0;Pe!==ko&&(oe.styleResources[x]=ko,Re||(Re={precedence:W(k),rules:[],hrefs:[],sheets:new Map},de.styles.set(k,Re)),k={state:a0,props:Ii({rel:\"stylesheet\",href:x,\"data-precedence\":k},P)},Pe&&(Pe.length===2&&Ri(k.props,Pe),(de=de.preloads.stylesheets.get(x))&&0<de.length?de.length=0:k.state=gb),Re.sheets.set(x,k),ep(Q))}}else Hr.S(x,k,P)},M:function(x,k){var P=ho||null;if(P){var Q=P.resumableState,oe=P.renderState;if(x){var de=Q.moduleScriptResources.hasOwnProperty(x)?Q.moduleScriptResources[x]:void 0;de!==ko&&(Q.moduleScriptResources[x]=ko,k=Ii({src:x,type:\"module\",async:!0},k),de&&(de.length===2&&Ri(k,de),x=oe.preloads.moduleScripts.get(x))&&(x.length=0),x=[],oe.scripts.add(x),ye(x,k),ep(P))}}else Hr.M(x,k)}};var Wd=0,fE=1,Zm=2,nl=4,Jf=8,ko=null,ta=[];Object.freeze(ta);var lb=/(<\\\\/|<)(s)(cript)/gi,P2={},M2=0,Ym=0,Lo=1,pi=2,Qm=3,na=4,Ku=5,ub=6,lp=7,Jm=8,Hg=9,ns=new Map,xc=\\' style=\"\\',db=\":\",hE=\";\",Ea=\" \",rl=\\'=\"\\',Sa=\\'\"\\',qg=\\'=\"\"\\',Vd=W(\"javascript:throw new Error(\\'React form unexpectedly submitted.\\')\"),oi=\">\",Xf=\"/>\",fb=!1,Wg=!1,Xm=!1,N2=!1,e0=!1,t0=!1,tc=!1,eh=!1,ol=!1,In=!1,gt=!1,up=`addEventListener(\"submit\",function(a){if(!a.defaultPrevented){var c=a.target,d=a.submitter,e=c.action,b=d;if(d){var f=d.getAttribute(\"formAction\");null!=f&&(e=f,b=null)}\"javascript:throw new Error(\\'React form unexpectedly submitted.\\')\"===e&&(a.preventDefault(),b?(a=document.createElement(\"input\"),a.name=b.name,a.value=b.value,b.parentNode.insertBefore(a,b),b=new FormData(c),a.parentNode.removeChild(a)):b=new FormData(c),a=c.ownerDocument||c,(a.$$reactFormReplay=a.$$reactFormReplay||[]).push(c,d,b))}});`,Vg=/(<\\\\/|<)(s)(tyle)/gi,Yo=`\\n`,Gu=/^[a-zA-Z][a-zA-Z:_\\\\.\\\\-\\\\d]*$/,hb=new Map,pE=new Map,L2=\\'<template id=\"\\',e7=\\'\"></template>\\',ra=\"<!--$-->\",Ec=\\'<!--$?--><template id=\"\\',nc=\\'\"></template>\\',ka=\"<!--$!-->\",Nr=\"<!--/$-->\",B2=\"<template\",mi=\\'\"\\',zl=\\' data-dgst=\"\\',dp=\\' data-msg=\"\\',Hl=\\' data-stck=\"\\',D2=\\' data-cstck=\"\\',n0=\"></template>\",F2=\"<!--\",$g=\"-->\",U2=\\'<div hidden id=\"\\',r0=\\'\">\\',mE=\"</div>\",pb=\\'<svg aria-hidden=\"true\" style=\"display:none\" id=\"\\',mb=\\'\">\\',j2=\"</svg>\",jk=\\'<math aria-hidden=\"true\" style=\"display:none\" id=\"\\',gE=\\'\">\\',yE=\"</math>\",bE=\\'<table hidden id=\"\\',z2=\\'\">\\',zk=\"</table>\",vE=\\'<table hidden><tbody id=\"\\',t7=\\'\">\\',wE=\"</tbody></table>\",Hk=\\'<table hidden><tr id=\"\\',qk=\\'\">\\',xE=\"</tr></table>\",Wk=\\'<table hidden><colgroup id=\"\\',Vk=\\'\">\\',Kg=\"</colgroup></table>\",o0=\\'$RS=function(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"\\',$k=\\'$RS(\"\\',H2=\\'\",\"\\',q2=\\'\")<\\\\/script>\\',Gg=\\'$RC=function(b,c,e){c=document.getElementById(c);c.parentNode.removeChild(c);var a=document.getElementById(b);if(a){b=a.previousSibling;if(e)b.data=\"$!\",a.setAttribute(\"data-dgst\",e);else{e=b.parentNode;a=b.nextSibling;var f=0;do{if(a&&8===a.nodeType){var d=a.data;if(\"/$\"===d)if(0===f)break;else f--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||f++}d=a.nextSibling;e.removeChild(a);a=d}while(a);for(;c.firstChild;)e.insertBefore(c.firstChild,a);b.data=\"$\"}b._reactRetry&&b._reactRetry()}};$RC(\"\\',W2=\\'$RC(\"\\',EE=`$RC=function(b,c,e){c=document.getElementById(c);c.parentNode.removeChild(c);var a=document.getElementById(b);if(a){b=a.previousSibling;if(e)b.data=\"$!\",a.setAttribute(\"data-dgst\",e);else{e=b.parentNode;a=b.nextSibling;var f=0;do{if(a&&8===a.nodeType){var d=a.data;if(\"/$\"===d)if(0===f)break;else f--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||f++}d=a.nextSibling;e.removeChild(a);a=d}while(a);for(;c.firstChild;)e.insertBefore(c.firstChild,a);b.data=\"$\"}b._reactRetry&&b._reactRetry()}};$RM=new Map;\\n$RR=function(t,u,y){function v(n){this._p=null;n()}for(var w=$RC,p=$RM,q=new Map,r=document,g,b,h=r.querySelectorAll(\"link[data-precedence],style[data-precedence]\"),x=[],k=0;b=h[k++];)\"not all\"===b.getAttribute(\"media\")?x.push(b):(\"LINK\"===b.tagName&&p.set(b.getAttribute(\"href\"),b),q.set(b.dataset.precedence,g=b));b=0;h=[];var l,a;for(k=!0;;){if(k){var e=y[b++];if(!e){k=!1;b=0;continue}var c=!1,m=0;var d=e[m++];if(a=p.get(d)){var f=a._p;c=!0}else{a=r.createElement(\"link\");a.href=\\nd;a.rel=\"stylesheet\";for(a.dataset.precedence=l=e[m++];f=e[m++];)a.setAttribute(f,e[m++]);f=a._p=new Promise(function(n,z){a.onload=v.bind(a,n);a.onerror=v.bind(a,z)});p.set(d,a)}d=a.getAttribute(\"media\");!f||d&&!matchMedia(d).matches||h.push(f);if(c)continue}else{a=x[b++];if(!a)break;l=a.getAttribute(\"data-precedence\");a.removeAttribute(\"media\")}c=q.get(l)||g;c===g&&(g=a);q.set(l,a);c?c.parentNode.insertBefore(a,c.nextSibling):(c=r.head,c.insertBefore(a,c.firstChild))}Promise.all(h).then(w.bind(null,\\nt,u,\"\"),w.bind(null,t,u,\"Resource failed to load\"))};$RR(\"`,i0=`$RM=new Map;\\n$RR=function(t,u,y){function v(n){this._p=null;n()}for(var w=$RC,p=$RM,q=new Map,r=document,g,b,h=r.querySelectorAll(\"link[data-precedence],style[data-precedence]\"),x=[],k=0;b=h[k++];)\"not all\"===b.getAttribute(\"media\")?x.push(b):(\"LINK\"===b.tagName&&p.set(b.getAttribute(\"href\"),b),q.set(b.dataset.precedence,g=b));b=0;h=[];var l,a;for(k=!0;;){if(k){var e=y[b++];if(!e){k=!1;b=0;continue}var c=!1,m=0;var d=e[m++];if(a=p.get(d)){var f=a._p;c=!0}else{a=r.createElement(\"link\");a.href=\\nd;a.rel=\"stylesheet\";for(a.dataset.precedence=l=e[m++];f=e[m++];)a.setAttribute(f,e[m++]);f=a._p=new Promise(function(n,z){a.onload=v.bind(a,n);a.onerror=v.bind(a,z)});p.set(d,a)}d=a.getAttribute(\"media\");!f||d&&!matchMedia(d).matches||h.push(f);if(c)continue}else{a=x[b++];if(!a)break;l=a.getAttribute(\"data-precedence\");a.removeAttribute(\"media\")}c=q.get(l)||g;c===g&&(g=a);q.set(l,a);c?c.parentNode.insertBefore(a,c.nextSibling):(c=r.head,c.insertBefore(a,c.firstChild))}Promise.all(h).then(w.bind(null,\\nt,u,\"\"),w.bind(null,t,u,\"Resource failed to load\"))};$RR(\"`,Sc=\\'$RR(\"\\',V2=\\'\",\"\\',SE=\\'\",\\',Kk=\\'\"\\',kE=\")<\\\\/script>\",$2=\\'$RX=function(b,c,d,e,f){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),f&&(a.cstck=f),b._reactRetry&&b._reactRetry())};;$RX(\"\\',_E=\\'$RX(\"\\',K2=\\'\"\\',Zg=\",\",G2=\")<\\\\/script>\",CE=/[<\\\\u2028\\\\u2029]/g,Gk=/[&><\\\\u2028\\\\u2029]/g,Zk=\\'<style media=\"not all\" data-precedence=\"\\',AE=\\'\" data-href=\"\\',Yk=\\'\">\\',Qk=\"</style>\",Yg=!1,Z2=!0,th=[],TE=\\'<style data-precedence=\"\\',Jk=\\'\" data-href=\"\\',RE=\" \",s0=\\'\">\\',IE=\"</style>\",Y2=\"[\",Xk=\",[\",OE=\",\",Q2=\"]\",a0=0,gb=1,Qg=2,PE=3,e_=/[<>\\\\r\\\\n]/g,oa=/[\"\\';,\\\\r\\\\n]/g,J2=\"\",X2=Function.prototype.bind,yb=Symbol.for(\"react.client.reference\"),il={};Object.freeze(il);var c0={},sl=null,ME={},nh={},NE=new Set,rh=new Set,$d=new Set,bb=new Set,ew=new Set,l0=new Set,vb=new Set,Kd=new Set,fp=new Set,LE={enqueueSetState:function(x,k,P){var Q=x._reactInternals;Q.queue===null?vn(x,\"setState\"):(Q.queue.push(k),P!=null&&Bl(P))},enqueueReplaceState:function(x,k,P){x=x._reactInternals,x.replace=!0,x.queue=[k],P!=null&&Bl(P)},enqueueForceUpdate:function(x,k){x._reactInternals.queue===null?vn(x,\"forceUpdate\"):k!=null&&Bl(k)}},BE={id:1,overflow:\"\"},wb=Math.clz32?Math.clz32:Dd,tw=Math.log,DE=Math.LN2,Gd=Error(\"Suspense Exception: This is not a real error! It\\'s an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\\\\n\\\\nTo handle async errors, wrap your component in an error boundary, or call the promise\\'s `.catch` method and pass the result to `use`.\"),hp=null,xb=typeof Object.is==\"function\"?Object.is:xr,Zu=null,Wi=null,Jg=null,Eb=null,Sb=null,_o=null,Xg=!1,u0=!1,_a=0,oh=0,ql=-1,ey=0,ih=null,Yu=null,d0=0,Wl=!1,pp,ty={readContext:Zc,use:function(x){if(x!==null&&typeof x==\"object\"){if(typeof x.then==\"function\")return ya(x);if(x.$$typeof===Dg)return Zc(x)}throw Error(\"An unsupported type was passed to use(): \"+String(x))},useContext:function(x){return pp=\"useContext\",En(),x._currentValue2},useMemo:ts,useReducer:qu,useRef:function(x){Zu=En(),_o=Zr();var k=_o.memoizedState;return k===null?(x={current:x},Object.seal(x),_o.memoizedState=x):k},useState:function(x){return pp=\"useState\",qu(Zo,x)},useInsertionEffect:Ja,useLayoutEffect:Ja,useCallback:function(x,k){return ts(function(){return x},k)},useImperativeHandle:Ja,useEffect:Ja,useDebugValue:Ja,useDeferredValue:function(x,k){return En(),k!==void 0?k:x},useTransition:function(){return En(),[!1,Yc]},useId:function(){var x=Wi.treeContext,k=x.overflow;x=x.id,x=(x&~(1<<32-wb(x)-1)).toString(32)+k;var P=f0;if(P===null)throw Error(\"Invalid hook call. Hooks can only be called inside of the body of a function component.\");return k=_a++,x=\"\\\\xAB\"+P.idPrefix+\"R\"+x,0<k&&(x+=\"H\"+k.toString(32)),x+\"\\\\xBB\"},useSyncExternalStore:function(x,k,P){if(P===void 0)throw Error(\"Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.\");return P()},useOptimistic:function(x){return En(),[x,Ya]},useActionState:Qa,useFormState:Qa,useHostTransitionStatus:function(){return En(),Gm},useMemoCache:function(x){for(var k=Array(x),P=0;P<x;P++)k[P]=Fg;return k},useCacheRefresh:function(){return Dl}},f0=null,al=null,FE={getCacheForType:function(){throw Error(\"Not implemented.\")},getOwner:function(){return al===null?null:al.componentStack}},mp=0,nw,Zd,h0,t_,rw,Ca,ny;Fl.__reactDisabledLog=!0;var ry,kc,fo=!1,kb=new(typeof WeakMap==\"function\"?WeakMap:Map),ow={\"react-stack-bottom-frame\":function(x,k,P){return x(k,P)}},_b=ow[\"react-stack-bottom-frame\"].bind(ow),fr={\"react-stack-bottom-frame\":function(x){return x.render()}},oy=fr[\"react-stack-bottom-frame\"].bind(fr),p0={\"react-stack-bottom-frame\":function(x){var k=x._init;return k(x._payload)}},Yd=p0[\"react-stack-bottom-frame\"].bind(p0),Qu=0;if(typeof performance==\"object\"&&typeof performance.now==\"function\")var iy=performance,m0=function(){return iy.now()};else{var g0=Date;m0=function(){return g0.now()}}var rs=4,Vl=0,Qo=1,sy=2,sh=5,Os=14,ho=null,n_={},y0={},Cb={},iw={},Ab=!1,Tb=!1,ay=!1;zV.renderToStaticMarkup=function(x,k){return rb(x,k,!0,\\'The server used \"renderToStaticMarkup\" which does not support Suspense. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server\\')},zV.renderToString=function(x,k){return rb(x,k,!1,\\'The server used \"renderToString\" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server\\')},zV.version=\"19.1.0\"})()});var CMe=be(HV=>{\"use strict\";p();(function(){function t(w,S,M,Y){return\"\"+S+(M===\"s\"?\"\\\\\\\\73 \":\"\\\\\\\\53 \")+Y}function e(w,S,M,Y){return\"\"+S+(M===\"s\"?\"\\\\\\\\u0073\":\"\\\\\\\\u0053\")+Y}function n(w){return Object.prototype.toString.call(w).replace(/^\\\\[object (.*)\\\\]$/,function(S,M){return M})}function r(w){var S=JSON.stringify(w);return\\'\"\\'+w+\\'\"\\'===S?w:S}function o(w){switch(typeof w){case\"string\":return JSON.stringify(10>=w.length?w:w.slice(0,10)+\"...\");case\"object\":return wa(w)?\"[...]\":w!==null&&w.$$typeof===jg?\"client\":(w=n(w),w===\"Object\"?\"{...}\":w);case\"function\":return w.$$typeof===jg?\"client\":(w=w.displayName||w.name)?\"function \"+w:\"function\";default:return String(w)}}function i(w){if(typeof w==\"string\")return w;switch(w){case Rs:return\"Suspense\";case Ug:return\"SuspenseList\"}if(typeof w==\"object\")switch(w.$$typeof){case Fg:return i(w.render);case el:return i(w.type);case tl:var S=w._payload;w=w._init;try{return i(w(S))}catch{}}return\"\"}function a(w,S){var M=n(w);if(M!==\"Object\"&&M!==\"Array\")return M;var Y=-1,re=0;if(wa(w))if(I2.has(w)){var ue=I2.get(w);M=\"<\"+i(ue)+\">\";for(var Ee=0;Ee<w.length;Ee++){var Ae=w[Ee];Ae=typeof Ae==\"string\"?Ae:typeof Ae==\"object\"&&Ae!==null?\"{\"+a(Ae)+\"}\":\"{\"+o(Ae)+\"}\",\"\"+Ee===S?(Y=M.length,re=Ae.length,M+=Ae):M=15>Ae.length&&40>M.length+Ae.length?M+Ae:M+\"{...}\"}M+=\"</\"+i(ue)+\">\"}else{for(M=\"[\",ue=0;ue<w.length;ue++)0<ue&&(M+=\", \"),Ee=w[ue],Ee=typeof Ee==\"object\"&&Ee!==null?a(Ee):o(Ee),\"\"+ue===S?(Y=M.length,re=Ee.length,M+=Ee):M=10>Ee.length&&40>M.length+Ee.length?M+Ee:M+\"...\";M+=\"]\"}else if(w.$$typeof===Gf)M=\"<\"+i(w.type)+\"/>\";else{if(w.$$typeof===jg)return\"client\";if(aE.has(w)){for(M=aE.get(w),M=\"<\"+(i(M)||\"...\"),ue=Object.keys(w),Ee=0;Ee<ue.length;Ee++){M+=\" \",Ae=ue[Ee],M+=r(Ae)+\"=\";var Le=w[Ae],Ie=Ae===S&&typeof Le==\"object\"&&Le!==null?a(Le):o(Le);typeof Le!=\"string\"&&(Ie=\"{\"+Ie+\"}\"),Ae===S?(Y=M.length,re=Ie.length,M+=Ie):M=10>Ie.length&&40>M.length+Ie.length?M+Ie:M+\"...\"}M+=\">\"}else{for(M=\"{\",ue=Object.keys(w),Ee=0;Ee<ue.length;Ee++)0<Ee&&(M+=\", \"),Ae=ue[Ee],M+=r(Ae)+\": \",Le=w[Ae],Le=typeof Le==\"object\"&&Le!==null?a(Le):o(Le),Ae===S?(Y=M.length,re=Le.length,M+=Le):M=10>Le.length&&40>M.length+Le.length?M+Le:M+\"...\";M+=\"}\"}}return S===void 0?M:-1<Y&&0<re?(w=\" \".repeat(Y)+\"^\".repeat(re),`\\n  `+M+`\\n  `+w):`\\n  `+M}function c(w,S){var M=w.length&3,Y=w.length-M,re=S;for(S=0;S<Y;){var ue=w.charCodeAt(S)&255|(w.charCodeAt(++S)&255)<<8|(w.charCodeAt(++S)&255)<<16|(w.charCodeAt(++S)&255)<<24;++S,ue=3432918353*(ue&65535)+((3432918353*(ue>>>16)&65535)<<16)&4294967295,ue=ue<<15|ue>>>17,ue=461845907*(ue&65535)+((461845907*(ue>>>16)&65535)<<16)&4294967295,re^=ue,re=re<<13|re>>>19,re=5*(re&65535)+((5*(re>>>16)&65535)<<16)&4294967295,re=(re&65535)+27492+(((re>>>16)+58964&65535)<<16)}switch(ue=0,M){case 3:ue^=(w.charCodeAt(S+2)&255)<<16;case 2:ue^=(w.charCodeAt(S+1)&255)<<8;case 1:ue^=w.charCodeAt(S)&255,ue=3432918353*(ue&65535)+((3432918353*(ue>>>16)&65535)<<16)&4294967295,ue=ue<<15|ue>>>17,re^=461845907*(ue&65535)+((461845907*(ue>>>16)&65535)<<16)&4294967295}return re^=w.length,re^=re>>>16,re=2246822507*(re&65535)+((2246822507*(re>>>16)&65535)<<16)&4294967295,re^=re>>>13,re=3266489909*(re&65535)+((3266489909*(re>>>16)&65535)<<16)&4294967295,(re^re>>>16)>>>0}function u(w){Yf.push(w),Zf.port2.postMessage(null)}function d(w){setTimeout(function(){throw w})}function h(w,S){if(S.byteLength!==0)if(2048<S.byteLength)0<xa&&(w.enqueue(new Uint8Array(ec.buffer,0,xa)),ec=new Uint8Array(2048),xa=0),w.enqueue(S);else{var M=ec.length-xa;M<S.byteLength&&(M===0?w.enqueue(ec):(ec.set(S.subarray(0,M),xa),w.enqueue(ec),S=S.subarray(M)),ec=new Uint8Array(2048),xa=0),ec.set(S,xa),xa+=S.byteLength}}function m(w,S){return h(w,S),!0}function g(w){ec&&0<xa&&(w.enqueue(new Uint8Array(ec.buffer,0,xa)),ec=null,xa=0)}function b(w){return Is.encode(w)}function E(w){return w=Is.encode(w),2048<w.byteLength&&console.error(\"precomputed chunks must be smaller than the view size configured for this host. This is a bug in React.\"),w}function C(w,S){typeof w.error==\"function\"?w.error(S):w.close()}function T(w){return typeof Symbol==\"function\"&&Symbol.toStringTag&&w[Symbol.toStringTag]||w.constructor.name||\"Object\"}function R(w){try{return L(w),!1}catch{return!0}}function L(w){return\"\"+w}function D(w,S){if(R(w))return console.error(\"The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.\",S,T(w)),L(w)}function G(w,S){if(R(w))return console.error(\"The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.\",S,T(w)),L(w)}function W(w){if(R(w))return console.error(\"The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before using it here.\",T(w)),L(w)}function J(w){return Ar.call(uE,w)?!0:Ar.call(ap,w)?!1:lE.test(w)?uE[w]=!0:(ap[w]=!0,console.error(\"Invalid attribute name: `%s`\",w),!1)}function ne(w,S){zg[S.type]||S.onChange||S.onInput||S.readOnly||S.disabled||S.value==null||console.error(w===\"select\"?\"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set `onChange`.\":\"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`.\"),S.onChange||S.readOnly||S.disabled||S.checked==null||console.error(\"You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.\")}function ie(w,S){if(Ar.call(jl,S)&&jl[S])return!0;if(ab.test(S)){if(w=\"aria-\"+S.slice(4).toLowerCase(),w=cp.hasOwnProperty(w)?w:null,w==null)return console.error(\"Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.\",S),jl[S]=!0;if(S!==w)return console.error(\"Invalid ARIA attribute `%s`. Did you mean `%s`?\",S,w),jl[S]=!0}if(dE.test(S)){if(w=S.toLowerCase(),w=cp.hasOwnProperty(w)?w:null,w==null)return jl[S]=!0,!1;S!==w&&(console.error(\"Unknown ARIA attribute `%s`. Did you mean `%s`?\",S,w),jl[S]=!0)}return!0}function Z(w,S){var M=[],Y;for(Y in S)ie(w,Y)||M.push(Y);S=M.map(function(re){return\"`\"+re+\"`\"}).join(\", \"),M.length===1?console.error(\"Invalid aria prop %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props\",S,w):1<M.length&&console.error(\"Invalid aria props %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props\",S,w)}function ae(w,S,M,Y){if(Ar.call(Xs,S)&&Xs[S])return!0;var re=S.toLowerCase();if(re===\"onfocusin\"||re===\"onfocusout\")return console.error(\"React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React.\"),Xs[S]=!0;if(typeof M==\"function\"&&(w===\"form\"&&S===\"action\"||w===\"input\"&&S===\"formAction\"||w===\"button\"&&S===\"formAction\"))return!0;if(Y!=null){if(w=Y.possibleRegistrationNames,Y.registrationNameDependencies.hasOwnProperty(S))return!0;if(Y=w.hasOwnProperty(re)?w[re]:null,Y!=null)return console.error(\"Invalid event handler property `%s`. Did you mean `%s`?\",S,Y),Xs[S]=!0;if(O2.test(S))return console.error(\"Unknown event handler property `%s`. It will be ignored.\",S),Xs[S]=!0}else if(O2.test(S))return ea.test(S)&&console.error(\"Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.\",S),Xs[S]=!0;if(cb.test(S)||Gm.test(S))return!0;if(re===\"innerhtml\")return console.error(\"Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`.\"),Xs[S]=!0;if(re===\"aria\")return console.error(\"The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead.\"),Xs[S]=!0;if(re===\"is\"&&M!==null&&M!==void 0&&typeof M!=\"string\")return console.error(\"Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.\",typeof M),Xs[S]=!0;if(typeof M==\"number\"&&isNaN(M))return console.error(\"Received NaN for the `%s` attribute. If this is expected, cast the value to a string.\",S),Xs[S]=!0;if(qd.hasOwnProperty(re)){if(re=qd[re],re!==S)return console.error(\"Invalid DOM property `%s`. Did you mean `%s`?\",S,re),Xs[S]=!0}else if(S!==re)return console.error(\"React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.\",S,re),Xs[S]=!0;switch(S){case\"dangerouslySetInnerHTML\":case\"children\":case\"style\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"ref\":return!0;case\"innerText\":case\"textContent\":return!0}switch(typeof M){case\"boolean\":switch(S){case\"autoFocus\":case\"checked\":case\"multiple\":case\"muted\":case\"selected\":case\"contentEditable\":case\"spellCheck\":case\"draggable\":case\"value\":case\"autoReverse\":case\"externalResourcesRequired\":case\"focusable\":case\"preserveAlpha\":case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":case\"capture\":case\"download\":case\"inert\":return!0;default:return re=S.toLowerCase().slice(0,5),re===\"data-\"||re===\"aria-\"?!0:(M?console.error(\\'Received `%s` for a non-boolean attribute `%s`.\\\\n\\\\nIf you want to write it to the DOM, pass a string instead: %s=\"%s\" or %s={value.toString()}.\\',M,S,S,M,S):console.error(\\'Received `%s` for a non-boolean attribute `%s`.\\\\n\\\\nIf you want to write it to the DOM, pass a string instead: %s=\"%s\" or %s={value.toString()}.\\\\n\\\\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.\\',M,S,S,M,S,S,S),Xs[S]=!0)}case\"function\":case\"symbol\":return Xs[S]=!0,!1;case\"string\":if(M===\"false\"||M===\"true\"){switch(S){case\"checked\":case\"selected\":case\"multiple\":case\"muted\":case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":case\"inert\":break;default:return!0}console.error(\"Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?\",M,S,M===\"false\"?\"The browser will interpret it as a truthy value.\":\\'Although this works, it will not work as expected if you pass the string \"false\".\\',S,M),Xs[S]=!0}}return!0}function V(w,S,M){var Y=[],re;for(re in S)ae(w,re,S[re],M)||Y.push(re);S=Y.map(function(ue){return\"`\"+ue+\"`\"}).join(\", \"),Y.length===1?console.error(\"Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://react.dev/link/attribute-behavior \",S,w):1<Y.length&&console.error(\"Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://react.dev/link/attribute-behavior \",S,w)}function $(w){return w.replace(fE,function(S,M){return M.toUpperCase()})}function F(w){if(typeof w==\"boolean\"||typeof w==\"number\"||typeof w==\"bigint\")return\"\"+w;W(w),w=\"\"+w;var S=lb.exec(w);if(S){var M=\"\",Y,re=0;for(Y=S.index;Y<w.length;Y++){switch(w.charCodeAt(Y)){case 34:S=\"&quot;\";break;case 38:S=\"&amp;\";break;case 39:S=\"&#x27;\";break;case 60:S=\"&lt;\";break;case 62:S=\"&gt;\";break;default:continue}re!==Y&&(M+=w.slice(re,Y)),re=Y+1,M+=S}w=re!==Y?M+w.slice(re,Y):M}return w}function _(w){return Ym.test(\"\"+w)?\"javascript:throw new Error(\\'React has blocked a javascript: URL as a security precaution.\\')\":w}function O(w){return W(w),(\"\"+w).replace(Xf,e)}function z(w,S,M,Y,re,ue){var Ee=S===void 0?db:E(\\'<script nonce=\"\\'+F(S)+\\'\">\\'),Ae=w.idPrefix;M=[];var Le=w.bootstrapScriptContent,Ie=w.bootstrapScripts,pt=w.bootstrapModules;if(Le!==void 0&&M.push(Ee,b(O(Le)),hE),Le=[],Y!==void 0&&(Le.push(fb),Le.push(b(O(JSON.stringify(Y)))),Le.push(Wg)),re&&typeof ue==\"number\"&&0>=ue&&console.error(\"React expected a positive non-zero `maxHeadersLength` option but found %s instead. When using the `onHeaders` option you may supply an optional `maxHeadersLength` option as well however, when setting this value to zero or less no headers will be captured.\",ue===0?\"zero\":ue),Y=re?{preconnects:\"\",fontPreloads:\"\",highImagePreloads:\"\",remainingCapacity:2+(typeof ue==\"number\"?ue:2e3)}:null,re={placeholderPrefix:E(Ae+\"P:\"),segmentPrefix:E(Ae+\"S:\"),boundaryPrefix:E(Ae+\"B:\"),startInlineScript:Ee,preamble:B(),externalRuntimeScript:null,bootstrapChunks:M,importMapChunks:Le,onHeaders:re,headers:Y,resets:{font:{},dns:{},connect:{default:{},anonymous:{},credentials:{}},image:{},style:{}},charsetChunks:[],viewportChunks:[],hoistableChunks:[],preconnects:new Set,fontPreloads:new Set,highImagePreloads:new Set,styles:new Map,bootstrapScripts:new Set,scripts:new Set,bulkPreloads:new Set,preloads:{images:new Map,stylesheets:new Map,scripts:new Map,moduleScripts:new Map},nonce:S,hoistableState:null,stylesToHoist:!1},Ie!==void 0)for(Y=0;Y<Ie.length;Y++){ue=Ie[Y],Le=Ae=void 0;var ut={rel:\"preload\",as:\"script\",fetchPriority:\"low\",nonce:S};typeof ue==\"string\"?ut.href=Ee=ue:(ut.href=Ee=ue.src,ut.integrity=Le=typeof ue.integrity==\"string\"?ue.integrity:void 0,ut.crossOrigin=Ae=typeof ue==\"string\"||ue.crossOrigin==null?void 0:ue.crossOrigin===\"use-credentials\"?\"use-credentials\":\"\"),Fn(w,re,Ee,ut),M.push(Ea,b(F(Ee))),S&&M.push(Sa,b(F(S))),typeof Le==\"string\"&&M.push(qg,b(F(Le))),typeof Ae==\"string\"&&M.push(Vd,b(F(Ae))),M.push(oi)}if(pt!==void 0)for(Ie=0;Ie<pt.length;Ie++)Y=pt[Ie],Ae=Ee=void 0,Le={rel:\"modulepreload\",fetchPriority:\"low\",nonce:S},typeof Y==\"string\"?Le.href=ue=Y:(Le.href=ue=Y.src,Le.integrity=Ae=typeof Y.integrity==\"string\"?Y.integrity:void 0,Le.crossOrigin=Ee=typeof Y==\"string\"||Y.crossOrigin==null?void 0:Y.crossOrigin===\"use-credentials\"?\"use-credentials\":\"\"),Fn(w,re,ue,Le),M.push(rl,b(F(ue))),S&&M.push(Sa,b(F(S))),typeof Ae==\"string\"&&M.push(qg,b(F(Ae))),typeof Ee==\"string\"&&M.push(Vd,b(F(Ee))),M.push(oi);return re}function N(w,S,M,Y,re){return{idPrefix:w===void 0?\"\":w,nextFormID:0,streamingFormat:0,bootstrapScriptContent:M,bootstrapScripts:Y,bootstrapModules:re,instructions:Ku,hasBody:!1,hasHtml:!1,unknownResources:{},dnsResources:{},connectResources:{default:{},anonymous:{},credentials:{}},imageResources:{},styleResources:{},scriptResources:{},moduleUnknownResources:{},moduleScriptResources:{}}}function B(){return{htmlChunks:null,headChunks:null,bodyChunks:null,contribution:N2}}function j(w,S,M){return{insertionMode:w,selectedValue:S,tagScope:M}}function q(w){return j(w===\"http://www.w3.org/2000/svg\"?ol:w===\"http://www.w3.org/1998/Math/MathML\"?In:e0,null,0)}function H(w,S,M){switch(S){case\"noscript\":return j(tc,null,w.tagScope|1);case\"select\":return j(tc,M.value!=null?M.value:M.defaultValue,w.tagScope);case\"svg\":return j(ol,null,w.tagScope);case\"picture\":return j(tc,null,w.tagScope|2);case\"math\":return j(In,null,w.tagScope);case\"foreignObject\":return j(tc,null,w.tagScope);case\"table\":return j(gt,null,w.tagScope);case\"thead\":case\"tbody\":case\"tfoot\":return j(up,null,w.tagScope);case\"colgroup\":return j(Yo,null,w.tagScope);case\"tr\":return j(Vg,null,w.tagScope);case\"head\":if(w.insertionMode<tc)return j(eh,null,w.tagScope);break;case\"html\":if(w.insertionMode===e0)return j(t0,null,w.tagScope)}return w.insertionMode>=gt||w.insertionMode<tc?j(tc,null,w.tagScope):w}function I(w,S,M,Y){return S===\"\"?Y:(Y&&w.push(Gu),w.push(b(F(S))),!0)}function U(w,S){if(typeof S!=\"object\")throw Error(\"The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + \\'em\\'}} when using JSX.\");var M=!0,Y;for(Y in S)if(Ar.call(S,Y)){var re=S[Y];if(re!=null&&typeof re!=\"boolean\"&&re!==\"\"){if(Y.indexOf(\"--\")===0){var ue=b(F(Y));G(re,Y),re=b(F((\"\"+re).trim()))}else{ue=Y;var Ee=re;if(-1<ue.indexOf(\"-\")){var Ae=ue;nl.hasOwnProperty(Ae)&&nl[Ae]||(nl[Ae]=!0,console.error(\"Unsupported style property %s. Did you mean %s?\",Ae,$(Ae.replace(Wd,\"ms-\"))))}else if(Hr.test(ue))Ae=ue,nl.hasOwnProperty(Ae)&&nl[Ae]||(nl[Ae]=!0,console.error(\"Unsupported vendor-prefixed style property %s. Did you mean %s?\",Ae,Ae.charAt(0).toUpperCase()+Ae.slice(1)));else if(Zm.test(Ee)){Ae=ue;var Le=Ee;Jf.hasOwnProperty(Le)&&Jf[Le]||(Jf[Le]=!0,console.error(`Style property values shouldn\\'t contain a semicolon. Try \"%s: %s\" instead.`,Ae,Le.replace(Zm,\"\")))}typeof Ee==\"number\"&&(isNaN(Ee)?ko||(ko=!0,console.error(\"`NaN` is an invalid value for the `%s` css style property.\",ue)):isFinite(Ee)||ta||(ta=!0,console.error(\"`Infinity` is an invalid value for the `%s` css style property.\",ue))),ue=Y,Ee=hb.get(ue),Ee!==void 0||(Ee=E(F(ue.replace(P2,\"-$1\").toLowerCase().replace(M2,\"-ms-\"))),hb.set(ue,Ee)),ue=Ee,typeof re==\"number\"?re=re===0||Uk.has(Y)?b(\"\"+re):b(re+\"px\"):(G(re,Y),re=b(F((\"\"+re).trim())))}M?(M=!1,w.push(pE,ue,L2,re)):w.push(e7,ue,L2,re)}}M||w.push(nc)}function X(w,S,M){M&&typeof M!=\"function\"&&typeof M!=\"symbol\"&&w.push(ra,b(S),ka)}function ee(w,S,M){typeof M!=\"function\"&&typeof M!=\"symbol\"&&typeof M!=\"boolean\"&&w.push(ra,b(S),Ec,b(F(M)),nc)}function se(w,S){this.push(B2),pe(w),ee(this,\"name\",S),ee(this,\"value\",w),this.push(zl)}function pe(w){if(typeof w!=\"string\")throw Error(\"File/Blob fields are not yet supported in progressive forms. Will fallback to client hydration.\")}function ye(w,S){if(typeof S.$$FORM_ACTION==\"function\"){var M=w.nextFormID++;w=w.idPrefix+M;try{var Y=S.$$FORM_ACTION(w);if(Y){var re=Y.data;re?.forEach(pe)}return Y}catch(ue){if(typeof ue==\"object\"&&ue!==null&&typeof ue.then==\"function\")throw ue;console.error(`Failed to serialize an action for progressive enhancement:\\n%s`,ue)}}return null}function xe(w,S,M,Y,re,ue,Ee,Ae){var Le=null;if(typeof Y==\"function\"){Ae===null||mE||(mE=!0,console.error(\\'Cannot specify a \"name\" prop for a button that specifies a function as a formAction. React needs it to encode which action should be invoked. It will get overridden.\\')),re===null&&ue===null||mb||(mb=!0,console.error(\"Cannot specify a formEncType or formMethod for a button that specifies a function as a formAction. React provides those automatically. They will get overridden.\")),Ee===null||pb||(pb=!0,console.error(\"Cannot specify a formTarget for a button that specifies a function as a formAction. The function will always be executed in the same window.\"));var Ie=ye(S,Y);Ie!==null?(Ae=Ie.name,Y=Ie.action||\"\",re=Ie.encType,ue=Ie.method,Ee=Ie.target,Le=Ie.data):(w.push(ra,b(\"formAction\"),Ec,Nr,nc),Ee=ue=re=Y=Ae=null,Ge(S,M))}return Ae!=null&&_e(w,\"name\",Ae),Y!=null&&_e(w,\"formAction\",Y),re!=null&&_e(w,\"formEncType\",re),ue!=null&&_e(w,\"formMethod\",ue),Ee!=null&&_e(w,\"formTarget\",Ee),Le}function _e(w,S,M){switch(S){case\"className\":ee(w,\"class\",M);break;case\"tabIndex\":ee(w,\"tabindex\",M);break;case\"dir\":case\"role\":case\"viewBox\":case\"width\":case\"height\":ee(w,S,M);break;case\"style\":U(w,M);break;case\"src\":case\"href\":if(M===\"\"){console.error(S===\"src\"?\\'An empty string (\"\") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\':\\'An empty string (\"\") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\',S,S);break}case\"action\":case\"formAction\":if(M==null||typeof M==\"function\"||typeof M==\"symbol\"||typeof M==\"boolean\")break;D(M,S),M=_(\"\"+M),w.push(ra,b(S),Ec,b(F(M)),nc);break;case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"ref\":break;case\"autoFocus\":case\"multiple\":case\"muted\":X(w,S.toLowerCase(),M);break;case\"xlinkHref\":if(typeof M==\"function\"||typeof M==\"symbol\"||typeof M==\"boolean\")break;D(M,S),M=_(\"\"+M),w.push(ra,b(\"xlink:href\"),Ec,b(F(M)),nc);break;case\"contentEditable\":case\"spellCheck\":case\"draggable\":case\"value\":case\"autoReverse\":case\"externalResourcesRequired\":case\"focusable\":case\"preserveAlpha\":typeof M!=\"function\"&&typeof M!=\"symbol\"&&w.push(ra,b(S),Ec,b(F(M)),nc);break;case\"inert\":M!==\"\"||Xm[S]||(Xm[S]=!0,console.error(\"Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.\",S));case\"allowFullScreen\":case\"async\":case\"autoPlay\":case\"controls\":case\"default\":case\"defer\":case\"disabled\":case\"disablePictureInPicture\":case\"disableRemotePlayback\":case\"formNoValidate\":case\"hidden\":case\"loop\":case\"noModule\":case\"noValidate\":case\"open\":case\"playsInline\":case\"readOnly\":case\"required\":case\"reversed\":case\"scoped\":case\"seamless\":case\"itemScope\":M&&typeof M!=\"function\"&&typeof M!=\"symbol\"&&w.push(ra,b(S),ka);break;case\"capture\":case\"download\":M===!0?w.push(ra,b(S),ka):M!==!1&&typeof M!=\"function\"&&typeof M!=\"symbol\"&&w.push(ra,b(S),Ec,b(F(M)),nc);break;case\"cols\":case\"rows\":case\"size\":case\"span\":typeof M!=\"function\"&&typeof M!=\"symbol\"&&!isNaN(M)&&1<=M&&w.push(ra,b(S),Ec,b(F(M)),nc);break;case\"rowSpan\":case\"start\":typeof M==\"function\"||typeof M==\"symbol\"||isNaN(M)||w.push(ra,b(S),Ec,b(F(M)),nc);break;case\"xlinkActuate\":ee(w,\"xlink:actuate\",M);break;case\"xlinkArcrole\":ee(w,\"xlink:arcrole\",M);break;case\"xlinkRole\":ee(w,\"xlink:role\",M);break;case\"xlinkShow\":ee(w,\"xlink:show\",M);break;case\"xlinkTitle\":ee(w,\"xlink:title\",M);break;case\"xlinkType\":ee(w,\"xlink:type\",M);break;case\"xmlBase\":ee(w,\"xml:base\",M);break;case\"xmlLang\":ee(w,\"xml:lang\",M);break;case\"xmlSpace\":ee(w,\"xml:space\",M);break;default:if((!(2<S.length)||S[0]!==\"o\"&&S[0]!==\"O\"||S[1]!==\"n\"&&S[1]!==\"N\")&&(S=sb.get(S)||S,J(S))){switch(typeof M){case\"function\":case\"symbol\":return;case\"boolean\":var Y=S.toLowerCase().slice(0,5);if(Y!==\"data-\"&&Y!==\"aria-\")return}w.push(ra,b(S),Ec,b(F(M)),nc)}}}function Me(w,S,M){if(S!=null){if(M!=null)throw Error(\"Can only set one of `children` or `props.dangerouslySetInnerHTML`.\");if(typeof S!=\"object\"||!(\"__html\"in S))throw Error(\"`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.\");S=S.__html,S!=null&&(W(S),w.push(b(\"\"+S)))}}function qe(w,S){var M=w[S];M!=null&&(M=wa(M),w.multiple&&!M?console.error(\"The `%s` prop supplied to <select> must be an array if `multiple` is true.\",S):!w.multiple&&M&&console.error(\"The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.\",S))}function wt(w){var S=\"\";return Bg.Children.forEach(w,function(M){M!=null&&(S+=M,F2||typeof M==\"string\"||typeof M==\"number\"||typeof M==\"bigint\"||(F2=!0,console.error(\"Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>.\")))}),S}function Ge(w,S){(w.instructions&16)===Ku&&(w.instructions|=16,S.bootstrapChunks.unshift(S.startInlineScript,jk,hE))}function ht(w,S){w.push(Mt(\"link\"));for(var M in S)if(Ar.call(S,M)){var Y=S[M];if(Y!=null)switch(M){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(\"link is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");default:_e(w,M,Y)}}return w.push(zl),null}function Ct(w){return W(w),(\"\"+w).replace(bE,t)}function dt(w,S,M){w.push(Mt(M));for(var Y in S)if(Ar.call(S,Y)){var re=S[Y];if(re!=null)switch(Y){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(M+\" is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");default:_e(w,Y,re)}}return w.push(zl),null}function Ze(w,S){w.push(Mt(\"title\"));var M=null,Y=null,re;for(re in S)if(Ar.call(S,re)){var ue=S[re];if(ue!=null)switch(re){case\"children\":M=ue;break;case\"dangerouslySetInnerHTML\":Y=ue;break;default:_e(w,re,ue)}}return w.push(mi),S=Array.isArray(M)?2>M.length?M[0]:null:M,typeof S!=\"function\"&&typeof S!=\"symbol\"&&S!==null&&S!==void 0&&w.push(b(F(\"\"+S))),Me(w,Y,M),w.push(Wt(\"title\")),null}function rn(w,S){w.push(Mt(\"script\"));var M=null,Y=null,re;for(re in S)if(Ar.call(S,re)){var ue=S[re];if(ue!=null)switch(re){case\"children\":M=ue;break;case\"dangerouslySetInnerHTML\":Y=ue;break;default:_e(w,re,ue)}}return w.push(mi),M!=null&&typeof M!=\"string\"&&(S=typeof M==\"number\"?\"a number for children\":Array.isArray(M)?\"an array for children\":\"something unexpected for children\",console.error(\"A script element was rendered with %s. If script element has children it must be a single string. Consider using dangerouslySetInnerHTML or passing a plain string as children.\",S)),Me(w,Y,M),typeof M==\"string\"&&w.push(b(O(M))),w.push(Wt(\"script\")),null}function zt(w,S,M){w.push(Mt(M));var Y=M=null,re;for(re in S)if(Ar.call(S,re)){var ue=S[re];if(ue!=null)switch(re){case\"children\":M=ue;break;case\"dangerouslySetInnerHTML\":Y=ue;break;default:_e(w,re,ue)}}return w.push(mi),Me(w,Y,M),M}function Bt(w,S,M){w.push(Mt(M));var Y=M=null,re;for(re in S)if(Ar.call(S,re)){var ue=S[re];if(ue!=null)switch(re){case\"children\":M=ue;break;case\"dangerouslySetInnerHTML\":Y=ue;break;default:_e(w,re,ue)}}return w.push(mi),Me(w,Y,M),typeof M==\"string\"?(w.push(b(F(M))),null):M}function Mt(w){var S=vE.get(w);if(S===void 0){if(!zk.test(w))throw Error(\"Invalid tag: \"+w);S=E(\"<\"+w),vE.set(w,S)}return S}function qt(w,S,M,Y,re,ue,Ee,Ae,Le,Ie){Z(S,M),S!==\"input\"&&S!==\"textarea\"&&S!==\"select\"||M==null||M.value!==null||Qf||(Qf=!0,S===\"select\"&&M.multiple?console.error(\"`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.\",S):console.error(\"`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.\",S));e:if(S.indexOf(\"-\")===-1)var pt=!1;else switch(S){case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":pt=!1;break e;default:pt=!0}switch(pt||typeof M.is==\"string\"||V(S,M,null),!M.suppressContentEditableWarning&&M.contentEditable&&M.children!=null&&console.error(\"A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional.\"),Ae.insertionMode!==ol&&Ae.insertionMode!==In&&S.indexOf(\"-\")===-1&&S.toLowerCase()!==S&&console.error(\"<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.\",S),S){case\"div\":case\"span\":case\"svg\":case\"path\":break;case\"a\":w.push(Mt(\"a\"));var ut=null,_t=null,bt;for(bt in M)if(Ar.call(M,bt)){var rt=M[bt];if(rt!=null)switch(bt){case\"children\":ut=rt;break;case\"dangerouslySetInnerHTML\":_t=rt;break;case\"href\":rt===\"\"?ee(w,\"href\",\"\"):_e(w,bt,rt);break;default:_e(w,bt,rt)}}if(w.push(mi),Me(w,_t,ut),typeof ut==\"string\"){w.push(b(F(ut)));var kn=null}else kn=ut;return kn;case\"g\":case\"p\":case\"li\":break;case\"select\":ne(\"select\",M),qe(M,\"value\"),qe(M,\"defaultValue\"),M.value===void 0||M.defaultValue===void 0||D2||(console.error(\"Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://react.dev/link/controlled-components\"),D2=!0),w.push(Mt(\"select\"));var Tr=null,_n=null,Gt;for(Gt in M)if(Ar.call(M,Gt)){var Bo=M[Gt];if(Bo!=null)switch(Gt){case\"children\":Tr=Bo;break;case\"dangerouslySetInnerHTML\":_n=Bo;break;case\"defaultValue\":case\"value\":break;default:_e(w,Gt,Bo)}}return w.push(mi),Me(w,_n,Tr),Tr;case\"option\":var Lr=Ae.selectedValue;w.push(Mt(\"option\"));var Rn=null,os=null,Ps=null,si=null,gi;for(gi in M)if(Ar.call(M,gi)){var po=M[gi];if(po!=null)switch(gi){case\"children\":Rn=po;break;case\"selected\":Ps=po,U2||(console.error(\"Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>.\"),U2=!0);break;case\"dangerouslySetInnerHTML\":si=po;break;case\"value\":os=po;default:_e(w,gi,po)}}if(Lr!=null){if(os!==null){D(os,\"value\");var Jo=\"\"+os}else si===null||$g||($g=!0,console.error(\"Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected.\")),Jo=wt(Rn);if(wa(Lr)){for(var yi=0;yi<Lr.length;yi++)if(D(Lr[yi],\"value\"),\"\"+Lr[yi]===Jo){w.push(j2);break}}else D(Lr,\"select.value\"),\"\"+Lr===Jo&&w.push(j2)}else Ps&&w.push(j2);return w.push(mi),Me(w,si,Rn),Rn;case\"textarea\":ne(\"textarea\",M),M.value===void 0||M.defaultValue===void 0||n0||(console.error(\"Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://react.dev/link/controlled-components\"),n0=!0),w.push(Mt(\"textarea\"));var Bn=null,mo=null,Br=null,is;for(is in M)if(Ar.call(M,is)){var ss=M[is];if(ss!=null)switch(is){case\"children\":Br=ss;break;case\"value\":Bn=ss;break;case\"defaultValue\":mo=ss;break;case\"dangerouslySetInnerHTML\":throw Error(\"`dangerouslySetInnerHTML` does not make sense on <textarea>.\");default:_e(w,is,ss)}}if(Bn===null&&mo!==null&&(Bn=mo),w.push(mi),Br!=null){if(console.error(\"Use the `defaultValue` or `value` props instead of setting children on <textarea>.\"),Bn!=null)throw Error(\"If you supply `defaultValue` on a <textarea>, do not pass children.\");if(wa(Br)){if(1<Br.length)throw Error(\"<textarea> can only have at most one child.\");W(Br[0]),Bn=\"\"+Br[0]}W(Br),Bn=\"\"+Br}return typeof Bn==\"string\"&&Bn[0]===`\\n`&&w.push(z2),Bn!==null&&(D(Bn,\"value\"),w.push(b(F(\"\"+Bn)))),null;case\"input\":ne(\"input\",M),w.push(Mt(\"input\"));var Pi=null,rc=null,Ki=null,oc=null,Ju=null,Un=null,cl=null,Ta=null,Xu=null,gs;for(gs in M)if(Ar.call(M,gs)){var Mi=M[gs];if(Mi!=null)switch(gs){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(\"input is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");case\"name\":Pi=Mi;break;case\"formAction\":rc=Mi;break;case\"formEncType\":Ki=Mi;break;case\"formMethod\":oc=Mi;break;case\"formTarget\":Ju=Mi;break;case\"defaultChecked\":Xu=Mi;break;case\"defaultValue\":cl=Mi;break;case\"checked\":Ta=Mi;break;case\"value\":Un=Mi;break;default:_e(w,gs,Mi)}}rc===null||M.type===\"image\"||M.type===\"submit\"||r0||(r0=!0,console.error(\\'An input can only specify a formAction along with type=\"submit\" or type=\"image\".\\'));var Ao=xe(w,Y,re,rc,Ki,oc,Ju,Pi);return Ta===null||Xu===null||Hl||(console.error(\"%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components\",\"A component\",M.type),Hl=!0),Un===null||cl===null||dp||(console.error(\"%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components\",\"A component\",M.type),dp=!0),Ta!==null?X(w,\"checked\",Ta):Xu!==null&&X(w,\"checked\",Xu),Un!==null?_e(w,\"value\",Un):cl!==null&&_e(w,\"value\",cl),w.push(zl),Ao?.forEach(se,w),null;case\"button\":w.push(Mt(\"button\"));var ys=null,ia=null,$l=null,as=null,Cc=null,Ra=null,sa=null,To;for(To in M)if(Ar.call(M,To)){var Ms=M[To];if(Ms!=null)switch(To){case\"children\":ys=Ms;break;case\"dangerouslySetInnerHTML\":ia=Ms;break;case\"name\":$l=Ms;break;case\"formAction\":as=Ms;break;case\"formEncType\":Cc=Ms;break;case\"formMethod\":Ra=Ms;break;case\"formTarget\":sa=Ms;break;default:_e(w,To,Ms)}}as===null||M.type==null||M.type===\"submit\"||r0||(r0=!0,console.error(\\'A button can only specify a formAction along with type=\"submit\" or no type.\\'));var ic=xe(w,Y,re,as,Cc,Ra,sa,$l);if(w.push(mi),ic?.forEach(se,w),Me(w,ia,ys),typeof ys==\"string\"){w.push(b(F(ys)));var Ac=null}else Ac=ys;return Ac;case\"form\":w.push(Mt(\"form\"));var sc=null,Kl=null,aa=null,ll=null,Tc=null,ul=null,dl;for(dl in M)if(Ar.call(M,dl)){var Ia=M[dl];if(Ia!=null)switch(dl){case\"children\":sc=Ia;break;case\"dangerouslySetInnerHTML\":Kl=Ia;break;case\"action\":aa=Ia;break;case\"encType\":ll=Ia;break;case\"method\":Tc=Ia;break;case\"target\":ul=Ia;break;default:_e(w,dl,Ia)}}var ca=null,ah=null;if(typeof aa==\"function\"){ll===null&&Tc===null||mb||(mb=!0,console.error(\"Cannot specify a encType or method for a form that specifies a function as the action. React provides those automatically. They will get overridden.\")),ul===null||pb||(pb=!0,console.error(\"Cannot specify a target for a form that specifies a function as the action. The function will always be executed in the same window.\"));var pn=ye(Y,aa);pn!==null?(aa=pn.action||\"\",ll=pn.encType,Tc=pn.method,ul=pn.target,ca=pn.data,ah=pn.name):(w.push(ra,b(\"action\"),Ec,Nr,nc),ul=Tc=ll=aa=null,Ge(Y,re))}if(aa!=null&&_e(w,\"action\",aa),ll!=null&&_e(w,\"encType\",ll),Tc!=null&&_e(w,\"method\",Tc),ul!=null&&_e(w,\"target\",ul),w.push(mi),ah!==null&&(w.push(B2),ee(w,\"name\",ah),w.push(zl),ca?.forEach(se,w)),Me(w,Kl,sc),typeof sc==\"string\"){w.push(b(F(sc)));var Gl=null}else Gl=sc;return Gl;case\"menuitem\":w.push(Mt(\"menuitem\"));for(var Zl in M)if(Ar.call(M,Zl)){var gp=M[Zl];if(gp!=null)switch(Zl){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(\"menuitems cannot have `children` nor `dangerouslySetInnerHTML`.\");default:_e(w,Zl,gp)}}return w.push(mi),null;case\"object\":w.push(Mt(\"object\"));var ac=null,Yl=null,cs;for(cs in M)if(Ar.call(M,cs)){var bs=M[cs];if(bs!=null)switch(cs){case\"children\":ac=bs;break;case\"dangerouslySetInnerHTML\":Yl=bs;break;case\"data\":D(bs,\"data\");var Do=_(\"\"+bs);if(Do===\"\"){console.error(\\'An empty string (\"\") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.\\',cs,cs);break}w.push(ra,b(\"data\"),Ec,b(F(Do)),nc);break;default:_e(w,cs,bs)}}if(w.push(mi),Me(w,Yl,ac),typeof ac==\"string\"){w.push(b(F(ac)));var bi=null}else bi=ac;return bi;case\"title\":var Sr=Ae.insertionMode,b0=!!(Ae.tagScope&1);if(Ar.call(M,\"children\")){var vi=M.children,fl=Array.isArray(vi)?2>vi.length?vi[0]:null:vi;Array.isArray(vi)&&1<vi.length?console.error(\"React expects the `children` prop of <title> tags to be a string, number, bigint, or object with a novel `toString` method but found an Array with length %s instead. Browsers treat all child Nodes of <title> tags as Text content and React expects to be able to convert `children` of <title> tags to a single string value which is why Arrays of length greater than 1 are not supported. When using JSX it can be common to combine text nodes and value nodes. For example: <title>hello {nameOfUser}</title>. While not immediately apparent, `children` in this case is an Array with length 2. If your `children` prop is using this form try rewriting it using a template string: <title>{`hello ${nameOfUser}`}</title>.\",vi.length):typeof fl==\"function\"||typeof fl==\"symbol\"?console.error(\"React expect children of <title> tags to be a string, number, bigint, or object with a novel `toString` method but found %s instead. Browsers treat all child Nodes of <title> tags as Text content and React expects to be able to convert children of <title> tags to a single string value.\",typeof fl==\"function\"?\"a Function\":\"a Sybmol\"):fl&&fl.toString==={}.toString&&(fl.$$typeof!=null?console.error(\"React expects the `children` prop of <title> tags to be a string, number, bigint, or object with a novel `toString` method but found an object that appears to be a React element which never implements a suitable `toString` method. Browsers treat all child Nodes of <title> tags as Text content and React expects to be able to convert children of <title> tags to a single string value which is why rendering React elements is not supported. If the `children` of <title> is a React Component try moving the <title> tag into that component. If the `children` of <title> is some HTML markup change it to be Text only to be valid HTML.\"):console.error(\"React expects the `children` prop of <title> tags to be a string, number, bigint, or object with a novel `toString` method but found an object that does not implement a suitable `toString` method. Browsers treat all child Nodes of <title> tags as Text content and React expects to be able to convert children of <title> tags to a single string value. Using the default `toString` method available on every object is almost certainly an error. Consider whether the `children` of this <title> is an object in error and change it to a string or number value if so. Otherwise implement a `toString` method that React can use to produce a valid <title>.\"))}if(Sr===ol||b0||M.itemProp!=null)var Ns=Ze(w,M);else Ie?Ns=null:(Ze(re.hoistableChunks,M),Ns=void 0);return Ns;case\"link\":var v0=M.rel,Xo=M.href,hr=M.precedence;if(Ae.insertionMode===ol||Ae.tagScope&1||M.itemProp!=null||typeof v0!=\"string\"||typeof Xo!=\"string\"||Xo===\"\"){v0===\"stylesheet\"&&typeof M.precedence==\"string\"&&(typeof Xo==\"string\"&&Xo||console.error(\\'React encountered a `<link rel=\"stylesheet\" .../>` with a `precedence` prop and expected the `href` prop to be a non-empty string but ecountered %s instead. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop ensure there is a non-empty string `href` prop as well, otherwise remove the `precedence` prop.\\',Xo===null?\"`null`\":Xo===void 0?\"`undefined`\":Xo===\"\"?\"an empty string\":\\'something with type \"\\'+typeof Xo+\\'\"\\')),ht(w,M);var Ql=null}else if(M.rel===\"stylesheet\")if(typeof hr!=\"string\"||M.disabled!=null||M.onLoad||M.onError){if(typeof hr==\"string\"){if(M.disabled!=null)console.error(\\'React encountered a `<link rel=\"stylesheet\" .../>` with a `precedence` prop and a `disabled` prop. The presence of the `disabled` prop indicates an intent to manage the stylesheet active state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the `disabled` prop, otherwise remove the `precedence` prop.\\');else if(M.onLoad||M.onError){var Ro=M.onLoad&&M.onError?\"`onLoad` and `onError` props\":M.onLoad?\"`onLoad` prop\":\"`onError` prop\";console.error(\\'React encountered a `<link rel=\"stylesheet\" .../>` with a `precedence` prop and %s. The presence of loading and error handlers indicates an intent to manage the stylesheet loading state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the %s, otherwise remove the `precedence` prop.\\',Ro,Ro)}}Ql=ht(w,M)}else{var ch=re.styles.get(hr),ed=Y.styleResources.hasOwnProperty(Xo)?Y.styleResources[Xo]:void 0;if(ed!==ns){Y.styleResources[Xo]=ns,ch||(ch={precedence:b(F(hr)),rules:[],hrefs:[],sheets:new Map},re.styles.set(hr,ch));var Qd={state:Zu,props:uo({},M,{\"data-precedence\":M.precedence,precedence:null})};if(ed){ed.length===2&&en(Qd.props,ed);var Jd=re.preloads.stylesheets.get(Xo);Jd&&0<Jd.length?Jd.length=0:Qd.state=Wi}ch.sheets.set(Xo,Qd),Ee&&Ee.stylesheets.add(Qd)}else if(ch){var Oa=ch.sheets.get(Xo);Oa&&Ee&&Ee.stylesheets.add(Oa)}Le&&w.push(Gu),Ql=null}else M.onLoad||M.onError?Ql=ht(w,M):(Le&&w.push(Gu),Ql=Ie?null:ht(re.hoistableChunks,M));return Ql;case\"script\":var Xd=M.async;if(typeof M.src!=\"string\"||!M.src||!Xd||typeof Xd==\"function\"||typeof Xd==\"symbol\"||M.onLoad||M.onError||Ae.insertionMode===ol||Ae.tagScope&1||M.itemProp!=null)var Jl=rn(w,M);else{var Xl=M.src;if(M.type===\"module\")var cc=Y.moduleScriptResources,eu=re.preloads.moduleScripts;else cc=Y.scriptResources,eu=re.preloads.scripts;var Gi=cc.hasOwnProperty(Xl)?cc[Xl]:void 0;if(Gi!==ns){cc[Xl]=ns;var ei=M;if(Gi){Gi.length===2&&(ei=uo({},M),en(ei,Gi));var cy=eu.get(Xl);cy&&(cy.length=0)}var ef=[];re.scripts.add(ef),rn(ef,ei)}Le&&w.push(Gu),Jl=null}return Jl;case\"style\":var w0=Ae.insertionMode,tf=!!(Ae.tagScope&1);if(Ar.call(M,\"children\")){var nf=M.children,ly=Array.isArray(nf)?2>nf.length?nf[0]:null:nf;(typeof ly==\"function\"||typeof ly==\"symbol\"||Array.isArray(ly))&&console.error(\"React expect children of <style> tags to be a string, number, or object with a `toString` method but found %s instead. In browsers style Elements can only have `Text` Nodes as children.\",typeof ly==\"function\"?\"a Function\":typeof ly==\"symbol\"?\"a Sybmol\":\"an Array\")}var rf=M.precedence,hl=M.href;if(w0===ol||tf||M.itemProp!=null||typeof rf!=\"string\"||typeof hl!=\"string\"||hl===\"\"){w.push(Mt(\"style\"));var yp=null,of=null,x0;for(x0 in M)if(Ar.call(M,x0)){var Rb=M[x0];if(Rb!=null)switch(x0){case\"children\":yp=Rb;break;case\"dangerouslySetInnerHTML\":of=Rb;break;default:_e(w,x0,Rb)}}w.push(mi);var bp=Array.isArray(yp)?2>yp.length?yp[0]:null:yp;typeof bp!=\"function\"&&typeof bp!=\"symbol\"&&bp!==null&&bp!==void 0&&w.push(b(Ct(bp))),Me(w,of,yp),w.push(Wt(\"style\"));var UE=null}else{hl.includes(\" \")&&console.error(\\'React expected the `href` prop for a <style> tag opting into hoisting semantics using the `precedence` prop to not have any spaces but ecountered spaces instead. using spaces in this prop will cause hydration of this style to fail on the client. The href for the <style> where this ocurred is \"%s\".\\',hl);var lh=re.styles.get(rf),jE=Y.styleResources.hasOwnProperty(hl)?Y.styleResources[hl]:void 0;if(jE!==ns){Y.styleResources[hl]=ns,jE&&console.error(\\'React encountered a hoistable style tag for the same href as a preload: \"%s\". When using a style tag to inline styles you should not also preload it as a stylsheet.\\',hl),lh?lh.hrefs.push(b(F(hl))):(lh={precedence:b(F(rf)),rules:[],hrefs:[b(F(hl))],sheets:new Map},re.styles.set(rf,lh));var E0=lh.rules,Ls=null,zE=null,r_;for(r_ in M)if(Ar.call(M,r_)){var HE=M[r_];if(HE!=null)switch(r_){case\"children\":Ls=HE;break;case\"dangerouslySetInnerHTML\":zE=HE}}var qE=Array.isArray(Ls)?2>Ls.length?Ls[0]:null:Ls;typeof qE!=\"function\"&&typeof qE!=\"symbol\"&&qE!==null&&qE!==void 0&&E0.push(b(Ct(qE))),Me(E0,zE,Ls)}lh&&Ee&&Ee.styles.add(lh),Le&&w.push(Gu),UE=void 0}return UE;case\"meta\":if(Ae.insertionMode===ol||Ae.tagScope&1||M.itemProp!=null)var td=dt(w,M,\"meta\");else Le&&w.push(Gu),td=Ie?null:typeof M.charSet==\"string\"?dt(re.charsetChunks,M,\"meta\"):M.name===\"viewport\"?dt(re.viewportChunks,M,\"meta\"):dt(re.hoistableChunks,M,\"meta\");return td;case\"listing\":case\"pre\":w.push(Mt(S));var sw=null,aw=null,cw;for(cw in M)if(Ar.call(M,cw)){var WE=M[cw];if(WE!=null)switch(cw){case\"children\":sw=WE;break;case\"dangerouslySetInnerHTML\":aw=WE;break;default:_e(w,cw,WE)}}if(w.push(mi),aw!=null){if(sw!=null)throw Error(\"Can only set one of `children` or `props.dangerouslySetInnerHTML`.\");if(typeof aw!=\"object\"||!(\"__html\"in aw))throw Error(\"`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.\");var uy=aw.__html;uy!=null&&(typeof uy==\"string\"&&0<uy.length&&uy[0]===`\\n`?w.push(z2,b(uy)):(W(uy),w.push(b(\"\"+uy))))}return typeof sw==\"string\"&&sw[0]===`\\n`&&w.push(z2),sw;case\"img\":var Rc=M.src,Pa=M.srcSet;if(!(M.loading===\"lazy\"||!Rc&&!Pa||typeof Rc!=\"string\"&&Rc!=null||typeof Pa!=\"string\"&&Pa!=null)&&M.fetchPriority!==\"low\"&&!(Ae.tagScope&3)&&(typeof Rc!=\"string\"||Rc[4]!==\":\"||Rc[0]!==\"d\"&&Rc[0]!==\"D\"||Rc[1]!==\"a\"&&Rc[1]!==\"A\"||Rc[2]!==\"t\"&&Rc[2]!==\"T\"||Rc[3]!==\"a\"&&Rc[3]!==\"A\")&&(typeof Pa!=\"string\"||Pa[4]!==\":\"||Pa[0]!==\"d\"&&Pa[0]!==\"D\"||Pa[1]!==\"a\"&&Pa[1]!==\"A\"||Pa[2]!==\"t\"&&Pa[2]!==\"T\"||Pa[3]!==\"a\"&&Pa[3]!==\"A\")){var VM=typeof M.sizes==\"string\"?M.sizes:void 0,vp=Pa?Pa+`\\n`+(VM||\"\"):Rc,lw=re.preloads.images,dy=lw.get(vp);if(dy)(M.fetchPriority===\"high\"||10>re.highImagePreloads.size)&&(lw.delete(vp),re.highImagePreloads.add(dy));else if(!Y.imageResources.hasOwnProperty(vp)){Y.imageResources[vp]=xc;var o_=M.crossOrigin,VE=typeof o_==\"string\"?o_===\"use-credentials\"?o_:\"\":void 0,sf=re.headers,Ib;sf&&0<sf.remainingCapacity&&typeof M.srcSet!=\"string\"&&(M.fetchPriority===\"high\"||500>sf.highImagePreloads.length)&&(Ib=ni(Rc,\"image\",{imageSrcSet:M.srcSet,imageSizes:M.sizes,crossOrigin:VE,integrity:M.integrity,nonce:M.nonce,type:M.type,fetchPriority:M.fetchPriority,referrerPolicy:M.refererPolicy}),0<=(sf.remainingCapacity-=Ib.length+2))?(re.resets.image[vp]=xc,sf.highImagePreloads&&(sf.highImagePreloads+=\", \"),sf.highImagePreloads+=Ib):(dy=[],ht(dy,{rel:\"preload\",as:\"image\",href:Pa?void 0:Rc,imageSrcSet:Pa,imageSizes:VM,crossOrigin:VE,integrity:M.integrity,type:M.type,fetchPriority:M.fetchPriority,referrerPolicy:M.referrerPolicy}),M.fetchPriority===\"high\"||10>re.highImagePreloads.size?re.highImagePreloads.add(dy):(re.bulkPreloads.add(dy),lw.set(vp,dy)))}}return dt(w,M,\"img\");case\"base\":case\"area\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"keygen\":case\"param\":case\"source\":case\"track\":case\"wbr\":return dt(w,M,S);case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":break;case\"head\":if(Ae.insertionMode<tc){var i_=ue||re.preamble;if(i_.headChunks)throw Error(\"The `<head>` tag may only be rendered once.\");i_.headChunks=[];var $M=zt(i_.headChunks,M,\"head\")}else $M=Bt(w,M,\"head\");return $M;case\"body\":if(Ae.insertionMode<tc){var fy=ue||re.preamble;if(fy.bodyChunks)throw Error(\"The `<body>` tag may only be rendered once.\");fy.bodyChunks=[];var uw=zt(fy.bodyChunks,M,\"body\")}else uw=Bt(w,M,\"body\");return uw;case\"html\":if(Ae.insertionMode===e0){var s_=ue||re.preamble;if(s_.htmlChunks)throw Error(\"The `<html>` tag may only be rendered once.\");s_.htmlChunks=[t7];var $E=zt(s_.htmlChunks,M,\"html\")}else $E=Bt(w,M,\"html\");return $E;default:if(S.indexOf(\"-\")!==-1){w.push(Mt(S));var KE=null,a_=null,Ob;for(Ob in M)if(Ar.call(M,Ob)){var af=M[Ob];if(af!=null){var KM=Ob;switch(Ob){case\"children\":KE=af;break;case\"dangerouslySetInnerHTML\":a_=af;break;case\"style\":U(w,af);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"ref\":break;case\"className\":KM=\"class\";default:if(J(Ob)&&typeof af!=\"function\"&&typeof af!=\"symbol\"&&af!==!1){if(af===!0)af=\"\";else if(typeof af==\"object\")continue;w.push(ra,b(KM),Ec,b(F(af)),nc)}}}}return w.push(mi),Me(w,a_,KE),KE}}return Bt(w,M,S)}function Wt(w){var S=wE.get(w);return S===void 0&&(S=E(\"</\"+w+\">\"),wE.set(w,S)),S}function zn(w,S){w=w.preamble,w.htmlChunks===null&&S.htmlChunks&&(w.htmlChunks=S.htmlChunks,S.contribution|=1),w.headChunks===null&&S.headChunks&&(w.headChunks=S.headChunks,S.contribution|=4),w.bodyChunks===null&&S.bodyChunks&&(w.bodyChunks=S.bodyChunks,S.contribution|=2)}function Mn(w,S){S=S.bootstrapChunks;for(var M=0;M<S.length-1;M++)h(w,S[M]);return M<S.length?(M=S[M],S.length=0,m(w,M)):!0}function br(w,S,M){if(h(w,Wk),M===null)throw Error(\"An ID must have been assigned before we can complete the boundary.\");return h(w,S.boundaryPrefix),h(w,b(M.toString(16))),m(w,Vk)}function Zs(w,S){S=S.contribution,S!==N2&&(h(w,Sc),h(w,b(\"\"+S)),h(w,V2))}function Pr(w,S,M,Y){switch(M.insertionMode){case e0:case t0:case eh:case tc:return h(w,SE),h(w,S.segmentPrefix),h(w,b(Y.toString(16))),m(w,Kk);case ol:return h(w,$2),h(w,S.segmentPrefix),h(w,b(Y.toString(16))),m(w,_E);case In:return h(w,Zg),h(w,S.segmentPrefix),h(w,b(Y.toString(16))),m(w,G2);case gt:return h(w,Gk),h(w,S.segmentPrefix),h(w,b(Y.toString(16))),m(w,Zk);case up:return h(w,Yk),h(w,S.segmentPrefix),h(w,b(Y.toString(16))),m(w,Qk);case Vg:return h(w,Z2),h(w,S.segmentPrefix),h(w,b(Y.toString(16))),m(w,th);case Yo:return h(w,Jk),h(w,S.segmentPrefix),h(w,b(Y.toString(16))),m(w,RE);default:throw Error(\"Unknown insertion mode. This is a bug in React.\")}}function vr(w,S){switch(S.insertionMode){case e0:case t0:case eh:case tc:return m(w,kE);case ol:return m(w,K2);case In:return m(w,CE);case gt:return m(w,AE);case up:return m(w,Yg);case Vg:return m(w,TE);case Yo:return m(w,s0);default:throw Error(\"Unknown insertion mode. This is a bug in React.\")}}function hi(w){return JSON.stringify(w).replace(nh,function(S){switch(S){case\"<\":return\"\\\\\\\\u003c\";case\"\\\\u2028\":return\"\\\\\\\\u2028\";case\"\\\\u2029\":return\"\\\\\\\\u2029\";default:throw Error(\"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}})}function er(w){return JSON.stringify(w).replace(NE,function(S){switch(S){case\"&\":return\"\\\\\\\\u0026\";case\">\":return\"\\\\\\\\u003e\";case\"<\":return\"\\\\\\\\u003c\";case\"\\\\u2028\":return\"\\\\\\\\u2028\";case\"\\\\u2029\":return\"\\\\\\\\u2029\";default:throw Error(\"escapeJSObjectForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}})}function wr(w){var S=w.rules,M=w.hrefs;0<S.length&&M.length===0&&console.error(\"React expected to have at least one href for an a hoistable style but found none. This is a bug in React.\");var Y=0;if(M.length){for(h(this,rh),h(this,w.precedence),h(this,$d);Y<M.length-1;Y++)h(this,M[Y]),h(this,BE);for(h(this,M[Y]),h(this,bb),Y=0;Y<S.length;Y++)h(this,S[Y]);vb=m(this,ew),l0=!0,S.length=0,M.length=0}}function Ri(w){return w.state!==Jg?l0=!0:!1}function le(w,S,M){return l0=!1,vb=!0,S.styles.forEach(wr,w),S.stylesheets.forEach(Ri),l0&&(M.stylesToHoist=!0),vb}function Te(w){for(var S=0;S<w.length;S++)h(this,w[S]);w.length=0}function xt(w){ht(Kd,w.props);for(var S=0;S<Kd.length;S++)h(this,Kd[S]);Kd.length=0,w.state=Jg}function tt(w){var S=0<w.sheets.size;w.sheets.forEach(xt,this),w.sheets.clear();var M=w.rules,Y=w.hrefs;if(!S||Y.length){if(h(this,fp),h(this,w.precedence),w=0,Y.length){for(h(this,LE);w<Y.length-1;w++)h(this,Y[w]),h(this,BE);h(this,Y[w])}for(h(this,wb),w=0;w<M.length;w++)h(this,M[w]);h(this,tw),M.length=0,Y.length=0}}function It(w){if(w.state===Zu){w.state=Wi;var S=w.props;for(ht(Kd,{rel:\"preload\",as:\"style\",href:w.props.href,crossOrigin:S.crossOrigin,fetchPriority:S.fetchPriority,integrity:S.integrity,media:S.media,hrefLang:S.hrefLang,referrerPolicy:S.referrerPolicy}),w=0;w<Kd.length;w++)h(this,Kd[w]);Kd.length=0}}function hn(w){w.sheets.forEach(It,this),w.sheets.clear()}function Dt(w,S){h(w,DE);var M=DE;S.stylesheets.forEach(function(Y){if(Y.state!==Jg)if(Y.state===Eb)h(w,M),Y=Y.props.href,D(Y,\"href\"),h(w,b(er(\"\"+Y))),h(w,xb),M=Gd;else{h(w,M);var re=Y.props[\"data-precedence\"],ue=Y.props,Ee=_(\"\"+Y.props.href);h(w,b(er(Ee))),D(re,\"precedence\"),re=\"\"+re,h(w,hp),h(w,b(er(re)));for(var Ae in ue)if(Ar.call(ue,Ae)&&(re=ue[Ae],re!=null))switch(Ae){case\"href\":case\"rel\":case\"precedence\":case\"data-precedence\":break;case\"children\":case\"dangerouslySetInnerHTML\":throw Error(\"link is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\");default:sn(w,Ae,re)}h(w,xb),M=Gd,Y.state=Eb}}),h(w,xb)}function sn(w,S,M){var Y=S.toLowerCase();switch(typeof M){case\"function\":case\"symbol\":return}switch(S){case\"innerHTML\":case\"dangerouslySetInnerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":case\"style\":case\"ref\":return;case\"className\":Y=\"class\",D(M,Y),S=\"\"+M;break;case\"hidden\":if(M===!1)return;S=\"\";break;case\"src\":case\"href\":M=_(M),D(M,Y),S=\"\"+M;break;default:if(2<S.length&&(S[0]===\"o\"||S[0]===\"O\")&&(S[1]===\"n\"||S[1]===\"N\")||!J(S))return;D(M,Y),S=\"\"+M}h(w,hp),h(w,b(er(Y))),h(w,hp),h(w,b(er(S)))}function bn(){return{styles:new Set,stylesheets:new Set}}function Fn(w,S,M,Y){(w.scriptResources.hasOwnProperty(M)||w.moduleScriptResources.hasOwnProperty(M))&&console.error(\\'Internal React Error: React expected bootstrap script or module with src \"%s\" to not have been preloaded already. please file an issue\\',M),w.scriptResources[M]=ns,w.moduleScriptResources[M]=ns,w=[],ht(w,Y),S.bootstrapScripts.add(w)}function en(w,S){w.crossOrigin==null&&(w.crossOrigin=S[0]),w.integrity==null&&(w.integrity=S[1])}function ni(w,S,M){w=jr(w),S=zu(S,\"as\"),S=\"<\"+w+\\'>; rel=preload; as=\"\\'+S+\\'\"\\';for(var Y in M)Ar.call(M,Y)&&(w=M[Y],typeof w==\"string\"&&(S+=\"; \"+Y.toLowerCase()+\\'=\"\\'+zu(w,Y)+\\'\"\\'));return S}function jr(w){return D(w,\"href\"),(\"\"+w).replace(Sb,Eo)}function Eo(w){switch(w){case\"<\":return\"%3C\";case\">\":return\"%3E\";case`\\n`:return\"%0A\";case\"\\\\r\":return\"%0D\";default:throw Error(\"escapeLinkHrefForHeaderContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}function zu(w,S){return R(w)&&(console.error(\"The provided `%s` option is an unsupported type %s. This value must be coerced to a string before using it here.\",S,T(w)),L(w)),(\"\"+w).replace(_o,tr)}function tr(w){switch(w){case\\'\"\\':return\"%22\";case\"\\'\":return\"%27\";case\";\":return\"%3B\";case\",\":return\"%2C\";case`\\n`:return\"%0A\";case\"\\\\r\":return\"%0D\";default:throw Error(\"escapeStringForLinkHeaderQuotedParamValueContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}function dr(w){this.styles.add(w)}function Bl(w){this.stylesheets.add(w)}function vn(w){if(w==null)return null;if(typeof w==\"function\")return w.$$typeof===u0?null:w.displayName||w.name||null;if(typeof w==\"string\")return w;switch(w){case Vu:return\"Fragment\";case Js:return\"Profiler\";case $u:return\"StrictMode\";case Rs:return\"Suspense\";case Ug:return\"SuspenseList\";case ob:return\"Activity\"}if(typeof w==\"object\")switch(typeof w.tag==\"number\"&&console.error(\"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"),w.$$typeof){case op:return\"Portal\";case ip:return(w.displayName||\"Context\")+\".Provider\";case Km:return(w._context.displayName||\"Context\")+\".Consumer\";case Fg:var S=w.render;return w=w.displayName,w||(w=S.displayName||S.name||\"\",w=w!==\"\"?\"ForwardRef(\"+w+\")\":\"ForwardRef\"),w;case el:return S=w.displayName||null,S!==null?S:vn(w.type)||\"Memo\";case tl:S=w._payload,w=w._init;try{return vn(w(S))}catch{}}return null}function zr(w,S){if(w!==S){w.context._currentValue=w.parentValue,w=w.parent;var M=S.parent;if(w===null){if(M!==null)throw Error(\"The stacks must reach the root at the same time. This is a bug in React.\")}else{if(M===null)throw Error(\"The stacks must reach the root at the same time. This is a bug in React.\");zr(w,M)}S.context._currentValue=S.value}}function Dd(w){w.context._currentValue=w.parentValue,w=w.parent,w!==null&&Dd(w)}function Mr(w){var S=w.parent;S!==null&&Mr(S),w.context._currentValue=w.value}function So(w,S){if(w.context._currentValue=w.parentValue,w=w.parent,w===null)throw Error(\"The depth must equal at least at zero before reaching the root. This is a bug in React.\");w.depth===S.depth?zr(w,S):So(w,S)}function jt(w,S){var M=S.parent;if(M===null)throw Error(\"The depth must equal at least at zero before reaching the root. This is a bug in React.\");w.depth===M.depth?zr(w,M):jt(w,M),S.context._currentValue=S.value}function xr(w){var S=ql;S!==w&&(S===null?Mr(w):w===null?Dd(S):S.depth===w.depth?zr(S,w):S.depth>w.depth?So(S,w):jt(S,w),ql=w)}function En(w){if(w!==null&&typeof w!=\"function\"){var S=String(w);mp.has(S)||(mp.add(S),console.error(\"Expected the last optional `callback` argument to be a function. Instead received: %s.\",w))}}function Hu(w,S){w=(w=w.constructor)&&vn(w)||\"ReactClass\";var M=w+\".\"+S;ey[M]||(console.error(`Can only update a mounting component. This usually means you called %s() outside componentWillMount() on the server. This is a no-op.\\n\\nPlease check the code for the %s component.`,S,w),ey[M]=!0)}function Zr(w,S,M){var Y=w.id;w=w.overflow;var re=32-h0(Y)-1;Y&=~(1<<re),M+=1;var ue=32-h0(S)+re;if(30<ue){var Ee=re-re%5;return ue=(Y&(1<<Ee)-1).toString(32),Y>>=Ee,re-=Ee,{id:1<<32-h0(S)+re|M<<re|Y,overflow:ue+w}}return{id:1<<ue|M<<re|Y,overflow:w}}function Cr(w){return w>>>=0,w===0?32:31-(t_(w)/rw|0)|0}function Ys(){}function Zc(w,S,M){switch(M=w[M],M===void 0?w.push(S):M!==S&&(S.then(Ys,Ys),S=M),S.status){case\"fulfilled\":return S.value;case\"rejected\":throw S.reason;default:switch(typeof S.status==\"string\"?S.then(Ys,Ys):(w=S,w.status=\"pending\",w.then(function(Y){if(S.status===\"pending\"){var re=S;re.status=\"fulfilled\",re.value=Y}},function(Y){if(S.status===\"pending\"){var re=S;re.status=\"rejected\",re.reason=Y}})),S.status){case\"fulfilled\":return S.value;case\"rejected\":throw S.reason}throw ny=S,Ca}}function Zo(){if(ny===null)throw Error(\"Expected a suspended thenable. This is a bug in React. Please file an issue.\");var w=ny;return ny=null,w}function qu(w,S){return w===S&&(w!==0||1/w===1/S)||w!==w&&S!==S}function ts(){if(kc===null)throw Error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`);return Qo&&console.error(\"Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks\"),kc}function Wu(){if(0<Vl)throw Error(\"Rendered more hooks than during the previous render\");return{memoizedState:null,queue:null,next:null}}function Yc(){return fr===null?_b===null?(oy=!1,_b=fr=Wu()):(oy=!0,fr=_b):fr.next===null?(oy=!1,fr=fr.next=Wu()):(oy=!0,fr=fr.next),fr}function Ya(){var w=g0;return g0=null,w}function Qa(){Qo=!1,ow=kb=fo=kc=null,p0=!1,_b=null,Vl=0,fr=rs=null}function ya(w){return Qo&&console.error(\"Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().\"),w._currentValue}function Dl(w,S){return typeof S==\"function\"?S(w):S}function Ja(w,S,M){if(w!==Dl&&(sy=\"useReducer\"),kc=ts(),fr=Yc(),oy){if(M=fr.queue,S=M.dispatch,rs!==null){var Y=rs.get(M);if(Y!==void 0){rs.delete(M),M=fr.memoizedState;do{var re=Y.action;Qo=!0,M=w(M,re),Qo=!1,Y=Y.next}while(Y!==null);return fr.memoizedState=M,[M,S]}}return[fr.memoizedState,S]}return Qo=!0,w=w===Dl?typeof S==\"function\"?S():S:M!==void 0?M(S):S,Qo=!1,fr.memoizedState=w,w=fr.queue={last:null,dispatch:null},w=w.dispatch=Fd.bind(null,kc,w),[fr.memoizedState,w]}function Fl(w,S){if(kc=ts(),fr=Yc(),S=S===void 0?null:S,fr!==null){var M=fr.memoizedState;if(M!==null&&S!==null){e:{var Y=M[1];if(Y===null)console.error(\"%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.\",sy),Y=!1;else{S.length!==Y.length&&console.error(`The final argument passed to %s changed size between renders. The order and size of this array must remain constant.\\n\\nPrevious: %s\\nIncoming: %s`,sy,\"[\"+S.join(\", \")+\"]\",\"[\"+Y.join(\", \")+\"]\");for(var re=0;re<Y.length&&re<S.length;re++)if(!ry(S[re],Y[re])){Y=!1;break e}Y=!0}}if(Y)return M[0]}}return Qo=!0,w=w(),Qo=!1,fr.memoizedState=[w,S],w}function Fd(w,S,M){if(25<=Vl)throw Error(\"Too many re-renders. React limits the number of renders to prevent an infinite loop.\");if(w===kc)if(p0=!0,w={action:M,next:null},rs===null&&(rs=new Map),M=rs.get(S),M===void 0)rs.set(S,w);else{for(S=M;S.next!==null;)S=S.next;S.next=w}}function Cg(){throw Error(\"startTransition cannot be called during server rendering.\")}function ri(){throw Error(\"Cannot update optimistic state while rendering.\")}function bc(w,S,M){ts();var Y=Qu++,re=kb;if(typeof w.$$FORM_ACTION==\"function\"){var ue=null,Ee=ow;re=re.formState;var Ae=w.$$IS_SIGNATURE_EQUAL;if(re!==null&&typeof Ae==\"function\"){var Le=re[1];Ae.call(w,re[2],re[3])&&(ue=M!==void 0?\"p\"+M:\"k\"+c(JSON.stringify([Ee,null,Y]),0),Le===ue&&(iy=Y,S=re[0]))}var Ie=w.bind(null,S);return w=function(ut){Ie(ut)},typeof Ie.$$FORM_ACTION==\"function\"&&(w.$$FORM_ACTION=function(ut){ut=Ie.$$FORM_ACTION(ut),M!==void 0&&(D(M,\"target\"),M+=\"\",ut.action=M);var _t=ut.data;return _t&&(ue===null&&(ue=M!==void 0?\"p\"+M:\"k\"+c(JSON.stringify([Ee,null,Y]),0)),_t.append(\"$ACTION_KEY\",ue)),ut}),[S,w,!1]}var pt=w.bind(null,S);return[S,function(ut){pt(ut)},!1]}function Qc(w){var S=m0;return m0+=1,g0===null&&(g0=[]),Zc(g0,w,S)}function Vh(){throw Error(\"Cache cannot be refreshed during server rendering.\")}function Wf(){}function Ud(){}function nE(){if(y0===0){Cb=console.log,iw=console.info,Ab=console.warn,Tb=console.error,ay=console.group,x=console.groupCollapsed,k=console.groupEnd;var w={configurable:!0,enumerable:!0,value:Ud,writable:!0};Object.defineProperties(console,{info:w,log:w,warn:w,error:w,group:w,groupCollapsed:w,groupEnd:w})}y0++}function X1(){if(y0--,y0===0){var w={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:uo({},w,{value:Cb}),info:uo({},w,{value:iw}),warn:uo({},w,{value:Ab}),error:uo({},w,{value:Tb}),group:uo({},w,{value:ay}),groupCollapsed:uo({},w,{value:x}),groupEnd:uo({},w,{value:k})})}0>y0&&console.error(\"disabledDepth fell below zero. This is a bug in React. Please file an issue.\")}function vc(w){if(P===void 0)try{throw Error()}catch(M){var S=M.stack.trim().match(/\\\\n( *(at )?)/);P=S&&S[1]||\"\",Q=-1<M.stack.indexOf(`\\n    at`)?\" (<anonymous>)\":-1<M.stack.indexOf(\"@\")?\"@unknown:0:0\":\"\"}return`\\n`+P+w+Q}function jd(w,S){if(!w||oe)return\"\";var M=de.get(w);if(M!==void 0)return M;oe=!0,M=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var Y=null;Y=Lo.H,Lo.H=null,nE();try{var re={DetermineComponentFrameRoot:function(){try{if(S){var _t=function(){throw Error()};if(Object.defineProperty(_t.prototype,\"props\",{set:function(){throw Error()}}),typeof Reflect==\"object\"&&Reflect.construct){try{Reflect.construct(_t,[])}catch(rt){var bt=rt}Reflect.construct(w,[],_t)}else{try{_t.call()}catch(rt){bt=rt}w.call(_t.prototype)}}else{try{throw Error()}catch(rt){bt=rt}(_t=w())&&typeof _t.catch==\"function\"&&_t.catch(function(){})}}catch(rt){if(rt&&bt&&typeof rt.stack==\"string\")return[rt.stack,bt.stack]}return[null,null]}};re.DetermineComponentFrameRoot.displayName=\"DetermineComponentFrameRoot\";var ue=Object.getOwnPropertyDescriptor(re.DetermineComponentFrameRoot,\"name\");ue&&ue.configurable&&Object.defineProperty(re.DetermineComponentFrameRoot,\"name\",{value:\"DetermineComponentFrameRoot\"});var Ee=re.DetermineComponentFrameRoot(),Ae=Ee[0],Le=Ee[1];if(Ae&&Le){var Ie=Ae.split(`\\n`),pt=Le.split(`\\n`);for(Ee=ue=0;ue<Ie.length&&!Ie[ue].includes(\"DetermineComponentFrameRoot\");)ue++;for(;Ee<pt.length&&!pt[Ee].includes(\"DetermineComponentFrameRoot\");)Ee++;if(ue===Ie.length||Ee===pt.length)for(ue=Ie.length-1,Ee=pt.length-1;1<=ue&&0<=Ee&&Ie[ue]!==pt[Ee];)Ee--;for(;1<=ue&&0<=Ee;ue--,Ee--)if(Ie[ue]!==pt[Ee]){if(ue!==1||Ee!==1)do if(ue--,Ee--,0>Ee||Ie[ue]!==pt[Ee]){var ut=`\\n`+Ie[ue].replace(\" at new \",\" at \");return w.displayName&&ut.includes(\"<anonymous>\")&&(ut=ut.replace(\"<anonymous>\",w.displayName)),typeof w==\"function\"&&de.set(w,ut),ut}while(1<=ue&&0<=Ee);break}}}finally{oe=!1,Lo.H=Y,X1(),Error.prepareStackTrace=M}return Ie=(Ie=w?w.displayName||w.name:\"\")?vc(Ie):\"\",typeof w==\"function\"&&de.set(w,Ie),Ie}function Ag(w){var S=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,w=w.stack,Error.prepareStackTrace=S,w.startsWith(`Error: react-stack-top-frame\\n`)&&(w=w.slice(29)),S=w.indexOf(`\\n`),S!==-1&&(w=w.slice(S+1)),S=w.indexOf(\"react-stack-bottom-frame\"),S!==-1&&(S=w.lastIndexOf(`\\n`,S)),S!==-1)w=w.slice(0,S);else return\"\";return w}function C2(w){if(typeof w==\"string\")return vc(w);if(typeof w==\"function\")return w.prototype&&w.prototype.isReactComponent?jd(w,!0):jd(w,!1);if(typeof w==\"object\"&&w!==null){switch(w.$$typeof){case Fg:return jd(w.render,!1);case el:return jd(w.type,!1);case tl:var S=w,M=S._payload;S=S._init;try{w=S(M)}catch{return vc(\"Lazy\")}return C2(w)}if(typeof w.name==\"string\")return M=w.env,vc(w.name+(M?\" [\"+M+\"]\":\"\"))}switch(w){case Ug:return vc(\"SuspenseList\");case Rs:return vc(\"Suspense\")}return\"\"}function Um(w){if(typeof w==\"object\"&&w!==null&&typeof w.environmentName==\"string\"){var S=w.environmentName;w=[w].slice(0),typeof w[0]==\"string\"?w.splice(0,1,\"%c%s%c \"+w[0],\"background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px\",\" \"+S+\" \",\"\"):w.splice(0,0,\"%c%s%c \",\"background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px\",\" \"+S+\" \",\"\"),w.unshift(console),S=Xg.apply(console.error,w),S()}else console.error(w);return null}function $h(){}function Tg(w,S,M,Y,re,ue,Ee,Ae,Le,Ie,pt){var ut=new Set;this.destination=null,this.flushScheduled=!1,this.resumableState=w,this.renderState=S,this.rootFormatContext=M,this.progressiveChunkSize=Y===void 0?12800:Y,this.status=10,this.fatalError=null,this.pendingRootTasks=this.allPendingTasks=this.nextSegmentId=0,this.completedPreambleSegments=this.completedRootSegment=null,this.abortableTasks=ut,this.pingedTasks=[],this.clientRenderedBoundaries=[],this.completedBoundaries=[],this.partialBoundaries=[],this.trackedPostpones=null,this.onError=re===void 0?Um:re,this.onPostpone=Ie===void 0?$h:Ie,this.onAllReady=ue===void 0?$h:ue,this.onShellReady=Ee===void 0?$h:Ee,this.onShellError=Ae===void 0?$h:Ae,this.onFatalError=Le===void 0?$h:Le,this.formState=pt===void 0?null:pt,this.didWarnForKey=null}function Kh(w,S,M,Y,re,ue,Ee,Ae,Le,Ie,pt,ut){var _t=lt();return 1e3<_t-Rt&&(Lo.recentlyCreatedOwnerStacks=0,Rt=_t),S=new Tg(S,M,Y,re,ue,Ee,Ae,Le,Ie,pt,ut),M=Hd(S,0,null,Y,!1,!1),M.parentFlushed=!0,w=zd(S,null,w,-1,null,M,null,null,S.abortableTasks,null,Y,null,Zd,null,!1,_a,null),Yh(w),S.pingedTasks.push(w),S}function Gh(w,S,M,Y,re,ue,Ee,Ae,Le,Ie,pt){return w=Kh(w,S,M,Y,re,ue,Ee,Ae,Le,Ie,pt,void 0),w.trackedPostpones={workingMap:new Map,rootNodes:[],rootSlots:null},w}function Zh(w,S){w.pingedTasks.push(S),w.pingedTasks.length===1&&(w.flushScheduled=w.destination!==null,w.trackedPostpones!==null||w.status===10?sp(function(){return Ng(w)}):u(function(){return Ng(w)}))}function Qs(w,S,M,Y){return{status:mn,rootSegmentID:-1,parentFlushed:!1,pendingTasks:0,completedSegments:[],byteSize:0,fallbackAbortableTasks:S,errorDigest:null,contentState:bn(),fallbackState:bn(),contentPreamble:M,fallbackPreamble:Y,trackedContentKeyPath:null,trackedFallbackNode:null,errorMessage:null,errorStack:null,errorComponentStack:null}}function zd(w,S,M,Y,re,ue,Ee,Ae,Le,Ie,pt,ut,_t,bt,rt,kn,Tr){w.allPendingTasks++,re===null?w.pendingRootTasks++:re.pendingTasks++;var _n={replay:null,node:M,childIndex:Y,ping:function(){return Zh(w,_n)},blockedBoundary:re,blockedSegment:ue,blockedPreamble:Ee,hoistableState:Ae,abortSet:Le,keyPath:Ie,formatContext:pt,context:ut,treeContext:_t,componentStack:bt,thenableState:S,isFallback:rt};return _n.debugTask=Tr,Le.add(_n),_n}function eb(w,S,M,Y,re,ue,Ee,Ae,Le,Ie,pt,ut,_t,bt,rt,kn){w.allPendingTasks++,ue===null?w.pendingRootTasks++:ue.pendingTasks++,M.pendingTasks++;var Tr={replay:M,node:Y,childIndex:re,ping:function(){return Zh(w,Tr)},blockedBoundary:ue,blockedSegment:null,blockedPreamble:null,hoistableState:Ee,abortSet:Ae,keyPath:Le,formatContext:Ie,context:pt,treeContext:ut,componentStack:_t,thenableState:S,isFallback:bt};return Tr.debugTask=kn,Ae.add(Tr),Tr}function Hd(w,S,M,Y,re,ue){return{status:mn,parentFlushed:!1,id:-1,index:S,chunks:[],children:[],preambleChildren:[],parentFormatContext:Y,boundary:M,lastPushedText:re,textEmbedded:ue}}function Vf(){if(ho===null||ho.componentStack===null)return\"\";var w=ho.componentStack;try{var S=\"\";if(typeof w.type==\"string\")S+=vc(w.type);else if(typeof w.type==\"function\"){if(!w.owner){var M=S,Y=w.type,re=Y?Y.displayName||Y.name:\"\",ue=re?vc(re):\"\";S=M+ue}}else w.owner||(S+=C2(w.type));for(;w;)M=null,w.debugStack!=null?M=Ag(w.debugStack):(ue=w,ue.stack!=null&&(M=typeof ue.stack!=\"string\"?ue.stack=Ag(ue.stack):ue.stack)),(w=w.owner)&&M&&(S+=`\\n`+M);var Ee=S}catch(Ae){Ee=`\\nError generating stack: `+Ae.message+`\\n`+Ae.stack}return Ee}function Rg(w,S){if(S!=null)for(var M=0;M<S.length;M++){var Y=S[M];typeof Y.name==\"string\"&&Y.debugStack!==void 0&&(w.componentStack={parent:w.componentStack,type:Y,owner:Y.owner,stack:Y.debugStack},w.debugTask=Y.debugTask)}}function Yh(w){var S=w.node;if(typeof S==\"object\"&&S!==null)switch(S.$$typeof){case Gf:var M=S.type,Y=S._owner,re=S._debugStack;Rg(w,S._debugInfo),w.debugTask=S._debugTask,w.componentStack={parent:w.componentStack,type:M,owner:Y,stack:re};break;case tl:Rg(w,S._debugInfo);break;default:typeof S.then==\"function\"&&Rg(w,S._debugInfo)}}function ms(w){var S={};return w&&Object.defineProperty(S,\"componentStack\",{configurable:!0,enumerable:!0,get:function(){try{var M=\"\",Y=w;do M+=C2(Y.type),Y=Y.parent;while(Y);var re=M}catch(ue){re=`\\nError generating stack: `+ue.message+`\\n`+ue.stack}return Object.defineProperty(S,\"componentStack\",{value:re}),re}}),S}function Ul(w,S,M,Y,re){w.errorDigest=S,M instanceof Error?(S=String(M.message),M=String(M.stack)):(S=typeof M==\"object\"&&M!==null?a(M):String(M),M=null),re=re?`Switched to client rendering because the server rendering aborted due to:\\n\\n`:`Switched to client rendering because the server rendering errored:\\n\\n`,w.errorMessage=re+S,w.errorStack=M!==null?re+M:null,w.errorComponentStack=Y.componentStack}function ba(w,S,M,Y){if(w=w.onError,S=Y?Y.run(w.bind(null,S,M)):w(S,M),S!=null&&typeof S!=\"string\")console.error(\\'onError returned something with a type other than \"string\". onError should return a string and may return null or undefined but must not return anything else. It received something of type \"%s\" instead\\',typeof S);else return S}function jm(w,S,M,Y){M=w.onShellError;var re=w.onFatalError;Y?(Y.run(M.bind(null,S)),Y.run(re.bind(null,S))):(M(S),re(S)),w.destination!==null?(w.status=Tn,C(w.destination,S)):(w.status=13,w.fatalError=S)}function rE(w,S,M,Y,re,ue){var Ee=S.thenableState;for(S.thenableState=null,kc={},fo=S,kb=w,ow=M,Qo=!1,Qu=Yd=0,iy=-1,m0=0,g0=Ee,w=Pe(Y,re,ue);p0;)p0=!1,Qu=Yd=0,iy=-1,m0=0,Vl+=1,fr=null,w=Y(re,ue);return Qa(),w}function oE(w,S,M,Y,re,ue,Ee){var Ae=!1;if(ue!==0&&w.formState!==null){var Le=S.blockedSegment;if(Le!==null){Ae=!0,Le=Le.chunks;for(var Ie=0;Ie<ue;Ie++)Ie===Ee?Le.push(gE):Le.push(yE)}}ue=S.keyPath,S.keyPath=M,re?(M=S.treeContext,S.treeContext=Zr(M,1,0),Jc(w,S,Y,-1),S.treeContext=M):Ae?Jc(w,S,Y,-1):wc(w,S,Y,-1),S.keyPath=ue}function Xa(w,S,M,Y,re,ue){if(typeof Y==\"function\")if(Y.prototype&&Y.prototype.isReactComponent){var Ee=re;if(\"ref\"in re){Ee={};for(var Ae in re)Ae!==\"ref\"&&(Ee[Ae]=re[Ae])}var Le=Y.defaultProps;if(Le){Ee===re&&(Ee=uo({},Ee,re));for(var Ie in Le)Ee[Ie]===void 0&&(Ee[Ie]=Le[Ie])}var pt=Ee,ut=_a,_t=Y.contextType;if(\"contextType\"in Y&&_t!==null&&(_t===void 0||_t.$$typeof!==ip)&&!FE.has(Y)){FE.add(Y);var bt=_t===void 0?\" However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file.\":typeof _t!=\"object\"?\" However, it is set to a \"+typeof _t+\".\":_t.$$typeof===Km?\" Did you accidentally pass the Context.Consumer instead?\":\" However, it is set to an object with keys {\"+Object.keys(_t).join(\", \")+\"}.\";console.error(\"%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s\",vn(Y)||\"Component\",bt)}typeof _t==\"object\"&&_t!==null&&(ut=_t._currentValue);var rt=new Y(pt,ut);if(typeof Y.getDerivedStateFromProps==\"function\"&&(rt.state===null||rt.state===void 0)){var kn=vn(Y)||\"Component\";Yu.has(kn)||(Yu.add(kn),console.error(\"`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.\",kn,rt.state===null?\"null\":\"undefined\",kn))}if(typeof Y.getDerivedStateFromProps==\"function\"||typeof rt.getSnapshotBeforeUpdate==\"function\"){var Tr=null,_n=null,Gt=null;if(typeof rt.componentWillMount==\"function\"&&rt.componentWillMount.__suppressDeprecationWarning!==!0?Tr=\"componentWillMount\":typeof rt.UNSAFE_componentWillMount==\"function\"&&(Tr=\"UNSAFE_componentWillMount\"),typeof rt.componentWillReceiveProps==\"function\"&&rt.componentWillReceiveProps.__suppressDeprecationWarning!==!0?_n=\"componentWillReceiveProps\":typeof rt.UNSAFE_componentWillReceiveProps==\"function\"&&(_n=\"UNSAFE_componentWillReceiveProps\"),typeof rt.componentWillUpdate==\"function\"&&rt.componentWillUpdate.__suppressDeprecationWarning!==!0?Gt=\"componentWillUpdate\":typeof rt.UNSAFE_componentWillUpdate==\"function\"&&(Gt=\"UNSAFE_componentWillUpdate\"),Tr!==null||_n!==null||Gt!==null){var Bo=vn(Y)||\"Component\",Lr=typeof Y.getDerivedStateFromProps==\"function\"?\"getDerivedStateFromProps()\":\"getSnapshotBeforeUpdate()\";Wl.has(Bo)||(Wl.add(Bo),console.error(`Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n%s uses %s but also contains the following legacy lifecycles:%s%s%s\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\nhttps://react.dev/link/unsafe-component-lifecycles`,Bo,Lr,Tr!==null?`\\n  `+Tr:\"\",_n!==null?`\\n  `+_n:\"\",Gt!==null?`\\n  `+Gt:\"\"))}}var Rn=vn(Y)||\"Component\";rt.render||(Y.prototype&&typeof Y.prototype.render==\"function\"?console.error(\"No `render` method found on the %s instance: did you accidentally return an object from the constructor?\",Rn):console.error(\"No `render` method found on the %s instance: you may have forgotten to define `render`.\",Rn)),!rt.getInitialState||rt.getInitialState.isReactClassApproved||rt.state||console.error(\"getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?\",Rn),rt.getDefaultProps&&!rt.getDefaultProps.isReactClassApproved&&console.error(\"getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.\",Rn),rt.contextType&&console.error(\"contextType was defined as an instance property on %s. Use a static property to define contextType instead.\",Rn),Y.childContextTypes&&!al.has(Y)&&(al.add(Y),console.error(\"%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)\",Rn)),Y.contextTypes&&!f0.has(Y)&&(f0.add(Y),console.error(\"%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with static contextType instead. (https://react.dev/link/legacy-context)\",Rn)),typeof rt.componentShouldUpdate==\"function\"&&console.error(\"%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.\",Rn),Y.prototype&&Y.prototype.isPureReactComponent&&typeof rt.shouldComponentUpdate<\"u\"&&console.error(\"%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.\",vn(Y)||\"A pure component\"),typeof rt.componentDidUnmount==\"function\"&&console.error(\"%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?\",Rn),typeof rt.componentDidReceiveProps==\"function\"&&console.error(\"%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().\",Rn),typeof rt.componentWillRecieveProps==\"function\"&&console.error(\"%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?\",Rn),typeof rt.UNSAFE_componentWillRecieveProps==\"function\"&&console.error(\"%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?\",Rn);var os=rt.props!==pt;rt.props!==void 0&&os&&console.error(\"When calling super() in `%s`, make sure to pass up the same props that your component\\'s constructor was passed.\",Rn),rt.defaultProps&&console.error(\"Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.\",Rn,Rn),typeof rt.getSnapshotBeforeUpdate!=\"function\"||typeof rt.componentDidUpdate==\"function\"||d0.has(Y)||(d0.add(Y),console.error(\"%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.\",vn(Y))),typeof rt.getDerivedStateFromProps==\"function\"&&console.error(\"%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.\",Rn),typeof rt.getDerivedStateFromError==\"function\"&&console.error(\"%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.\",Rn),typeof Y.getSnapshotBeforeUpdate==\"function\"&&console.error(\"%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.\",Rn);var Ps=rt.state;Ps&&(typeof Ps!=\"object\"||wa(Ps))&&console.error(\"%s.state: must be set to an object or null\",Rn),typeof rt.getChildContext==\"function\"&&typeof Y.childContextTypes!=\"object\"&&console.error(\"%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().\",Rn);var si=rt.state!==void 0?rt.state:null;rt.updater=nw,rt.props=pt,rt.state=si;var gi={queue:[],replace:!1};rt._reactInternals=gi;var po=Y.contextType;if(rt.context=typeof po==\"object\"&&po!==null?po._currentValue:_a,rt.state===pt){var Jo=vn(Y)||\"Component\";pp.has(Jo)||(pp.add(Jo),console.error(\"%s: It is not recommended to assign props directly to state because updates to props won\\'t be reflected in state. In most cases, it is better to use props directly.\",Jo))}var yi=Y.getDerivedStateFromProps;if(typeof yi==\"function\"){var Bn=yi(pt,si);if(Bn===void 0){var mo=vn(Y)||\"Component\";ty.has(mo)||(ty.add(mo),console.error(\"%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.\",mo))}var Br=Bn==null?si:uo({},si,Bn);rt.state=Br}if(typeof Y.getDerivedStateFromProps!=\"function\"&&typeof rt.getSnapshotBeforeUpdate!=\"function\"&&(typeof rt.UNSAFE_componentWillMount==\"function\"||typeof rt.componentWillMount==\"function\")){var is=rt.state;if(typeof rt.componentWillMount==\"function\"){if(rt.componentWillMount.__suppressDeprecationWarning!==!0){var ss=vn(Y)||\"Unknown\";ih[ss]||(console.warn(`componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\\n\\n* Move code from componentWillMount to componentDidMount (preferred in most cases) or the constructor.\\n\\nPlease update the following components: %s`,ss),ih[ss]=!0)}rt.componentWillMount()}if(typeof rt.UNSAFE_componentWillMount==\"function\"&&rt.UNSAFE_componentWillMount(),is!==rt.state&&(console.error(\"%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component\\'s constructor). Use setState instead.\",vn(Y)||\"Component\"),nw.enqueueReplaceState(rt,rt.state,null)),gi.queue!==null&&0<gi.queue.length){var Pi=gi.queue,rc=gi.replace;if(gi.queue=null,gi.replace=!1,rc&&Pi.length===1)rt.state=Pi[0];else{for(var Ki=rc?Pi[0]:rt.state,oc=!0,Ju=rc?1:0;Ju<Pi.length;Ju++){var Un=Pi[Ju],cl=typeof Un==\"function\"?Un.call(rt,Ki,pt,void 0):Un;cl!=null&&(oc?(oc=!1,Ki=uo({},Ki,cl)):uo(Ki,cl))}rt.state=Ki}}else gi.queue=null}var Ta=Ne(rt);if(w.status===12)throw null;rt.props!==pt&&(_c||console.error(\"It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.\",vn(Y)||\"a component\"),_c=!0);var Xu=S.keyPath;S.keyPath=M,wc(w,S,Ta,-1),S.keyPath=Xu}else{if(Y.prototype&&typeof Y.prototype.render==\"function\"){var gs=vn(Y)||\"Unknown\";Oi[gs]||(console.error(\"The <%s /> component appears to have a render method, but doesn\\'t extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.\",gs,gs),Oi[gs]=!0)}var Mi=rE(w,S,M,Y,re,void 0);if(w.status===12)throw null;var Ao=Yd!==0,ys=Qu,ia=iy;if(Y.contextTypes){var $l=vn(Y)||\"Unknown\";$i[$l]||($i[$l]=!0,console.error(\"%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with React.useContext() instead. (https://react.dev/link/legacy-context)\",$l))}if(Y&&Y.childContextTypes&&console.error(`childContextTypes cannot be defined on a function component.\\n  %s.childContextTypes = ...`,Y.displayName||Y.name||\"Component\"),typeof Y.getDerivedStateFromProps==\"function\"){var as=vn(Y)||\"Unknown\";Co[as]||(console.error(\"%s: Function components do not support getDerivedStateFromProps.\",as),Co[as]=!0)}if(typeof Y.contextType==\"object\"&&Y.contextType!==null){var Cc=vn(Y)||\"Unknown\";ii[Cc]||(console.error(\"%s: Function components do not support contextType.\",Cc),ii[Cc]=!0)}oE(w,S,M,Mi,Ao,ys,ia)}else if(typeof Y==\"string\"){var Ra=S.blockedSegment;if(Ra===null){var sa=re.children,To=S.formatContext,Ms=S.keyPath;S.formatContext=H(To,Y,re),S.keyPath=M,Jc(w,S,sa,-1),S.formatContext=To,S.keyPath=Ms}else{var ic=qt(Ra.chunks,Y,re,w.resumableState,w.renderState,S.blockedPreamble,S.hoistableState,S.formatContext,Ra.lastPushedText,S.isFallback);Ra.lastPushedText=!1;var Ac=S.formatContext,sc=S.keyPath;if(S.keyPath=M,(S.formatContext=H(Ac,Y,re)).insertionMode===eh){var Kl=Hd(w,0,null,S.formatContext,!1,!1);Ra.preambleChildren.push(Kl);var aa=zd(w,null,ic,-1,S.blockedBoundary,Kl,S.blockedPreamble,S.hoistableState,w.abortableTasks,S.keyPath,S.formatContext,S.context,S.treeContext,S.componentStack,S.isFallback,_a,S.debugTask);Yh(aa),w.pingedTasks.push(aa)}else Jc(w,S,ic,-1);S.formatContext=Ac,S.keyPath=sc;e:{var ll=Ra.chunks,Tc=w.resumableState;switch(Y){case\"title\":case\"style\":case\"script\":case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"input\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":break e;case\"body\":if(Ac.insertionMode<=t0){Tc.hasBody=!0;break e}break;case\"html\":if(Ac.insertionMode===e0){Tc.hasHtml=!0;break e}break;case\"head\":if(Ac.insertionMode<=t0)break e}ll.push(Wt(Y))}Ra.lastPushedText=!1}}else{switch(Y){case Ii:case $u:case Js:case Vu:var ul=S.keyPath;S.keyPath=M,wc(w,S,re.children,-1),S.keyPath=ul;return;case ob:if(re.mode!==\"hidden\"){var dl=S.keyPath;S.keyPath=M,wc(w,S,re.children,-1),S.keyPath=dl}return;case Ug:var Ia=S.keyPath;S.keyPath=M,wc(w,S,re.children,-1),S.keyPath=Ia;return;case XT:case R2:throw Error(\"ReactDOMServer does not yet support scope components.\");case Rs:e:if(S.replay!==null){var ca=S.keyPath;S.keyPath=M;var ah=re.children;try{Jc(w,S,ah,-1)}finally{S.keyPath=ca}}else{var pn=S.keyPath,Gl=S.blockedBoundary,Zl=S.blockedPreamble,gp=S.hoistableState,ac=S.blockedSegment,Yl=re.fallback,cs=re.children,bs=new Set,Do=S.formatContext.insertionMode<tc?Qs(w,bs,B(),B()):Qs(w,bs,null,null);w.trackedPostpones!==null&&(Do.trackedContentKeyPath=M);var bi=Hd(w,ac.chunks.length,Do,S.formatContext,!1,!1);ac.children.push(bi),ac.lastPushedText=!1;var Sr=Hd(w,0,null,S.formatContext,!1,!1);if(Sr.parentFlushed=!0,w.trackedPostpones!==null){var b0=[M[0],\"Suspense Fallback\",M[2]],vi=[b0[1],b0[2],[],null];w.trackedPostpones.workingMap.set(b0,vi),Do.trackedFallbackNode=vi,S.blockedSegment=bi,S.blockedPreamble=Do.fallbackPreamble,S.keyPath=b0,bi.status=6;try{Jc(w,S,Yl,-1),bi.lastPushedText&&bi.textEmbedded&&bi.chunks.push(Gu),bi.status=un}catch(nf){throw bi.status=w.status===12?3:4,nf}finally{S.blockedSegment=ac,S.blockedPreamble=Zl,S.keyPath=pn}var fl=zd(w,null,cs,-1,Do,Sr,Do.contentPreamble,Do.contentState,S.abortSet,M,S.formatContext,S.context,S.treeContext,S.componentStack,S.isFallback,_a,S.debugTask);Yh(fl),w.pingedTasks.push(fl)}else{S.blockedBoundary=Do,S.blockedPreamble=Do.contentPreamble,S.hoistableState=Do.contentState,S.blockedSegment=Sr,S.keyPath=M,Sr.status=6;try{if(Jc(w,S,cs,-1),Sr.lastPushedText&&Sr.textEmbedded&&Sr.chunks.push(Gu),Sr.status=un,Mg(Do,Sr),Do.pendingTasks===0&&Do.status===mn){Do.status=un,w.pendingRootTasks===0&&S.blockedPreamble&&tp(w);break e}}catch(nf){if(Do.status=Sn,w.status===12){Sr.status=3;var Ns=w.fatalError}else Sr.status=4,Ns=nf;var v0=ms(S.componentStack),Xo=ba(w,Ns,v0,S.debugTask);Ul(Do,Xo,Ns,v0,!1),Hm(w,Do)}finally{S.blockedBoundary=Gl,S.blockedPreamble=Zl,S.hoistableState=gp,S.blockedSegment=ac,S.keyPath=pn}var hr=zd(w,null,Yl,-1,Gl,bi,Do.fallbackPreamble,Do.fallbackState,bs,[M[0],\"Suspense Fallback\",M[2]],S.formatContext,S.context,S.treeContext,S.componentStack,!0,_a,S.debugTask);Yh(hr),w.pingedTasks.push(hr)}}return}if(typeof Y==\"object\"&&Y!==null)switch(Y.$$typeof){case Fg:if(\"ref\"in re){var Ql={};for(var Ro in re)Ro!==\"ref\"&&(Ql[Ro]=re[Ro])}else Ql=re;var ch=rE(w,S,M,Y.render,Ql,ue);oE(w,S,M,ch,Yd!==0,Qu,iy);return;case el:Xa(w,S,M,Y.type,re,ue);return;case Xc:case ip:var ed=re.value,Qd=re.children,Jd=S.context,Oa=S.keyPath,Xd=Y._currentValue;Y._currentValue=ed,Y._currentRenderer!==void 0&&Y._currentRenderer!==null&&Y._currentRenderer!==oh&&console.error(\"Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.\"),Y._currentRenderer=oh;var Jl=ql,Xl={parent:Jl,depth:Jl===null?0:Jl.depth+1,context:Y,parentValue:Xd,value:ed};ql=Xl,S.context=Xl,S.keyPath=M,wc(w,S,Qd,-1);var cc=ql;if(cc===null)throw Error(\"Tried to pop a Context at the root of the app. This is a bug in React.\");cc.context!==Y&&console.error(\"The parent context is not the expected context. This is probably a bug in React.\"),cc.context._currentValue=cc.parentValue,Y._currentRenderer!==void 0&&Y._currentRenderer!==null&&Y._currentRenderer!==oh&&console.error(\"Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.\"),Y._currentRenderer=oh;var eu=ql=cc.parent;S.context=eu,S.keyPath=Oa,Jd!==S.context&&console.error(\"Popping the context provider did not return back to the original snapshot. This is a bug in React.\");return;case Km:var Gi=Y._context,ei=re.children;typeof ei!=\"function\"&&console.error(\"A context consumer was rendered with multiple children, or a child that isn\\'t a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it.\");var cy=ei(Gi._currentValue),ef=S.keyPath;S.keyPath=M,wc(w,S,cy,-1),S.keyPath=ef;return;case tl:var w0=At(Y);if(w.status===12)throw null;Xa(w,S,M,w0,re,ue);return}var tf=\"\";throw(Y===void 0||typeof Y==\"object\"&&Y!==null&&Object.keys(Y).length===0)&&(tf+=\" You likely forgot to export your component from the file it\\'s defined in, or you might have mixed up default and named imports.\"),Error(\"Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: \"+((Y==null?Y:typeof Y)+\".\"+tf))}}function zm(w,S,M,Y,re){var ue=S.replay,Ee=S.blockedBoundary,Ae=Hd(w,0,null,S.formatContext,!1,!1);Ae.id=M,Ae.parentFlushed=!0;try{S.replay=null,S.blockedSegment=Ae,Jc(w,S,Y,re),Ae.status=un,Ee===null?w.completedRootSegment=Ae:(Mg(Ee,Ae),Ee.parentFlushed&&w.partialBoundaries.push(Ee))}finally{S.replay=ue,S.blockedSegment=null}}function Qh(w,S,M,Y,re,ue,Ee,Ae,Le,Ie){ue=Ie.nodes;for(var pt=0;pt<ue.length;pt++){var ut=ue[pt];if(re===ut[1]){if(ut.length===4){if(Y!==null&&Y!==ut[0])throw Error(\"Expected the resume to render <\"+ut[0]+\"> in this slot but instead it rendered <\"+Y+\">. The tree doesn\\'t match so React will fallback to client rendering.\");var _t=ut[2];ut=ut[3],Y=S.node,S.replay={nodes:_t,slots:ut,pendingTasks:1};try{if(Xa(w,S,M,Ee,Ae,Le),S.replay.pendingTasks===1&&0<S.replay.nodes.length)throw Error(\"Couldn\\'t find all resumable slots by key/index during replaying. The tree doesn\\'t match so React will fallback to client rendering.\");S.replay.pendingTasks--}catch(Lr){if(typeof Lr==\"object\"&&Lr!==null&&(Lr===Ca||typeof Lr.then==\"function\"))throw S.node===Y&&(S.replay=Ie),Lr;S.replay.pendingTasks--,Ee=ms(S.componentStack),Ae=w,w=S.blockedBoundary,M=Lr,Le=ut,ut=ba(Ae,M,Ee,S.debugTask),Og(Ae,w,_t,Le,M,ut,Ee,!1)}S.replay=Ie}else{if(Ee!==Rs)throw Error(\"Expected the resume to render <Suspense> in this slot but instead it rendered <\"+(vn(Ee)||\"Unknown\")+\">. The tree doesn\\'t match so React will fallback to client rendering.\");e:{Ie=void 0,Ee=ut[5],Le=ut[2],Y=ut[3],re=ut[4]===null?[]:ut[4][2],ut=ut[4]===null?null:ut[4][3];var bt=S.keyPath,rt=S.replay,kn=S.blockedBoundary,Tr=S.hoistableState,_n=Ae.children,Gt=Ae.fallback,Bo=new Set;Ae=S.formatContext.insertionMode<tc?Qs(w,Bo,B(),B()):Qs(w,Bo,null,null),Ae.parentFlushed=!0,Ae.rootSegmentID=Ee,S.blockedBoundary=Ae,S.hoistableState=Ae.contentState,S.keyPath=M,S.replay={nodes:Le,slots:Y,pendingTasks:1};try{if(Jc(w,S,_n,-1),S.replay.pendingTasks===1&&0<S.replay.nodes.length)throw Error(\"Couldn\\'t find all resumable slots by key/index during replaying. The tree doesn\\'t match so React will fallback to client rendering.\");if(S.replay.pendingTasks--,Ae.pendingTasks===0&&Ae.status===mn){Ae.status=un,w.completedBoundaries.push(Ae);break e}}catch(Lr){Ae.status=Sn,_t=ms(S.componentStack),Ie=ba(w,Lr,_t,S.debugTask),Ul(Ae,Ie,Lr,_t,!1),S.replay.pendingTasks--,w.clientRenderedBoundaries.push(Ae)}finally{S.blockedBoundary=kn,S.hoistableState=Tr,S.replay=rt,S.keyPath=bt}Ae=eb(w,null,{nodes:re,slots:ut,pendingTasks:0},Gt,-1,kn,Ae.fallbackState,Bo,[M[0],\"Suspense Fallback\",M[2]],S.formatContext,S.context,S.treeContext,S.componentStack,!0,_a,S.debugTask),Yh(Ae),w.pingedTasks.push(Ae)}}ue.splice(pt,1);break}}}function wc(w,S,M,Y){S.replay!==null&&typeof S.replay.slots==\"number\"?zm(w,S,S.replay.slots,M,Y):(S.node=M,S.childIndex=Y,M=S.componentStack,Y=S.debugTask,Yh(S),Ig(w,S),S.componentStack=M,S.debugTask=Y)}function Ig(w,S){var M=S.node,Y=S.childIndex;if(M!==null){if(typeof M==\"object\"){switch(M.$$typeof){case Gf:var re=M.type,ue=M.key;M=M.props;var Ee=M.ref;Ee=Ee!==void 0?Ee:null;var Ae=S.debugTask,Le=vn(re);ue=ue??(Y===-1?0:Y);var Ie=[S.keyPath,Le,ue];S.replay!==null?Ae?Ae.run(Qh.bind(null,w,S,Ie,Le,ue,Y,re,M,Ee,S.replay)):Qh(w,S,Ie,Le,ue,Y,re,M,Ee,S.replay):Ae?Ae.run(Xa.bind(null,w,S,Ie,re,M,Ee)):Xa(w,S,Ie,re,M,Ee);return;case op:throw Error(\"Portals are not currently supported by the server renderer. Render them conditionally so that they only appear on the client render.\");case tl:if(M=At(M),w.status===12)throw null;wc(w,S,M,Y);return}if(wa(M)){$f(w,S,M,Y);return}if(M===null||typeof M!=\"object\"?ue=null:(re=ib&&M[ib]||M[\"@@iterator\"],ue=typeof re==\"function\"?re:null),ue&&(re=ue.call(M))){if(re===M?(Y!==-1||S.componentStack===null||typeof S.componentStack.type!=\"function\"||Object.prototype.toString.call(S.componentStack.type)!==\"[object GeneratorFunction]\"||Object.prototype.toString.call(re)!==\"[object Generator]\")&&(Aa||console.error(\"Using Iterators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. You can also use an Iterable that can iterate multiple times over the same items.\"),Aa=!0):M.entries!==ue||Er||(console.error(\"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"),Er=!0),M=re.next(),!M.done){ue=[];do ue.push(M.value),M=re.next();while(!M.done);$f(w,S,ue,Y)}return}if(typeof M.then==\"function\")return S.thenableState=null,wc(w,S,Qc(M),Y);if(M.$$typeof===ip)return wc(w,S,M._currentValue,Y);throw w=Object.prototype.toString.call(M),Error(\"Objects are not valid as a React child (found: \"+(w===\"[object Object]\"?\"object with keys {\"+Object.keys(M).join(\", \")+\"}\":w)+\"). If you meant to render a collection of children, use an array instead.\")}typeof M==\"string\"?(S=S.blockedSegment,S!==null&&(S.lastPushedText=I(S.chunks,M,w.renderState,S.lastPushedText))):typeof M==\"number\"||typeof M==\"bigint\"?(S=S.blockedSegment,S!==null&&(S.lastPushedText=I(S.chunks,\"\"+M,w.renderState,S.lastPushedText))):(typeof M==\"function\"&&(w=M.displayName||M.name||\"Component\",console.error(\"Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.\",w,w)),typeof M==\"symbol\"&&console.error(`Symbols are not valid as a React child.\\n  %s`,String(M)))}}function $f(w,S,M,Y){var re=S.keyPath,ue=S.componentStack,Ee=S.debugTask;if(Rg(S,S.node._debugInfo),Y!==-1&&(S.keyPath=[S.keyPath,\"Fragment\",Y],S.replay!==null)){for(var Ae=S.replay,Le=Ae.nodes,Ie=0;Ie<Le.length;Ie++){var pt=Le[Ie];if(pt[1]===Y){Y=pt[2],pt=pt[3],S.replay={nodes:Y,slots:pt,pendingTasks:1};try{if($f(w,S,M,-1),S.replay.pendingTasks===1&&0<S.replay.nodes.length)throw Error(\"Couldn\\'t find all resumable slots by key/index during replaying. The tree doesn\\'t match so React will fallback to client rendering.\");S.replay.pendingTasks--}catch(_n){if(typeof _n==\"object\"&&_n!==null&&(_n===Ca||typeof _n.then==\"function\"))throw _n;S.replay.pendingTasks--;var ut=ms(S.componentStack);M=S.blockedBoundary;var _t=_n,bt=pt;pt=ba(w,_t,ut,S.debugTask),Og(w,M,Y,bt,_t,pt,ut,!1)}S.replay=Ae,Le.splice(Ie,1);break}}S.keyPath=re,S.componentStack=ue,S.debugTask=Ee;return}if(Ae=S.treeContext,Le=M.length,S.replay!==null&&(Ie=S.replay.slots,Ie!==null&&typeof Ie==\"object\")){for(Y=0;Y<Le;Y++)pt=M[Y],S.treeContext=Zr(Ae,Le,Y),_t=Ie[Y],typeof _t==\"number\"?(zm(w,S,_t,pt,Y),delete Ie[Y]):Jc(w,S,pt,Y);S.treeContext=Ae,S.keyPath=re,S.componentStack=ue,S.debugTask=Ee;return}for(Ie=0;Ie<Le;Ie++){if(Y=M[Ie],bt=w,pt=S,_t=Y,_t!==null&&typeof _t==\"object\"&&(_t.$$typeof===Gf||_t.$$typeof===op)&&_t._store&&(!_t._store.validated&&_t.key==null||_t._store.validated===2)){if(typeof _t._store!=\"object\")throw Error(\"React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.\");if(_t._store.validated=1,ut=bt.didWarnForKey,ut==null&&(ut=bt.didWarnForKey=new WeakSet),bt=pt.componentStack,bt!==null&&!ut.has(bt)){ut.add(bt);var rt=vn(_t.type);ut=_t._owner;var kn=bt.owner;if(bt=\"\",kn&&typeof kn.type<\"u\"){var Tr=vn(kn.type);Tr&&(bt=`\\n\\nCheck the render method of \\\\``+Tr+\"`.\")}bt||rt&&(bt=`\\n\\nCheck the top-level render call using <`+rt+\">.\"),rt=\"\",ut!=null&&kn!==ut&&(kn=null,typeof ut.type<\"u\"?kn=vn(ut.type):typeof ut.name==\"string\"&&(kn=ut.name),kn&&(rt=\" It was passed a child from \"+kn+\".\")),ut=pt.componentStack,pt.componentStack={parent:pt.componentStack,type:_t.type,owner:_t._owner,stack:_t._debugStack},console.error(\\'Each child in a list should have a unique \"key\" prop.%s%s See https://react.dev/link/warning-keys for more information.\\',bt,rt),pt.componentStack=ut}}S.treeContext=Zr(Ae,Le,Ie),Jc(w,S,Y,Ie)}S.treeContext=Ae,S.keyPath=re,S.componentStack=ue,S.debugTask=Ee}function Hm(w,S){w=w.trackedPostpones,w!==null&&(S=S.trackedContentKeyPath,S!==null&&(S=w.workingMap.get(S),S!==void 0&&(S.length=4,S[2]=[],S[3]=null)))}function Kf(w,S,M){return eb(w,M,S.replay,S.node,S.childIndex,S.blockedBoundary,S.hoistableState,S.abortSet,S.keyPath,S.formatContext,S.context,S.treeContext,S.componentStack,S.isFallback,_a,S.debugTask)}function qm(w,S,M){var Y=S.blockedSegment,re=Hd(w,Y.chunks.length,null,S.formatContext,Y.lastPushedText,!0);return Y.children.push(re),Y.lastPushedText=!1,zd(w,M,S.node,S.childIndex,S.blockedBoundary,re,S.blockedPreamble,S.hoistableState,S.abortSet,S.keyPath,S.formatContext,S.context,S.treeContext,S.componentStack,S.isFallback,_a,S.debugTask)}function Jc(w,S,M,Y){var re=S.formatContext,ue=S.context,Ee=S.keyPath,Ae=S.treeContext,Le=S.componentStack,Ie=S.debugTask,pt=S.blockedSegment;if(pt===null)try{return wc(w,S,M,Y)}catch(bt){if(Qa(),M=bt===Ca?Zo():bt,typeof M==\"object\"&&M!==null){if(typeof M.then==\"function\"){Y=Ya(),w=Kf(w,S,Y).ping,M.then(w,w),S.formatContext=re,S.context=ue,S.keyPath=Ee,S.treeContext=Ae,S.componentStack=Le,S.debugTask=Ie,xr(ue);return}if(M.message===\"Maximum call stack size exceeded\"){M=Ya(),M=Kf(w,S,M),w.pingedTasks.push(M),S.formatContext=re,S.context=ue,S.keyPath=Ee,S.treeContext=Ae,S.componentStack=Le,S.debugTask=Ie,xr(ue);return}}}else{var ut=pt.children.length,_t=pt.chunks.length;try{return wc(w,S,M,Y)}catch(bt){if(Qa(),pt.children.length=ut,pt.chunks.length=_t,M=bt===Ca?Zo():bt,typeof M==\"object\"&&M!==null){if(typeof M.then==\"function\"){Y=Ya(),w=qm(w,S,Y).ping,M.then(w,w),S.formatContext=re,S.context=ue,S.keyPath=Ee,S.treeContext=Ae,S.componentStack=Le,S.debugTask=Ie,xr(ue);return}if(M.message===\"Maximum call stack size exceeded\"){M=Ya(),M=qm(w,S,M),w.pingedTasks.push(M),S.formatContext=re,S.context=ue,S.keyPath=Ee,S.treeContext=Ae,S.componentStack=Le,S.debugTask=Ie,xr(ue);return}}}}throw S.formatContext=re,S.context=ue,S.keyPath=Ee,S.treeContext=Ae,xr(ue),M}function va(w){var S=w.blockedBoundary;w=w.blockedSegment,w!==null&&(w.status=3,tb(this,S,w))}function Og(w,S,M,Y,re,ue,Ee,Ae){for(var Le=0;Le<M.length;Le++){var Ie=M[Le];if(Ie.length===4)Og(w,S,Ie[2],Ie[3],re,ue,Ee,Ae);else{var pt=w;Ie=Ie[5];var ut=re,_t=ue,bt=Ee,rt=Ae,kn=Qs(pt,new Set,null,null);kn.parentFlushed=!0,kn.rootSegmentID=Ie,kn.status=Sn,Ul(kn,_t,ut,bt,rt),kn.parentFlushed&&pt.clientRenderedBoundaries.push(kn)}}if(M.length=0,Y!==null){if(S===null)throw Error(\"We should not have any resumable nodes in the shell. This is a bug in React.\");if(S.status!==Sn&&(S.status=Sn,Ul(S,ue,re,Ee,Ae),S.parentFlushed&&w.clientRenderedBoundaries.push(S)),typeof Y==\"object\")for(var Tr in Y)delete Y[Tr]}}function Jh(w,S,M){var Y=w.blockedBoundary,re=w.blockedSegment;if(re!==null){if(re.status===6)return;re.status=3}if(re=ms(w.componentStack),Y===null){if(S.status!==13&&S.status!==Tn){if(Y=w.replay,Y===null){ba(S,M,re,null),jm(S,M,re,null);return}Y.pendingTasks--,Y.pendingTasks===0&&0<Y.nodes.length&&(w=ba(S,M,re,null),Og(S,null,Y.nodes,Y.slots,M,w,re,!0)),S.pendingRootTasks--,S.pendingRootTasks===0&&Xh(S)}}else Y.pendingTasks--,Y.status!==Sn&&(Y.status=Sn,w=ba(S,M,re,null),Y.status=Sn,Ul(Y,w,M,re,!0),Hm(S,Y),Y.parentFlushed&&S.clientRenderedBoundaries.push(Y)),Y.fallbackAbortableTasks.forEach(function(ue){return Jh(ue,S,M)}),Y.fallbackAbortableTasks.clear();S.allPendingTasks--,S.allPendingTasks===0&&Pg(S)}function Wm(w,S){try{var M=w.renderState,Y=M.onHeaders;if(Y){var re=M.headers;if(re){M.headers=null;var ue=re.preconnects;if(re.fontPreloads&&(ue&&(ue+=\", \"),ue+=re.fontPreloads),re.highImagePreloads&&(ue&&(ue+=\", \"),ue+=re.highImagePreloads),!S){var Ee=M.styles.values(),Ae=Ee.next();e:for(;0<re.remainingCapacity&&!Ae.done;Ae=Ee.next())for(var Le=Ae.value.sheets.values(),Ie=Le.next();0<re.remainingCapacity&&!Ie.done;Ie=Le.next()){var pt=Ie.value,ut=pt.props,_t=ut.href,bt=pt.props,rt=ni(bt.href,\"style\",{crossOrigin:bt.crossOrigin,integrity:bt.integrity,nonce:bt.nonce,type:bt.type,fetchPriority:bt.fetchPriority,referrerPolicy:bt.referrerPolicy,media:bt.media});if(0<=(re.remainingCapacity-=rt.length+2))M.resets.style[_t]=xc,ue&&(ue+=\", \"),ue+=rt,M.resets.style[_t]=typeof ut.crossOrigin==\"string\"||typeof ut.integrity==\"string\"?[ut.crossOrigin,ut.integrity]:xc;else break e}}Y(ue?{Link:ue}:{})}}}catch(kn){ba(w,kn,{},null)}}function Xh(w){w.trackedPostpones===null&&Wm(w,!0),w.trackedPostpones===null&&tp(w),w.onShellError=$h,w=w.onShellReady,w()}function Pg(w){Wm(w,w.trackedPostpones===null?!0:w.completedRootSegment===null||w.completedRootSegment.status!==cn),tp(w),w=w.onAllReady,w()}function Mg(w,S){if(S.chunks.length===0&&S.children.length===1&&S.children[0].boundary===null&&S.children[0].id===-1){var M=S.children[0];M.id=S.id,M.parentFlushed=!0,M.status===un&&Mg(w,M)}else w.completedSegments.push(S)}function tb(w,S,M){if(S===null){if(M!==null&&M.parentFlushed){if(w.completedRootSegment!==null)throw Error(\"There can only be one root segment. This is a bug in React.\");w.completedRootSegment=M}w.pendingRootTasks--,w.pendingRootTasks===0&&Xh(w)}else S.pendingTasks--,S.status!==Sn&&(S.pendingTasks===0?(S.status===mn&&(S.status=un),M!==null&&M.parentFlushed&&M.status===un&&Mg(S,M),S.parentFlushed&&w.completedBoundaries.push(S),S.status===un&&(S.fallbackAbortableTasks.forEach(va,w),S.fallbackAbortableTasks.clear(),w.pendingRootTasks===0&&w.trackedPostpones===null&&S.contentPreamble!==null&&tp(w))):M!==null&&M.parentFlushed&&M.status===un&&(Mg(S,M),S.completedSegments.length===1&&S.parentFlushed&&w.partialBoundaries.push(S)));w.allPendingTasks--,w.allPendingTasks===0&&Pg(w)}function Ng(w){if(w.status!==Tn&&w.status!==13){var S=ql,M=Lo.H;Lo.H=sh;var Y=Lo.A;Lo.A=n_;var re=ro;ro=w;var ue=Lo.getCurrentStack;Lo.getCurrentStack=Vf;var Ee=Os;Os=w.resumableState;try{var Ae=w.pingedTasks,Le;for(Le=0;Le<Ae.length;Le++){var Ie=w,pt=Ae[Le],ut=pt.blockedSegment;if(ut===null){var _t=void 0,bt=Ie;if(Ie=pt,Ie.replay.pendingTasks!==0){xr(Ie.context),_t=ho,ho=Ie;try{if(typeof Ie.replay.slots==\"number\"?zm(bt,Ie,Ie.replay.slots,Ie.node,Ie.childIndex):Ig(bt,Ie),Ie.replay.pendingTasks===1&&0<Ie.replay.nodes.length)throw Error(\"Couldn\\'t find all resumable slots by key/index during replaying. The tree doesn\\'t match so React will fallback to client rendering.\");Ie.replay.pendingTasks--,Ie.abortSet.delete(Ie),tb(bt,Ie.blockedBoundary,null)}catch(Br){Qa();var rt=Br===Ca?Zo():Br;if(typeof rt==\"object\"&&rt!==null&&typeof rt.then==\"function\"){var kn=Ie.ping;rt.then(kn,kn),Ie.thenableState=Ya()}else{Ie.replay.pendingTasks--,Ie.abortSet.delete(Ie);var Tr=ms(Ie.componentStack),_n=void 0,Gt=bt,Bo=Ie.blockedBoundary,Lr=bt.status===12?bt.fatalError:rt,Rn=Tr,os=Ie.replay.nodes,Ps=Ie.replay.slots;_n=ba(Gt,Lr,Rn,Ie.debugTask),Og(Gt,Bo,os,Ps,Lr,_n,Rn,!1),bt.pendingRootTasks--,bt.pendingRootTasks===0&&Xh(bt),bt.allPendingTasks--,bt.allPendingTasks===0&&Pg(bt)}}finally{ho=_t}}}else if(bt=_t=void 0,_n=pt,Gt=ut,Gt.status===mn){Gt.status=6,xr(_n.context),bt=ho,ho=_n;var si=Gt.children.length,gi=Gt.chunks.length;try{Ig(Ie,_n),Gt.lastPushedText&&Gt.textEmbedded&&Gt.chunks.push(Gu),_n.abortSet.delete(_n),Gt.status=un,tb(Ie,_n.blockedBoundary,Gt)}catch(Br){Qa(),Gt.children.length=si,Gt.chunks.length=gi;var po=Br===Ca?Zo():Ie.status===12?Ie.fatalError:Br;if(typeof po==\"object\"&&po!==null&&typeof po.then==\"function\"){Gt.status=mn,_n.thenableState=Ya();var Jo=_n.ping;po.then(Jo,Jo)}else{var yi=ms(_n.componentStack);_n.abortSet.delete(_n),Gt.status=4;var Bn=_n.blockedBoundary,mo=_n.debugTask;_t=ba(Ie,po,yi,mo),Bn===null?jm(Ie,po,yi,mo):(Bn.pendingTasks--,Bn.status!==Sn&&(Bn.status=Sn,Ul(Bn,_t,po,yi,!1),Hm(Ie,Bn),Bn.parentFlushed&&Ie.clientRenderedBoundaries.push(Bn),Ie.pendingRootTasks===0&&Ie.trackedPostpones===null&&Bn.contentPreamble!==null&&tp(Ie))),Ie.allPendingTasks--,Ie.allPendingTasks===0&&Pg(Ie)}}finally{ho=bt}}}Ae.splice(0,Le),w.destination!==null&&Vm(w,w.destination)}catch(Br){Ae={},ba(w,Br,Ae,null),jm(w,Br,Ae,null)}finally{Os=Ee,Lo.H=M,Lo.A=Y,Lo.getCurrentStack=ue,M===sh&&xr(S),ro=re}}}function A2(w,S,M){S.preambleChildren.length&&M.push(S.preambleChildren);for(var Y=!1,re=0;re<S.children.length;re++)Y=ep(w,S.children[re],M)||Y;return Y}function ep(w,S,M){var Y=S.boundary;if(Y===null)return A2(w,S,M);var re=Y.contentPreamble,ue=Y.fallbackPreamble;if(re===null||ue===null)return!1;switch(Y.status){case un:if(zn(w.renderState,re),S=Y.completedSegments[0],!S)throw Error(\"A previously unvisited boundary must have exactly one root segment. This is a bug in React.\");return A2(w,S,M);case cn:if(w.trackedPostpones!==null)return!0;case Sn:if(S.status===un)return zn(w.renderState,ue),A2(w,S,M);default:return!0}}function tp(w){if(w.completedRootSegment&&w.completedPreambleSegments===null){var S=[],M=ep(w,w.completedRootSegment,S),Y=w.renderState.preamble;(M===!1||Y.headChunks&&Y.bodyChunks)&&(w.completedPreambleSegments=S)}}function nb(w,S,M,Y){switch(M.parentFlushed=!0,M.status){case mn:M.id=w.nextSegmentId++;case cn:return Y=M.id,M.lastPushedText=!1,M.textEmbedded=!1,w=w.renderState,h(S,Hk),h(S,w.placeholderPrefix),w=b(Y.toString(16)),h(S,w),m(S,qk);case un:M.status=Vi;var re=!0,ue=M.chunks,Ee=0;M=M.children;for(var Ae=0;Ae<M.length;Ae++){for(re=M[Ae];Ee<re.index;Ee++)h(S,ue[Ee]);re=Lg(w,S,re,Y)}for(;Ee<ue.length-1;Ee++)h(S,ue[Ee]);return Ee<ue.length&&(re=m(S,ue[Ee])),re;default:throw Error(\"Aborted, errored or already flushed boundaries should not be flushed again. This is a bug in React.\")}}function Lg(w,S,M,Y){var re=M.boundary;if(re===null)return nb(w,S,M,Y);if(re.parentFlushed=!0,re.status===Sn){var ue=re.errorDigest,Ee=re.errorMessage,Ae=re.errorStack,Le=re.errorComponentStack;return m(S,Kg),h(S,$k),ue&&(h(S,q2),h(S,b(F(ue))),h(S,H2)),Ee&&(h(S,Gg),h(S,b(F(Ee))),h(S,H2)),Ae&&(h(S,W2),h(S,b(F(Ae))),h(S,H2)),Le&&(h(S,EE),h(S,b(F(Le))),h(S,H2)),m(S,i0),nb(w,S,M,Y),(w=re.fallbackPreamble)&&Zs(S,w),m(S,o0)}if(re.status!==un)return re.status===mn&&(re.rootSegmentID=w.nextSegmentId++),0<re.completedSegments.length&&w.partialBoundaries.push(re),br(S,w.renderState,re.rootSegmentID),Y&&(re=re.fallbackState,re.styles.forEach(dr,Y),re.stylesheets.forEach(Bl,Y)),nb(w,S,M,Y),m(S,o0);if(re.byteSize>w.progressiveChunkSize)return re.rootSegmentID=w.nextSegmentId++,w.completedBoundaries.push(re),br(S,w.renderState,re.rootSegmentID),nb(w,S,M,Y),m(S,o0);if(Y&&(M=re.contentState,M.styles.forEach(dr,Y),M.stylesheets.forEach(Bl,Y)),m(S,xE),M=re.completedSegments,M.length!==1)throw Error(\"A previously unvisited boundary must have exactly one root segment. This is a bug in React.\");return Lg(w,S,M[0],Y),(w=re.contentPreamble)&&Zs(S,w),m(S,o0)}function rb(w,S,M,Y){return Pr(S,w.renderState,M.parentFormatContext,M.id),Lg(w,S,M,Y),vr(S,M.parentFormatContext)}function iE(w,S,M){for(var Y=M.completedSegments,re=0;re<Y.length;re++)Fk(w,S,M,Y[re]);Y.length=0,le(S,M.contentState,w.renderState),Y=w.resumableState,w=w.renderState,re=M.rootSegmentID,M=M.contentState;var ue=w.stylesToHoist;return w.stylesToHoist=!1,h(S,w.startInlineScript),ue?(Y.instructions&lp)===Ku?(Y.instructions=Y.instructions|Hg|lp,h(S,gb)):(Y.instructions&Hg)===Ku?(Y.instructions|=Hg,h(S,Qg)):h(S,PE):(Y.instructions&lp)===Ku?(Y.instructions|=lp,h(S,Q2)):h(S,a0),Y=b(re.toString(16)),h(S,w.boundaryPrefix),h(S,Y),h(S,e_),h(S,w.segmentPrefix),h(S,Y),ue?(h(S,oa),Dt(S,M)):h(S,J2),M=m(S,X2),Mn(S,w)&&M}function Fk(w,S,M,Y){if(Y.status===Vi)return!0;var re=M.contentState,ue=Y.id;if(ue===-1){if((Y.id=M.rootSegmentID)===-1)throw Error(\"A root segment ID must have been assigned by now. This is a bug in React.\");return rb(w,S,Y,re)}return ue===M.rootSegmentID?rb(w,S,Y,re):(rb(w,S,Y,re),M=w.resumableState,w=w.renderState,h(S,w.startInlineScript),(M.instructions&ub)===Ku?(M.instructions|=ub,h(S,IE)):h(S,Y2),h(S,w.segmentPrefix),ue=b(ue.toString(16)),h(S,ue),h(S,Xk),h(S,w.placeholderPrefix),h(S,ue),S=m(S,OE),S)}function Vm(w,S){ec=new Uint8Array(2048),xa=0;try{if(!(0<w.pendingRootTasks)){var M,Y=w.completedRootSegment;if(Y!==null){if(Y.status===cn)return;var re=w.completedPreambleSegments;if(re===null)return;var ue=w.renderState,Ee=ue.preamble,Ae=Ee.htmlChunks,Le=Ee.headChunks,Ie;if(Ae){for(Ie=0;Ie<Ae.length;Ie++)h(S,Ae[Ie]);if(Le)for(Ie=0;Ie<Le.length;Ie++)h(S,Le[Ie]);else h(S,Mt(\"head\")),h(S,mi)}else if(Le)for(Ie=0;Ie<Le.length;Ie++)h(S,Le[Ie]);var pt=ue.charsetChunks;for(Ie=0;Ie<pt.length;Ie++)h(S,pt[Ie]);pt.length=0,ue.preconnects.forEach(Te,S),ue.preconnects.clear();var ut=ue.viewportChunks;for(Ie=0;Ie<ut.length;Ie++)h(S,ut[Ie]);ut.length=0,ue.fontPreloads.forEach(Te,S),ue.fontPreloads.clear(),ue.highImagePreloads.forEach(Te,S),ue.highImagePreloads.clear(),ue.styles.forEach(tt,S);var _t=ue.importMapChunks;for(Ie=0;Ie<_t.length;Ie++)h(S,_t[Ie]);_t.length=0,ue.bootstrapScripts.forEach(Te,S),ue.scripts.forEach(Te,S),ue.scripts.clear(),ue.bulkPreloads.forEach(Te,S),ue.bulkPreloads.clear();var bt=ue.hoistableChunks;for(Ie=0;Ie<bt.length;Ie++)h(S,bt[Ie]);for(ue=bt.length=0;ue<re.length;ue++){var rt=re[ue];for(Ee=0;Ee<rt.length;Ee++)Lg(w,S,rt[Ee],null)}var kn=w.renderState.preamble,Tr=kn.headChunks;(kn.htmlChunks||Tr)&&h(S,Wt(\"head\"));var _n=kn.bodyChunks;if(_n)for(re=0;re<_n.length;re++)h(S,_n[re]);Lg(w,S,Y,null),w.completedRootSegment=null,Mn(S,w.renderState)}var Gt=w.renderState;Y=0;var Bo=Gt.viewportChunks;for(Y=0;Y<Bo.length;Y++)h(S,Bo[Y]);Bo.length=0,Gt.preconnects.forEach(Te,S),Gt.preconnects.clear(),Gt.fontPreloads.forEach(Te,S),Gt.fontPreloads.clear(),Gt.highImagePreloads.forEach(Te,S),Gt.highImagePreloads.clear(),Gt.styles.forEach(hn,S),Gt.scripts.forEach(Te,S),Gt.scripts.clear(),Gt.bulkPreloads.forEach(Te,S),Gt.bulkPreloads.clear();var Lr=Gt.hoistableChunks;for(Y=0;Y<Lr.length;Y++)h(S,Lr[Y]);Lr.length=0;var Rn=w.clientRenderedBoundaries;for(M=0;M<Rn.length;M++){var os=Rn[M];Gt=S;var Ps=w.resumableState,si=w.renderState,gi=os.rootSegmentID,po=os.errorDigest,Jo=os.errorMessage,yi=os.errorStack,Bn=os.errorComponentStack;h(Gt,si.startInlineScript),(Ps.instructions&Jm)===Ku?(Ps.instructions|=Jm,h(Gt,yb)):h(Gt,il),h(Gt,si.boundaryPrefix),h(Gt,b(gi.toString(16))),h(Gt,c0),(po||Jo||yi||Bn)&&(h(Gt,sl),h(Gt,b(hi(po||\"\")))),(Jo||yi||Bn)&&(h(Gt,sl),h(Gt,b(hi(Jo||\"\")))),(yi||Bn)&&(h(Gt,sl),h(Gt,b(hi(yi||\"\")))),Bn&&(h(Gt,sl),h(Gt,b(hi(Bn))));var mo=m(Gt,ME);if(!mo){w.destination=null,M++,Rn.splice(0,M);return}}Rn.splice(0,M);var Br=w.completedBoundaries;for(M=0;M<Br.length;M++)if(!iE(w,S,Br[M])){w.destination=null,M++,Br.splice(0,M);return}Br.splice(0,M),g(S),ec=new Uint8Array(2048),xa=0;var is=w.partialBoundaries;for(M=0;M<is.length;M++){e:{Rn=w,os=S;var ss=is[M],Pi=ss.completedSegments;for(mo=0;mo<Pi.length;mo++)if(!Fk(Rn,os,ss,Pi[mo])){mo++,Pi.splice(0,mo);var rc=!1;break e}Pi.splice(0,mo),rc=le(os,ss.contentState,Rn.renderState)}if(!rc){w.destination=null,M++,is.splice(0,M);return}}is.splice(0,M);var Ki=w.completedBoundaries;for(M=0;M<Ki.length;M++)if(!iE(w,S,Ki[M])){w.destination=null,M++,Ki.splice(0,M);return}Ki.splice(0,M)}}finally{w.allPendingTasks===0&&w.pingedTasks.length===0&&w.clientRenderedBoundaries.length===0&&w.completedBoundaries.length===0?(w.flushScheduled=!1,M=w.resumableState,M.hasBody&&h(S,Wt(\"body\")),M.hasHtml&&h(S,Wt(\"html\")),g(S),w.abortableTasks.size!==0&&console.error(\"There was still abortable task at the root when we closed. This is a bug in React.\"),w.status=Tn,S.close(),w.destination=null):g(S)}}function T2(w){w.flushScheduled=w.destination!==null,sp(function(){return Ng(w)}),u(function(){w.status===10&&(w.status=11),w.trackedPostpones===null&&Wm(w,w.pendingRootTasks===0)})}function np(w){w.flushScheduled===!1&&w.pingedTasks.length===0&&w.destination!==null&&(w.flushScheduled=!0,u(function(){var S=w.destination;S?Vm(w,S):w.flushScheduled=!1}))}function $m(w,S){if(w.status===13)w.status=Tn,C(S,w.fatalError);else if(w.status!==Tn&&w.destination===null){w.destination=S;try{Vm(w,S)}catch(M){S={},ba(w,M,S,null),jm(w,M,S,null)}}}function rp(w,S){(w.status===11||w.status===10)&&(w.status=12);try{var M=w.abortableTasks;if(0<M.size){var Y=S===void 0?Error(\"The render was aborted by the server without a reason.\"):typeof S==\"object\"&&S!==null&&typeof S.then==\"function\"?Error(\"The render was aborted by the server with a promise.\"):S;w.fatalError=Y,M.forEach(function(re){return Jh(re,w,Y)}),M.clear()}w.destination!==null&&Vm(w,w.destination)}catch(re){S={},ba(w,re,S,null),jm(w,re,S,null)}}function sE(){var w=Bg.version;if(w!==\"19.1.0\")throw Error(`Incompatible React versions: The \"react\" and \"react-dom\" packages must have the exact same version. Instead got:\\n  - react:      `+(w+`\\n  - react-dom:  19.1.0\\nLearn more: https://react.dev/warnings/version-mismatch`))}var Bg=et(),Dg=I0(),Gf=Symbol.for(\"react.transitional.element\"),op=Symbol.for(\"react.portal\"),Vu=Symbol.for(\"react.fragment\"),$u=Symbol.for(\"react.strict_mode\"),Js=Symbol.for(\"react.profiler\"),Xc=Symbol.for(\"react.provider\"),Km=Symbol.for(\"react.consumer\"),ip=Symbol.for(\"react.context\"),Fg=Symbol.for(\"react.forward_ref\"),Rs=Symbol.for(\"react.suspense\"),Ug=Symbol.for(\"react.suspense_list\"),el=Symbol.for(\"react.memo\"),tl=Symbol.for(\"react.lazy\"),R2=Symbol.for(\"react.scope\"),ob=Symbol.for(\"react.activity\"),Ii=Symbol.for(\"react.legacy_hidden\"),Yr=Symbol.for(\"react.memo_cache_sentinel\"),XT=Symbol.for(\"react.view_transition\"),ib=Symbol.iterator,wa=Array.isArray,aE=new WeakMap,I2=new WeakMap,jg=Symbol.for(\"react.client.reference\"),Zf=new MessageChannel,Yf=[];Zf.port1.onmessage=function(){var w=Yf.shift();w&&w()};var cE=Promise,sp=typeof queueMicrotask==\"function\"?queueMicrotask:function(w){cE.resolve(null).then(w).catch(d)},ec=null,xa=0,Is=new TextEncoder,uo=Object.assign,Ar=Object.prototype.hasOwnProperty,lE=RegExp(\"^[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),ap={},uE={},Uk=new Set(\"animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp\".split(\" \")),sb=new Map([[\"acceptCharset\",\"accept-charset\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"],[\"crossOrigin\",\"crossorigin\"],[\"accentHeight\",\"accent-height\"],[\"alignmentBaseline\",\"alignment-baseline\"],[\"arabicForm\",\"arabic-form\"],[\"baselineShift\",\"baseline-shift\"],[\"capHeight\",\"cap-height\"],[\"clipPath\",\"clip-path\"],[\"clipRule\",\"clip-rule\"],[\"colorInterpolation\",\"color-interpolation\"],[\"colorInterpolationFilters\",\"color-interpolation-filters\"],[\"colorProfile\",\"color-profile\"],[\"colorRendering\",\"color-rendering\"],[\"dominantBaseline\",\"dominant-baseline\"],[\"enableBackground\",\"enable-background\"],[\"fillOpacity\",\"fill-opacity\"],[\"fillRule\",\"fill-rule\"],[\"floodColor\",\"flood-color\"],[\"floodOpacity\",\"flood-opacity\"],[\"fontFamily\",\"font-family\"],[\"fontSize\",\"font-size\"],[\"fontSizeAdjust\",\"font-size-adjust\"],[\"fontStretch\",\"font-stretch\"],[\"fontStyle\",\"font-style\"],[\"fontVariant\",\"font-variant\"],[\"fontWeight\",\"font-weight\"],[\"glyphName\",\"glyph-name\"],[\"glyphOrientationHorizontal\",\"glyph-orientation-horizontal\"],[\"glyphOrientationVertical\",\"glyph-orientation-vertical\"],[\"horizAdvX\",\"horiz-adv-x\"],[\"horizOriginX\",\"horiz-origin-x\"],[\"imageRendering\",\"image-rendering\"],[\"letterSpacing\",\"letter-spacing\"],[\"lightingColor\",\"lighting-color\"],[\"markerEnd\",\"marker-end\"],[\"markerMid\",\"marker-mid\"],[\"markerStart\",\"marker-start\"],[\"overlinePosition\",\"overline-position\"],[\"overlineThickness\",\"overline-thickness\"],[\"paintOrder\",\"paint-order\"],[\"panose-1\",\"panose-1\"],[\"pointerEvents\",\"pointer-events\"],[\"renderingIntent\",\"rendering-intent\"],[\"shapeRendering\",\"shape-rendering\"],[\"stopColor\",\"stop-color\"],[\"stopOpacity\",\"stop-opacity\"],[\"strikethroughPosition\",\"strikethrough-position\"],[\"strikethroughThickness\",\"strikethrough-thickness\"],[\"strokeDasharray\",\"stroke-dasharray\"],[\"strokeDashoffset\",\"stroke-dashoffset\"],[\"strokeLinecap\",\"stroke-linecap\"],[\"strokeLinejoin\",\"stroke-linejoin\"],[\"strokeMiterlimit\",\"stroke-miterlimit\"],[\"strokeOpacity\",\"stroke-opacity\"],[\"strokeWidth\",\"stroke-width\"],[\"textAnchor\",\"text-anchor\"],[\"textDecoration\",\"text-decoration\"],[\"textRendering\",\"text-rendering\"],[\"transformOrigin\",\"transform-origin\"],[\"underlinePosition\",\"underline-position\"],[\"underlineThickness\",\"underline-thickness\"],[\"unicodeBidi\",\"unicode-bidi\"],[\"unicodeRange\",\"unicode-range\"],[\"unitsPerEm\",\"units-per-em\"],[\"vAlphabetic\",\"v-alphabetic\"],[\"vHanging\",\"v-hanging\"],[\"vIdeographic\",\"v-ideographic\"],[\"vMathematical\",\"v-mathematical\"],[\"vectorEffect\",\"vector-effect\"],[\"vertAdvY\",\"vert-adv-y\"],[\"vertOriginX\",\"vert-origin-x\"],[\"vertOriginY\",\"vert-origin-y\"],[\"wordSpacing\",\"word-spacing\"],[\"writingMode\",\"writing-mode\"],[\"xmlnsXlink\",\"xmlns:xlink\"],[\"xHeight\",\"x-height\"]]),zg={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0},cp={\"aria-current\":0,\"aria-description\":0,\"aria-details\":0,\"aria-disabled\":0,\"aria-hidden\":0,\"aria-invalid\":0,\"aria-keyshortcuts\":0,\"aria-label\":0,\"aria-roledescription\":0,\"aria-autocomplete\":0,\"aria-checked\":0,\"aria-expanded\":0,\"aria-haspopup\":0,\"aria-level\":0,\"aria-modal\":0,\"aria-multiline\":0,\"aria-multiselectable\":0,\"aria-orientation\":0,\"aria-placeholder\":0,\"aria-pressed\":0,\"aria-readonly\":0,\"aria-required\":0,\"aria-selected\":0,\"aria-sort\":0,\"aria-valuemax\":0,\"aria-valuemin\":0,\"aria-valuenow\":0,\"aria-valuetext\":0,\"aria-atomic\":0,\"aria-busy\":0,\"aria-live\":0,\"aria-relevant\":0,\"aria-dropeffect\":0,\"aria-grabbed\":0,\"aria-activedescendant\":0,\"aria-colcount\":0,\"aria-colindex\":0,\"aria-colspan\":0,\"aria-controls\":0,\"aria-describedby\":0,\"aria-errormessage\":0,\"aria-flowto\":0,\"aria-labelledby\":0,\"aria-owns\":0,\"aria-posinset\":0,\"aria-rowcount\":0,\"aria-rowindex\":0,\"aria-rowspan\":0,\"aria-setsize\":0},jl={},dE=RegExp(\"^(aria)-[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),ab=RegExp(\"^(aria)[A-Z][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),Qf=!1,qd={accept:\"accept\",acceptcharset:\"acceptCharset\",\"accept-charset\":\"acceptCharset\",accesskey:\"accessKey\",action:\"action\",allowfullscreen:\"allowFullScreen\",alt:\"alt\",as:\"as\",async:\"async\",autocapitalize:\"autoCapitalize\",autocomplete:\"autoComplete\",autocorrect:\"autoCorrect\",autofocus:\"autoFocus\",autoplay:\"autoPlay\",autosave:\"autoSave\",capture:\"capture\",cellpadding:\"cellPadding\",cellspacing:\"cellSpacing\",challenge:\"challenge\",charset:\"charSet\",checked:\"checked\",children:\"children\",cite:\"cite\",class:\"className\",classid:\"classID\",classname:\"className\",cols:\"cols\",colspan:\"colSpan\",content:\"content\",contenteditable:\"contentEditable\",contextmenu:\"contextMenu\",controls:\"controls\",controlslist:\"controlsList\",coords:\"coords\",crossorigin:\"crossOrigin\",dangerouslysetinnerhtml:\"dangerouslySetInnerHTML\",data:\"data\",datetime:\"dateTime\",default:\"default\",defaultchecked:\"defaultChecked\",defaultvalue:\"defaultValue\",defer:\"defer\",dir:\"dir\",disabled:\"disabled\",disablepictureinpicture:\"disablePictureInPicture\",disableremoteplayback:\"disableRemotePlayback\",download:\"download\",draggable:\"draggable\",enctype:\"encType\",enterkeyhint:\"enterKeyHint\",fetchpriority:\"fetchPriority\",for:\"htmlFor\",form:\"form\",formmethod:\"formMethod\",formaction:\"formAction\",formenctype:\"formEncType\",formnovalidate:\"formNoValidate\",formtarget:\"formTarget\",frameborder:\"frameBorder\",headers:\"headers\",height:\"height\",hidden:\"hidden\",high:\"high\",href:\"href\",hreflang:\"hrefLang\",htmlfor:\"htmlFor\",httpequiv:\"httpEquiv\",\"http-equiv\":\"httpEquiv\",icon:\"icon\",id:\"id\",imagesizes:\"imageSizes\",imagesrcset:\"imageSrcSet\",inert:\"inert\",innerhtml:\"innerHTML\",inputmode:\"inputMode\",integrity:\"integrity\",is:\"is\",itemid:\"itemID\",itemprop:\"itemProp\",itemref:\"itemRef\",itemscope:\"itemScope\",itemtype:\"itemType\",keyparams:\"keyParams\",keytype:\"keyType\",kind:\"kind\",label:\"label\",lang:\"lang\",list:\"list\",loop:\"loop\",low:\"low\",manifest:\"manifest\",marginwidth:\"marginWidth\",marginheight:\"marginHeight\",max:\"max\",maxlength:\"maxLength\",media:\"media\",mediagroup:\"mediaGroup\",method:\"method\",min:\"min\",minlength:\"minLength\",multiple:\"multiple\",muted:\"muted\",name:\"name\",nomodule:\"noModule\",nonce:\"nonce\",novalidate:\"noValidate\",open:\"open\",optimum:\"optimum\",pattern:\"pattern\",placeholder:\"placeholder\",playsinline:\"playsInline\",poster:\"poster\",preload:\"preload\",profile:\"profile\",radiogroup:\"radioGroup\",readonly:\"readOnly\",referrerpolicy:\"referrerPolicy\",rel:\"rel\",required:\"required\",reversed:\"reversed\",role:\"role\",rows:\"rows\",rowspan:\"rowSpan\",sandbox:\"sandbox\",scope:\"scope\",scoped:\"scoped\",scrolling:\"scrolling\",seamless:\"seamless\",selected:\"selected\",shape:\"shape\",size:\"size\",sizes:\"sizes\",span:\"span\",spellcheck:\"spellCheck\",src:\"src\",srcdoc:\"srcDoc\",srclang:\"srcLang\",srcset:\"srcSet\",start:\"start\",step:\"step\",style:\"style\",summary:\"summary\",tabindex:\"tabIndex\",target:\"target\",title:\"title\",type:\"type\",usemap:\"useMap\",value:\"value\",width:\"width\",wmode:\"wmode\",wrap:\"wrap\",about:\"about\",accentheight:\"accentHeight\",\"accent-height\":\"accentHeight\",accumulate:\"accumulate\",additive:\"additive\",alignmentbaseline:\"alignmentBaseline\",\"alignment-baseline\":\"alignmentBaseline\",allowreorder:\"allowReorder\",alphabetic:\"alphabetic\",amplitude:\"amplitude\",arabicform:\"arabicForm\",\"arabic-form\":\"arabicForm\",ascent:\"ascent\",attributename:\"attributeName\",attributetype:\"attributeType\",autoreverse:\"autoReverse\",azimuth:\"azimuth\",basefrequency:\"baseFrequency\",baselineshift:\"baselineShift\",\"baseline-shift\":\"baselineShift\",baseprofile:\"baseProfile\",bbox:\"bbox\",begin:\"begin\",bias:\"bias\",by:\"by\",calcmode:\"calcMode\",capheight:\"capHeight\",\"cap-height\":\"capHeight\",clip:\"clip\",clippath:\"clipPath\",\"clip-path\":\"clipPath\",clippathunits:\"clipPathUnits\",cliprule:\"clipRule\",\"clip-rule\":\"clipRule\",color:\"color\",colorinterpolation:\"colorInterpolation\",\"color-interpolation\":\"colorInterpolation\",colorinterpolationfilters:\"colorInterpolationFilters\",\"color-interpolation-filters\":\"colorInterpolationFilters\",colorprofile:\"colorProfile\",\"color-profile\":\"colorProfile\",colorrendering:\"colorRendering\",\"color-rendering\":\"colorRendering\",contentscripttype:\"contentScriptType\",contentstyletype:\"contentStyleType\",cursor:\"cursor\",cx:\"cx\",cy:\"cy\",d:\"d\",datatype:\"datatype\",decelerate:\"decelerate\",descent:\"descent\",diffuseconstant:\"diffuseConstant\",direction:\"direction\",display:\"display\",divisor:\"divisor\",dominantbaseline:\"dominantBaseline\",\"dominant-baseline\":\"dominantBaseline\",dur:\"dur\",dx:\"dx\",dy:\"dy\",edgemode:\"edgeMode\",elevation:\"elevation\",enablebackground:\"enableBackground\",\"enable-background\":\"enableBackground\",end:\"end\",exponent:\"exponent\",externalresourcesrequired:\"externalResourcesRequired\",fill:\"fill\",fillopacity:\"fillOpacity\",\"fill-opacity\":\"fillOpacity\",fillrule:\"fillRule\",\"fill-rule\":\"fillRule\",filter:\"filter\",filterres:\"filterRes\",filterunits:\"filterUnits\",floodopacity:\"floodOpacity\",\"flood-opacity\":\"floodOpacity\",floodcolor:\"floodColor\",\"flood-color\":\"floodColor\",focusable:\"focusable\",fontfamily:\"fontFamily\",\"font-family\":\"fontFamily\",fontsize:\"fontSize\",\"font-size\":\"fontSize\",fontsizeadjust:\"fontSizeAdjust\",\"font-size-adjust\":\"fontSizeAdjust\",fontstretch:\"fontStretch\",\"font-stretch\":\"fontStretch\",fontstyle:\"fontStyle\",\"font-style\":\"fontStyle\",fontvariant:\"fontVariant\",\"font-variant\":\"fontVariant\",fontweight:\"fontWeight\",\"font-weight\":\"fontWeight\",format:\"format\",from:\"from\",fx:\"fx\",fy:\"fy\",g1:\"g1\",g2:\"g2\",glyphname:\"glyphName\",\"glyph-name\":\"glyphName\",glyphorientationhorizontal:\"glyphOrientationHorizontal\",\"glyph-orientation-horizontal\":\"glyphOrientationHorizontal\",glyphorientationvertical:\"glyphOrientationVertical\",\"glyph-orientation-vertical\":\"glyphOrientationVertical\",glyphref:\"glyphRef\",gradienttransform:\"gradientTransform\",gradientunits:\"gradientUnits\",hanging:\"hanging\",horizadvx:\"horizAdvX\",\"horiz-adv-x\":\"horizAdvX\",horizoriginx:\"horizOriginX\",\"horiz-origin-x\":\"horizOriginX\",ideographic:\"ideographic\",imagerendering:\"imageRendering\",\"image-rendering\":\"imageRendering\",in2:\"in2\",in:\"in\",inlist:\"inlist\",intercept:\"intercept\",k1:\"k1\",k2:\"k2\",k3:\"k3\",k4:\"k4\",k:\"k\",kernelmatrix:\"kernelMatrix\",kernelunitlength:\"kernelUnitLength\",kerning:\"kerning\",keypoints:\"keyPoints\",keysplines:\"keySplines\",keytimes:\"keyTimes\",lengthadjust:\"lengthAdjust\",letterspacing:\"letterSpacing\",\"letter-spacing\":\"letterSpacing\",lightingcolor:\"lightingColor\",\"lighting-color\":\"lightingColor\",limitingconeangle:\"limitingConeAngle\",local:\"local\",markerend:\"markerEnd\",\"marker-end\":\"markerEnd\",markerheight:\"markerHeight\",markermid:\"markerMid\",\"marker-mid\":\"markerMid\",markerstart:\"markerStart\",\"marker-start\":\"markerStart\",markerunits:\"markerUnits\",markerwidth:\"markerWidth\",mask:\"mask\",maskcontentunits:\"maskContentUnits\",maskunits:\"maskUnits\",mathematical:\"mathematical\",mode:\"mode\",numoctaves:\"numOctaves\",offset:\"offset\",opacity:\"opacity\",operator:\"operator\",order:\"order\",orient:\"orient\",orientation:\"orientation\",origin:\"origin\",overflow:\"overflow\",overlineposition:\"overlinePosition\",\"overline-position\":\"overlinePosition\",overlinethickness:\"overlineThickness\",\"overline-thickness\":\"overlineThickness\",paintorder:\"paintOrder\",\"paint-order\":\"paintOrder\",panose1:\"panose1\",\"panose-1\":\"panose1\",pathlength:\"pathLength\",patterncontentunits:\"patternContentUnits\",patterntransform:\"patternTransform\",patternunits:\"patternUnits\",pointerevents:\"pointerEvents\",\"pointer-events\":\"pointerEvents\",points:\"points\",pointsatx:\"pointsAtX\",pointsaty:\"pointsAtY\",pointsatz:\"pointsAtZ\",popover:\"popover\",popovertarget:\"popoverTarget\",popovertargetaction:\"popoverTargetAction\",prefix:\"prefix\",preservealpha:\"preserveAlpha\",preserveaspectratio:\"preserveAspectRatio\",primitiveunits:\"primitiveUnits\",property:\"property\",r:\"r\",radius:\"radius\",refx:\"refX\",refy:\"refY\",renderingintent:\"renderingIntent\",\"rendering-intent\":\"renderingIntent\",repeatcount:\"repeatCount\",repeatdur:\"repeatDur\",requiredextensions:\"requiredExtensions\",requiredfeatures:\"requiredFeatures\",resource:\"resource\",restart:\"restart\",result:\"result\",results:\"results\",rotate:\"rotate\",rx:\"rx\",ry:\"ry\",scale:\"scale\",security:\"security\",seed:\"seed\",shaperendering:\"shapeRendering\",\"shape-rendering\":\"shapeRendering\",slope:\"slope\",spacing:\"spacing\",specularconstant:\"specularConstant\",specularexponent:\"specularExponent\",speed:\"speed\",spreadmethod:\"spreadMethod\",startoffset:\"startOffset\",stddeviation:\"stdDeviation\",stemh:\"stemh\",stemv:\"stemv\",stitchtiles:\"stitchTiles\",stopcolor:\"stopColor\",\"stop-color\":\"stopColor\",stopopacity:\"stopOpacity\",\"stop-opacity\":\"stopOpacity\",strikethroughposition:\"strikethroughPosition\",\"strikethrough-position\":\"strikethroughPosition\",strikethroughthickness:\"strikethroughThickness\",\"strikethrough-thickness\":\"strikethroughThickness\",string:\"string\",stroke:\"stroke\",strokedasharray:\"strokeDasharray\",\"stroke-dasharray\":\"strokeDasharray\",strokedashoffset:\"strokeDashoffset\",\"stroke-dashoffset\":\"strokeDashoffset\",strokelinecap:\"strokeLinecap\",\"stroke-linecap\":\"strokeLinecap\",strokelinejoin:\"strokeLinejoin\",\"stroke-linejoin\":\"strokeLinejoin\",strokemiterlimit:\"strokeMiterlimit\",\"stroke-miterlimit\":\"strokeMiterlimit\",strokewidth:\"strokeWidth\",\"stroke-width\":\"strokeWidth\",strokeopacity:\"strokeOpacity\",\"stroke-opacity\":\"strokeOpacity\",suppresscontenteditablewarning:\"suppressContentEditableWarning\",suppresshydrationwarning:\"suppressHydrationWarning\",surfacescale:\"surfaceScale\",systemlanguage:\"systemLanguage\",tablevalues:\"tableValues\",targetx:\"targetX\",targety:\"targetY\",textanchor:\"textAnchor\",\"text-anchor\":\"textAnchor\",textdecoration:\"textDecoration\",\"text-decoration\":\"textDecoration\",textlength:\"textLength\",textrendering:\"textRendering\",\"text-rendering\":\"textRendering\",to:\"to\",transform:\"transform\",transformorigin:\"transformOrigin\",\"transform-origin\":\"transformOrigin\",typeof:\"typeof\",u1:\"u1\",u2:\"u2\",underlineposition:\"underlinePosition\",\"underline-position\":\"underlinePosition\",underlinethickness:\"underlineThickness\",\"underline-thickness\":\"underlineThickness\",unicode:\"unicode\",unicodebidi:\"unicodeBidi\",\"unicode-bidi\":\"unicodeBidi\",unicoderange:\"unicodeRange\",\"unicode-range\":\"unicodeRange\",unitsperem:\"unitsPerEm\",\"units-per-em\":\"unitsPerEm\",unselectable:\"unselectable\",valphabetic:\"vAlphabetic\",\"v-alphabetic\":\"vAlphabetic\",values:\"values\",vectoreffect:\"vectorEffect\",\"vector-effect\":\"vectorEffect\",version:\"version\",vertadvy:\"vertAdvY\",\"vert-adv-y\":\"vertAdvY\",vertoriginx:\"vertOriginX\",\"vert-origin-x\":\"vertOriginX\",vertoriginy:\"vertOriginY\",\"vert-origin-y\":\"vertOriginY\",vhanging:\"vHanging\",\"v-hanging\":\"vHanging\",videographic:\"vIdeographic\",\"v-ideographic\":\"vIdeographic\",viewbox:\"viewBox\",viewtarget:\"viewTarget\",visibility:\"visibility\",vmathematical:\"vMathematical\",\"v-mathematical\":\"vMathematical\",vocab:\"vocab\",widths:\"widths\",wordspacing:\"wordSpacing\",\"word-spacing\":\"wordSpacing\",writingmode:\"writingMode\",\"writing-mode\":\"writingMode\",x1:\"x1\",x2:\"x2\",x:\"x\",xchannelselector:\"xChannelSelector\",xheight:\"xHeight\",\"x-height\":\"xHeight\",xlinkactuate:\"xlinkActuate\",\"xlink:actuate\":\"xlinkActuate\",xlinkarcrole:\"xlinkArcrole\",\"xlink:arcrole\":\"xlinkArcrole\",xlinkhref:\"xlinkHref\",\"xlink:href\":\"xlinkHref\",xlinkrole:\"xlinkRole\",\"xlink:role\":\"xlinkRole\",xlinkshow:\"xlinkShow\",\"xlink:show\":\"xlinkShow\",xlinktitle:\"xlinkTitle\",\"xlink:title\":\"xlinkTitle\",xlinktype:\"xlinkType\",\"xlink:type\":\"xlinkType\",xmlbase:\"xmlBase\",\"xml:base\":\"xmlBase\",xmllang:\"xmlLang\",\"xml:lang\":\"xmlLang\",xmlns:\"xmlns\",\"xml:space\":\"xmlSpace\",xmlnsxlink:\"xmlnsXlink\",\"xmlns:xlink\":\"xmlnsXlink\",xmlspace:\"xmlSpace\",y1:\"y1\",y2:\"y2\",y:\"y\",ychannelselector:\"yChannelSelector\",z:\"z\",zoomandpan:\"zoomAndPan\"},Xs={},O2=/^on./,ea=/^on[^A-Z]/,cb=RegExp(\"^(aria)-[:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),Gm=RegExp(\"^(aria)[A-Z][:A-Z_a-z\\\\\\\\u00C0-\\\\\\\\u00D6\\\\\\\\u00D8-\\\\\\\\u00F6\\\\\\\\u00F8-\\\\\\\\u02FF\\\\\\\\u0370-\\\\\\\\u037D\\\\\\\\u037F-\\\\\\\\u1FFF\\\\\\\\u200C-\\\\\\\\u200D\\\\\\\\u2070-\\\\\\\\u218F\\\\\\\\u2C00-\\\\\\\\u2FEF\\\\\\\\u3001-\\\\\\\\uD7FF\\\\\\\\uF900-\\\\\\\\uFDCF\\\\\\\\uFDF0-\\\\\\\\uFFFD\\\\\\\\-.0-9\\\\\\\\u00B7\\\\\\\\u0300-\\\\\\\\u036F\\\\\\\\u203F-\\\\\\\\u2040]*$\"),Hr=/^(?:webkit|moz|o)[A-Z]/,Wd=/^-ms-/,fE=/-(.)/g,Zm=/;\\\\s*$/,nl={},Jf={},ko=!1,ta=!1,lb=/[\"\\'&<>]/,P2=/([A-Z])/g,M2=/^ms-/,Ym=/^[\\\\u0000-\\\\u001F ]*j[\\\\r\\\\n\\\\t]*a[\\\\r\\\\n\\\\t]*v[\\\\r\\\\n\\\\t]*a[\\\\r\\\\n\\\\t]*s[\\\\r\\\\n\\\\t]*c[\\\\r\\\\n\\\\t]*r[\\\\r\\\\n\\\\t]*i[\\\\r\\\\n\\\\t]*p[\\\\r\\\\n\\\\t]*t[\\\\r\\\\n\\\\t]*:/i,Lo=Bg.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,pi=Dg.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Qm=Object.freeze({pending:!1,data:null,method:null,action:null}),na=pi.d;pi.d={f:na.f,r:na.r,D:function(w){var S=ro||null;if(S){var M=S.resumableState,Y=S.renderState;if(typeof w==\"string\"&&w){if(!M.dnsResources.hasOwnProperty(w)){M.dnsResources[w]=ns,M=Y.headers;var re,ue;(ue=M&&0<M.remainingCapacity)&&(ue=(re=\"<\"+jr(w)+\">; rel=dns-prefetch\",0<=(M.remainingCapacity-=re.length+2))),ue?(Y.resets.dns[w]=ns,M.preconnects&&(M.preconnects+=\", \"),M.preconnects+=re):(re=[],ht(re,{href:w,rel:\"dns-prefetch\"}),Y.preconnects.add(re))}np(S)}}else na.D(w)},C:function(w,S){var M=ro||null;if(M){var Y=M.resumableState,re=M.renderState;if(typeof w==\"string\"&&w){var ue=S===\"use-credentials\"?\"credentials\":typeof S==\"string\"?\"anonymous\":\"default\";if(!Y.connectResources[ue].hasOwnProperty(w)){Y.connectResources[ue][w]=ns,Y=re.headers;var Ee,Ae;if(Ae=Y&&0<Y.remainingCapacity){if(Ae=\"<\"+jr(w)+\">; rel=preconnect\",typeof S==\"string\"){var Le=zu(S,\"crossOrigin\");Ae+=\\'; crossorigin=\"\\'+Le+\\'\"\\'}Ae=(Ee=Ae,0<=(Y.remainingCapacity-=Ee.length+2))}Ae?(re.resets.connect[ue][w]=ns,Y.preconnects&&(Y.preconnects+=\", \"),Y.preconnects+=Ee):(ue=[],ht(ue,{rel:\"preconnect\",href:w,crossOrigin:S}),re.preconnects.add(ue))}np(M)}}else na.C(w,S)},L:function(w,S,M){var Y=ro||null;if(Y){var re=Y.resumableState,ue=Y.renderState;if(S&&w){switch(S){case\"image\":if(M)var Ee=M.imageSrcSet,Ae=M.imageSizes,Le=M.fetchPriority;var Ie=Ee?Ee+`\\n`+(Ae||\"\"):w;if(re.imageResources.hasOwnProperty(Ie))return;re.imageResources[Ie]=xc,re=ue.headers;var pt;re&&0<re.remainingCapacity&&typeof Ee!=\"string\"&&Le===\"high\"&&(pt=ni(w,S,M),0<=(re.remainingCapacity-=pt.length+2))?(ue.resets.image[Ie]=xc,re.highImagePreloads&&(re.highImagePreloads+=\", \"),re.highImagePreloads+=pt):(re=[],ht(re,uo({rel:\"preload\",href:Ee?void 0:w,as:S},M)),Le===\"high\"?ue.highImagePreloads.add(re):(ue.bulkPreloads.add(re),ue.preloads.images.set(Ie,re)));break;case\"style\":if(re.styleResources.hasOwnProperty(w))return;Ee=[],ht(Ee,uo({rel:\"preload\",href:w,as:S},M)),re.styleResources[w]=!M||typeof M.crossOrigin!=\"string\"&&typeof M.integrity!=\"string\"?xc:[M.crossOrigin,M.integrity],ue.preloads.stylesheets.set(w,Ee),ue.bulkPreloads.add(Ee);break;case\"script\":if(re.scriptResources.hasOwnProperty(w))return;Ee=[],ue.preloads.scripts.set(w,Ee),ue.bulkPreloads.add(Ee),ht(Ee,uo({rel:\"preload\",href:w,as:S},M)),re.scriptResources[w]=!M||typeof M.crossOrigin!=\"string\"&&typeof M.integrity!=\"string\"?xc:[M.crossOrigin,M.integrity];break;default:if(re.unknownResources.hasOwnProperty(S)){if(Ee=re.unknownResources[S],Ee.hasOwnProperty(w))return}else Ee={},re.unknownResources[S]=Ee;if(Ee[w]=xc,(re=ue.headers)&&0<re.remainingCapacity&&S===\"font\"&&(Ie=ni(w,S,M),0<=(re.remainingCapacity-=Ie.length+2)))ue.resets.font[w]=xc,re.fontPreloads&&(re.fontPreloads+=\", \"),re.fontPreloads+=Ie;else switch(re=[],w=uo({rel:\"preload\",href:w,as:S},M),ht(re,w),S){case\"font\":ue.fontPreloads.add(re);break;default:ue.bulkPreloads.add(re)}}np(Y)}}else na.L(w,S,M)},m:function(w,S){var M=ro||null;if(M){var Y=M.resumableState,re=M.renderState;if(w){var ue=S&&typeof S.as==\"string\"?S.as:\"script\";switch(ue){case\"script\":if(Y.moduleScriptResources.hasOwnProperty(w))return;ue=[],Y.moduleScriptResources[w]=!S||typeof S.crossOrigin!=\"string\"&&typeof S.integrity!=\"string\"?xc:[S.crossOrigin,S.integrity],re.preloads.moduleScripts.set(w,ue);break;default:if(Y.moduleUnknownResources.hasOwnProperty(ue)){var Ee=Y.unknownResources[ue];if(Ee.hasOwnProperty(w))return}else Ee={},Y.moduleUnknownResources[ue]=Ee;ue=[],Ee[w]=xc}ht(ue,uo({rel:\"modulepreload\",href:w},S)),re.bulkPreloads.add(ue),np(M)}}else na.m(w,S)},X:function(w,S){var M=ro||null;if(M){var Y=M.resumableState,re=M.renderState;if(w){var ue=Y.scriptResources.hasOwnProperty(w)?Y.scriptResources[w]:void 0;ue!==ns&&(Y.scriptResources[w]=ns,S=uo({src:w,async:!0},S),ue&&(ue.length===2&&en(S,ue),w=re.preloads.scripts.get(w))&&(w.length=0),w=[],re.scripts.add(w),rn(w,S),np(M))}}else na.X(w,S)},S:function(w,S,M){var Y=ro||null;if(Y){var re=Y.resumableState,ue=Y.renderState;if(w){S=S||\"default\";var Ee=ue.styles.get(S),Ae=re.styleResources.hasOwnProperty(w)?re.styleResources[w]:void 0;Ae!==ns&&(re.styleResources[w]=ns,Ee||(Ee={precedence:b(F(S)),rules:[],hrefs:[],sheets:new Map},ue.styles.set(S,Ee)),S={state:Zu,props:uo({rel:\"stylesheet\",href:w,\"data-precedence\":S},M)},Ae&&(Ae.length===2&&en(S.props,Ae),(ue=ue.preloads.stylesheets.get(w))&&0<ue.length?ue.length=0:S.state=Wi),Ee.sheets.set(w,S),np(Y))}}else na.S(w,S,M)},M:function(w,S){var M=ro||null;if(M){var Y=M.resumableState,re=M.renderState;if(w){var ue=Y.moduleScriptResources.hasOwnProperty(w)?Y.moduleScriptResources[w]:void 0;ue!==ns&&(Y.moduleScriptResources[w]=ns,S=uo({src:w,type:\"module\",async:!0},S),ue&&(ue.length===2&&en(S,ue),w=re.preloads.moduleScripts.get(w))&&(w.length=0),w=[],re.scripts.add(w),rn(w,S),np(M))}}else na.M(w,S)}};var Ku=0,ub=1,lp=2,Jm=4,Hg=8,ns=null,xc=[];Object.freeze(xc),E(\\'\"></template>\\');var db=E(\"<script>\"),hE=E(\"<\\\\/script>\"),Ea=E(\\'<script src=\"\\'),rl=E(\\'<script type=\"module\" src=\"\\'),Sa=E(\\'\" nonce=\"\\'),qg=E(\\'\" integrity=\"\\'),Vd=E(\\'\" crossorigin=\"\\'),oi=E(\\'\" async=\"\"><\\\\/script>\\'),Xf=/(<\\\\/|<)(s)(cript)/gi,fb=E(\\'<script type=\"importmap\">\\'),Wg=E(\"<\\\\/script>\"),Xm={},N2=0,e0=0,t0=1,tc=2,eh=3,ol=4,In=5,gt=6,up=7,Vg=8,Yo=9,Gu=E(\"<!-- -->\"),hb=new Map,pE=E(\\' style=\"\\'),L2=E(\":\"),e7=E(\";\"),ra=E(\" \"),Ec=E(\\'=\"\\'),nc=E(\\'\"\\'),ka=E(\\'=\"\"\\'),Nr=E(F(\"javascript:throw new Error(\\'React form unexpectedly submitted.\\')\")),B2=E(\\'<input type=\"hidden\"\\'),mi=E(\">\"),zl=E(\"/>\"),dp=!1,Hl=!1,D2=!1,n0=!1,F2=!1,$g=!1,U2=!1,r0=!1,mE=!1,pb=!1,mb=!1,j2=E(\\' selected=\"\"\\'),jk=E(`addEventListener(\"submit\",function(a){if(!a.defaultPrevented){var c=a.target,d=a.submitter,e=c.action,b=d;if(d){var f=d.getAttribute(\"formAction\");null!=f&&(e=f,b=null)}\"javascript:throw new Error(\\'React form unexpectedly submitted.\\')\"===e&&(a.preventDefault(),b?(a=document.createElement(\"input\"),a.name=b.name,a.value=b.value,b.parentNode.insertBefore(a,b),b=new FormData(c),a.parentNode.removeChild(a)):b=new FormData(c),a=c.ownerDocument||c,(a.$$reactFormReplay=a.$$reactFormReplay||[]).push(c,d,b))}});`),gE=E(\"<!--F!-->\"),yE=E(\"<!--F-->\"),bE=/(<\\\\/|<)(s)(tyle)/gi,z2=E(`\\n`),zk=/^[a-zA-Z][a-zA-Z:_\\\\.\\\\-\\\\d]*$/,vE=new Map,t7=E(\"<!DOCTYPE html>\"),wE=new Map,Hk=E(\\'<template id=\"\\'),qk=E(\\'\"></template>\\'),xE=E(\"<!--$-->\"),Wk=E(\\'<!--$?--><template id=\"\\'),Vk=E(\\'\"></template>\\'),Kg=E(\"<!--$!-->\"),o0=E(\"<!--/$-->\"),$k=E(\"<template\"),H2=E(\\'\"\\'),q2=E(\\' data-dgst=\"\\'),Gg=E(\\' data-msg=\"\\'),W2=E(\\' data-stck=\"\\'),EE=E(\\' data-cstck=\"\\'),i0=E(\"></template>\"),Sc=E(\"<!--\"),V2=E(\"-->\"),SE=E(\\'<div hidden id=\"\\'),Kk=E(\\'\">\\'),kE=E(\"</div>\"),$2=E(\\'<svg aria-hidden=\"true\" style=\"display:none\" id=\"\\'),_E=E(\\'\">\\'),K2=E(\"</svg>\"),Zg=E(\\'<math aria-hidden=\"true\" style=\"display:none\" id=\"\\'),G2=E(\\'\">\\'),CE=E(\"</math>\"),Gk=E(\\'<table hidden id=\"\\'),Zk=E(\\'\">\\'),AE=E(\"</table>\"),Yk=E(\\'<table hidden><tbody id=\"\\'),Qk=E(\\'\">\\'),Yg=E(\"</tbody></table>\"),Z2=E(\\'<table hidden><tr id=\"\\'),th=E(\\'\">\\'),TE=E(\"</tr></table>\"),Jk=E(\\'<table hidden><colgroup id=\"\\'),RE=E(\\'\">\\'),s0=E(\"</colgroup></table>\"),IE=E(\\'$RS=function(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"\\'),Y2=E(\\'$RS(\"\\'),Xk=E(\\'\",\"\\'),OE=E(\\'\")<\\\\/script>\\');E(\\'<template data-rsi=\"\" data-sid=\"\\'),E(\\'\" data-pid=\"\\');var Q2=E(\\'$RC=function(b,c,e){c=document.getElementById(c);c.parentNode.removeChild(c);var a=document.getElementById(b);if(a){b=a.previousSibling;if(e)b.data=\"$!\",a.setAttribute(\"data-dgst\",e);else{e=b.parentNode;a=b.nextSibling;var f=0;do{if(a&&8===a.nodeType){var d=a.data;if(\"/$\"===d)if(0===f)break;else f--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||f++}d=a.nextSibling;e.removeChild(a);a=d}while(a);for(;c.firstChild;)e.insertBefore(c.firstChild,a);b.data=\"$\"}b._reactRetry&&b._reactRetry()}};$RC(\"\\'),a0=E(\\'$RC(\"\\'),gb=E(`$RC=function(b,c,e){c=document.getElementById(c);c.parentNode.removeChild(c);var a=document.getElementById(b);if(a){b=a.previousSibling;if(e)b.data=\"$!\",a.setAttribute(\"data-dgst\",e);else{e=b.parentNode;a=b.nextSibling;var f=0;do{if(a&&8===a.nodeType){var d=a.data;if(\"/$\"===d)if(0===f)break;else f--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||f++}d=a.nextSibling;e.removeChild(a);a=d}while(a);for(;c.firstChild;)e.insertBefore(c.firstChild,a);b.data=\"$\"}b._reactRetry&&b._reactRetry()}};$RM=new Map;\\n$RR=function(t,u,y){function v(n){this._p=null;n()}for(var w=$RC,p=$RM,q=new Map,r=document,g,b,h=r.querySelectorAll(\"link[data-precedence],style[data-precedence]\"),x=[],k=0;b=h[k++];)\"not all\"===b.getAttribute(\"media\")?x.push(b):(\"LINK\"===b.tagName&&p.set(b.getAttribute(\"href\"),b),q.set(b.dataset.precedence,g=b));b=0;h=[];var l,a;for(k=!0;;){if(k){var e=y[b++];if(!e){k=!1;b=0;continue}var c=!1,m=0;var d=e[m++];if(a=p.get(d)){var f=a._p;c=!0}else{a=r.createElement(\"link\");a.href=\\nd;a.rel=\"stylesheet\";for(a.dataset.precedence=l=e[m++];f=e[m++];)a.setAttribute(f,e[m++]);f=a._p=new Promise(function(n,z){a.onload=v.bind(a,n);a.onerror=v.bind(a,z)});p.set(d,a)}d=a.getAttribute(\"media\");!f||d&&!matchMedia(d).matches||h.push(f);if(c)continue}else{a=x[b++];if(!a)break;l=a.getAttribute(\"data-precedence\");a.removeAttribute(\"media\")}c=q.get(l)||g;c===g&&(g=a);q.set(l,a);c?c.parentNode.insertBefore(a,c.nextSibling):(c=r.head,c.insertBefore(a,c.firstChild))}Promise.all(h).then(w.bind(null,\\nt,u,\"\"),w.bind(null,t,u,\"Resource failed to load\"))};$RR(\"`),Qg=E(`$RM=new Map;\\n$RR=function(t,u,y){function v(n){this._p=null;n()}for(var w=$RC,p=$RM,q=new Map,r=document,g,b,h=r.querySelectorAll(\"link[data-precedence],style[data-precedence]\"),x=[],k=0;b=h[k++];)\"not all\"===b.getAttribute(\"media\")?x.push(b):(\"LINK\"===b.tagName&&p.set(b.getAttribute(\"href\"),b),q.set(b.dataset.precedence,g=b));b=0;h=[];var l,a;for(k=!0;;){if(k){var e=y[b++];if(!e){k=!1;b=0;continue}var c=!1,m=0;var d=e[m++];if(a=p.get(d)){var f=a._p;c=!0}else{a=r.createElement(\"link\");a.href=\\nd;a.rel=\"stylesheet\";for(a.dataset.precedence=l=e[m++];f=e[m++];)a.setAttribute(f,e[m++]);f=a._p=new Promise(function(n,z){a.onload=v.bind(a,n);a.onerror=v.bind(a,z)});p.set(d,a)}d=a.getAttribute(\"media\");!f||d&&!matchMedia(d).matches||h.push(f);if(c)continue}else{a=x[b++];if(!a)break;l=a.getAttribute(\"data-precedence\");a.removeAttribute(\"media\")}c=q.get(l)||g;c===g&&(g=a);q.set(l,a);c?c.parentNode.insertBefore(a,c.nextSibling):(c=r.head,c.insertBefore(a,c.firstChild))}Promise.all(h).then(w.bind(null,\\nt,u,\"\"),w.bind(null,t,u,\"Resource failed to load\"))};$RR(\"`),PE=E(\\'$RR(\"\\'),e_=E(\\'\",\"\\'),oa=E(\\'\",\\'),J2=E(\\'\"\\'),X2=E(\")<\\\\/script>\");E(\\'<template data-rci=\"\" data-bid=\"\\'),E(\\'<template data-rri=\"\" data-bid=\"\\'),E(\\'\" data-sid=\"\\'),E(\\'\" data-sty=\"\\');var yb=E(\\'$RX=function(b,c,d,e,f){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),f&&(a.cstck=f),b._reactRetry&&b._reactRetry())};;$RX(\"\\'),il=E(\\'$RX(\"\\'),c0=E(\\'\"\\'),sl=E(\",\"),ME=E(\")<\\\\/script>\");E(\\'<template data-rxi=\"\" data-bid=\"\\'),E(\\'\" data-dgst=\"\\'),E(\\'\" data-msg=\"\\'),E(\\'\" data-stck=\"\\'),E(\\'\" data-cstck=\"\\');var nh=/[<\\\\u2028\\\\u2029]/g,NE=/[&><\\\\u2028\\\\u2029]/g,rh=E(\\'<style media=\"not all\" data-precedence=\"\\'),$d=E(\\'\" data-href=\"\\'),bb=E(\\'\">\\'),ew=E(\"</style>\"),l0=!1,vb=!0,Kd=[],fp=E(\\'<style data-precedence=\"\\'),LE=E(\\'\" data-href=\"\\'),BE=E(\" \"),wb=E(\\'\">\\'),tw=E(\"</style>\"),DE=E(\"[\"),Gd=E(\",[\"),hp=E(\",\"),xb=E(\"]\"),Zu=0,Wi=1,Jg=2,Eb=3,Sb=/[<>\\\\r\\\\n]/g,_o=/[\"\\';,\\\\r\\\\n]/g,Xg=Function.prototype.bind,u0=Symbol.for(\"react.client.reference\"),_a={};Object.freeze(_a);var oh={},ql=null,ey={},ih={},Yu=new Set,d0=new Set,Wl=new Set,pp=new Set,ty=new Set,f0=new Set,al=new Set,FE=new Set,mp=new Set,nw={enqueueSetState:function(w,S,M){var Y=w._reactInternals;Y.queue===null?Hu(w,\"setState\"):(Y.queue.push(S),M!=null&&En(M))},enqueueReplaceState:function(w,S,M){w=w._reactInternals,w.replace=!0,w.queue=[S],M!=null&&En(M)},enqueueForceUpdate:function(w,S){w._reactInternals.queue===null?Hu(w,\"forceUpdate\"):S!=null&&En(S)}},Zd={id:1,overflow:\"\"},h0=Math.clz32?Math.clz32:Cr,t_=Math.log,rw=Math.LN2,Ca=Error(\"Suspense Exception: This is not a real error! It\\'s an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\\\\n\\\\nTo handle async errors, wrap your component in an error boundary, or call the promise\\'s `.catch` method and pass the result to `use`.\"),ny=null,ry=typeof Object.is==\"function\"?Object.is:qu,kc=null,fo=null,kb=null,ow=null,_b=null,fr=null,oy=!1,p0=!1,Yd=0,Qu=0,iy=-1,m0=0,g0=null,rs=null,Vl=0,Qo=!1,sy,sh={readContext:ya,use:function(w){if(w!==null&&typeof w==\"object\"){if(typeof w.then==\"function\")return Qc(w);if(w.$$typeof===ip)return ya(w)}throw Error(\"An unsupported type was passed to use(): \"+String(w))},useContext:function(w){return sy=\"useContext\",ts(),w._currentValue},useMemo:Fl,useReducer:Ja,useRef:function(w){kc=ts(),fr=Yc();var S=fr.memoizedState;return S===null?(w={current:w},Object.seal(w),fr.memoizedState=w):S},useState:function(w){return sy=\"useState\",Ja(Dl,w)},useInsertionEffect:Wf,useLayoutEffect:Wf,useCallback:function(w,S){return Fl(function(){return w},S)},useImperativeHandle:Wf,useEffect:Wf,useDebugValue:Wf,useDeferredValue:function(w,S){return ts(),S!==void 0?S:w},useTransition:function(){return ts(),[!1,Cg]},useId:function(){var w=fo.treeContext,S=w.overflow;w=w.id,w=(w&~(1<<32-h0(w)-1)).toString(32)+S;var M=Os;if(M===null)throw Error(\"Invalid hook call. Hooks can only be called inside of the body of a function component.\");return S=Yd++,w=\"\\\\xAB\"+M.idPrefix+\"R\"+w,0<S&&(w+=\"H\"+S.toString(32)),w+\"\\\\xBB\"},useSyncExternalStore:function(w,S,M){if(M===void 0)throw Error(\"Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.\");return M()},useOptimistic:function(w){return ts(),[w,ri]},useActionState:bc,useFormState:bc,useHostTransitionStatus:function(){return ts(),Qm},useMemoCache:function(w){for(var S=Array(w),M=0;M<w;M++)S[M]=Yr;return S},useCacheRefresh:function(){return Vh}},Os=null,ho=null,n_={getCacheForType:function(){throw Error(\"Not implemented.\")},getOwner:function(){return ho===null?null:ho.componentStack}},y0=0,Cb,iw,Ab,Tb,ay,x,k;Ud.__reactDisabledLog=!0;var P,Q,oe=!1,de=new(typeof WeakMap==\"function\"?WeakMap:Map),Re={\"react-stack-bottom-frame\":function(w,S,M){return w(S,M)}},Pe=Re[\"react-stack-bottom-frame\"].bind(Re),nt={\"react-stack-bottom-frame\":function(w){return w.render()}},Ne=nt[\"react-stack-bottom-frame\"].bind(nt),Et={\"react-stack-bottom-frame\":function(w){var S=w._init;return S(w._payload)}},At=Et[\"react-stack-bottom-frame\"].bind(Et),Rt=0;if(typeof performance==\"object\"&&typeof performance.now==\"function\")var Ft=performance,lt=function(){return Ft.now()};else{var Kn=Date;lt=function(){return Kn.now()}}var Sn=4,mn=0,un=1,Vi=2,cn=5,Tn=14,ro=null,Oi={},$i={},ii={},Co={},_c=!1,Aa=!1,Er=!1;sE(),sE(),HV.prerender=function(w,S){return new Promise(function(M,Y){var re=S?S.onHeaders:void 0,ue;re&&(ue=function(pt){re(new Headers(pt))});var Ee=N(S?S.identifierPrefix:void 0,S?S.unstable_externalRuntimeSrc:void 0,S?S.bootstrapScriptContent:void 0,S?S.bootstrapScripts:void 0,S?S.bootstrapModules:void 0),Ae=Gh(w,Ee,z(Ee,void 0,S?S.unstable_externalRuntimeSrc:void 0,S?S.importMap:void 0,ue,S?S.maxHeadersLength:void 0),q(S?S.namespaceURI:void 0),S?S.progressiveChunkSize:void 0,S?S.onError:void 0,function(){var pt={prelude:new ReadableStream({type:\"bytes\",pull:function(ut){$m(Ae,ut)},cancel:function(ut){Ae.destination=null,rp(Ae,ut)}},{highWaterMark:0})};M(pt)},void 0,void 0,Y,S?S.onPostpone:void 0);if(S&&S.signal){var Le=S.signal;if(Le.aborted)rp(Ae,Le.reason);else{var Ie=function(){rp(Ae,Le.reason),Le.removeEventListener(\"abort\",Ie)};Le.addEventListener(\"abort\",Ie)}}T2(Ae)})},HV.renderToReadableStream=function(w,S){return new Promise(function(M,Y){var re,ue,Ee=new Promise(function(bt,rt){ue=bt,re=rt}),Ae=S?S.onHeaders:void 0,Le;Ae&&(Le=function(bt){Ae(new Headers(bt))});var Ie=N(S?S.identifierPrefix:void 0,S?S.unstable_externalRuntimeSrc:void 0,S?S.bootstrapScriptContent:void 0,S?S.bootstrapScripts:void 0,S?S.bootstrapModules:void 0),pt=Kh(w,Ie,z(Ie,S?S.nonce:void 0,S?S.unstable_externalRuntimeSrc:void 0,S?S.importMap:void 0,Le,S?S.maxHeadersLength:void 0),q(S?S.namespaceURI:void 0),S?S.progressiveChunkSize:void 0,S?S.onError:void 0,ue,function(){var bt=new ReadableStream({type:\"bytes\",pull:function(rt){$m(pt,rt)},cancel:function(rt){pt.destination=null,rp(pt,rt)}},{highWaterMark:0});bt.allReady=Ee,M(bt)},function(bt){Ee.catch(function(){}),Y(bt)},re,S?S.onPostpone:void 0,S?S.formState:void 0);if(S&&S.signal){var ut=S.signal;if(ut.aborted)rp(pt,ut.reason);else{var _t=function(){rp(pt,ut.reason),ut.removeEventListener(\"abort\",_t)};ut.addEventListener(\"abort\",_t)}}T2(pt)})},HV.version=\"19.1.0\"})()});var AMe=be(UT=>{\"use strict\";p();var WV,qV;WV=_Me(),qV=CMe();UT.version=WV.version;UT.renderToString=WV.renderToString;UT.renderToStaticMarkup=WV.renderToStaticMarkup;UT.renderToReadableStream=qV.renderToReadableStream;qV.resume&&(UT.resume=qV.resume)});var IMe=be((vOn,RMe)=>{p();RMe.exports=function(){return typeof Promise==\"function\"&&Promise.prototype&&Promise.prototype.then}});var W3=be(_k=>{p();var Hse,Ayt=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];_k.getSymbolSize=function(e){if(!e)throw new Error(\\'\"version\" cannot be null or undefined\\');if(e<1||e>40)throw new Error(\\'\"version\" should be in range from 1 to 40\\');return e*4+17};_k.getSymbolTotalCodewords=function(e){return Ayt[e]};_k.getBCHDigit=function(t){let e=0;for(;t!==0;)e++,t>>>=1;return e};_k.setToSJISFunction=function(e){if(typeof e!=\"function\")throw new Error(\\'\"toSJISFunc\" is not a valid function.\\');Hse=e};_k.isKanjiModeEnabled=function(){return typeof Hse<\"u\"};_k.toSJIS=function(e){return Hse(e)}});var $V=be(Bm=>{p();Bm.L={bit:1};Bm.M={bit:0};Bm.Q={bit:3};Bm.H={bit:2};function Tyt(t){if(typeof t!=\"string\")throw new Error(\"Param is not a string\");switch(t.toLowerCase()){case\"l\":case\"low\":return Bm.L;case\"m\":case\"medium\":return Bm.M;case\"q\":case\"quartile\":return Bm.Q;case\"h\":case\"high\":return Bm.H;default:throw new Error(\"Unknown EC Level: \"+t)}}Bm.isValid=function(e){return e&&typeof e.bit<\"u\"&&e.bit>=0&&e.bit<4};Bm.from=function(e,n){if(Bm.isValid(e))return e;try{return Tyt(e)}catch{return n}}});var MMe=be((_On,PMe)=>{p();function OMe(){this.buffer=[],this.length=0}OMe.prototype={get:function(t){let e=Math.floor(t/8);return(this.buffer[e]>>>7-t%8&1)===1},put:function(t,e){for(let n=0;n<e;n++)this.putBit((t>>>e-n-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(t){let e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};PMe.exports=OMe});var LMe=be((AOn,NMe)=>{p();function xM(t){if(!t||t<1)throw new Error(\"BitMatrix size must be defined and greater than 0\");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}xM.prototype.set=function(t,e,n,r){let o=t*this.size+e;this.data[o]=n,r&&(this.reservedBit[o]=!0)};xM.prototype.get=function(t,e){return this.data[t*this.size+e]};xM.prototype.xor=function(t,e,n){this.data[t*this.size+e]^=n};xM.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};NMe.exports=xM});var BMe=be(KV=>{p();var Ryt=W3().getSymbolSize;KV.getRowColCoords=function(e){if(e===1)return[];let n=Math.floor(e/7)+2,r=Ryt(e),o=r===145?26:Math.ceil((r-13)/(2*n-2))*2,i=[r-7];for(let a=1;a<n-1;a++)i[a]=i[a-1]-o;return i.push(6),i.reverse()};KV.getPositions=function(e){let n=[],r=KV.getRowColCoords(e),o=r.length;for(let i=0;i<o;i++)for(let a=0;a<o;a++)i===0&&a===0||i===0&&a===o-1||i===o-1&&a===0||n.push([r[i],r[a]]);return n}});var UMe=be(FMe=>{p();var Iyt=W3().getSymbolSize,DMe=7;FMe.getPositions=function(e){let n=Iyt(e);return[[0,0],[n-DMe,0],[0,n-DMe]]}});var jMe=be(qi=>{p();qi.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var Ck={N1:3,N2:3,N3:40,N4:10};qi.isValid=function(e){return e!=null&&e!==\"\"&&!isNaN(e)&&e>=0&&e<=7};qi.from=function(e){return qi.isValid(e)?parseInt(e,10):void 0};qi.getPenaltyN1=function(e){let n=e.size,r=0,o=0,i=0,a=null,c=null;for(let u=0;u<n;u++){o=i=0,a=c=null;for(let d=0;d<n;d++){let h=e.get(u,d);h===a?o++:(o>=5&&(r+=Ck.N1+(o-5)),a=h,o=1),h=e.get(d,u),h===c?i++:(i>=5&&(r+=Ck.N1+(i-5)),c=h,i=1)}o>=5&&(r+=Ck.N1+(o-5)),i>=5&&(r+=Ck.N1+(i-5))}return r};qi.getPenaltyN2=function(e){let n=e.size,r=0;for(let o=0;o<n-1;o++)for(let i=0;i<n-1;i++){let a=e.get(o,i)+e.get(o,i+1)+e.get(o+1,i)+e.get(o+1,i+1);(a===4||a===0)&&r++}return r*Ck.N2};qi.getPenaltyN3=function(e){let n=e.size,r=0,o=0,i=0;for(let a=0;a<n;a++){o=i=0;for(let c=0;c<n;c++)o=o<<1&2047|e.get(a,c),c>=10&&(o===1488||o===93)&&r++,i=i<<1&2047|e.get(c,a),c>=10&&(i===1488||i===93)&&r++}return r*Ck.N3};qi.getPenaltyN4=function(e){let n=0,r=e.data.length;for(let i=0;i<r;i++)n+=e.data[i];return Math.abs(Math.ceil(n*100/r/5)-10)*Ck.N4};function Oyt(t,e,n){switch(t){case qi.Patterns.PATTERN000:return(e+n)%2===0;case qi.Patterns.PATTERN001:return e%2===0;case qi.Patterns.PATTERN010:return n%3===0;case qi.Patterns.PATTERN011:return(e+n)%3===0;case qi.Patterns.PATTERN100:return(Math.floor(e/2)+Math.floor(n/3))%2===0;case qi.Patterns.PATTERN101:return e*n%2+e*n%3===0;case qi.Patterns.PATTERN110:return(e*n%2+e*n%3)%2===0;case qi.Patterns.PATTERN111:return(e*n%3+(e+n)%2)%2===0;default:throw new Error(\"bad maskPattern:\"+t)}}qi.applyMask=function(e,n){let r=n.size;for(let o=0;o<r;o++)for(let i=0;i<r;i++)n.isReserved(i,o)||n.xor(i,o,Oyt(e,i,o))};qi.getBestMask=function(e,n){let r=Object.keys(qi.Patterns).length,o=0,i=1/0;for(let a=0;a<r;a++){n(a),qi.applyMask(a,e);let c=qi.getPenaltyN1(e)+qi.getPenaltyN2(e)+qi.getPenaltyN3(e)+qi.getPenaltyN4(e);qi.applyMask(a,e),c<i&&(i=c,o=a)}return o}});var Wse=be(qse=>{p();var V3=$V(),GV=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],ZV=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];qse.getBlocksCount=function(e,n){switch(n){case V3.L:return GV[(e-1)*4+0];case V3.M:return GV[(e-1)*4+1];case V3.Q:return GV[(e-1)*4+2];case V3.H:return GV[(e-1)*4+3];default:return}};qse.getTotalCodewordsCount=function(e,n){switch(n){case V3.L:return ZV[(e-1)*4+0];case V3.M:return ZV[(e-1)*4+1];case V3.Q:return ZV[(e-1)*4+2];case V3.H:return ZV[(e-1)*4+3];default:return}}});var zMe=be(QV=>{p();var EM=new Uint8Array(512),YV=new Uint8Array(256);(function(){let e=1;for(let n=0;n<255;n++)EM[n]=e,YV[e]=n,e<<=1,e&256&&(e^=285);for(let n=255;n<512;n++)EM[n]=EM[n-255]})();QV.log=function(e){if(e<1)throw new Error(\"log(\"+e+\")\");return YV[e]};QV.exp=function(e){return EM[e]};QV.mul=function(e,n){return e===0||n===0?0:EM[YV[e]+YV[n]]}});var HMe=be(SM=>{p();var Vse=zMe();SM.mul=function(e,n){let r=new Uint8Array(e.length+n.length-1);for(let o=0;o<e.length;o++)for(let i=0;i<n.length;i++)r[o+i]^=Vse.mul(e[o],n[i]);return r};SM.mod=function(e,n){let r=new Uint8Array(e);for(;r.length-n.length>=0;){let o=r[0];for(let a=0;a<n.length;a++)r[a]^=Vse.mul(n[a],o);let i=0;for(;i<r.length&&r[i]===0;)i++;r=r.slice(i)}return r};SM.generateECPolynomial=function(e){let n=new Uint8Array([1]);for(let r=0;r<e;r++)n=SM.mul(n,new Uint8Array([1,Vse.exp(r)]));return n}});var VMe=be((zOn,WMe)=>{p();var qMe=HMe();function $se(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}$se.prototype.initialize=function(e){this.degree=e,this.genPoly=qMe.generateECPolynomial(this.degree)};$se.prototype.encode=function(e){if(!this.genPoly)throw new Error(\"Encoder not initialized\");let n=new Uint8Array(e.length+this.degree);n.set(e);let r=qMe.mod(n,this.genPoly),o=this.degree-r.length;if(o>0){let i=new Uint8Array(this.degree);return i.set(r,o),i}return r};WMe.exports=$se});var Kse=be($Me=>{p();$Me.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}});var Gse=be(b2=>{p();var KMe=\"[0-9]+\",Pyt=\"[A-Z $%*+\\\\\\\\-./:]+\",kM=\"(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+\";kM=kM.replace(/u/g,\"\\\\\\\\u\");var Myt=\"(?:(?![A-Z0-9 $%*+\\\\\\\\-./:]|\"+kM+`)(?:.|[\\\\r\\n]))+`;b2.KANJI=new RegExp(kM,\"g\");b2.BYTE_KANJI=new RegExp(\"[^A-Z0-9 $%*+\\\\\\\\-./:]+\",\"g\");b2.BYTE=new RegExp(Myt,\"g\");b2.NUMERIC=new RegExp(KMe,\"g\");b2.ALPHANUMERIC=new RegExp(Pyt,\"g\");var Nyt=new RegExp(\"^\"+kM+\"$\"),Lyt=new RegExp(\"^\"+KMe+\"$\"),Byt=new RegExp(\"^[A-Z0-9 $%*+\\\\\\\\-./:]+$\");b2.testKanji=function(e){return Nyt.test(e)};b2.testNumeric=function(e){return Lyt.test(e)};b2.testAlphanumeric=function(e){return Byt.test(e)}});var $3=be(Ga=>{p();var Dyt=Kse(),Zse=Gse();Ga.NUMERIC={id:\"Numeric\",bit:1,ccBits:[10,12,14]};Ga.ALPHANUMERIC={id:\"Alphanumeric\",bit:2,ccBits:[9,11,13]};Ga.BYTE={id:\"Byte\",bit:4,ccBits:[8,16,16]};Ga.KANJI={id:\"Kanji\",bit:8,ccBits:[8,10,12]};Ga.MIXED={bit:-1};Ga.getCharCountIndicator=function(e,n){if(!e.ccBits)throw new Error(\"Invalid mode: \"+e);if(!Dyt.isValid(n))throw new Error(\"Invalid version: \"+n);return n>=1&&n<10?e.ccBits[0]:n<27?e.ccBits[1]:e.ccBits[2]};Ga.getBestModeForData=function(e){return Zse.testNumeric(e)?Ga.NUMERIC:Zse.testAlphanumeric(e)?Ga.ALPHANUMERIC:Zse.testKanji(e)?Ga.KANJI:Ga.BYTE};Ga.toString=function(e){if(e&&e.id)return e.id;throw new Error(\"Invalid mode\")};Ga.isValid=function(e){return e&&e.bit&&e.ccBits};function Fyt(t){if(typeof t!=\"string\")throw new Error(\"Param is not a string\");switch(t.toLowerCase()){case\"numeric\":return Ga.NUMERIC;case\"alphanumeric\":return Ga.ALPHANUMERIC;case\"kanji\":return Ga.KANJI;case\"byte\":return Ga.BYTE;default:throw new Error(\"Unknown mode: \"+t)}}Ga.from=function(e,n){if(Ga.isValid(e))return e;try{return Fyt(e)}catch{return n}}});var JMe=be(Ak=>{p();var JV=W3(),Uyt=Wse(),GMe=$V(),K3=$3(),Yse=Kse(),YMe=7973,ZMe=JV.getBCHDigit(YMe);function jyt(t,e,n){for(let r=1;r<=40;r++)if(e<=Ak.getCapacity(r,n,t))return r}function QMe(t,e){return K3.getCharCountIndicator(t,e)+4}function zyt(t,e){let n=0;return t.forEach(function(r){let o=QMe(r.mode,e);n+=o+r.getBitsLength()}),n}function Hyt(t,e){for(let n=1;n<=40;n++)if(zyt(t,n)<=Ak.getCapacity(n,e,K3.MIXED))return n}Ak.from=function(e,n){return Yse.isValid(e)?parseInt(e,10):n};Ak.getCapacity=function(e,n,r){if(!Yse.isValid(e))throw new Error(\"Invalid QR Code version\");typeof r>\"u\"&&(r=K3.BYTE);let o=JV.getSymbolTotalCodewords(e),i=Uyt.getTotalCodewordsCount(e,n),a=(o-i)*8;if(r===K3.MIXED)return a;let c=a-QMe(r,e);switch(r){case K3.NUMERIC:return Math.floor(c/10*3);case K3.ALPHANUMERIC:return Math.floor(c/11*2);case K3.KANJI:return Math.floor(c/13);case K3.BYTE:default:return Math.floor(c/8)}};Ak.getBestVersionForData=function(e,n){let r,o=GMe.from(n,GMe.M);if(Array.isArray(e)){if(e.length>1)return Hyt(e,o);if(e.length===0)return 1;r=e[0]}else r=e;return jyt(r.mode,r.getLength(),o)};Ak.getEncodedBits=function(e){if(!Yse.isValid(e)||e<7)throw new Error(\"Invalid QR Code version\");let n=e<<12;for(;JV.getBCHDigit(n)-ZMe>=0;)n^=YMe<<JV.getBCHDigit(n)-ZMe;return e<<12|n}});var nNe=be(tNe=>{p();var Qse=W3(),eNe=1335,qyt=21522,XMe=Qse.getBCHDigit(eNe);tNe.getEncodedBits=function(e,n){let r=e.bit<<3|n,o=r<<10;for(;Qse.getBCHDigit(o)-XMe>=0;)o^=eNe<<Qse.getBCHDigit(o)-XMe;return(r<<10|o)^qyt}});var oNe=be((XOn,rNe)=>{p();var Wyt=$3();function jT(t){this.mode=Wyt.NUMERIC,this.data=t.toString()}jT.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)};jT.prototype.getLength=function(){return this.data.length};jT.prototype.getBitsLength=function(){return jT.getBitsLength(this.data.length)};jT.prototype.write=function(e){let n,r,o;for(n=0;n+3<=this.data.length;n+=3)r=this.data.substr(n,3),o=parseInt(r,10),e.put(o,10);let i=this.data.length-n;i>0&&(r=this.data.substr(n),o=parseInt(r,10),e.put(o,i*3+1))};rNe.exports=jT});var sNe=be((tPn,iNe)=>{p();var Vyt=$3(),Jse=[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"A\",\"B\",\"C\",\"D\",\"E\",\"F\",\"G\",\"H\",\"I\",\"J\",\"K\",\"L\",\"M\",\"N\",\"O\",\"P\",\"Q\",\"R\",\"S\",\"T\",\"U\",\"V\",\"W\",\"X\",\"Y\",\"Z\",\" \",\"$\",\"%\",\"*\",\"+\",\"-\",\".\",\"/\",\":\"];function zT(t){this.mode=Vyt.ALPHANUMERIC,this.data=t}zT.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)};zT.prototype.getLength=function(){return this.data.length};zT.prototype.getBitsLength=function(){return zT.getBitsLength(this.data.length)};zT.prototype.write=function(e){let n;for(n=0;n+2<=this.data.length;n+=2){let r=Jse.indexOf(this.data[n])*45;r+=Jse.indexOf(this.data[n+1]),e.put(r,11)}this.data.length%2&&e.put(Jse.indexOf(this.data[n]),6)};iNe.exports=zT});var cNe=be((rPn,aNe)=>{p();var $yt=$3();function HT(t){this.mode=$yt.BYTE,typeof t==\"string\"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}HT.getBitsLength=function(e){return e*8};HT.prototype.getLength=function(){return this.data.length};HT.prototype.getBitsLength=function(){return HT.getBitsLength(this.data.length)};HT.prototype.write=function(t){for(let e=0,n=this.data.length;e<n;e++)t.put(this.data[e],8)};aNe.exports=HT});var uNe=be((iPn,lNe)=>{p();var Kyt=$3(),Gyt=W3();function qT(t){this.mode=Kyt.KANJI,this.data=t}qT.getBitsLength=function(e){return e*13};qT.prototype.getLength=function(){return this.data.length};qT.prototype.getBitsLength=function(){return qT.getBitsLength(this.data.length)};qT.prototype.write=function(t){let e;for(e=0;e<this.data.length;e++){let n=Gyt.toSJIS(this.data[e]);if(n>=33088&&n<=40956)n-=33088;else if(n>=57408&&n<=60351)n-=49472;else throw new Error(\"Invalid SJIS character: \"+this.data[e]+`\\nMake sure your charset is UTF-8`);n=(n>>>8&255)*192+(n&255),t.put(n,13)}};lNe.exports=qT});var dNe=be((aPn,Xse)=>{\"use strict\";p();var _M={single_source_shortest_paths:function(t,e,n){var r={},o={};o[e]=0;var i=_M.PriorityQueue.make();i.push(e,0);for(var a,c,u,d,h,m,g,b,E;!i.empty();){a=i.pop(),c=a.value,d=a.cost,h=t[c]||{};for(u in h)h.hasOwnProperty(u)&&(m=h[u],g=d+m,b=o[u],E=typeof o[u]>\"u\",(E||b>g)&&(o[u]=g,i.push(u,g),r[u]=c))}if(typeof n<\"u\"&&typeof o[n]>\"u\"){var C=[\"Could not find a path from \",e,\" to \",n,\".\"].join(\"\");throw new Error(C)}return r},extract_shortest_path_from_predecessor_list:function(t,e){for(var n=[],r=e,o;r;)n.push(r),o=t[r],r=t[r];return n.reverse(),n},find_path:function(t,e,n){var r=_M.single_source_shortest_paths(t,e,n);return _M.extract_shortest_path_from_predecessor_list(r,n)},PriorityQueue:{make:function(t){var e=_M.PriorityQueue,n={},r;t=t||{};for(r in e)e.hasOwnProperty(r)&&(n[r]=e[r]);return n.queue=[],n.sorter=t.sorter||e.default_sorter,n},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var n={value:t,cost:e};this.queue.push(n),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof Xse<\"u\"&&(Xse.exports=_M)});var vNe=be(WT=>{p();var Go=$3(),pNe=oNe(),mNe=sNe(),gNe=cNe(),yNe=uNe(),CM=Gse(),XV=W3(),Zyt=dNe();function fNe(t){return unescape(encodeURIComponent(t)).length}function AM(t,e,n){let r=[],o;for(;(o=t.exec(n))!==null;)r.push({data:o[0],index:o.index,mode:e,length:o[0].length});return r}function bNe(t){let e=AM(CM.NUMERIC,Go.NUMERIC,t),n=AM(CM.ALPHANUMERIC,Go.ALPHANUMERIC,t),r,o;return XV.isKanjiModeEnabled()?(r=AM(CM.BYTE,Go.BYTE,t),o=AM(CM.KANJI,Go.KANJI,t)):(r=AM(CM.BYTE_KANJI,Go.BYTE,t),o=[]),e.concat(n,r,o).sort(function(a,c){return a.index-c.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function eae(t,e){switch(e){case Go.NUMERIC:return pNe.getBitsLength(t);case Go.ALPHANUMERIC:return mNe.getBitsLength(t);case Go.KANJI:return yNe.getBitsLength(t);case Go.BYTE:return gNe.getBitsLength(t)}}function Yyt(t){return t.reduce(function(e,n){let r=e.length-1>=0?e[e.length-1]:null;return r&&r.mode===n.mode?(e[e.length-1].data+=n.data,e):(e.push(n),e)},[])}function Qyt(t){let e=[];for(let n=0;n<t.length;n++){let r=t[n];switch(r.mode){case Go.NUMERIC:e.push([r,{data:r.data,mode:Go.ALPHANUMERIC,length:r.length},{data:r.data,mode:Go.BYTE,length:r.length}]);break;case Go.ALPHANUMERIC:e.push([r,{data:r.data,mode:Go.BYTE,length:r.length}]);break;case Go.KANJI:e.push([r,{data:r.data,mode:Go.BYTE,length:fNe(r.data)}]);break;case Go.BYTE:e.push([{data:r.data,mode:Go.BYTE,length:fNe(r.data)}])}}return e}function Jyt(t,e){let n={},r={start:{}},o=[\"start\"];for(let i=0;i<t.length;i++){let a=t[i],c=[];for(let u=0;u<a.length;u++){let d=a[u],h=\"\"+i+u;c.push(h),n[h]={node:d,lastCount:0},r[h]={};for(let m=0;m<o.length;m++){let g=o[m];n[g]&&n[g].node.mode===d.mode?(r[g][h]=eae(n[g].lastCount+d.length,d.mode)-eae(n[g].lastCount,d.mode),n[g].lastCount+=d.length):(n[g]&&(n[g].lastCount=d.length),r[g][h]=eae(d.length,d.mode)+4+Go.getCharCountIndicator(d.mode,e))}}o=c}for(let i=0;i<o.length;i++)r[o[i]].end=0;return{map:r,table:n}}function hNe(t,e){let n,r=Go.getBestModeForData(t);if(n=Go.from(e,r),n!==Go.BYTE&&n.bit<r.bit)throw new Error(\\'\"\\'+t+\\'\" cannot be encoded with mode \\'+Go.toString(n)+`.\\n Suggested mode is: `+Go.toString(r));switch(n===Go.KANJI&&!XV.isKanjiModeEnabled()&&(n=Go.BYTE),n){case Go.NUMERIC:return new pNe(t);case Go.ALPHANUMERIC:return new mNe(t);case Go.KANJI:return new yNe(t);case Go.BYTE:return new gNe(t)}}WT.fromArray=function(e){return e.reduce(function(n,r){return typeof r==\"string\"?n.push(hNe(r,null)):r.data&&n.push(hNe(r.data,r.mode)),n},[])};WT.fromString=function(e,n){let r=bNe(e,XV.isKanjiModeEnabled()),o=Qyt(r),i=Jyt(o,n),a=Zyt.find_path(i.map,\"start\",\"end\"),c=[];for(let u=1;u<a.length-1;u++)c.push(i.table[a[u]].node);return WT.fromArray(Yyt(c))};WT.rawSplit=function(e){return WT.fromArray(bNe(e,XV.isKanjiModeEnabled()))}});var xNe=be(wNe=>{p();var t$=W3(),tae=$V(),Xyt=MMe(),e1t=LMe(),t1t=BMe(),n1t=UMe(),oae=jMe(),iae=Wse(),r1t=VMe(),e$=JMe(),o1t=nNe(),i1t=$3(),nae=vNe();function s1t(t,e){let n=t.size,r=n1t.getPositions(e);for(let o=0;o<r.length;o++){let i=r[o][0],a=r[o][1];for(let c=-1;c<=7;c++)if(!(i+c<=-1||n<=i+c))for(let u=-1;u<=7;u++)a+u<=-1||n<=a+u||(c>=0&&c<=6&&(u===0||u===6)||u>=0&&u<=6&&(c===0||c===6)||c>=2&&c<=4&&u>=2&&u<=4?t.set(i+c,a+u,!0,!0):t.set(i+c,a+u,!1,!0))}}function a1t(t){let e=t.size;for(let n=8;n<e-8;n++){let r=n%2===0;t.set(n,6,r,!0),t.set(6,n,r,!0)}}function c1t(t,e){let n=t1t.getPositions(e);for(let r=0;r<n.length;r++){let o=n[r][0],i=n[r][1];for(let a=-2;a<=2;a++)for(let c=-2;c<=2;c++)a===-2||a===2||c===-2||c===2||a===0&&c===0?t.set(o+a,i+c,!0,!0):t.set(o+a,i+c,!1,!0)}}function l1t(t,e){let n=t.size,r=e$.getEncodedBits(e),o,i,a;for(let c=0;c<18;c++)o=Math.floor(c/3),i=c%3+n-8-3,a=(r>>c&1)===1,t.set(o,i,a,!0),t.set(i,o,a,!0)}function rae(t,e,n){let r=t.size,o=o1t.getEncodedBits(e,n),i,a;for(i=0;i<15;i++)a=(o>>i&1)===1,i<6?t.set(i,8,a,!0):i<8?t.set(i+1,8,a,!0):t.set(r-15+i,8,a,!0),i<8?t.set(8,r-i-1,a,!0):i<9?t.set(8,15-i-1+1,a,!0):t.set(8,15-i-1,a,!0);t.set(r-8,8,1,!0)}function u1t(t,e){let n=t.size,r=-1,o=n-1,i=7,a=0;for(let c=n-1;c>0;c-=2)for(c===6&&c--;;){for(let u=0;u<2;u++)if(!t.isReserved(o,c-u)){let d=!1;a<e.length&&(d=(e[a]>>>i&1)===1),t.set(o,c-u,d),i--,i===-1&&(a++,i=7)}if(o+=r,o<0||n<=o){o-=r,r=-r;break}}}function d1t(t,e,n){let r=new Xyt;n.forEach(function(u){r.put(u.mode.bit,4),r.put(u.getLength(),i1t.getCharCountIndicator(u.mode,t)),u.write(r)});let o=t$.getSymbolTotalCodewords(t),i=iae.getTotalCodewordsCount(t,e),a=(o-i)*8;for(r.getLengthInBits()+4<=a&&r.put(0,4);r.getLengthInBits()%8!==0;)r.putBit(0);let c=(a-r.getLengthInBits())/8;for(let u=0;u<c;u++)r.put(u%2?17:236,8);return f1t(r,t,e)}function f1t(t,e,n){let r=t$.getSymbolTotalCodewords(e),o=iae.getTotalCodewordsCount(e,n),i=r-o,a=iae.getBlocksCount(e,n),c=r%a,u=a-c,d=Math.floor(r/a),h=Math.floor(i/a),m=h+1,g=d-h,b=new r1t(g),E=0,C=new Array(a),T=new Array(a),R=0,L=new Uint8Array(t.buffer);for(let ne=0;ne<a;ne++){let ie=ne<u?h:m;C[ne]=L.slice(E,E+ie),T[ne]=b.encode(C[ne]),E+=ie,R=Math.max(R,ie)}let D=new Uint8Array(r),G=0,W,J;for(W=0;W<R;W++)for(J=0;J<a;J++)W<C[J].length&&(D[G++]=C[J][W]);for(W=0;W<g;W++)for(J=0;J<a;J++)D[G++]=T[J][W];return D}function h1t(t,e,n,r){let o;if(Array.isArray(t))o=nae.fromArray(t);else if(typeof t==\"string\"){let d=e;if(!d){let h=nae.rawSplit(t);d=e$.getBestVersionForData(h,n)}o=nae.fromString(t,d||40)}else throw new Error(\"Invalid data\");let i=e$.getBestVersionForData(o,n);if(!i)throw new Error(\"The amount of data is too big to be stored in a QR Code\");if(!e)e=i;else if(e<i)throw new Error(`\\nThe chosen QR Code version cannot contain this amount of data.\\nMinimum version required to store current data is: `+i+`.\\n`);let a=d1t(e,n,o),c=t$.getSymbolSize(e),u=new e1t(c);return s1t(u,e),a1t(u),c1t(u,e),rae(u,n,0),e>=7&&l1t(u,e),u1t(u,a),isNaN(r)&&(r=oae.getBestMask(u,rae.bind(null,u,n))),oae.applyMask(r,u),rae(u,n,r),{modules:u,version:e,errorCorrectionLevel:n,maskPattern:r,segments:o}}wNe.create=function(e,n){if(typeof e>\"u\"||e===\"\")throw new Error(\"No input text\");let r=tae.M,o,i;return typeof n<\"u\"&&(r=tae.from(n.errorCorrectionLevel,tae.M),o=e$.from(n.version),i=oae.from(n.maskPattern),n.toSJISFunc&&t$.setToSJISFunction(n.toSJISFunc)),h1t(e,o,r,i)}});var sae=be(Tk=>{p();function ENe(t){if(typeof t==\"number\"&&(t=t.toString()),typeof t!=\"string\")throw new Error(\"Color should be defined as hex string\");let e=t.slice().replace(\"#\",\"\").split(\"\");if(e.length<3||e.length===5||e.length>8)throw new Error(\"Invalid hex color: \"+t);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(r){return[r,r]}))),e.length===6&&e.push(\"F\",\"F\");let n=parseInt(e.join(\"\"),16);return{r:n>>24&255,g:n>>16&255,b:n>>8&255,a:n&255,hex:\"#\"+e.slice(0,6).join(\"\")}}Tk.getOptions=function(e){e||(e={}),e.color||(e.color={});let n=typeof e.margin>\"u\"||e.margin===null||e.margin<0?4:e.margin,r=e.width&&e.width>=21?e.width:void 0,o=e.scale||4;return{width:r,scale:r?4:o,margin:n,color:{dark:ENe(e.color.dark||\"#000000ff\"),light:ENe(e.color.light||\"#ffffffff\")},type:e.type,rendererOpts:e.rendererOpts||{}}};Tk.getScale=function(e,n){return n.width&&n.width>=e+n.margin*2?n.width/(e+n.margin*2):n.scale};Tk.getImageWidth=function(e,n){let r=Tk.getScale(e,n);return Math.floor((e+n.margin*2)*r)};Tk.qrToImageData=function(e,n,r){let o=n.modules.size,i=n.modules.data,a=Tk.getScale(o,r),c=Math.floor((o+r.margin*2)*a),u=r.margin*a,d=[r.color.light,r.color.dark];for(let h=0;h<c;h++)for(let m=0;m<c;m++){let g=(h*c+m)*4,b=r.color.light;if(h>=u&&m>=u&&h<c-u&&m<c-u){let E=Math.floor((h-u)/a),C=Math.floor((m-u)/a);b=d[i[E*o+C]?1:0]}e[g++]=b.r,e[g++]=b.g,e[g++]=b.b,e[g]=b.a}}});var SNe=be(n$=>{p();var aae=sae();function p1t(t,e,n){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=n,e.width=n,e.style.height=n+\"px\",e.style.width=n+\"px\"}function m1t(){try{return document.createElement(\"canvas\")}catch{throw new Error(\"You need to specify a canvas element\")}}n$.render=function(e,n,r){let o=r,i=n;typeof o>\"u\"&&(!n||!n.getContext)&&(o=n,n=void 0),n||(i=m1t()),o=aae.getOptions(o);let a=aae.getImageWidth(e.modules.size,o),c=i.getContext(\"2d\"),u=c.createImageData(a,a);return aae.qrToImageData(u.data,e,o),p1t(c,i,a),c.putImageData(u,0,0),i};n$.renderToDataURL=function(e,n,r){let o=r;typeof o>\"u\"&&(!n||!n.getContext)&&(o=n,n=void 0),o||(o={});let i=n$.render(e,n,o),a=o.type||\"image/png\",c=o.rendererOpts||{};return i.toDataURL(a,c.quality)}});var CNe=be(_Ne=>{p();var g1t=sae();function kNe(t,e){let n=t.a/255,r=e+\\'=\"\\'+t.hex+\\'\"\\';return n<1?r+\" \"+e+\\'-opacity=\"\\'+n.toFixed(2).slice(1)+\\'\"\\':r}function cae(t,e,n){let r=t+e;return typeof n<\"u\"&&(r+=\" \"+n),r}function y1t(t,e,n){let r=\"\",o=0,i=!1,a=0;for(let c=0;c<t.length;c++){let u=Math.floor(c%e),d=Math.floor(c/e);!u&&!i&&(i=!0),t[c]?(a++,c>0&&u>0&&t[c-1]||(r+=i?cae(\"M\",u+n,.5+d+n):cae(\"m\",o,0),o=0,i=!1),u+1<e&&t[c+1]||(r+=cae(\"h\",a),a=0)):o++}return r}_Ne.render=function(e,n,r){let o=g1t.getOptions(n),i=e.modules.size,a=e.modules.data,c=i+o.margin*2,u=o.color.light.a?\"<path \"+kNe(o.color.light,\"fill\")+\\' d=\"M0 0h\\'+c+\"v\"+c+\\'H0z\"/>\\':\"\",d=\"<path \"+kNe(o.color.dark,\"stroke\")+\\' d=\"\\'+y1t(a,i,o.margin)+\\'\"/>\\',h=\\'viewBox=\"0 0 \\'+c+\" \"+c+\\'\"\\',g=\\'<svg xmlns=\"http://www.w3.org/2000/svg\" \\'+(o.width?\\'width=\"\\'+o.width+\\'\" height=\"\\'+o.width+\\'\" \\':\"\")+h+\\' shape-rendering=\"crispEdges\">\\'+u+d+`</svg>\\n`;return typeof r==\"function\"&&r(null,g),g}});var TNe=be(TM=>{p();var b1t=IMe(),lae=xNe(),ANe=SNe(),v1t=CNe();function uae(t,e,n,r,o){let i=[].slice.call(arguments,1),a=i.length,c=typeof i[a-1]==\"function\";if(!c&&!b1t())throw new Error(\"Callback required as last argument\");if(c){if(a<2)throw new Error(\"Too few arguments provided\");a===2?(o=n,n=e,e=r=void 0):a===3&&(e.getContext&&typeof o>\"u\"?(o=r,r=void 0):(o=r,r=n,n=e,e=void 0))}else{if(a<1)throw new Error(\"Too few arguments provided\");return a===1?(n=e,e=r=void 0):a===2&&!e.getContext&&(r=n,n=e,e=void 0),new Promise(function(u,d){try{let h=lae.create(n,r);u(t(h,e,r))}catch(h){d(h)}})}try{let u=lae.create(n,r);o(null,t(u,e,r))}catch(u){o(u)}}TM.create=lae.create;TM.toCanvas=uae.bind(null,ANe.render);TM.toDataURL=uae.bind(null,ANe.renderToDataURL);TM.toString=uae.bind(null,function(t,e,n){return v1t.render(t,n)})});p();var GBe=he(ide());p();p();p();Si();function e6({chainId:t,isMainnetOnly:e=!1}){return!!(e&&t===Yn.id||!e&&(t===xs.id||t===Yn.id))}p();Si();function t6({chainId:t,isMainnetOnly:e=!1}){return!!(e&&t===li.id||!e&&(t===ZR.id||t===li.id))}p();Si();var bh={address:null,apiKey:null,chain:xs,config:{analytics:!0,analyticsUrl:null,appearance:{name:null,logo:null,mode:null,theme:null},paymaster:null,wallet:{display:null,termsUrl:null,privacyUrl:null,supportedWallets:{rabby:!1,trust:!1,frame:!1}}},rpcUrl:null,schemaId:null,projectId:null,sessionId:null},Jw=t=>bh[t],hZ=t=>(Object.assign(bh,t),Jw);p();var CW=he(De(),1);var wg=he(et(),1);p();var GO=he(De(),1);p();p();p();p();p();var Kp=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(t){return this.listeners.add(t),this.onSubscribe(),()=>{this.listeners.delete(t),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};p();var yf=typeof window>\"u\"||\"Deno\"in globalThis;function zs(){}function bhe(t,e){return typeof t==\"function\"?t(e):t}function YR(t){return typeof t==\"number\"&&t>=0&&t!==1/0}function pB(t,e){return Math.max(t+(e||0)-Date.now(),0)}function V0(t,e){return typeof t==\"function\"?t(e):t}function vh(t,e){return typeof t==\"function\"?t(e):t}function mB(t,e){let{type:n=\"all\",exact:r,fetchStatus:o,predicate:i,queryKey:a,stale:c}=t;if(a){if(r){if(e.queryHash!==QR(a,e.options))return!1}else if(!r6(e.queryKey,a))return!1}if(n!==\"all\"){let u=e.isActive();if(n===\"active\"&&!u||n===\"inactive\"&&u)return!1}return!(typeof c==\"boolean\"&&e.isStale()!==c||o&&o!==e.state.fetchStatus||i&&!i(e))}function gB(t,e){let{exact:n,status:r,predicate:o,mutationKey:i}=t;if(i){if(!e.options.mutationKey)return!1;if(n){if(Ny(e.options.mutationKey)!==Ny(i))return!1}else if(!r6(e.options.mutationKey,i))return!1}return!(r&&e.state.status!==r||o&&!o(e))}function QR(t,e){return(e?.queryKeyHashFn||Ny)(t)}function Ny(t){return JSON.stringify(t,(e,n)=>pZ(n)?Object.keys(n).sort().reduce((r,o)=>(r[o]=n[o],r),{}):n)}function r6(t,e){return t===e?!0:typeof t!=typeof e?!1:t&&e&&typeof t==\"object\"&&typeof e==\"object\"?Object.keys(e).every(n=>r6(t[n],e[n])):!1}function L4(t,e){if(t===e)return t;let n=ghe(t)&&ghe(e);if(n||pZ(t)&&pZ(e)){let r=n?t:Object.keys(t),o=r.length,i=n?e:Object.keys(e),a=i.length,c=n?[]:{},u=new Set(r),d=0;for(let h=0;h<a;h++){let m=n?h:i[h];(!n&&u.has(m)||n)&&t[m]===void 0&&e[m]===void 0?(c[m]=void 0,d++):(c[m]=L4(t[m],e[m]),c[m]===t[m]&&t[m]!==void 0&&d++)}return o===a&&d===o?t:c}return e}function B4(t,e){if(!e||Object.keys(t).length!==Object.keys(e).length)return!1;for(let n in t)if(t[n]!==e[n])return!1;return!0}function ghe(t){return Array.isArray(t)&&t.length===Object.keys(t).length}function pZ(t){if(!yhe(t))return!1;let e=t.constructor;if(e===void 0)return!0;let n=e.prototype;return!(!yhe(n)||!n.hasOwnProperty(\"isPrototypeOf\")||Object.getPrototypeOf(t)!==Object.prototype)}function yhe(t){return Object.prototype.toString.call(t)===\"[object Object]\"}function vhe(t){return new Promise(e=>{setTimeout(e,t)})}function JR(t,e,n){if(typeof n.structuralSharing==\"function\")return n.structuralSharing(t,e);if(n.structuralSharing!==!1){try{return L4(t,e)}catch(r){throw console.error(`Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${n.queryHash}]: ${r}`),r}return L4(t,e)}return e}function whe(t,e,n=0){let r=[...t,e];return n&&r.length>n?r.slice(1):r}function xhe(t,e,n=0){let r=[e,...t];return n&&r.length>n?r.slice(0,-1):r}var n6=Symbol();function yB(t,e){return t.queryFn===n6&&console.error(`Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: \\'${t.queryHash}\\'`),!t.queryFn&&e?.initialPromise?()=>e.initialPromise:!t.queryFn||t.queryFn===n6?()=>Promise.reject(new Error(`Missing queryFn: \\'${t.queryHash}\\'`)):t.queryFn}function XR(t,e){return typeof t==\"function\"?t(...e):!!t}var o6,Xw,D4,Ehe,rze=(Ehe=class extends Kp{constructor(){super();an(this,o6);an(this,Xw);an(this,D4);Nt(this,D4,e=>{if(!yf&&window.addEventListener){let n=()=>e();return window.addEventListener(\"visibilitychange\",n,!1),()=>{window.removeEventListener(\"visibilitychange\",n)}}})}onSubscribe(){Ce(this,Xw)||this.setEventListener(Ce(this,D4))}onUnsubscribe(){var e;this.hasListeners()||((e=Ce(this,Xw))==null||e.call(this),Nt(this,Xw,void 0))}setEventListener(e){var n;Nt(this,D4,e),(n=Ce(this,Xw))==null||n.call(this),Nt(this,Xw,e(r=>{typeof r==\"boolean\"?this.setFocused(r):this.onFocus()}))}setFocused(e){Ce(this,o6)!==e&&(Nt(this,o6,e),this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(n=>{n(e)})}isFocused(){return typeof Ce(this,o6)==\"boolean\"?Ce(this,o6):globalThis.document?.visibilityState!==\"hidden\"}},o6=new WeakMap,Xw=new WeakMap,D4=new WeakMap,Ehe),F4=new rze;p();var U4,ex,j4,She,oze=(She=class extends Kp{constructor(){super();an(this,U4,!0);an(this,ex);an(this,j4);Nt(this,j4,e=>{if(!yf&&window.addEventListener){let n=()=>e(!0),r=()=>e(!1);return window.addEventListener(\"online\",n,!1),window.addEventListener(\"offline\",r,!1),()=>{window.removeEventListener(\"online\",n),window.removeEventListener(\"offline\",r)}}})}onSubscribe(){Ce(this,ex)||this.setEventListener(Ce(this,j4))}onUnsubscribe(){var e;this.hasListeners()||((e=Ce(this,ex))==null||e.call(this),Nt(this,ex,void 0))}setEventListener(e){var n;Nt(this,j4,e),(n=Ce(this,ex))==null||n.call(this),Nt(this,ex,e(this.setOnline.bind(this)))}setOnline(e){Ce(this,U4)!==e&&(Nt(this,U4,e),this.listeners.forEach(r=>{r(e)}))}isOnline(){return Ce(this,U4)}},U4=new WeakMap,ex=new WeakMap,j4=new WeakMap,She),z4=new oze;p();function e9(){let t,e,n=new Promise((o,i)=>{t=o,e=i});n.status=\"pending\",n.catch(()=>{});function r(o){Object.assign(n,o),delete n.resolve,delete n.reject}return n.resolve=o=>{r({status:\"fulfilled\",value:o}),t(o)},n.reject=o=>{r({status:\"rejected\",reason:o}),e(o)},n}function ize(t){return Math.min(1e3*2**t,3e4)}function mZ(t){return(t??\"online\")===\"online\"?z4.isOnline():!0}var khe=class extends Error{constructor(t){super(\"CancelledError\"),this.revert=t?.revert,this.silent=t?.silent}};function bB(t){return t instanceof khe}function vB(t){let e=!1,n=0,r=!1,o,i=e9(),a=C=>{r||(g(new khe(C)),t.abort?.())},c=()=>{e=!0},u=()=>{e=!1},d=()=>F4.isFocused()&&(t.networkMode===\"always\"||z4.isOnline())&&t.canRun(),h=()=>mZ(t.networkMode)&&t.canRun(),m=C=>{r||(r=!0,t.onSuccess?.(C),o?.(),i.resolve(C))},g=C=>{r||(r=!0,t.onError?.(C),o?.(),i.reject(C))},b=()=>new Promise(C=>{o=T=>{(r||d())&&C(T)},t.onPause?.()}).then(()=>{o=void 0,r||t.onContinue?.()}),E=()=>{if(r)return;let C,T=n===0?t.initialPromise:void 0;try{C=T??t.fn()}catch(R){C=Promise.reject(R)}Promise.resolve(C).then(m).catch(R=>{if(r)return;let L=t.retry??(yf?0:3),D=t.retryDelay??ize,G=typeof D==\"function\"?D(n,R):D,W=L===!0||typeof L==\"number\"&&n<L||typeof L==\"function\"&&L(n,R);if(e||!W){g(R);return}n++,t.onFail?.(n,R),vhe(G).then(()=>d()?void 0:b()).then(()=>{e?g(R):E()})})};return{promise:i,cancel:a,continue:()=>(o?.(),i),cancelRetry:c,continueRetry:u,canStart:h,start:()=>(h()?E():b().then(E),i)}}p();p();p();var _he=t=>setTimeout(t,0);function sze(){let t=[],e=0,n=c=>{c()},r=c=>{c()},o=_he,i=c=>{e?t.push(c):o(()=>{n(c)})},a=()=>{let c=t;t=[],c.length&&o(()=>{r(()=>{c.forEach(u=>{n(u)})})})};return{batch:c=>{let u;e++;try{u=c()}finally{e--,e||a()}return u},batchCalls:c=>(...u)=>{i(()=>{c(...u)})},schedule:i,setNotifyFunction:c=>{n=c},setBatchNotifyFunction:c=>{r=c},setScheduler:c=>{o=c}}}var ti=sze();p();var i6,Che,wB=(Che=class{constructor(){an(this,i6)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),YR(this.gcTime)&&Nt(this,i6,setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(t){this.gcTime=Math.max(this.gcTime||0,t??(yf?1/0:5*60*1e3))}clearGcTimeout(){Ce(this,i6)&&(clearTimeout(Ce(this,i6)),Nt(this,i6,void 0))}},i6=new WeakMap,Che);var H4,s6,Gp,a6,lu,t9,c6,$0,cv,Ahe,The=(Ahe=class extends wB{constructor(e){super();an(this,$0);an(this,H4);an(this,s6);an(this,Gp);an(this,a6);an(this,lu);an(this,t9);an(this,c6);Nt(this,c6,!1),Nt(this,t9,e.defaultOptions),this.setOptions(e.options),this.observers=[],Nt(this,a6,e.client),Nt(this,Gp,Ce(this,a6).getQueryCache()),this.queryKey=e.queryKey,this.queryHash=e.queryHash,Nt(this,H4,aze(this.options)),this.state=e.state??Ce(this,H4),this.scheduleGc()}get meta(){return this.options.meta}get promise(){return Ce(this,lu)?.promise}setOptions(e){this.options={...Ce(this,t9),...e},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus===\"idle\"&&Ce(this,Gp).remove(this)}setData(e,n){let r=JR(this.state.data,e,this.options);return Zn(this,$0,cv).call(this,{data:r,type:\"success\",dataUpdatedAt:n?.updatedAt,manual:n?.manual}),r}setState(e,n){Zn(this,$0,cv).call(this,{type:\"setState\",state:e,setStateOptions:n})}cancel(e){let n=Ce(this,lu)?.promise;return Ce(this,lu)?.cancel(e),n?n.then(zs).catch(zs):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(Ce(this,H4))}isActive(){return this.observers.some(e=>vh(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===n6||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>V0(e.options.staleTime,this)===\"static\"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===\"static\"?!1:this.state.isInvalidated?!0:!pB(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(n=>n.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),Ce(this,lu)?.continue()}onOnline(){this.observers.find(n=>n.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),Ce(this,lu)?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),Ce(this,Gp).notify({type:\"observerAdded\",query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(n=>n!==e),this.observers.length||(Ce(this,lu)&&(Ce(this,c6)?Ce(this,lu).cancel({revert:!0}):Ce(this,lu).cancelRetry()),this.scheduleGc()),Ce(this,Gp).notify({type:\"observerRemoved\",query:this,observer:e}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||Zn(this,$0,cv).call(this,{type:\"invalidate\"})}fetch(e,n){if(this.state.fetchStatus!==\"idle\"){if(this.state.data!==void 0&&n?.cancelRefetch)this.cancel({silent:!0});else if(Ce(this,lu))return Ce(this,lu).continueRetry(),Ce(this,lu).promise}if(e&&this.setOptions(e),!this.options.queryFn){let d=this.observers.find(h=>h.options.queryFn);d&&this.setOptions(d.options)}Array.isArray(this.options.queryKey)||console.error(\"As of v4, queryKey needs to be an Array. If you are using a string like \\'repoData\\', please change it to an Array, e.g. [\\'repoData\\']\");let r=new AbortController,o=d=>{Object.defineProperty(d,\"signal\",{enumerable:!0,get:()=>(Nt(this,c6,!0),r.signal)})},i=()=>{let d=yB(this.options,n),m=(()=>{let g={client:Ce(this,a6),queryKey:this.queryKey,meta:this.meta};return o(g),g})();return Nt(this,c6,!1),this.options.persister?this.options.persister(d,m,this):d(m)},c=(()=>{let d={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:Ce(this,a6),state:this.state,fetchFn:i};return o(d),d})();this.options.behavior?.onFetch(c,this),Nt(this,s6,this.state),(this.state.fetchStatus===\"idle\"||this.state.fetchMeta!==c.fetchOptions?.meta)&&Zn(this,$0,cv).call(this,{type:\"fetch\",meta:c.fetchOptions?.meta});let u=d=>{bB(d)&&d.silent||Zn(this,$0,cv).call(this,{type:\"error\",error:d}),bB(d)||(Ce(this,Gp).config.onError?.(d,this),Ce(this,Gp).config.onSettled?.(this.state.data,d,this)),this.scheduleGc()};return Nt(this,lu,vB({initialPromise:n?.initialPromise,fn:c.fetchFn,abort:r.abort.bind(r),onSuccess:d=>{if(d===void 0){console.error(`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`),u(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(d)}catch(h){u(h);return}Ce(this,Gp).config.onSuccess?.(d,this),Ce(this,Gp).config.onSettled?.(d,this.state.error,this),this.scheduleGc()},onError:u,onFail:(d,h)=>{Zn(this,$0,cv).call(this,{type:\"failed\",failureCount:d,error:h})},onPause:()=>{Zn(this,$0,cv).call(this,{type:\"pause\"})},onContinue:()=>{Zn(this,$0,cv).call(this,{type:\"continue\"})},retry:c.options.retry,retryDelay:c.options.retryDelay,networkMode:c.options.networkMode,canRun:()=>!0})),Ce(this,lu).start()}},H4=new WeakMap,s6=new WeakMap,Gp=new WeakMap,a6=new WeakMap,lu=new WeakMap,t9=new WeakMap,c6=new WeakMap,$0=new WeakSet,cv=function(e){let n=r=>{switch(e.type){case\"failed\":return{...r,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case\"pause\":return{...r,fetchStatus:\"paused\"};case\"continue\":return{...r,fetchStatus:\"fetching\"};case\"fetch\":return{...r,...gZ(r.data,this.options),fetchMeta:e.meta??null};case\"success\":return Nt(this,s6,void 0),{...r,data:e.data,dataUpdateCount:r.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:\"success\",...!e.manual&&{fetchStatus:\"idle\",fetchFailureCount:0,fetchFailureReason:null}};case\"error\":let o=e.error;return bB(o)&&o.revert&&Ce(this,s6)?{...Ce(this,s6),fetchStatus:\"idle\"}:{...r,error:o,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:o,fetchStatus:\"idle\",status:\"error\"};case\"invalidate\":return{...r,isInvalidated:!0};case\"setState\":return{...r,...e.state}}};this.state=n(this.state),ti.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),Ce(this,Gp).notify({query:this,type:\"updated\",action:e})})},Ahe);function gZ(t,e){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:mZ(e.networkMode)?\"fetching\":\"paused\",...t===void 0&&{error:null,status:\"pending\"}}}function aze(t){let e=typeof t.initialData==\"function\"?t.initialData():t.initialData,n=e!==void 0,r=n?typeof t.initialDataUpdatedAt==\"function\"?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0;return{data:e,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?\"success\":\"pending\",fetchStatus:\"idle\"}}var Ly,Rhe,Ihe=(Rhe=class extends Kp{constructor(e={}){super();an(this,Ly);this.config=e,Nt(this,Ly,new Map)}build(e,n,r){let o=n.queryKey,i=n.queryHash??QR(o,n),a=this.get(i);return a||(a=new The({client:e,queryKey:o,queryHash:i,options:e.defaultQueryOptions(n),state:r,defaultOptions:e.getQueryDefaults(o)}),this.add(a)),a}add(e){Ce(this,Ly).has(e.queryHash)||(Ce(this,Ly).set(e.queryHash,e),this.notify({type:\"added\",query:e}))}remove(e){let n=Ce(this,Ly).get(e.queryHash);n&&(e.destroy(),n===e&&Ce(this,Ly).delete(e.queryHash),this.notify({type:\"removed\",query:e}))}clear(){ti.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return Ce(this,Ly).get(e)}getAll(){return[...Ce(this,Ly).values()]}find(e){let n={exact:!0,...e};return this.getAll().find(r=>mB(n,r))}findAll(e={}){let n=this.getAll();return Object.keys(e).length>0?n.filter(r=>mB(e,r)):n}notify(e){ti.batch(()=>{this.listeners.forEach(n=>{n(e)})})}onFocus(){ti.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){ti.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},Ly=new WeakMap,Rhe);p();p();p();var By,fd,l6,Dy,tx,Ohe,Phe=(Ohe=class extends wB{constructor(e){super();an(this,Dy);an(this,By);an(this,fd);an(this,l6);this.mutationId=e.mutationId,Nt(this,fd,e.mutationCache),Nt(this,By,[]),this.state=e.state||yZ(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){Ce(this,By).includes(e)||(Ce(this,By).push(e),this.clearGcTimeout(),Ce(this,fd).notify({type:\"observerAdded\",mutation:this,observer:e}))}removeObserver(e){Nt(this,By,Ce(this,By).filter(n=>n!==e)),this.scheduleGc(),Ce(this,fd).notify({type:\"observerRemoved\",mutation:this,observer:e})}optionalRemove(){Ce(this,By).length||(this.state.status===\"pending\"?this.scheduleGc():Ce(this,fd).remove(this))}continue(){return Ce(this,l6)?.continue()??this.execute(this.state.variables)}async execute(e){let n=()=>{Zn(this,Dy,tx).call(this,{type:\"continue\"})};Nt(this,l6,vB({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(new Error(\"No mutationFn found\")),onFail:(i,a)=>{Zn(this,Dy,tx).call(this,{type:\"failed\",failureCount:i,error:a})},onPause:()=>{Zn(this,Dy,tx).call(this,{type:\"pause\"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>Ce(this,fd).canRun(this)}));let r=this.state.status===\"pending\",o=!Ce(this,l6).canStart();try{if(r)n();else{Zn(this,Dy,tx).call(this,{type:\"pending\",variables:e,isPaused:o}),await Ce(this,fd).config.onMutate?.(e,this);let a=await this.options.onMutate?.(e);a!==this.state.context&&Zn(this,Dy,tx).call(this,{type:\"pending\",context:a,variables:e,isPaused:o})}let i=await Ce(this,l6).start();return await Ce(this,fd).config.onSuccess?.(i,e,this.state.context,this),await this.options.onSuccess?.(i,e,this.state.context),await Ce(this,fd).config.onSettled?.(i,null,this.state.variables,this.state.context,this),await this.options.onSettled?.(i,null,e,this.state.context),Zn(this,Dy,tx).call(this,{type:\"success\",data:i}),i}catch(i){try{throw await Ce(this,fd).config.onError?.(i,e,this.state.context,this),await this.options.onError?.(i,e,this.state.context),await Ce(this,fd).config.onSettled?.(void 0,i,this.state.variables,this.state.context,this),await this.options.onSettled?.(void 0,i,e,this.state.context),i}finally{Zn(this,Dy,tx).call(this,{type:\"error\",error:i})}}finally{Ce(this,fd).runNext(this)}}},By=new WeakMap,fd=new WeakMap,l6=new WeakMap,Dy=new WeakSet,tx=function(e){let n=r=>{switch(e.type){case\"failed\":return{...r,failureCount:e.failureCount,failureReason:e.error};case\"pause\":return{...r,isPaused:!0};case\"continue\":return{...r,isPaused:!1};case\"pending\":return{...r,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:\"pending\",variables:e.variables,submittedAt:Date.now()};case\"success\":return{...r,data:e.data,failureCount:0,failureReason:null,error:null,status:\"success\",isPaused:!1};case\"error\":return{...r,data:void 0,error:e.error,failureCount:r.failureCount+1,failureReason:e.error,isPaused:!1,status:\"error\"}}};this.state=n(this.state),ti.batch(()=>{Ce(this,By).forEach(r=>{r.onMutationUpdate(e)}),Ce(this,fd).notify({mutation:this,type:\"updated\",action:e})})},Ohe);function yZ(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:\"idle\",variables:void 0,submittedAt:0}}var lv,K0,n9,Mhe,Nhe=(Mhe=class extends Kp{constructor(e={}){super();an(this,lv);an(this,K0);an(this,n9);this.config=e,Nt(this,lv,new Set),Nt(this,K0,new Map),Nt(this,n9,0)}build(e,n,r){let o=new Phe({mutationCache:this,mutationId:++K7(this,n9)._,options:e.defaultMutationOptions(n),state:r});return this.add(o),o}add(e){Ce(this,lv).add(e);let n=xB(e);if(typeof n==\"string\"){let r=Ce(this,K0).get(n);r?r.push(e):Ce(this,K0).set(n,[e])}this.notify({type:\"added\",mutation:e})}remove(e){if(Ce(this,lv).delete(e)){let n=xB(e);if(typeof n==\"string\"){let r=Ce(this,K0).get(n);if(r)if(r.length>1){let o=r.indexOf(e);o!==-1&&r.splice(o,1)}else r[0]===e&&Ce(this,K0).delete(n)}}this.notify({type:\"removed\",mutation:e})}canRun(e){let n=xB(e);if(typeof n==\"string\"){let o=Ce(this,K0).get(n)?.find(i=>i.state.status===\"pending\");return!o||o===e}else return!0}runNext(e){let n=xB(e);return typeof n==\"string\"?Ce(this,K0).get(n)?.find(o=>o!==e&&o.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){ti.batch(()=>{Ce(this,lv).forEach(e=>{this.notify({type:\"removed\",mutation:e})}),Ce(this,lv).clear(),Ce(this,K0).clear()})}getAll(){return Array.from(Ce(this,lv))}find(e){let n={exact:!0,...e};return this.getAll().find(r=>gB(n,r))}findAll(e={}){return this.getAll().filter(n=>gB(e,n))}notify(e){ti.batch(()=>{this.listeners.forEach(n=>{n(e)})})}resumePausedMutations(){let e=this.getAll().filter(n=>n.state.isPaused);return ti.batch(()=>Promise.all(e.map(n=>n.continue().catch(zs))))}},lv=new WeakMap,K0=new WeakMap,n9=new WeakMap,Mhe);function xB(t){return t.options.scope?.id}p();function bZ(t){return{onFetch:(e,n)=>{let r=e.options,o=e.fetchOptions?.meta?.fetchMore?.direction,i=e.state.data?.pages||[],a=e.state.data?.pageParams||[],c={pages:[],pageParams:[]},u=0,d=async()=>{let h=!1,m=E=>{Object.defineProperty(E,\"signal\",{enumerable:!0,get:()=>(e.signal.aborted?h=!0:e.signal.addEventListener(\"abort\",()=>{h=!0}),e.signal)})},g=yB(e.options,e.fetchOptions),b=async(E,C,T)=>{if(h)return Promise.reject();if(C==null&&E.pages.length)return Promise.resolve(E);let L=(()=>{let J={client:e.client,queryKey:e.queryKey,pageParam:C,direction:T?\"backward\":\"forward\",meta:e.options.meta};return m(J),J})(),D=await g(L),{maxPages:G}=e.options,W=T?xhe:whe;return{pages:W(E.pages,D,G),pageParams:W(E.pageParams,C,G)}};if(o&&i.length){let E=o===\"backward\",C=E?cze:Lhe,T={pages:i,pageParams:a},R=C(r,T);c=await b(T,R,E)}else{let E=t??i.length;do{let C=u===0?a[0]??r.initialPageParam:Lhe(r,c);if(u>0&&C==null)break;c=await b(c,C),u++}while(u<E)}return c};e.options.persister?e.fetchFn=()=>e.options.persister?.(d,{client:e.client,queryKey:e.queryKey,meta:e.options.meta,signal:e.signal},n):e.fetchFn=d}}}function Lhe(t,{pages:e,pageParams:n}){let r=e.length-1;return e.length>0?t.getNextPageParam(e[r],e,n[r],n):void 0}function cze(t,{pages:e,pageParams:n}){return e.length>0?t.getPreviousPageParam?.(e[0],e,n[0],n):void 0}var Hs,nx,rx,q4,W4,ox,V4,$4,Bhe,vZ=(Bhe=class{constructor(t={}){an(this,Hs);an(this,nx);an(this,rx);an(this,q4);an(this,W4);an(this,ox);an(this,V4);an(this,$4);Nt(this,Hs,t.queryCache||new Ihe),Nt(this,nx,t.mutationCache||new Nhe),Nt(this,rx,t.defaultOptions||{}),Nt(this,q4,new Map),Nt(this,W4,new Map),Nt(this,ox,0)}mount(){K7(this,ox)._++,Ce(this,ox)===1&&(Nt(this,V4,F4.subscribe(async t=>{t&&(await this.resumePausedMutations(),Ce(this,Hs).onFocus())})),Nt(this,$4,z4.subscribe(async t=>{t&&(await this.resumePausedMutations(),Ce(this,Hs).onOnline())})))}unmount(){var t,e;K7(this,ox)._--,Ce(this,ox)===0&&((t=Ce(this,V4))==null||t.call(this),Nt(this,V4,void 0),(e=Ce(this,$4))==null||e.call(this),Nt(this,$4,void 0))}isFetching(t){return Ce(this,Hs).findAll({...t,fetchStatus:\"fetching\"}).length}isMutating(t){return Ce(this,nx).findAll({...t,status:\"pending\"}).length}getQueryData(t){let e=this.defaultQueryOptions({queryKey:t});return Ce(this,Hs).get(e.queryHash)?.state.data}ensureQueryData(t){let e=this.defaultQueryOptions(t),n=Ce(this,Hs).build(this,e),r=n.state.data;return r===void 0?this.fetchQuery(t):(t.revalidateIfStale&&n.isStaleByTime(V0(e.staleTime,n))&&this.prefetchQuery(e),Promise.resolve(r))}getQueriesData(t){return Ce(this,Hs).findAll(t).map(({queryKey:e,state:n})=>{let r=n.data;return[e,r]})}setQueryData(t,e,n){let r=this.defaultQueryOptions({queryKey:t}),i=Ce(this,Hs).get(r.queryHash)?.state.data,a=bhe(e,i);if(a!==void 0)return Ce(this,Hs).build(this,r).setData(a,{...n,manual:!0})}setQueriesData(t,e,n){return ti.batch(()=>Ce(this,Hs).findAll(t).map(({queryKey:r})=>[r,this.setQueryData(r,e,n)]))}getQueryState(t){let e=this.defaultQueryOptions({queryKey:t});return Ce(this,Hs).get(e.queryHash)?.state}removeQueries(t){let e=Ce(this,Hs);ti.batch(()=>{e.findAll(t).forEach(n=>{e.remove(n)})})}resetQueries(t,e){let n=Ce(this,Hs);return ti.batch(()=>(n.findAll(t).forEach(r=>{r.reset()}),this.refetchQueries({type:\"active\",...t},e)))}cancelQueries(t,e={}){let n={revert:!0,...e},r=ti.batch(()=>Ce(this,Hs).findAll(t).map(o=>o.cancel(n)));return Promise.all(r).then(zs).catch(zs)}invalidateQueries(t,e={}){return ti.batch(()=>(Ce(this,Hs).findAll(t).forEach(n=>{n.invalidate()}),t?.refetchType===\"none\"?Promise.resolve():this.refetchQueries({...t,type:t?.refetchType??t?.type??\"active\"},e)))}refetchQueries(t,e={}){let n={...e,cancelRefetch:e.cancelRefetch??!0},r=ti.batch(()=>Ce(this,Hs).findAll(t).filter(o=>!o.isDisabled()&&!o.isStatic()).map(o=>{let i=o.fetch(void 0,n);return n.throwOnError||(i=i.catch(zs)),o.state.fetchStatus===\"paused\"?Promise.resolve():i}));return Promise.all(r).then(zs)}fetchQuery(t){let e=this.defaultQueryOptions(t);e.retry===void 0&&(e.retry=!1);let n=Ce(this,Hs).build(this,e);return n.isStaleByTime(V0(e.staleTime,n))?n.fetch(e):Promise.resolve(n.state.data)}prefetchQuery(t){return this.fetchQuery(t).then(zs).catch(zs)}fetchInfiniteQuery(t){return t.behavior=bZ(t.pages),this.fetchQuery(t)}prefetchInfiniteQuery(t){return this.fetchInfiniteQuery(t).then(zs).catch(zs)}ensureInfiniteQueryData(t){return t.behavior=bZ(t.pages),this.ensureQueryData(t)}resumePausedMutations(){return z4.isOnline()?Ce(this,nx).resumePausedMutations():Promise.resolve()}getQueryCache(){return Ce(this,Hs)}getMutationCache(){return Ce(this,nx)}getDefaultOptions(){return Ce(this,rx)}setDefaultOptions(t){Nt(this,rx,t)}setQueryDefaults(t,e){Ce(this,q4).set(Ny(t),{queryKey:t,defaultOptions:e})}getQueryDefaults(t){let e=[...Ce(this,q4).values()],n={};return e.forEach(r=>{r6(t,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(t,e){Ce(this,W4).set(Ny(t),{mutationKey:t,defaultOptions:e})}getMutationDefaults(t){let e=[...Ce(this,W4).values()],n={};return e.forEach(r=>{r6(t,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(t){if(t._defaulted)return t;let e={...Ce(this,rx).queries,...this.getQueryDefaults(t.queryKey),...t,_defaulted:!0};return e.queryHash||(e.queryHash=QR(e.queryKey,e)),e.refetchOnReconnect===void 0&&(e.refetchOnReconnect=e.networkMode!==\"always\"),e.throwOnError===void 0&&(e.throwOnError=!!e.suspense),!e.networkMode&&e.persister&&(e.networkMode=\"offlineFirst\"),e.queryFn===n6&&(e.enabled=!1),e}defaultMutationOptions(t){return t?._defaulted?t:{...Ce(this,rx).mutations,...t?.mutationKey&&this.getMutationDefaults(t.mutationKey),...t,_defaulted:!0}}clear(){Ce(this,Hs).clear(),Ce(this,nx).clear()}},Hs=new WeakMap,nx=new WeakMap,rx=new WeakMap,q4=new WeakMap,W4=new WeakMap,ox=new WeakMap,V4=new WeakMap,$4=new WeakMap,Bhe);p();var bf,Gr,o9,hd,u6,K4,ix,sx,i9,G4,Z4,d6,f6,ax,Y4,zo,r9,wZ,xZ,EZ,SZ,kZ,_Z,CZ,jhe,Uhe,TZ=(Uhe=class extends Kp{constructor(e,n){super();an(this,zo);an(this,bf);an(this,Gr);an(this,o9);an(this,hd);an(this,u6);an(this,K4);an(this,ix);an(this,sx);an(this,i9);an(this,G4);an(this,Z4);an(this,d6);an(this,f6);an(this,ax);an(this,Y4,new Set);this.options=n,Nt(this,bf,e),Nt(this,sx,null),Nt(this,ix,e9()),this.options.experimental_prefetchInRender||Ce(this,ix).reject(new Error(\"experimental_prefetchInRender feature flag is not enabled\")),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(Ce(this,Gr).addObserver(this),Dhe(Ce(this,Gr),this.options)?Zn(this,zo,r9).call(this):this.updateResult(),Zn(this,zo,SZ).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return AZ(Ce(this,Gr),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return AZ(Ce(this,Gr),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,Zn(this,zo,kZ).call(this),Zn(this,zo,_Z).call(this),Ce(this,Gr).removeObserver(this)}setOptions(e){let n=this.options,r=Ce(this,Gr);if(this.options=Ce(this,bf).defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=\"boolean\"&&typeof this.options.enabled!=\"function\"&&typeof vh(this.options.enabled,Ce(this,Gr))!=\"boolean\")throw new Error(\"Expected enabled to be a boolean or a callback that returns a boolean\");Zn(this,zo,CZ).call(this),Ce(this,Gr).setOptions(this.options),n._defaulted&&!B4(this.options,n)&&Ce(this,bf).getQueryCache().notify({type:\"observerOptionsUpdated\",query:Ce(this,Gr),observer:this});let o=this.hasListeners();o&&Fhe(Ce(this,Gr),r,this.options,n)&&Zn(this,zo,r9).call(this),this.updateResult(),o&&(Ce(this,Gr)!==r||vh(this.options.enabled,Ce(this,Gr))!==vh(n.enabled,Ce(this,Gr))||V0(this.options.staleTime,Ce(this,Gr))!==V0(n.staleTime,Ce(this,Gr)))&&Zn(this,zo,wZ).call(this);let i=Zn(this,zo,xZ).call(this);o&&(Ce(this,Gr)!==r||vh(this.options.enabled,Ce(this,Gr))!==vh(n.enabled,Ce(this,Gr))||i!==Ce(this,ax))&&Zn(this,zo,EZ).call(this,i)}getOptimisticResult(e){let n=Ce(this,bf).getQueryCache().build(Ce(this,bf),e),r=this.createResult(n,e);return uze(this,r)&&(Nt(this,hd,r),Nt(this,K4,this.options),Nt(this,u6,Ce(this,Gr).state)),r}getCurrentResult(){return Ce(this,hd)}trackResult(e,n){return new Proxy(e,{get:(r,o)=>(this.trackProp(o),n?.(o),Reflect.get(r,o))})}trackProp(e){Ce(this,Y4).add(e)}getCurrentQuery(){return Ce(this,Gr)}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let n=Ce(this,bf).defaultQueryOptions(e),r=Ce(this,bf).getQueryCache().build(Ce(this,bf),n);return r.fetch().then(()=>this.createResult(r,n))}fetch(e){return Zn(this,zo,r9).call(this,{...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),Ce(this,hd)))}createResult(e,n){let r=Ce(this,Gr),o=this.options,i=Ce(this,hd),a=Ce(this,u6),c=Ce(this,K4),d=e!==r?e.state:Ce(this,o9),{state:h}=e,m={...h},g=!1,b;if(n._optimisticResults){let Z=this.hasListeners(),ae=!Z&&Dhe(e,n),V=Z&&Fhe(e,r,n,o);(ae||V)&&(m={...m,...gZ(h.data,e.options)}),n._optimisticResults===\"isRestoring\"&&(m.fetchStatus=\"idle\")}let{error:E,errorUpdatedAt:C,status:T}=m;b=m.data;let R=!1;if(n.placeholderData!==void 0&&b===void 0&&T===\"pending\"){let Z;i?.isPlaceholderData&&n.placeholderData===c?.placeholderData?(Z=i.data,R=!0):Z=typeof n.placeholderData==\"function\"?n.placeholderData(Ce(this,Z4)?.state.data,Ce(this,Z4)):n.placeholderData,Z!==void 0&&(T=\"success\",b=JR(i?.data,Z,n),g=!0)}if(n.select&&b!==void 0&&!R)if(i&&b===a?.data&&n.select===Ce(this,i9))b=Ce(this,G4);else try{Nt(this,i9,n.select),b=n.select(b),b=JR(i?.data,b,n),Nt(this,G4,b),Nt(this,sx,null)}catch(Z){Nt(this,sx,Z)}Ce(this,sx)&&(E=Ce(this,sx),b=Ce(this,G4),C=Date.now(),T=\"error\");let L=m.fetchStatus===\"fetching\",D=T===\"pending\",G=T===\"error\",W=D&&L,J=b!==void 0,ie={status:T,fetchStatus:m.fetchStatus,isPending:D,isSuccess:T===\"success\",isError:G,isInitialLoading:W,isLoading:W,data:b,dataUpdatedAt:m.dataUpdatedAt,error:E,errorUpdatedAt:C,failureCount:m.fetchFailureCount,failureReason:m.fetchFailureReason,errorUpdateCount:m.errorUpdateCount,isFetched:m.dataUpdateCount>0||m.errorUpdateCount>0,isFetchedAfterMount:m.dataUpdateCount>d.dataUpdateCount||m.errorUpdateCount>d.errorUpdateCount,isFetching:L,isRefetching:L&&!D,isLoadingError:G&&!J,isPaused:m.fetchStatus===\"paused\",isPlaceholderData:g,isRefetchError:G&&J,isStale:RZ(e,n),refetch:this.refetch,promise:Ce(this,ix)};if(this.options.experimental_prefetchInRender){let Z=$=>{ie.status===\"error\"?$.reject(ie.error):ie.data!==void 0&&$.resolve(ie.data)},ae=()=>{let $=Nt(this,ix,ie.promise=e9());Z($)},V=Ce(this,ix);switch(V.status){case\"pending\":e.queryHash===r.queryHash&&Z(V);break;case\"fulfilled\":(ie.status===\"error\"||ie.data!==V.value)&&ae();break;case\"rejected\":(ie.status!==\"error\"||ie.error!==V.reason)&&ae();break}}return ie}updateResult(){let e=Ce(this,hd),n=this.createResult(Ce(this,Gr),this.options);if(Nt(this,u6,Ce(this,Gr).state),Nt(this,K4,this.options),Ce(this,u6).data!==void 0&&Nt(this,Z4,Ce(this,Gr)),B4(n,e))return;Nt(this,hd,n);let r=()=>{if(!e)return!0;let{notifyOnChangeProps:o}=this.options,i=typeof o==\"function\"?o():o;if(i===\"all\"||!i&&!Ce(this,Y4).size)return!0;let a=new Set(i??Ce(this,Y4));return this.options.throwOnError&&a.add(\"error\"),Object.keys(Ce(this,hd)).some(c=>{let u=c;return Ce(this,hd)[u]!==e[u]&&a.has(u)})};Zn(this,zo,jhe).call(this,{listeners:r()})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&Zn(this,zo,SZ).call(this)}},bf=new WeakMap,Gr=new WeakMap,o9=new WeakMap,hd=new WeakMap,u6=new WeakMap,K4=new WeakMap,ix=new WeakMap,sx=new WeakMap,i9=new WeakMap,G4=new WeakMap,Z4=new WeakMap,d6=new WeakMap,f6=new WeakMap,ax=new WeakMap,Y4=new WeakMap,zo=new WeakSet,r9=function(e){Zn(this,zo,CZ).call(this);let n=Ce(this,Gr).fetch(this.options,e);return e?.throwOnError||(n=n.catch(zs)),n},wZ=function(){Zn(this,zo,kZ).call(this);let e=V0(this.options.staleTime,Ce(this,Gr));if(yf||Ce(this,hd).isStale||!YR(e))return;let r=pB(Ce(this,hd).dataUpdatedAt,e)+1;Nt(this,d6,setTimeout(()=>{Ce(this,hd).isStale||this.updateResult()},r))},xZ=function(){return(typeof this.options.refetchInterval==\"function\"?this.options.refetchInterval(Ce(this,Gr)):this.options.refetchInterval)??!1},EZ=function(e){Zn(this,zo,_Z).call(this),Nt(this,ax,e),!(yf||vh(this.options.enabled,Ce(this,Gr))===!1||!YR(Ce(this,ax))||Ce(this,ax)===0)&&Nt(this,f6,setInterval(()=>{(this.options.refetchIntervalInBackground||F4.isFocused())&&Zn(this,zo,r9).call(this)},Ce(this,ax)))},SZ=function(){Zn(this,zo,wZ).call(this),Zn(this,zo,EZ).call(this,Zn(this,zo,xZ).call(this))},kZ=function(){Ce(this,d6)&&(clearTimeout(Ce(this,d6)),Nt(this,d6,void 0))},_Z=function(){Ce(this,f6)&&(clearInterval(Ce(this,f6)),Nt(this,f6,void 0))},CZ=function(){let e=Ce(this,bf).getQueryCache().build(Ce(this,bf),this.options);if(e===Ce(this,Gr))return;let n=Ce(this,Gr);Nt(this,Gr,e),Nt(this,o9,e.state),this.hasListeners()&&(n?.removeObserver(this),e.addObserver(this))},jhe=function(e){ti.batch(()=>{e.listeners&&this.listeners.forEach(n=>{n(Ce(this,hd))}),Ce(this,bf).getQueryCache().notify({query:Ce(this,Gr),type:\"observerResultsUpdated\"})})},Uhe);function lze(t,e){return vh(e.enabled,t)!==!1&&t.state.data===void 0&&!(t.state.status===\"error\"&&e.retryOnMount===!1)}function Dhe(t,e){return lze(t,e)||t.state.data!==void 0&&AZ(t,e,e.refetchOnMount)}function AZ(t,e,n){if(vh(e.enabled,t)!==!1&&V0(e.staleTime,t)!==\"static\"){let r=typeof n==\"function\"?n(t):n;return r===\"always\"||r!==!1&&RZ(t,e)}return!1}function Fhe(t,e,n,r){return(t!==e||vh(r.enabled,t)===!1)&&(!n.suspense||t.state.status!==\"error\")&&RZ(t,n)}function RZ(t,e){return vh(e.enabled,t)!==!1&&t.isStaleByTime(V0(e.staleTime,t))}function uze(t,e){return!B4(t.getCurrentResult(),e)}p();var cx,lx,vf,uv,dv,EB,IZ,zhe,OZ=(zhe=class extends Kp{constructor(e,n){super();an(this,dv);an(this,cx);an(this,lx);an(this,vf);an(this,uv);Nt(this,cx,e),this.setOptions(n),this.bindMethods(),Zn(this,dv,EB).call(this)}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let n=this.options;this.options=Ce(this,cx).defaultMutationOptions(e),B4(this.options,n)||Ce(this,cx).getMutationCache().notify({type:\"observerOptionsUpdated\",mutation:Ce(this,vf),observer:this}),n?.mutationKey&&this.options.mutationKey&&Ny(n.mutationKey)!==Ny(this.options.mutationKey)?this.reset():Ce(this,vf)?.state.status===\"pending\"&&Ce(this,vf).setOptions(this.options)}onUnsubscribe(){this.hasListeners()||Ce(this,vf)?.removeObserver(this)}onMutationUpdate(e){Zn(this,dv,EB).call(this),Zn(this,dv,IZ).call(this,e)}getCurrentResult(){return Ce(this,lx)}reset(){Ce(this,vf)?.removeObserver(this),Nt(this,vf,void 0),Zn(this,dv,EB).call(this),Zn(this,dv,IZ).call(this)}mutate(e,n){return Nt(this,uv,n),Ce(this,vf)?.removeObserver(this),Nt(this,vf,Ce(this,cx).getMutationCache().build(Ce(this,cx),this.options)),Ce(this,vf).addObserver(this),Ce(this,vf).execute(e)}},cx=new WeakMap,lx=new WeakMap,vf=new WeakMap,uv=new WeakMap,dv=new WeakSet,EB=function(){let e=Ce(this,vf)?.state??yZ();Nt(this,lx,{...e,isPending:e.status===\"pending\",isSuccess:e.status===\"success\",isError:e.status===\"error\",isIdle:e.status===\"idle\",mutate:this.mutate,reset:this.reset})},IZ=function(e){ti.batch(()=>{if(Ce(this,uv)&&this.hasListeners()){let n=Ce(this,lx).variables,r=Ce(this,lx).context;e?.type===\"success\"?(Ce(this,uv).onSuccess?.(e.data,n,r),Ce(this,uv).onSettled?.(e.data,null,n,r)):e?.type===\"error\"&&(Ce(this,uv).onError?.(e.error,n,r),Ce(this,uv).onSettled?.(void 0,e.error,n,r))}this.listeners.forEach(n=>{n(Ce(this,lx))})})},zhe);p();var Q4=he(et(),1),Hhe=he(De(),1),PZ=Q4.createContext(void 0),fv=t=>{let e=Q4.useContext(PZ);if(t)return t;if(!e)throw new Error(\"No QueryClient set, use QueryClientProvider to set one\");return e},MZ=({client:t,children:e})=>(Q4.useEffect(()=>(t.mount(),()=>{t.unmount()}),[t]),(0,Hhe.jsx)(PZ.Provider,{value:t,children:e}));p();var SB=he(et(),1),qhe=SB.createContext(!1),Whe=()=>SB.useContext(qhe),ZCt=qhe.Provider;p();var s9=he(et(),1),dze=he(De(),1);function fze(){let t=!1;return{clearReset:()=>{t=!1},reset:()=>{t=!0},isReset:()=>t}}var hze=s9.createContext(fze()),Vhe=()=>s9.useContext(hze);p();var $he=he(et(),1);var Khe=(t,e)=>{(t.suspense||t.throwOnError||t.experimental_prefetchInRender)&&(e.isReset()||(t.retryOnMount=!1))},Ghe=t=>{$he.useEffect(()=>{t.clearReset()},[t])},Zhe=({result:t,errorResetBoundary:e,throwOnError:n,query:r,suspense:o})=>t.isError&&!e.isReset()&&!t.isFetching&&r&&(o&&t.data===void 0||XR(n,[t.error,r]));p();var Yhe=t=>{if(t.suspense){let e=r=>r===\"static\"?r:Math.max(r??1e3,1e3),n=t.staleTime;t.staleTime=typeof n==\"function\"?(...r)=>e(n(...r)):e(n),typeof t.gcTime==\"number\"&&(t.gcTime=Math.max(t.gcTime,1e3))}},Qhe=(t,e)=>t.isLoading&&t.isFetching&&!e,Jhe=(t,e)=>t?.suspense&&e.isPending,NZ=(t,e,n)=>e.fetchOptimistic(t).catch(()=>{n.clearReset()});p();p();var ux=he(et(),1);function Xhe(t,e,n){if(typeof t!=\"object\"||Array.isArray(t))throw new Error(\\'Bad argument type. Starting with v5, only the \"Object\" form is allowed when calling query related functions. Please use the error stack to find the culprit call. More info here: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5#supports-a-single-signature-one-object\\');let r=Whe(),o=Vhe(),i=fv(n),a=i.defaultQueryOptions(t);i.getDefaultOptions().queries?._experimental_beforeQuery?.(a),a.queryFn||console.error(`[${a.queryHash}]: No queryFn was passed as an option, and no default queryFn was found. The queryFn parameter is only optional when using a default queryFn. More info here: https://tanstack.com/query/latest/docs/framework/react/guides/default-query-function`),a._optimisticResults=r?\"isRestoring\":\"optimistic\",Yhe(a),Khe(a,o),Ghe(o);let c=!i.getQueryCache().get(a.queryHash),[u]=ux.useState(()=>new e(i,a)),d=u.getOptimisticResult(a),h=!r&&t.subscribed!==!1;if(ux.useSyncExternalStore(ux.useCallback(m=>{let g=h?u.subscribe(ti.batchCalls(m)):zs;return u.updateResult(),g},[u,h]),()=>u.getCurrentResult(),()=>u.getCurrentResult()),ux.useEffect(()=>{u.setOptions(a)},[a,u]),Jhe(a,d))throw NZ(a,u,o);if(Zhe({result:d,errorResetBoundary:o,throwOnError:a.throwOnError,query:i.getQueryCache().get(a.queryHash),suspense:a.suspense}))throw d.error;return i.getDefaultOptions().queries?._experimental_afterQuery?.(a,d),a.experimental_prefetchInRender&&!yf&&Qhe(d,r)&&(c?NZ(a,u,o):i.getQueryCache().get(a.queryHash)?.promise)?.catch(zs).finally(()=>{u.updateResult()}),a.notifyOnChangeProps?d:u.trackResult(d)}function pd(t,e){return Xhe(t,TZ,e)}p();var hv=he(et(),1);function wf(t,e){let n=fv(e),[r]=hv.useState(()=>new OZ(n,t));hv.useEffect(()=>{r.setOptions(t)},[r,t]);let o=hv.useSyncExternalStore(hv.useCallback(a=>r.subscribe(ti.batchCalls(a)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),i=hv.useCallback((a,c)=>{r.mutate(a,c).catch(zs)},[r]);if(o.error&&XR(r.options.throwOnError,[o.error]))throw o.error;return{...o,mutate:i,mutateAsync:o.mutate}}var _1=he(et(),1);p();p();var B9=he(et(),1);p();p();p();A6();VB();v9();BY();qy();aQ();sF();aF();uQ();fQ();uC();p();function Qp(t,e,n){let r=t[e.name];if(typeof r==\"function\")return r;let o=t[n];return typeof o==\"function\"?o:i=>e(t,i)}p();p();p();p();p();var RC=\"2.17.3\";var wye=()=>`@wagmi/core@${RC}`;var xye=function(t,e,n,r){if(n===\"a\"&&!r)throw new TypeError(\"Private accessor was defined without a getter\");if(typeof e==\"function\"?t!==e||!r:!e.has(t))throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");return n===\"m\"?r:n===\"a\"?r.call(t):r?r.value:e.get(t)},uF,Eye,yd=class t extends Error{get docsBaseUrl(){return\"https://wagmi.sh/core\"}get version(){return wye()}constructor(e,n={}){super(),uF.add(this),Object.defineProperty(this,\"details\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"docsPath\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"metaMessages\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"shortMessage\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"WagmiCoreError\"});let r=n.cause instanceof t?n.cause.details:n.cause?.message?n.cause.message:n.details,o=n.cause instanceof t&&n.cause.docsPath||n.docsPath;this.message=[e||\"An error occurred.\",\"\",...n.metaMessages?[...n.metaMessages,\"\"]:[],...o?[`Docs: ${this.docsBaseUrl}${o}.html${n.docsSlug?`#${n.docsSlug}`:\"\"}`]:[],...r?[`Details: ${r}`]:[],`Version: ${this.version}`].join(`\\n`),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=o,this.metaMessages=n.metaMessages,this.shortMessage=e}walk(e){return xye(this,uF,\"m\",Eye).call(this,this,e)}};uF=new WeakSet,Eye=function t(e,n){return n?.(e)?e:e.cause?xye(this,uF,\"m\",t).call(this,e.cause,n):e};var Lc=class extends yd{constructor(){super(\"Chain not configured.\"),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ChainNotConfiguredError\"})}},IC=class extends yd{constructor(){super(\"Connector already connected.\"),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ConnectorAlreadyConnectedError\"})}},Sv=class extends yd{constructor(){super(\"Connector not connected.\"),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ConnectorNotConnectedError\"})}};var OC=class extends yd{constructor({address:e,connector:n}){super(`Account \"${e}\" not found for connector \"${n.name}\".`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ConnectorAccountNotFoundError\"})}},PC=class extends yd{constructor({connectionChainId:e,connectorChainId:n}){super(`The current chain of the connector (id: ${n}) does not match the connection\\'s chain (id: ${e}).`,{metaMessages:[`Current Chain ID:  ${n}`,`Expected Chain ID: ${e}`]}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ConnectorChainMismatchError\"})}},MC=class extends yd{constructor({connector:e}){super(`Connector \"${e.name}\" unavailable while reconnecting.`,{details:[\"During the reconnection step, the only connector methods guaranteed to be available are: `id`, `name`, `type`, `uid`.\",\"All other methods are not guaranteed to be available until reconnection completes and connectors are fully restored.\",\"This error commonly occurs for connectors that asynchronously inject after reconnection has already started.\"].join(\" \")}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ConnectorUnavailableReconnectingError\"})}};async function Sye(t,e){let n;if(typeof e.connector==\"function\"?n=t._internal.connectors.setup(e.connector):n=e.connector,n.uid===t.state.current)throw new IC;try{t.setState(c=>({...c,status:\"connecting\"})),n.emitter.emit(\"message\",{type:\"connecting\"});let{connector:r,...o}=e,i=await n.connect(o),a=i.accounts;return n.emitter.off(\"connect\",t._internal.events.connect),n.emitter.on(\"change\",t._internal.events.change),n.emitter.on(\"disconnect\",t._internal.events.disconnect),await t.storage?.setItem(\"recentConnectorId\",n.id),t.setState(c=>({...c,connections:new Map(c.connections).set(n.uid,{accounts:a,chainId:i.chainId,connector:n}),current:n.uid,status:\"connected\"})),{accounts:a,chainId:i.chainId}}catch(r){throw t.setState(o=>({...o,status:o.current?\"connected\":\"disconnected\"})),r}}p();bo();C9();async function Jp(t,e={}){let n;if(e.connector){let{connector:d}=e;if(t.state.status===\"reconnecting\"&&!d.getAccounts&&!d.getChainId)throw new MC({connector:d});let[h,m]=await Promise.all([d.getAccounts().catch(g=>{if(e.account===null)return[];throw g}),d.getChainId()]);n={accounts:h,chainId:m,connector:d}}else n=t.state.connections.get(t.state.current);if(!n)throw new Sv;let r=e.chainId??n.chainId,o=await n.connector.getChainId();if(o!==n.chainId)throw new PC({connectionChainId:n.chainId,connectorChainId:o});let i=n.connector;if(i.getClient)return i.getClient({chainId:r});let a=Wn(e.account??n.accounts[0]);if(a&&(a.address=Fr(a.address)),e.account&&!n.accounts.some(d=>d.toLowerCase()===a.address.toLowerCase()))throw new OC({address:a.address,connector:i});let c=t.chains.find(d=>d.id===r),u=await n.connector.getProvider({chainId:r});return M6({account:a,chain:c,name:\"Connector Client\",transport:d=>P9(u)({...d,retryCount:0})})}p();async function Lye(t,e={}){let n;if(e.connector)n=e.connector;else{let{connections:o,current:i}=t.state;n=o.get(i)?.connector}let r=t.state.connections;n&&(await n.disconnect(),n.emitter.off(\"change\",t._internal.events.change),n.emitter.off(\"disconnect\",t._internal.events.disconnect),n.emitter.on(\"connect\",t._internal.events.connect),r.delete(n.uid)),t.setState(o=>{if(r.size===0)return{...o,connections:new Map,current:null,status:\"disconnected\"};let i=r.values().next().value;return{...o,connections:new Map(r),current:i.connector.uid}});{let o=t.state.current;if(!o)return;let i=t.state.connections.get(o)?.connector;if(!i)return;await t.storage?.setItem(\"recentConnectorId\",i.id)}}p();bo();function vQ(t){return typeof t==\"number\"?t:t===\"wei\"?0:Math.abs(IG[t])}p();function N9(t){let e=t.state.current,n=t.state.connections.get(e),r=n?.accounts,o=r?.[0],i=t.chains.find(c=>c.id===n?.chainId),a=t.state.status;switch(a){case\"connected\":return{address:o,addresses:r,chain:i,chainId:n?.chainId,connector:n?.connector,isConnected:!0,isConnecting:!1,isDisconnected:!1,isReconnecting:!1,status:a};case\"reconnecting\":return{address:o,addresses:r,chain:i,chainId:n?.chainId,connector:n?.connector,isConnected:!!o,isConnecting:!1,isDisconnected:!1,isReconnecting:!0,status:a};case\"connecting\":return{address:o,addresses:r,chain:i,chainId:n?.chainId,connector:n?.connector,isConnected:!1,isConnecting:!0,isDisconnected:!1,isReconnecting:!1,status:a};case\"disconnected\":return{address:void 0,addresses:void 0,chain:void 0,chainId:void 0,connector:void 0,isConnected:!1,isConnecting:!1,isDisconnected:!0,isReconnecting:!1,status:a}}}p();bo();p();bo();p();async function Bye(t,e){let{allowFailure:n=!0,chainId:r,contracts:o,...i}=e,a=t.getClient({chainId:r});return Qp(a,x9,\"multicall\")({allowFailure:n,contracts:o,...i})}p();function gF(t,e){let{chainId:n,...r}=e,o=t.getClient({chainId:n});return Qp(o,ja,\"readContract\")(r)}async function Dye(t,e){let{allowFailure:n=!0,blockNumber:r,blockTag:o,...i}=e,a=e.contracts;try{let c={};for(let[m,g]of a.entries()){let b=g.chainId??t.state.chainId;c[b]||(c[b]=[]),c[b]?.push({contract:g,index:m})}let u=()=>Object.entries(c).map(([m,g])=>Bye(t,{...i,allowFailure:n,blockNumber:r,blockTag:o,chainId:Number.parseInt(m),contracts:g.map(({contract:b})=>b)})),d=(await Promise.all(u())).flat(),h=Object.values(c).flatMap(m=>m.map(({index:g})=>g));return d.reduce((m,g,b)=>(m&&(m[h[b]]=g),m),[])}catch(c){if(c instanceof L5)throw c;let u=()=>a.map(d=>gF(t,{...d,blockNumber:r,blockTag:o}));return n?(await Promise.allSettled(u())).map(d=>d.status===\"fulfilled\"?{result:d.value,status:\"success\"}:{error:d.reason,result:void 0,status:\"failure\"}):await Promise.all(u())}}async function Uye(t,e){let{address:n,blockNumber:r,blockTag:o,chainId:i,token:a,unit:c=\"ether\"}=e;if(a)try{return await Fye(t,{balanceAddress:n,chainId:i,symbolType:\"string\",tokenAddress:a})}catch(g){if(g.name===\"ContractFunctionExecutionError\"){let b=await Fye(t,{balanceAddress:n,chainId:i,symbolType:\"bytes32\",tokenAddress:a}),E=g5(Fs(b.symbol,{dir:\"right\"}));return{...b,symbol:E}}throw g}let u=t.getClient({chainId:i}),h=await Qp(u,k6,\"getBalance\")(r?{address:n,blockNumber:r}:{address:n,blockTag:o}),m=t.chains.find(g=>g.id===i)??u.chain;return{decimals:m.nativeCurrency.decimals,formatted:vs(h,vQ(c)),symbol:m.nativeCurrency.symbol,value:h}}async function Fye(t,e){let{balanceAddress:n,chainId:r,symbolType:o,tokenAddress:i,unit:a}=e,c={abi:[{type:\"function\",name:\"balanceOf\",stateMutability:\"view\",inputs:[{type:\"address\"}],outputs:[{type:\"uint256\"}]},{type:\"function\",name:\"decimals\",stateMutability:\"view\",inputs:[],outputs:[{type:\"uint8\"}]},{type:\"function\",name:\"symbol\",stateMutability:\"view\",inputs:[],outputs:[{type:o}]}],address:i},[u,d,h]=await Dye(t,{allowFailure:!1,contracts:[{...c,functionName:\"balanceOf\",args:[n],chainId:r},{...c,functionName:\"decimals\",chainId:r},{...c,functionName:\"symbol\",chainId:r}]}),m=vs(u??\"0\",vQ(a??d));return{decimals:d,formatted:m,symbol:h,value:u}}p();async function jye(t,e){let{connector:n,id:r}=e,o=await Jp(t,{connector:n});return P6(o,{id:r})}p();async function zye(t,e={}){let{account:n,chainId:r,connector:o}=e,i=await Jp(t,{account:n,connector:o});return T9(i,{account:n,chainId:r})}p();function yF(t){return t.state.chainId}p();p();function fu(t,e){if(t===e)return!0;if(t&&e&&typeof t==\"object\"&&typeof e==\"object\"){if(t.constructor!==e.constructor)return!1;let n,r;if(Array.isArray(t)&&Array.isArray(e)){if(n=t.length,n!==e.length)return!1;for(r=n;r--!==0;)if(!fu(t[r],e[r]))return!1;return!0}if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===e.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===e.toString();let o=Object.keys(t);if(n=o.length,n!==Object.keys(e).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(e,o[r]))return!1;for(r=n;r--!==0;){let i=o[r];if(i&&!fu(t[i],e[i]))return!1}return!0}return t!==t&&e!==e}var wQ=[];function bF(t){let e=t.chains;return fu(wQ,e)?wQ:(wQ=e,e)}p();var vF=[];function LC(t){let e=[...t.state.connections.values()];return t.state.status===\"reconnecting\"||fu(vF,e)?vF:(vF=e,e)}p();var xQ=[];function wF(t){let e=t.connectors;return fu(xQ,e)?xQ:(xQ=e,e)}p();bo();async function Hye(t,e={}){return(await Jp(t,e)).extend(bQ)}p();var EQ=!1;async function qye(t,e={}){if(EQ)return[];EQ=!0,t.setState(d=>({...d,status:d.current?\"reconnecting\":\"connecting\"}));let n=[];if(e.connectors?.length)for(let d of e.connectors){let h;typeof d==\"function\"?h=t._internal.connectors.setup(d):h=d,n.push(h)}else n.push(...t.connectors);let r;try{r=await t.storage?.getItem(\"recentConnectorId\")}catch{}let o={};for(let[,d]of t.state.connections)o[d.connector.id]=1;r&&(o[r]=0);let i=Object.keys(o).length>0?[...n].sort((d,h)=>(o[d.id]??10)-(o[h.id]??10)):n,a=!1,c=[],u=[];for(let d of i){let h=await d.getProvider().catch(()=>{});if(!h||u.some(b=>b===h)||!await d.isAuthorized())continue;let g=await d.connect({isReconnecting:!0}).catch(()=>null);g&&(d.emitter.off(\"connect\",t._internal.events.connect),d.emitter.on(\"change\",t._internal.events.change),d.emitter.on(\"disconnect\",t._internal.events.disconnect),t.setState(b=>{let E=new Map(a?b.connections:new Map).set(d.uid,{accounts:g.accounts,chainId:g.chainId,connector:d});return{...b,current:a?b.current:d.uid,connections:E}}),c.push({accounts:g.accounts,chainId:g.chainId,connector:d}),u.push(h),a=!0)}return(t.state.status===\"reconnecting\"||t.state.status===\"connecting\")&&(a?t.setState(d=>({...d,status:\"connected\"})):t.setState(d=>({...d,connections:new Map,current:null,status:\"disconnected\"}))),EQ=!1,c}p();async function Wye(t,e){let{account:n,chainId:r,connector:o,calls:i,...a}=e,c=await Jp(t,{account:n,chainId:r,connector:o});return R9(c,{...a,...typeof n<\"u\"?{account:n}:{},calls:i,chain:r?{id:r}:void 0})}p();async function Vye(t,e){let{account:n,chainId:r,connector:o,...i}=e,a;return typeof n==\"object\"&&n?.type===\"local\"?a=t.getClient({chainId:r}):a=await Jp(t,{account:n??void 0,chainId:r,connector:o}),await Qp(a,Q0,\"sendTransaction\")({...i,...n?{account:n}:{},chain:r?{id:r}:null,gas:i.gas??void 0})}p();async function $ye(t,e){let{connector:n,id:r}=e,o=await Jp(t,{connector:n});return I9(o,{id:r})}p();p();var Sh=class extends yd{constructor(){super(\"Provider not found.\"),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ProviderNotFoundError\"})}},BC=class extends yd{constructor({connector:e}){super(`\"${e.name}\" does not support programmatic chain switching.`),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"SwitchChainNotSupportedError\"})}};async function Kye(t,e){let{addEthereumChainParameter:n,chainId:r}=e,o=t.state.connections.get(e.connector?.uid??t.state.current);if(o){let a=o.connector;if(!a.switchChain)throw new BC({connector:a});return await a.switchChain({addEthereumChainParameter:n,chainId:r})}let i=t.chains.find(a=>a.id===r);if(!i)throw new Lc;return t.setState(a=>({...a,chainId:r})),i}p();function SQ(t,e){let{onChange:n}=e;return t.subscribe(()=>N9(t),n,{equalityFn(r,o){let{connector:i,...a}=r,{connector:c,...u}=o;return fu(a,u)&&i?.id===c?.id&&i?.uid===c?.uid}})}p();function kQ(t,e){let{onChange:n}=e;return t.subscribe(r=>r.chainId,n)}p();function _Q(t,e){let{onChange:n}=e;return t.subscribe(()=>LC(t),n,{equalityFn:fu})}p();function CQ(t,e){let{onChange:n}=e;return t._internal.connectors.subscribe((r,o)=>{n(Object.values(r),o)})}p();bo();async function Xp(t,e){let{chainId:n,timeout:r=0,...o}=e,i=t.getClient({chainId:n}),c=await Qp(i,O9,\"waitForTransactionReceipt\")({...o,timeout:r});if(c.status===\"reverted\"){let d=await Qp(i,Ev,\"getTransaction\")({hash:c.transactionHash}),m=await Qp(i,xh,\"call\")({...d,data:d.input,gasPrice:d.type!==\"eip1559\"?d.gasPrice:void 0,maxFeePerGas:d.type===\"eip1559\"?d.maxFeePerGas:void 0,maxPriorityFeePerGas:d.type===\"eip1559\"?d.maxPriorityFeePerGas:void 0}),g=m?.data?g5(`0x${m.data.substring(138)}`):\"unknown reason\";throw new Error(g)}return{...c,chainId:i.chain.id}}p();bo();em.type=\"injected\";function em(t={}){let{shimDisconnect:e=!0,unstable_shimAsyncInject:n}=t;function r(){let u=t.target;if(typeof u==\"function\"){let d=u();if(d)return d}return typeof u==\"object\"?u:typeof u==\"string\"?{...YHe[u]??{id:u,name:`${u[0].toUpperCase()}${u.slice(1)}`,provider:`is${u[0].toUpperCase()}${u.slice(1)}`}}:{id:\"injected\",name:\"Injected\",provider(d){return d?.ethereum}}}let o,i,a,c;return u=>({get icon(){return r().icon},get id(){return r().id},get name(){return r().name},get supportsSimulation(){return!0},type:em.type,async setup(){let d=await this.getProvider();d?.on&&t.target&&(a||(a=this.onConnect.bind(this),d.on(\"connect\",a)),o||(o=this.onAccountsChanged.bind(this),d.on(\"accountsChanged\",o)))},async connect({chainId:d,isReconnecting:h}={}){let m=await this.getProvider();if(!m)throw new Sh;let g=[];if(h)g=await this.getAccounts().catch(()=>[]);else if(e)try{g=(await m.request({method:\"wallet_requestPermissions\",params:[{eth_accounts:{}}]}))[0]?.caveats?.[0]?.value?.map(E=>Fr(E)),g.length>0&&(g=await this.getAccounts())}catch(b){let E=b;if(E.code===oo.code)throw new oo(E);if(E.code===mf.code)throw E}try{!g?.length&&!h&&(g=(await m.request({method:\"eth_requestAccounts\"})).map(C=>Fr(C))),a&&(m.removeListener(\"connect\",a),a=void 0),o||(o=this.onAccountsChanged.bind(this),m.on(\"accountsChanged\",o)),i||(i=this.onChainChanged.bind(this),m.on(\"chainChanged\",i)),c||(c=this.onDisconnect.bind(this),m.on(\"disconnect\",c));let b=await this.getChainId();return d&&b!==d&&(b=(await this.switchChain({chainId:d}).catch(C=>{if(C.code===oo.code)throw C;return{id:b}}))?.id??b),e&&await u.storage?.removeItem(`${this.id}.disconnected`),t.target||await u.storage?.setItem(\"injected.connected\",!0),{accounts:g,chainId:b}}catch(b){let E=b;throw E.code===oo.code?new oo(E):E.code===mf.code?new mf(E):E}},async disconnect(){let d=await this.getProvider();if(!d)throw new Sh;i&&(d.removeListener(\"chainChanged\",i),i=void 0),c&&(d.removeListener(\"disconnect\",c),c=void 0),a||(a=this.onConnect.bind(this),d.on(\"connect\",a));try{await I6(()=>d.request({method:\"wallet_revokePermissions\",params:[{eth_accounts:{}}]}),{timeout:100})}catch{}e&&await u.storage?.setItem(`${this.id}.disconnected`,!0),t.target||await u.storage?.removeItem(\"injected.connected\")},async getAccounts(){let d=await this.getProvider();if(!d)throw new Sh;return(await d.request({method:\"eth_accounts\"})).map(m=>Fr(m))},async getChainId(){let d=await this.getProvider();if(!d)throw new Sh;let h=await d.request({method:\"eth_chainId\"});return Number(h)},async getProvider(){if(typeof window>\"u\")return;let d,h=r();return typeof h.provider==\"function\"?d=h.provider(window):typeof h.provider==\"string\"?d=xF(window,h.provider):d=h.provider,d&&!d.removeListener&&(\"off\"in d&&typeof d.off==\"function\"?d.removeListener=d.off:d.removeListener=()=>{}),d},async isAuthorized(){try{if(e&&await u.storage?.getItem(`${this.id}.disconnected`)||!t.target&&!await u.storage?.getItem(\"injected.connected\"))return!1;if(!await this.getProvider()){if(n!==void 0&&n!==!1){let g=async()=>(typeof window<\"u\"&&window.removeEventListener(\"ethereum#initialized\",g),!!await this.getProvider()),b=typeof n==\"number\"?n:1e3;if(await Promise.race([...typeof window<\"u\"?[new Promise(C=>window.addEventListener(\"ethereum#initialized\",()=>C(g()),{once:!0}))]:[],new Promise(C=>setTimeout(()=>C(g()),b))]))return!0}throw new Sh}return!!(await eg(()=>this.getAccounts())).length}catch{return!1}},async switchChain({addEthereumChainParameter:d,chainId:h}){let m=await this.getProvider();if(!m)throw new Sh;let g=u.chains.find(E=>E.id===h);if(!g)throw new ha(new Lc);let b=new Promise(E=>{let C=T=>{\"chainId\"in T&&T.chainId===h&&(u.emitter.off(\"change\",C),E())};u.emitter.on(\"change\",C)});try{return await Promise.all([m.request({method:\"wallet_switchEthereumChain\",params:[{chainId:Ye(h)}]}).then(async()=>{await this.getChainId()===h&&u.emitter.emit(\"change\",{chainId:h})}),b]),g}catch(E){let C=E;if(C.code===4902||C?.data?.originalError?.code===4902)try{let{default:T,...R}=g.blockExplorers??{},L;d?.blockExplorerUrls?L=d.blockExplorerUrls:T&&(L=[T.url,...Object.values(R).map(W=>W.url)]);let D;d?.rpcUrls?.length?D=d.rpcUrls:D=[g.rpcUrls.default?.http[0]??\"\"];let G={blockExplorerUrls:L,chainId:Ye(h),chainName:d?.chainName??g.name,iconUrls:d?.iconUrls,nativeCurrency:d?.nativeCurrency??g.nativeCurrency,rpcUrls:D};return await Promise.all([m.request({method:\"wallet_addEthereumChain\",params:[G]}).then(async()=>{if(await this.getChainId()===h)u.emitter.emit(\"change\",{chainId:h});else throw new oo(new Error(\"User rejected switch after adding network.\"))}),b]),g}catch(T){throw new oo(T)}throw C.code===oo.code?new oo(C):new ha(C)}},async onAccountsChanged(d){if(d.length===0)this.onDisconnect();else if(u.emitter.listenerCount(\"connect\")){let h=(await this.getChainId()).toString();this.onConnect({chainId:h}),e&&await u.storage?.removeItem(`${this.id}.disconnected`)}else u.emitter.emit(\"change\",{accounts:d.map(h=>Fr(h))})},onChainChanged(d){let h=Number(d);u.emitter.emit(\"change\",{chainId:h})},async onConnect(d){let h=await this.getAccounts();if(h.length===0)return;let m=Number(d.chainId);u.emitter.emit(\"connect\",{accounts:h,chainId:m});let g=await this.getProvider();g&&(a&&(g.removeListener(\"connect\",a),a=void 0),o||(o=this.onAccountsChanged.bind(this),g.on(\"accountsChanged\",o)),i||(i=this.onChainChanged.bind(this),g.on(\"chainChanged\",i)),c||(c=this.onDisconnect.bind(this),g.on(\"disconnect\",c)))},async onDisconnect(d){let h=await this.getProvider();d&&d.code===1013&&h&&(await this.getAccounts()).length||(u.emitter.emit(\"disconnect\"),h&&(i&&(h.removeListener(\"chainChanged\",i),i=void 0),c&&(h.removeListener(\"disconnect\",c),c=void 0),a||(a=this.onConnect.bind(this),h.on(\"connect\",a))))}})}var YHe={coinbaseWallet:{id:\"coinbaseWallet\",name:\"Coinbase Wallet\",provider(t){return t?.coinbaseWalletExtension?t.coinbaseWalletExtension:xF(t,\"isCoinbaseWallet\")}},metaMask:{id:\"metaMask\",name:\"MetaMask\",provider(t){return xF(t,e=>{if(!e.isMetaMask||e.isBraveWallet&&!e._events&&!e._state)return!1;let n=[\"isApexWallet\",\"isAvalanche\",\"isBitKeep\",\"isBlockWallet\",\"isKuCoinWallet\",\"isMathWallet\",\"isOkxWallet\",\"isOKExWallet\",\"isOneInchIOSWallet\",\"isOneInchAndroidWallet\",\"isOpera\",\"isPhantom\",\"isPortal\",\"isRabby\",\"isTokenPocket\",\"isTokenary\",\"isUniswapWallet\",\"isZerion\"];for(let r of n)if(e[r])return!1;return!0})}},phantom:{id:\"phantom\",name:\"Phantom\",provider(t){return t?.phantom?.ethereum?t.phantom?.ethereum:xF(t,\"isPhantom\")}}};function xF(t,e){function n(o){return typeof e==\"function\"?e(o):typeof e==\"string\"?o[e]:!0}let r=t.ethereum;if(r?.providers)return r.providers.find(o=>n(o));if(r&&n(r))return r}p();p();p();p();function Gye(t){if(typeof window>\"u\")return;let e=n=>t(n.detail);return window.addEventListener(\"eip6963:announceProvider\",e),window.dispatchEvent(new CustomEvent(\"eip6963:requestProvider\")),()=>window.removeEventListener(\"eip6963:announceProvider\",e)}function AQ(){let t=new Set,e=[],n=()=>Gye(o=>{e.some(({info:i})=>i.uuid===o.info.uuid)||(e=[...e,o],t.forEach(i=>i(e,{added:[o]})))}),r=n();return{_listeners(){return t},clear(){t.forEach(o=>o([],{removed:[...e]})),e=[]},destroy(){this.clear(),t.clear(),r?.()},findProvider({rdns:o}){return e.find(i=>i.info.rdns===o)},getProviders(){return e},reset(){this.clear(),r?.(),r=n()},subscribe(o,{emitImmediately:i}={}){return t.add(o),i&&o(e,{added:e}),()=>t.delete(o)}}}bo();p();var QHe=t=>(e,n,r)=>{let o=r.subscribe;return r.subscribe=(a,c,u)=>{let d=a;if(c){let h=u?.equalityFn||Object.is,m=a(r.getState());d=g=>{let b=a(g);if(!h(m,b)){let E=m;c(m=b,E)}},u?.fireImmediately&&c(m,m)}return o(d)},t(e,n,r)},Zye=QHe;function JHe(t,e){let n;try{n=t()}catch{return}return{getItem:o=>{var i;let a=u=>u===null?null:JSON.parse(u,e?.reviver),c=(i=n.getItem(o))!=null?i:null;return c instanceof Promise?c.then(a):a(c)},setItem:(o,i)=>n.setItem(o,JSON.stringify(i,e?.replacer)),removeItem:o=>n.removeItem(o)}}var TQ=t=>e=>{try{let n=t(e);return n instanceof Promise?n:{then(r){return TQ(r)(n)},catch(r){return this}}}catch(n){return{then(r){return this},catch(r){return TQ(r)(n)}}}},XHe=(t,e)=>(n,r,o)=>{let i={storage:JHe(()=>localStorage),partialize:C=>C,version:0,merge:(C,T)=>({...T,...C}),...e},a=!1,c=new Set,u=new Set,d=i.storage;if(!d)return t((...C)=>{console.warn(`[zustand persist middleware] Unable to update item \\'${i.name}\\', the given storage is currently unavailable.`),n(...C)},r,o);let h=()=>{let C=i.partialize({...r()});return d.setItem(i.name,{state:C,version:i.version})},m=o.setState;o.setState=(C,T)=>{m(C,T),h()};let g=t((...C)=>{n(...C),h()},r,o);o.getInitialState=()=>g;let b,E=()=>{var C,T;if(!d)return;a=!1,c.forEach(L=>{var D;return L((D=r())!=null?D:g)});let R=((T=i.onRehydrateStorage)==null?void 0:T.call(i,(C=r())!=null?C:g))||void 0;return TQ(d.getItem.bind(d))(i.name).then(L=>{if(L)if(typeof L.version==\"number\"&&L.version!==i.version){if(i.migrate)return[!0,i.migrate(L.state,L.version)];console.error(\"State loaded from storage couldn\\'t be migrated since no migrate function was provided\")}else return[!1,L.state];return[!1,void 0]}).then(L=>{var D;let[G,W]=L;if(b=i.merge(W,(D=r())!=null?D:g),n(b,!0),G)return h()}).then(()=>{R?.(b,void 0),b=r(),a=!0,u.forEach(L=>L(b))}).catch(L=>{R?.(void 0,L)})};return o.persist={setOptions:C=>{i={...i,...C},C.storage&&(d=C.storage)},clearStorage:()=>{d?.removeItem(i.name)},getOptions:()=>i,rehydrate:()=>E(),hasHydrated:()=>a,onHydrate:C=>(c.add(C),()=>{c.delete(C)}),onFinishHydration:C=>(u.add(C),()=>{u.delete(C)})},i.skipHydration||E(),b||g},Yye=XHe;p();var Qye=t=>{let e,n=new Set,r=(d,h)=>{let m=typeof d==\"function\"?d(e):d;if(!Object.is(m,e)){let g=e;e=h??(typeof m!=\"object\"||m===null)?m:Object.assign({},e,m),n.forEach(b=>b(e,g))}},o=()=>e,c={setState:r,getState:o,getInitialState:()=>u,subscribe:d=>(n.add(d),()=>n.delete(d))},u=e=t(r,o,c);return c},EF=t=>t?Qye(t):Qye;p();DC();var OQ=class{constructor(e){Object.defineProperty(this,\"uid\",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,\"_emitter\",{enumerable:!0,configurable:!0,writable:!0,value:new kv.default})}on(e,n){this._emitter.on(e,n)}once(e,n){this._emitter.once(e,n)}off(e,n){this._emitter.off(e,n)}emit(e,...n){let r=n[0];this._emitter.emit(e,{uid:this.uid,...r})}listenerCount(e){return this._emitter.listenerCount(e)}};function e1e(t){return new OQ(t)}p();p();function PQ(t,e){return JSON.parse(t,(n,r)=>{let o=r;return o?.__type===\"bigint\"&&(o=BigInt(o.value)),o?.__type===\"Map\"&&(o=new Map(o.value)),e?.(n,o)??o})}p();function t1e(t,e){return t.slice(0,e).join(\".\")||\".\"}function n1e(t,e){let{length:n}=t;for(let r=0;r<n;++r)if(t[r]===e)return r+1;return 0}function nqe(t,e){let n=typeof t==\"function\",r=typeof e==\"function\",o=[],i=[];return function(c,u){if(typeof u==\"object\")if(o.length){let d=n1e(o,this);d===0?o[o.length]=this:(o.splice(d),i.splice(d)),i[i.length]=c;let h=n1e(o,u);if(h!==0)return r?e.call(this,c,u,t1e(i,h)):`[ref=${t1e(i,h)}]`}else o[0]=u,i[0]=c;return n?t.call(this,c,u):u}}function MQ(t,e,n,r){return JSON.stringify(t,nqe((o,i)=>{let a=i;return typeof a==\"bigint\"&&(a={__type:\"bigint\",value:i.toString()}),a instanceof Map&&(a={__type:\"Map\",value:Array.from(i.entries())}),e?.(o,a)??a},r),n??void 0)}function FC(t){let{deserialize:e=PQ,key:n=\"wagmi\",serialize:r=MQ,storage:o=kF}=t;function i(a){return a instanceof Promise?a.then(c=>c).catch(()=>null):a}return{...o,key:n,async getItem(a,c){let u=o.getItem(`${n}.${a}`),d=await i(u);return d?e(d)??null:c??null},async setItem(a,c){let u=`${n}.${a}`;c===null?await i(o.removeItem(u)):await i(o.setItem(u,r(c)))},async removeItem(a){await i(o.removeItem(`${n}.${a}`))}}}var kF={getItem:()=>null,setItem:()=>{},removeItem:()=>{}};function r1e(){let t=typeof window<\"u\"&&window.localStorage?window.localStorage:kF;return{getItem(e){return t.getItem(e)},removeItem(e){t.removeItem(e)},setItem(e,n){try{t.setItem(e,n)}catch{}}}}p();var _F=256,CF;function o1e(t=11){if(!CF||_F+t>256*2){CF=\"\",_F=0;for(let e=0;e<256;e++)CF+=(256+Math.random()*256|0).toString(16).substring(1)}return CF.substring(_F,_F+++t)}function AF(t){let{multiInjectedProviderDiscovery:e=!0,storage:n=FC({storage:r1e()}),syncConnectedChain:r=!0,ssr:o=!1,...i}=t,a=typeof window<\"u\"&&e?AQ():void 0,c=EF(()=>i.chains),u=EF(()=>{let W=[],J=new Set;for(let ne of i.connectors??[]){let ie=d(ne);if(W.push(ie),!o&&ie.rdns){let Z=typeof ie.rdns==\"string\"?[ie.rdns]:ie.rdns;for(let ae of Z)J.add(ae)}}if(!o&&a){let ne=a.getProviders();for(let ie of ne)J.has(ie.info.rdns)||W.push(d(h(ie)))}return W});function d(W){let J=e1e(o1e()),ne={...W({emitter:J,chains:c.getState(),storage:n,transports:i.transports}),emitter:J,uid:J.uid};return J.on(\"connect\",D),ne.setup?.(),ne}function h(W){let{info:J}=W,ne=W.provider;return em({target:{...J,id:J.rdns,provider:ne}})}let m=new Map;function g(W={}){let J=W.chainId??T.getState().chainId,ne=c.getState().find(Z=>Z.id===J);if(W.chainId&&!ne)throw new Lc;{let Z=m.get(T.getState().chainId);if(Z&&!ne)return Z;if(!ne)throw new Lc}{let Z=m.get(J);if(Z)return Z}let ie;if(i.client)ie=i.client({chain:ne});else{let Z=ne.id,ae=c.getState().map(F=>F.id),V={},$=Object.entries(i);for(let[F,_]of $)if(!(F===\"chains\"||F===\"client\"||F===\"connectors\"||F===\"transports\"))if(typeof _==\"object\")if(Z in _)V[F]=_[Z];else{if(ae.some(z=>z in _))continue;V[F]=_}else V[F]=_;ie=M6({...V,chain:ne,batch:V.batch??{multicall:!0},transport:F=>i.transports[Z]({...F,connectors:u})})}return m.set(J,ie),ie}function b(){return{chainId:c.getState()[0].id,connections:new Map,current:null,status:\"disconnected\"}}let E,C=\"0.0.0-canary-\";RC.startsWith(C)?E=Number.parseInt(RC.replace(C,\"\")):E=Number.parseInt(RC.split(\".\")[0]??\"0\");let T=EF(Zye(n?Yye(b,{migrate(W,J){if(J===E)return W;let ne=b(),ie=R(W,ne.chainId);return{...ne,chainId:ie}},name:\"store\",partialize(W){return{connections:{__type:\"Map\",value:Array.from(W.connections.entries()).map(([J,ne])=>{let{id:ie,name:Z,type:ae,uid:V}=ne.connector;return[J,{...ne,connector:{id:ie,name:Z,type:ae,uid:V}}]})},chainId:W.chainId,current:W.current}},merge(W,J){typeof W==\"object\"&&W&&\"status\"in W&&delete W.status;let ne=R(W,J.chainId);return{...J,...W,chainId:ne}},skipHydration:o,storage:n,version:E}):b));T.setState(b());function R(W,J){return W&&typeof W==\"object\"&&\"chainId\"in W&&typeof W.chainId==\"number\"&&c.getState().some(ne=>ne.id===W.chainId)?W.chainId:J}r&&T.subscribe(({connections:W,current:J})=>J?W.get(J)?.chainId:void 0,W=>{if(c.getState().some(ne=>ne.id===W))return T.setState(ne=>({...ne,chainId:W??ne.chainId}))}),a?.subscribe(W=>{let J=new Set,ne=new Set;for(let Z of u.getState())if(J.add(Z.id),Z.rdns){let ae=typeof Z.rdns==\"string\"?[Z.rdns]:Z.rdns;for(let V of ae)ne.add(V)}let ie=[];for(let Z of W){if(ne.has(Z.info.rdns))continue;let ae=d(h(Z));J.has(ae.id)||ie.push(ae)}n&&!T.persist.hasHydrated()||u.setState(Z=>[...Z,...ie],!0)});function L(W){T.setState(J=>{let ne=J.connections.get(W.uid);return ne?{...J,connections:new Map(J.connections).set(W.uid,{accounts:W.accounts??ne.accounts,chainId:W.chainId??ne.chainId,connector:ne.connector})}:J})}function D(W){T.getState().status===\"connecting\"||T.getState().status===\"reconnecting\"||T.setState(J=>{let ne=u.getState().find(ie=>ie.uid===W.uid);return ne?(ne.emitter.listenerCount(\"connect\")&&ne.emitter.off(\"connect\",L),ne.emitter.listenerCount(\"change\")||ne.emitter.on(\"change\",L),ne.emitter.listenerCount(\"disconnect\")||ne.emitter.on(\"disconnect\",G),{...J,connections:new Map(J.connections).set(W.uid,{accounts:W.accounts,chainId:W.chainId,connector:ne}),current:W.uid,status:\"connected\"}):J})}function G(W){T.setState(J=>{let ne=J.connections.get(W.uid);if(ne){let Z=ne.connector;Z.emitter.listenerCount(\"change\")&&ne.connector.emitter.off(\"change\",L),Z.emitter.listenerCount(\"disconnect\")&&ne.connector.emitter.off(\"disconnect\",G),Z.emitter.listenerCount(\"connect\")||ne.connector.emitter.on(\"connect\",D)}if(J.connections.delete(W.uid),J.connections.size===0)return{...J,connections:new Map,current:null,status:\"disconnected\"};let ie=J.connections.values().next().value;return{...J,connections:new Map(J.connections),current:ie.connector.uid}})}return{get chains(){return c.getState()},get connectors(){return u.getState()},storage:n,getClient:g,get state(){return T.getState()},setState(W){let J;typeof W==\"function\"?J=W(T.getState()):J=W;let ne=b();typeof J!=\"object\"&&(J=ne),Object.keys(ne).some(Z=>!(Z in J))&&(J=ne),T.setState(J,!0)},subscribe(W,J,ne){return T.subscribe(W,J,ne?{...ne,fireImmediately:ne.emitImmediately}:void 0)},_internal:{mipd:a,store:T,ssr:!!o,syncConnectedChain:r,transports:i.transports,chains:{setState(W){let J=typeof W==\"function\"?W(c.getState()):W;if(J.length!==0)return c.setState(J,!0)},subscribe(W){return c.subscribe(W)}},connectors:{providerDetailToConnector:h,setup:d,setState(W){return u.setState(typeof W==\"function\"?W(u.getState()):W,!0)},subscribe(W){return u.subscribe(W)}},events:{change:L,connect:D,disconnect:G}}}}p();function NQ(t,e){let{initialState:n,reconnectOnMount:r}=e;return n&&!t._internal.store.persist.hasHydrated()&&t.setState({...n,chainId:t.chains.some(o=>o.id===n.chainId)?n.chainId:t.chains[0].id,connections:r?n.connections:new Map,status:r?\"reconnecting\":\"disconnected\"}),{async onMount(){t._internal.ssr&&(await t._internal.store.persist.rehydrate(),t._internal.mipd&&t._internal.connectors.setState(o=>{let i=new Set;for(let u of o??[])if(u.rdns){let d=Array.isArray(u.rdns)?u.rdns:[u.rdns];for(let h of d)i.add(h)}let a=[],c=t._internal.mipd?.getProviders()??[];for(let u of c){if(i.has(u.info.rdns))continue;let d=t._internal.connectors.providerDetailToConnector(u),h=t._internal.connectors.setup(d);a.push(h)}return[...o,...a]})),r?qye(t):t.storage&&t.setState(o=>({...o,connections:new Map}))}}}bo();p();var TF={getItem(t){return typeof window>\"u\"?null:LQ(document.cookie,t)??null},setItem(t,e){typeof window>\"u\"||(document.cookie=`${t}=${e};path=/;samesite=Lax`)},removeItem(t){typeof window>\"u\"||(document.cookie=`${t}=;max-age=-1;path=/`)}};function LQ(t,e){let n=t.split(\"; \").find(r=>r.startsWith(`${e}=`));if(n)return n.substring(e.length+1)}p();function BQ(t){let{chain:e}=t,n=e.rpcUrls.default.http[0];if(!t.transports)return[n];let r=t.transports?.[e.id]?.({chain:e});return(r?.value?.transports||[r]).map(({value:i})=>i?.url||n)}var RF=he(et(),1);function i1e(t){let{children:e,config:n,initialState:r,reconnectOnMount:o=!0}=t,{onMount:i}=NQ(n,{initialState:r,reconnectOnMount:o});n._internal.ssr||i();let a=(0,RF.useRef)(!0);return(0,RF.useEffect)(()=>{if(a.current&&n._internal.ssr)return i(),()=>{a.current=!1}},[]),e}var D9=(0,B9.createContext)(void 0);function IF(t){let{children:e,config:n}=t,r={value:n};return(0,B9.createElement)(i1e,t,(0,B9.createElement)(D9.Provider,r,e))}p();p();p();var s1e=\"2.15.6\";var a1e=()=>`wagmi@${s1e}`;var OF=class extends yd{constructor(){super(...arguments),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"WagmiError\"})}get docsBaseUrl(){return\"https://wagmi.sh/react\"}get version(){return a1e()}};p();var N6=class extends OF{constructor(){super(\"`useConfig` must be used within `WagmiProvider`.\",{docsPath:\"/api/WagmiProvider\"}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"WagmiProviderNotFoundError\"})}};p();p();var c1e=he(et(),1);function Qn(t={}){let e=t.config??(0,c1e.useContext)(D9);if(!e)throw new N6;return e}p();p();p();function DQ(t,e){let{onChange:n}=e;return t._internal.chains.subscribe((r,o)=>{n(r,o)})}var PF=he(et(),1),y1e=he(g1e(),1),FQ=t=>typeof t==\"object\"&&!Array.isArray(t);function b1e(t,e,n=e,r=fu){let o=(0,PF.useRef)([]),i=(0,y1e.useSyncExternalStoreWithSelector)(t,e,n,a=>a,(a,c)=>{if(FQ(a)&&FQ(c)&&o.current.length){for(let u of o.current)if(!r(a[u],c[u]))return!1;return!0}return r(a,c)});return(0,PF.useMemo)(()=>{if(FQ(i)){let a={...i},c={};for(let[u,d]of Object.entries(a))c={...c,[u]:{configurable:!1,enumerable:!0,get:()=>(o.current.includes(u)||o.current.push(u),d)}};return Object.defineProperties(a,c),a}return i},[i])}function Jn(t={}){let e=Qn(t);return b1e(n=>SQ(e,{onChange:n}),()=>N9(e))}p();p();p();function UQ(t,e){return L4(t,e)}function jQ(t){return JSON.stringify(t,(e,n)=>sqe(n)?Object.keys(n).sort().reduce((r,o)=>(r[o]=n[o],r),{}):typeof n==\"bigint\"?n.toString():n)}function sqe(t){if(!v1e(t))return!1;let e=t.constructor;if(typeof e>\"u\")return!0;let n=e.prototype;return!(!v1e(n)||!n.hasOwnProperty(\"isPrototypeOf\"))}function v1e(t){return Object.prototype.toString.call(t)===\"[object Object]\"}function tm(t){let{_defaulted:e,behavior:n,gcTime:r,initialData:o,initialDataUpdatedAt:i,maxPages:a,meta:c,networkMode:u,queryFn:d,queryHash:h,queryKey:m,queryKeyHashFn:g,retry:b,retryDelay:E,structuralSharing:C,getPreviousPageParam:T,getNextPageParam:R,initialPageParam:L,_optimisticResults:D,enabled:G,notifyOnChangeProps:W,placeholderData:J,refetchInterval:ne,refetchIntervalInBackground:ie,refetchOnMount:Z,refetchOnReconnect:ae,refetchOnWindowFocus:V,retryOnMount:$,select:F,staleTime:_,suspense:O,throwOnError:z,config:N,connector:B,query:j,...q}=t;return q}p();function zQ(t){return{mutationFn(e){return Sye(t,e)},mutationKey:[\"connect\"]}}p();function HQ(t){return{mutationFn(e){return Lye(t,e)},mutationKey:[\"disconnect\"]}}p();function qQ(t,e={}){return{async queryFn({queryKey:n}){let{address:r,scopeKey:o,...i}=n[1];if(!r)throw new Error(\"address is required\");return await Uye(t,{...i,address:r})??null},queryKey:w1e(e)}}function w1e(t={}){return[\"balance\",tm(t)]}p();function WQ(t,e){return{async queryFn({queryKey:n}){let{scopeKey:r,...o}=n[1];return await jye(t,o)},queryKey:x1e(e),retry(n,r){return r instanceof Sv?!1:n<3}}}function x1e(t){return[\"callsStatus\",tm(t)]}p();function VQ(t,e={}){return{async queryFn({queryKey:n}){let{scopeKey:r,...o}=n[1];return await zye(t,o)},queryKey:E1e(e),retry(n,r){return r instanceof Sv?!1:n<3}}}function E1e(t={}){return[\"capabilities\",tm(t)]}p();function $Q(t,e={}){return{gcTime:0,async queryFn({queryKey:n}){let{connector:r}=e,{connectorUid:o,scopeKey:i,...a}=n[1];return Hye(t,{...a,connector:r})},queryKey:S1e(e)}}function S1e(t={}){let{connector:e,...n}=t;return[\"walletClient\",{...tm(n),connectorUid:e?.uid}]}p();function KQ(t,e={}){return{async queryFn({queryKey:n}){let r=e.abi;if(!r)throw new Error(\"abi is required\");let{functionName:o,scopeKey:i,...a}=n[1],c=(()=>{let u=n[1];if(u.address)return{address:u.address};if(u.code)return{code:u.code};throw new Error(\"address or code is required\")})();if(!o)throw new Error(\"functionName is required\");return gF(t,{abi:r,functionName:o,args:a.args,...c,...a})},queryKey:k1e(e)}}function k1e(t={}){let{abi:e,...n}=t;return[\"readContract\",tm(n)]}p();function GQ(t){return{mutationFn(e){return Wye(t,e)},mutationKey:[\"sendCalls\"]}}p();function ZQ(t){return{mutationFn(e){return $ye(t,e)},mutationKey:[\"showCallsStatus\"]}}p();function YQ(t){return{mutationFn(e){return Vye(t,e)},mutationKey:[\"sendTransaction\"]}}p();function QQ(t){return{mutationFn(e){return Kye(t,e)},mutationKey:[\"switchChain\"]}}p();function JQ(t,e={}){return{async queryFn({queryKey:n}){let{hash:r,...o}=n[1];if(!r)throw new Error(\"hash is required\");return Xp(t,{...o,onReplaced:e.onReplaced,hash:r})},queryKey:_1e(e)}}function _1e(t={}){let{onReplaced:e,...n}=t;return[\"waitForTransactionReceipt\",tm(n)]}p();function nm(t){let e=pd({...t,queryKeyHashFn:jQ});return e.queryKey=t.queryKey,e}p();var C1e=he(et(),1);function xl(t={}){let e=Qn(t);return(0,C1e.useSyncExternalStore)(n=>kQ(e,{onChange:n}),()=>yF(e),()=>yF(e))}function XQ(t={}){let{address:e,query:n={}}=t,r=Qn(t),o=xl({config:r}),i=qQ(r,{...t,chainId:t.chainId??o}),a=!!(e&&(n.enabled??!0));return nm({...n,...i,enabled:a})}p();function F9(t){let{query:e={}}=t,n=Qn(t),r=WQ(n,t);return nm({...e,...r})}p();function eJ(t={}){let{account:e,query:n={}}=t,{address:r}=Jn(),o=Qn(t),i=VQ(o,{...t,account:e??r});return nm({...n,...i})}p();var A1e=he(et(),1);function T1e(t={}){let e=Qn(t);return(0,A1e.useSyncExternalStore)(n=>DQ(e,{onChange:n}),()=>bF(e),()=>bF(e))}p();var O1e=he(et(),1);p();var R1e=he(et(),1);function I1e(t={}){let e=Qn(t);return(0,R1e.useSyncExternalStore)(n=>CQ(e,{onChange:n}),()=>wF(e),()=>wF(e))}function U9(t={}){let{mutation:e}=t,n=Qn(t),r=zQ(n),{mutate:o,mutateAsync:i,...a}=wf({...e,...r});return(0,O1e.useEffect)(()=>n.subscribe(({status:c})=>c,(c,u)=>{u===\"connected\"&&c===\"disconnected\"&&a.reset()}),[n,a.reset]),{...a,connect:o,connectAsync:i,connectors:I1e({config:n})}}p();var P1e=he(et(),1);function M1e(t={}){let e=Qn(t);return(0,P1e.useSyncExternalStore)(n=>_Q(e,{onChange:n}),()=>LC(e),()=>LC(e))}p();function j9(t={}){let{mutation:e}=t,n=Qn(t),r=HQ(n),{mutate:o,mutateAsync:i,...a}=wf({...e,...r});return{...a,connectors:M1e({config:n}).map(c=>c.connector),disconnect:o,disconnectAsync:i}}p();function MF(t={}){let{abi:e,address:n,functionName:r,query:o={}}=t,i=t.code,a=Qn(t),c=xl({config:a}),u=KQ(a,{...t,chainId:t.chainId??c}),d=!!((n||i)&&e&&r&&(o.enabled??!0));return nm({...o,...u,enabled:d,structuralSharing:o.structuralSharing??UQ})}p();function z9(t={}){let{mutation:e}=t,n=Qn(t),r=GQ(n),{mutate:o,mutateAsync:i,...a}=wf({...e,...r});return{...a,sendCalls:o,sendCallsAsync:i}}p();function H9(t={}){let{mutation:e}=t,n=Qn(t),r=YQ(n),{mutate:o,mutateAsync:i,...a}=wf({...e,...r});return{...a,sendTransaction:o,sendTransactionAsync:i}}p();function q9(t={}){let{mutation:e}=t,n=Qn(t),r=ZQ(n),{mutate:o,mutateAsync:i,...a}=wf({...e,...r});return{...a,showCallsStatus:o,showCallsStatusAsync:i}}p();function L6(t={}){let{mutation:e}=t,n=Qn(t),r=QQ(n),{mutate:o,mutateAsync:i,...a}=wf({...e,...r});return{...a,chains:T1e({config:n}),switchChain:o,switchChainAsync:i}}p();var NF=he(et(),1);function tJ(t={}){let{query:e={},...n}=t,r=Qn(n),o=fv(),{address:i,connector:a,status:c}=Jn({config:r}),u=xl({config:r}),d=t.connector??a,{queryKey:h,...m}=$Q(r,{...t,chainId:t.chainId??u,connector:t.connector??a}),g=!!((c===\"connected\"||c===\"reconnecting\"&&d?.getProvider)&&(e.enabled??!0)),b=(0,NF.useRef)(i);return(0,NF.useEffect)(()=>{let E=b.current;!i&&E?(o.removeQueries({queryKey:h}),b.current=void 0):i!==E&&(o.invalidateQueries({queryKey:h}),b.current=i)},[i,o]),nm({...e,...m,queryKey:h,enabled:g,staleTime:Number.POSITIVE_INFINITY})}p();function nJ(t={}){let{hash:e,query:n={}}=t,r=Qn(t),o=xl({config:r}),i=JQ(r,{...t,chainId:t.chainId??o}),a=!!(e&&(n.enabled??!0));return nm({...n,...i,enabled:a})}p();p();bo();f1.type=\"coinbaseWallet\";function f1(t={}){return t.version===\"3\"||t.headlessMode?srt(t):irt(t)}function irt(t){let e,n,r,o;return i=>({id:\"coinbaseWalletSDK\",name:\"Coinbase Wallet\",rdns:\"com.coinbase.wallet\",type:f1.type,async connect({chainId:a,...c}={}){try{let u=await this.getProvider(),d=(await u.request({method:\"eth_requestAccounts\",params:\"instantOnboarding\"in c&&c.instantOnboarding?[{onboarding:\"instant\"}]:[]})).map(m=>Fr(m));n||(n=this.onAccountsChanged.bind(this),u.on(\"accountsChanged\",n)),r||(r=this.onChainChanged.bind(this),u.on(\"chainChanged\",r)),o||(o=this.onDisconnect.bind(this),u.on(\"disconnect\",o));let h=await this.getChainId();return a&&h!==a&&(h=(await this.switchChain({chainId:a}).catch(g=>{if(g.code===oo.code)throw g;return{id:h}}))?.id??h),{accounts:d,chainId:h}}catch(u){throw/(user closed modal|accounts received is empty|user denied account|request rejected)/i.test(u.message)?new oo(u):u}},async disconnect(){let a=await this.getProvider();n&&(a.removeListener(\"accountsChanged\",n),n=void 0),r&&(a.removeListener(\"chainChanged\",r),r=void 0),o&&(a.removeListener(\"disconnect\",o),o=void 0),a.disconnect(),a.close?.()},async getAccounts(){return(await(await this.getProvider()).request({method:\"eth_accounts\"})).map(c=>Fr(c))},async getChainId(){let c=await(await this.getProvider()).request({method:\"eth_chainId\"});return Number(c)},async getProvider(){if(!e){let a=typeof t.preference==\"string\"?{options:t.preference}:{...t.preference,options:t.preference?.options??\"all\"},{createCoinbaseWalletSDK:c}=await Promise.resolve().then(()=>(L2e(),N2e));e=c({...t,appChainIds:i.chains.map(d=>d.id),preference:a}).getProvider()}return e},async isAuthorized(){try{return!!(await this.getAccounts()).length}catch{return!1}},async switchChain({addEthereumChainParameter:a,chainId:c}){let u=i.chains.find(h=>h.id===c);if(!u)throw new ha(new Lc);let d=await this.getProvider();try{return await d.request({method:\"wallet_switchEthereumChain\",params:[{chainId:Ye(u.id)}]}),u}catch(h){if(h.code===4902)try{let m;a?.blockExplorerUrls?m=a.blockExplorerUrls:m=u.blockExplorers?.default.url?[u.blockExplorers?.default.url]:[];let g;a?.rpcUrls?.length?g=a.rpcUrls:g=[u.rpcUrls.default?.http[0]??\"\"];let b={blockExplorerUrls:m,chainId:Ye(c),chainName:a?.chainName??u.name,iconUrls:a?.iconUrls,nativeCurrency:a?.nativeCurrency??u.nativeCurrency,rpcUrls:g};return await d.request({method:\"wallet_addEthereumChain\",params:[b]}),u}catch(m){throw new oo(m)}throw new ha(h)}},onAccountsChanged(a){a.length===0?this.onDisconnect():i.emitter.emit(\"change\",{accounts:a.map(c=>Fr(c))})},onChainChanged(a){let c=Number(a);i.emitter.emit(\"change\",{chainId:c})},async onDisconnect(a){i.emitter.emit(\"disconnect\");let c=await this.getProvider();n&&(c.removeListener(\"accountsChanged\",n),n=void 0),r&&(c.removeListener(\"chainChanged\",r),r=void 0),o&&(c.removeListener(\"disconnect\",o),o=void 0)}})}function srt(t){let n,r,o,i,a;return c=>({id:\"coinbaseWalletSDK\",name:\"Coinbase Wallet\",rdns:\"com.coinbase.wallet\",type:f1.type,async connect({chainId:u}={}){try{let d=await this.getProvider(),h=(await d.request({method:\"eth_requestAccounts\"})).map(g=>Fr(g));o||(o=this.onAccountsChanged.bind(this),d.on(\"accountsChanged\",o)),i||(i=this.onChainChanged.bind(this),d.on(\"chainChanged\",i)),a||(a=this.onDisconnect.bind(this),d.on(\"disconnect\",a));let m=await this.getChainId();return u&&m!==u&&(m=(await this.switchChain({chainId:u}).catch(b=>{if(b.code===oo.code)throw b;return{id:m}}))?.id??m),{accounts:h,chainId:m}}catch(d){throw/(user closed modal|accounts received is empty|user denied account)/i.test(d.message)?new oo(d):d}},async disconnect(){let u=await this.getProvider();o&&(u.removeListener(\"accountsChanged\",o),o=void 0),i&&(u.removeListener(\"chainChanged\",i),i=void 0),a&&(u.removeListener(\"disconnect\",a),a=void 0),u.disconnect(),u.close()},async getAccounts(){return(await(await this.getProvider()).request({method:\"eth_accounts\"})).map(d=>Fr(d))},async getChainId(){let d=await(await this.getProvider()).request({method:\"eth_chainId\"});return Number(d)},async getProvider(){if(!r){let u=await(async()=>{let{default:b}=await Promise.resolve().then(()=>he(o_e(),1));return typeof b!=\"function\"&&typeof b.default==\"function\"?b.default:b})();n=new u({...t,reloadOnDisconnect:!1});let d=n.walletExtension?.getChainId(),h=c.chains.find(b=>t.chainId?b.id===t.chainId:b.id===d)||c.chains[0],m=t.chainId||h?.id,g=t.jsonRpcUrl||h?.rpcUrls.default.http[0];r=n.makeWeb3Provider(g,m)}return r},async isAuthorized(){try{return!!(await this.getAccounts()).length}catch{return!1}},async switchChain({addEthereumChainParameter:u,chainId:d}){let h=c.chains.find(g=>g.id===d);if(!h)throw new ha(new Lc);let m=await this.getProvider();try{return await m.request({method:\"wallet_switchEthereumChain\",params:[{chainId:Ye(h.id)}]}),h}catch(g){if(g.code===4902)try{let b;u?.blockExplorerUrls?b=u.blockExplorerUrls:b=h.blockExplorers?.default.url?[h.blockExplorers?.default.url]:[];let E;u?.rpcUrls?.length?E=u.rpcUrls:E=[h.rpcUrls.default?.http[0]??\"\"];let C={blockExplorerUrls:b,chainId:Ye(d),chainName:u?.chainName??h.name,iconUrls:u?.iconUrls,nativeCurrency:u?.nativeCurrency??h.nativeCurrency,rpcUrls:E};return await m.request({method:\"wallet_addEthereumChain\",params:[C]}),h}catch(b){throw new oo(b)}throw new ha(g)}},onAccountsChanged(u){u.length===0?this.onDisconnect():c.emitter.emit(\"change\",{accounts:u.map(d=>Fr(d))})},onChainChanged(u){let d=Number(u);c.emitter.emit(\"change\",{chainId:d})},async onDisconnect(u){c.emitter.emit(\"disconnect\");let d=await this.getProvider();o&&(d.removeListener(\"accountsChanged\",o),o=void 0),i&&(d.removeListener(\"chainChanged\",i),i=void 0),a&&(d.removeListener(\"disconnect\",a),a=void 0)}})}p();bo();KO.type=\"metaMask\";function KO(t={}){let e,n,r,o,i,a,c,u;return d=>({id:\"metaMaskSDK\",name:\"MetaMask\",rdns:[\"io.metamask\",\"io.metamask.mobile\"],type:KO.type,async setup(){let h=await this.getProvider();h?.on&&(a||(a=this.onConnect.bind(this),h.on(\"connect\",a)),o||(o=this.onAccountsChanged.bind(this),h.on(\"accountsChanged\",o)))},async connect({chainId:h,isReconnecting:m}={}){let g=await this.getProvider();c||(c=this.onDisplayUri,g.on(\"display_uri\",c));let b=[];m&&(b=await this.getAccounts().catch(()=>[]));try{let E,C;b?.length||(t.connectAndSign||t.connectWith?(t.connectAndSign?E=await e.connectAndSign({msg:t.connectAndSign}):t.connectWith&&(C=await e.connectWith({method:t.connectWith.method,params:t.connectWith.params})),b=await this.getAccounts()):b=(await e.connect()).map(L=>Fr(L)));let T=await this.getChainId();return h&&T!==h&&(T=(await this.switchChain({chainId:h}).catch(L=>{if(L.code===oo.code)throw L;return{id:T}}))?.id??T),c&&(g.removeListener(\"display_uri\",c),c=void 0),E?g.emit(\"connectAndSign\",{accounts:b,chainId:T,signResponse:E}):C&&g.emit(\"connectWith\",{accounts:b,chainId:T,connectWithResponse:C}),a&&(g.removeListener(\"connect\",a),a=void 0),o||(o=this.onAccountsChanged.bind(this),g.on(\"accountsChanged\",o)),i||(i=this.onChainChanged.bind(this),g.on(\"chainChanged\",i)),u||(u=this.onDisconnect.bind(this),g.on(\"disconnect\",u)),{accounts:b,chainId:T}}catch(E){let C=E;throw C.code===oo.code?new oo(C):C.code===mf.code?new mf(C):C}},async disconnect(){let h=await this.getProvider();i&&(h.removeListener(\"chainChanged\",i),i=void 0),u&&(h.removeListener(\"disconnect\",u),u=void 0),a||(a=this.onConnect.bind(this),h.on(\"connect\",a)),await e.terminate()},async getAccounts(){return(await(await this.getProvider()).request({method:\"eth_accounts\"})).map(g=>Fr(g))},async getChainId(){let h=await this.getProvider(),m=h.getChainId()||await h?.request({method:\"eth_chainId\"});return Number(m)},async getProvider(){async function h(){let m=await(async()=>{let{default:C}=await Promise.resolve().then(()=>(v7e(),b7e));return typeof C!=\"function\"&&typeof C.default==\"function\"?C.default:C})(),g={};for(let C of d.chains)g[Ye(C.id)]=BQ({chain:C,transports:d.transports})?.[0];e=new m({_source:\"wagmi\",forceDeleteProvider:!1,forceInjectProvider:!1,injectProvider:!1,...t,readonlyRPCMap:g,dappMetadata:{...t.dappMetadata,name:t.dappMetadata?.name?t.dappMetadata?.name:\"wagmi\",url:t.dappMetadata?.url?t.dappMetadata?.url:typeof window<\"u\"?window.location.origin:\"https://wagmi.sh\"},useDeeplink:t.useDeeplink??!0});let b=await e.init(),E=b?.activeProvider?b.activeProvider:e.getProvider();if(!E)throw new Sh;return E}return n||(r||(r=h()),n=await r),n},async isAuthorized(){try{return!!(await eg(()=>I6(()=>this.getAccounts(),{timeout:200}),{delay:201,retryCount:3})).length}catch{return!1}},async switchChain({addEthereumChainParameter:h,chainId:m}){let g=await this.getProvider(),b=d.chains.find(T=>T.id===m);if(!b)throw new ha(new Lc);try{return await g.request({method:\"wallet_switchEthereumChain\",params:[{chainId:Ye(m)}]}),await E(),await C(m),b}catch(T){let R=T;if(R.code===oo.code)throw new oo(R);if(R.code===4902||R?.data?.originalError?.code===4902)try{return await g.request({method:\"wallet_addEthereumChain\",params:[{blockExplorerUrls:(()=>{let{default:L,...D}=b.blockExplorers??{};if(h?.blockExplorerUrls)return h.blockExplorerUrls;if(L)return[L.url,...Object.values(D).map(G=>G.url)]})(),chainId:Ye(m),chainName:h?.chainName??b.name,iconUrls:h?.iconUrls,nativeCurrency:h?.nativeCurrency??b.nativeCurrency,rpcUrls:h?.rpcUrls?.length?h.rpcUrls:[b.rpcUrls.default?.http[0]??\"\"]}]}),await E(),await C(m),b}catch(L){let D=L;throw D.code===oo.code?new oo(D):new ha(D)}throw new ha(R)}async function E(){await eg(async()=>{let T=Ei(await g.request({method:\"eth_chainId\"}));if(T!==m)throw new Error(\"User rejected switch after adding network.\");return T},{delay:50,retryCount:20})}async function C(T){await new Promise(R=>{let L=D=>{\"chainId\"in D&&D.chainId===T&&(d.emitter.off(\"change\",L),R())};d.emitter.on(\"change\",L),d.emitter.emit(\"change\",{chainId:T})})}},async onAccountsChanged(h){if(h.length===0)if(e.isExtensionActive())this.onDisconnect();else return;else if(d.emitter.listenerCount(\"connect\")){let m=(await this.getChainId()).toString();this.onConnect({chainId:m})}else d.emitter.emit(\"change\",{accounts:h.map(m=>Fr(m))})},onChainChanged(h){let m=Number(h);d.emitter.emit(\"change\",{chainId:m})},async onConnect(h){let m=await this.getAccounts();if(m.length===0)return;let g=Number(h.chainId);d.emitter.emit(\"connect\",{accounts:m,chainId:g});let b=await this.getProvider();a&&(b.removeListener(\"connect\",a),a=void 0),o||(o=this.onAccountsChanged.bind(this),b.on(\"accountsChanged\",o)),i||(i=this.onChainChanged.bind(this),b.on(\"chainChanged\",i)),u||(u=this.onDisconnect.bind(this),b.on(\"disconnect\",u))},async onDisconnect(h){let m=await this.getProvider();h&&h.code===1013&&m&&(await this.getAccounts()).length||(d.emitter.emit(\"disconnect\"),i&&(m.removeListener(\"chainChanged\",i),i=void 0),u&&(m.removeListener(\"disconnect\",u),u=void 0),a||(a=this.onConnect.bind(this),m.on(\"connect\",a)))},onDisplayUri(h){d.emitter.emit(\"message\",{type:\"display_uri\",data:h})}})}p();var w7e=({apiKey:t,appName:e,appLogoUrl:n,connectors:r=[f1({appName:e,appLogoUrl:n,preference:\"all\"})]})=>AF({chains:[Yn,xs],connectors:r,storage:FC({storage:TF}),ssr:!0,transports:{[Yn.id]:t?Eh(`https://api.developer.coinbase.com/rpc/v1/base/${t}`):Eh(),[xs.id]:t?Eh(`https://api.developer.coinbase.com/rpc/v1/base-sepolia/${t}`):Eh()}});p();var x7e=he(et(),1);function E7e(){let t=null,e=null;try{t=Qn()}catch(n){n instanceof N6||console.error(\"Error fetching WagmiProvider, using default:\",n)}try{e=fv()}catch(n){n.message!==\"No QueryClient set, use QueryClientProvider to set one\"&&console.error(\"Error fetching QueryClient, using default:\",n)}return(0,x7e.useMemo)(()=>({providedWagmiConfig:t,providedQueryClient:e}),[t,e])}p();var bq=he(et(),1);var hoe=(0,bq.createContext)(bh);function lo(){return(0,bq.useContext)(hoe)}function S7e({children:t,connectors:e}){let{providedWagmiConfig:n,providedQueryClient:r}=E7e();return(0,GO.jsx)(Fat,{providedWagmiConfig:n,connectors:e,children:(0,GO.jsx)(Uat,{providedQueryClient:r,children:t})})}function Fat({children:t,providedWagmiConfig:e,connectors:n}){let r=lo(),o=(0,_1.useRef)(n),i=(0,_1.useCallback)(()=>{var u,d,h,m,g,b;if(e)return e;let E=((d=(u=r.config)==null?void 0:u.appearance)==null?void 0:d.name)??void 0,C=((m=(h=r.config)==null?void 0:h.appearance)==null?void 0:m.logo)??void 0;return w7e({apiKey:r.apiKey??void 0,appName:E,appLogoUrl:C,connectors:n??[f1({appName:E,appLogoUrl:C,preference:(b=(g=r.config)==null?void 0:g.wallet)==null?void 0:b.preference})]})},[r.apiKey,r.config,n,e]),[a,c]=(0,_1.useState)(()=>i());return(0,_1.useEffect)(()=>{o.current!==n&&(c(i()),o.current=n)},[n,i]),e?t:(0,GO.jsx)(IF,{config:a,children:t})}function Uat({children:t,providedQueryClient:e}){let n=(0,_1.useMemo)(()=>e||new vZ,[e]);return e?t:(0,GO.jsx)(MZ,{client:n,children:t})}p();var kie=he(De(),1),T9e=he(et(),1);p();p();var k7e=\"https://api.developer.coinbase.com/analytics\";p();p();p();p();p();var ZO={};ld(ZO,{InvalidDomainManifest:()=>moe,RejectedByUser:()=>goe});p();p();var LS=class extends Error{constructor(n,r={}){super(n,r.cause?{cause:r.cause}:void 0);Op(this,\"name\",\"BaseError\");Op(this,\"cause\");this.cause=r.cause}};var moe=class extends LS{constructor(){super(\"Invalid domain manifest\");Op(this,\"name\",\"AddMiniApp.InvalidDomainManifest\")}},goe=class extends LS{constructor(){super(\"Add frame rejected by user\");Op(this,\"name\",\"AddMiniApp.RejectedByUser\")}};p();p();p();var YO={};ld(YO,{RejectedByUser:()=>yoe});p();var yoe=class extends LS{constructor(){super(\"Sign in rejected by user\");Op(this,\"name\",\"SignIn.RejectedByUser\")}};p();p();p();p();p();p();p();p();p();p();p();var boe=[\"wallet.getEthereumProvider\",\"wallet.getSolanaProvider\",\"actions.ready\",\"actions.openUrl\",\"actions.close\",\"actions.setPrimaryButton\",\"actions.addMiniApp\",\"actions.signIn\",\"actions.viewCast\",\"actions.viewProfile\",\"actions.composeCast\",\"actions.viewToken\",\"actions.sendToken\",\"actions.swapToken\",\"haptics.impactOccurred\",\"haptics.notificationOccurred\",\"haptics.selectionChanged\",\"back\"];p();p();p();p();var st={};ld(st,{BRAND:()=>hct,DIRTY:()=>BS,EMPTY_PATH:()=>Vat,INVALID:()=>An,NEVER:()=>Qct,OK:()=>Au,ParseStatus:()=>Tl,Schema:()=>yr,ZodAny:()=>v3,ZodArray:()=>t2,ZodBigInt:()=>FS,ZodBoolean:()=>US,ZodBranded:()=>JO,ZodCatch:()=>YS,ZodDate:()=>jS,ZodDefault:()=>ZS,ZodDiscriminatedUnion:()=>xq,ZodEffects:()=>Tm,ZodEnum:()=>KS,ZodError:()=>Pf,ZodFirstPartyTypeKind:()=>Pn,ZodFunction:()=>Sq,ZodIntersection:()=>WS,ZodIssueCode:()=>Tt,ZodLazy:()=>VS,ZodLiteral:()=>$S,ZodMap:()=>IA,ZodNaN:()=>PA,ZodNativeEnum:()=>GS,ZodNever:()=>gg,ZodNull:()=>HS,ZodNullable:()=>T1,ZodNumber:()=>DS,ZodObject:()=>Mf,ZodOptional:()=>Cm,ZodParsedType:()=>$t,ZodPipeline:()=>XO,ZodPromise:()=>w3,ZodReadonly:()=>QS,ZodRecord:()=>Eq,ZodSchema:()=>yr,ZodSet:()=>OA,ZodString:()=>b3,ZodSymbol:()=>TA,ZodTransformer:()=>Tm,ZodTuple:()=>A1,ZodType:()=>yr,ZodUndefined:()=>zS,ZodUnion:()=>qS,ZodUnknown:()=>e2,ZodVoid:()=>RA,addIssueToContext:()=>Ut,any:()=>Ect,array:()=>Cct,bigint:()=>yct,boolean:()=>L7e,coerce:()=>Yct,custom:()=>P7e,date:()=>bct,datetimeRegex:()=>I7e,defaultErrorMap:()=>Jv,discriminatedUnion:()=>Ict,effect:()=>Hct,enum:()=>Uct,function:()=>Bct,getErrorMap:()=>_A,getParsedType:()=>C1,instanceof:()=>mct,intersection:()=>Oct,isAborted:()=>vq,isAsync:()=>CA,isDirty:()=>wq,isValid:()=>y3,late:()=>pct,lazy:()=>Dct,literal:()=>Fct,makeIssue:()=>QO,map:()=>Nct,nan:()=>gct,nativeEnum:()=>jct,never:()=>kct,null:()=>xct,nullable:()=>Wct,number:()=>N7e,object:()=>Act,objectUtil:()=>voe,oboolean:()=>Zct,onumber:()=>Gct,optional:()=>qct,ostring:()=>Kct,pipeline:()=>$ct,preprocess:()=>Vct,promise:()=>zct,quotelessJson:()=>Hat,record:()=>Mct,set:()=>Lct,setErrorMap:()=>Wat,strictObject:()=>Tct,string:()=>M7e,symbol:()=>vct,transformer:()=>Hct,tuple:()=>Pct,undefined:()=>wct,union:()=>Rct,unknown:()=>Sct,util:()=>Ur,void:()=>_ct});p();p();p();p();p();var Ur;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function n(o){throw new Error}t.assertNever=n,t.arrayToEnum=o=>{let i={};for(let a of o)i[a]=a;return i},t.getValidEnumValues=o=>{let i=t.objectKeys(o).filter(c=>typeof o[o[c]]!=\"number\"),a={};for(let c of i)a[c]=o[c];return t.objectValues(a)},t.objectValues=o=>t.objectKeys(o).map(function(i){return o[i]}),t.objectKeys=typeof Object.keys==\"function\"?o=>Object.keys(o):o=>{let i=[];for(let a in o)Object.prototype.hasOwnProperty.call(o,a)&&i.push(a);return i},t.find=(o,i)=>{for(let a of o)if(i(a))return a},t.isInteger=typeof Number.isInteger==\"function\"?o=>Number.isInteger(o):o=>typeof o==\"number\"&&Number.isFinite(o)&&Math.floor(o)===o;function r(o,i=\" | \"){return o.map(a=>typeof a==\"string\"?`\\'${a}\\'`:a).join(i)}t.joinValues=r,t.jsonStringifyReplacer=(o,i)=>typeof i==\"bigint\"?i.toString():i})(Ur||(Ur={}));var voe;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(voe||(voe={}));var $t=Ur.arrayToEnum([\"string\",\"nan\",\"number\",\"integer\",\"float\",\"boolean\",\"date\",\"bigint\",\"symbol\",\"function\",\"undefined\",\"null\",\"array\",\"object\",\"unknown\",\"promise\",\"void\",\"never\",\"map\",\"set\"]),C1=t=>{switch(typeof t){case\"undefined\":return $t.undefined;case\"string\":return $t.string;case\"number\":return Number.isNaN(t)?$t.nan:$t.number;case\"boolean\":return $t.boolean;case\"function\":return $t.function;case\"bigint\":return $t.bigint;case\"symbol\":return $t.symbol;case\"object\":return Array.isArray(t)?$t.array:t===null?$t.null:t.then&&typeof t.then==\"function\"&&t.catch&&typeof t.catch==\"function\"?$t.promise:typeof Map<\"u\"&&t instanceof Map?$t.map:typeof Set<\"u\"&&t instanceof Set?$t.set:typeof Date<\"u\"&&t instanceof Date?$t.date:$t.object;default:return $t.unknown}};var Tt=Ur.arrayToEnum([\"invalid_type\",\"invalid_literal\",\"custom\",\"invalid_union\",\"invalid_union_discriminator\",\"invalid_enum_value\",\"unrecognized_keys\",\"invalid_arguments\",\"invalid_return_type\",\"invalid_date\",\"invalid_string\",\"too_small\",\"too_big\",\"invalid_intersection_types\",\"not_multiple_of\",\"not_finite\"]),Hat=t=>JSON.stringify(t,null,2).replace(/\"([^\"]+)\":/g,\"$1:\"),Pf=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name=\"ZodError\",this.issues=e}format(e){let n=e||function(i){return i.message},r={_errors:[]},o=i=>{for(let a of i.issues)if(a.code===\"invalid_union\")a.unionErrors.map(o);else if(a.code===\"invalid_return_type\")o(a.returnTypeError);else if(a.code===\"invalid_arguments\")o(a.argumentsError);else if(a.path.length===0)r._errors.push(n(a));else{let c=r,u=0;for(;u<a.path.length;){let d=a.path[u];u===a.path.length-1?(c[d]=c[d]||{_errors:[]},c[d]._errors.push(n(a))):c[d]=c[d]||{_errors:[]},c=c[d],u++}}};return o(this),r}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Ur.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){let n={},r=[];for(let o of this.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(e(o))):r.push(e(o));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};Pf.create=t=>new Pf(t);var qat=(t,e)=>{let n;switch(t.code){case Tt.invalid_type:t.received===$t.undefined?n=\"Required\":n=`Expected ${t.expected}, received ${t.received}`;break;case Tt.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,Ur.jsonStringifyReplacer)}`;break;case Tt.unrecognized_keys:n=`Unrecognized key(s) in object: ${Ur.joinValues(t.keys,\", \")}`;break;case Tt.invalid_union:n=\"Invalid input\";break;case Tt.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${Ur.joinValues(t.options)}`;break;case Tt.invalid_enum_value:n=`Invalid enum value. Expected ${Ur.joinValues(t.options)}, received \\'${t.received}\\'`;break;case Tt.invalid_arguments:n=\"Invalid function arguments\";break;case Tt.invalid_return_type:n=\"Invalid function return type\";break;case Tt.invalid_date:n=\"Invalid date\";break;case Tt.invalid_string:typeof t.validation==\"object\"?\"includes\"in t.validation?(n=`Invalid input: must include \"${t.validation.includes}\"`,typeof t.validation.position==\"number\"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):\"startsWith\"in t.validation?n=`Invalid input: must start with \"${t.validation.startsWith}\"`:\"endsWith\"in t.validation?n=`Invalid input: must end with \"${t.validation.endsWith}\"`:Ur.assertNever(t.validation):t.validation!==\"regex\"?n=`Invalid ${t.validation}`:n=\"Invalid\";break;case Tt.too_small:t.type===\"array\"?n=`Array must contain ${t.exact?\"exactly\":t.inclusive?\"at least\":\"more than\"} ${t.minimum} element(s)`:t.type===\"string\"?n=`String must contain ${t.exact?\"exactly\":t.inclusive?\"at least\":\"over\"} ${t.minimum} character(s)`:t.type===\"number\"?n=`Number must be ${t.exact?\"exactly equal to \":t.inclusive?\"greater than or equal to \":\"greater than \"}${t.minimum}`:t.type===\"date\"?n=`Date must be ${t.exact?\"exactly equal to \":t.inclusive?\"greater than or equal to \":\"greater than \"}${new Date(Number(t.minimum))}`:n=\"Invalid input\";break;case Tt.too_big:t.type===\"array\"?n=`Array must contain ${t.exact?\"exactly\":t.inclusive?\"at most\":\"less than\"} ${t.maximum} element(s)`:t.type===\"string\"?n=`String must contain ${t.exact?\"exactly\":t.inclusive?\"at most\":\"under\"} ${t.maximum} character(s)`:t.type===\"number\"?n=`Number must be ${t.exact?\"exactly\":t.inclusive?\"less than or equal to\":\"less than\"} ${t.maximum}`:t.type===\"bigint\"?n=`BigInt must be ${t.exact?\"exactly\":t.inclusive?\"less than or equal to\":\"less than\"} ${t.maximum}`:t.type===\"date\"?n=`Date must be ${t.exact?\"exactly\":t.inclusive?\"smaller than or equal to\":\"smaller than\"} ${new Date(Number(t.maximum))}`:n=\"Invalid input\";break;case Tt.custom:n=\"Invalid input\";break;case Tt.invalid_intersection_types:n=\"Intersection results could not be merged\";break;case Tt.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case Tt.not_finite:n=\"Number must be finite\";break;default:n=e.defaultError,Ur.assertNever(t)}return{message:n}},Jv=qat;var _7e=Jv;function Wat(t){_7e=t}function _A(){return _7e}p();var QO=t=>{let{data:e,path:n,errorMaps:r,issueData:o}=t,i=[...n,...o.path||[]],a={...o,path:i};if(o.message!==void 0)return{...o,path:i,message:o.message};let c=\"\",u=r.filter(d=>!!d).slice().reverse();for(let d of u)c=d(a,{data:e,defaultError:c}).message;return{...o,path:i,message:c}},Vat=[];function Ut(t,e){let n=_A(),r=QO({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===Jv?void 0:Jv].filter(o=>!!o)});t.common.issues.push(r)}var Tl=class t{constructor(){this.value=\"valid\"}dirty(){this.value===\"valid\"&&(this.value=\"dirty\")}abort(){this.value!==\"aborted\"&&(this.value=\"aborted\")}static mergeArray(e,n){let r=[];for(let o of n){if(o.status===\"aborted\")return An;o.status===\"dirty\"&&e.dirty(),r.push(o.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let o of n){let i=await o.key,a=await o.value;r.push({key:i,value:a})}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let o of n){let{key:i,value:a}=o;if(i.status===\"aborted\"||a.status===\"aborted\")return An;i.status===\"dirty\"&&e.dirty(),a.status===\"dirty\"&&e.dirty(),i.value!==\"__proto__\"&&(typeof a.value<\"u\"||o.alwaysSet)&&(r[i.value]=a.value)}return{status:e.value,value:r}}},An=Object.freeze({status:\"aborted\"}),BS=t=>({status:\"dirty\",value:t}),Au=t=>({status:\"valid\",value:t}),vq=t=>t.status===\"aborted\",wq=t=>t.status===\"dirty\",y3=t=>t.status===\"valid\",CA=t=>typeof Promise<\"u\"&&t instanceof Promise;p();p();p();var ln;(function(t){t.errToObj=e=>typeof e==\"string\"?{message:e}:e||{},t.toString=e=>typeof e==\"string\"?e:e?.message})(ln||(ln={}));var Am=class{constructor(e,n,r,o){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},C7e=(t,e)=>{if(y3(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error(\"Validation failed but no issues detected.\");return{success:!1,get error(){if(this._error)return this._error;let n=new Pf(t.common.issues);return this._error=n,this._error}}};function rr(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:r,description:o}=t;if(e&&(n||r))throw new Error(`Can\\'t use \"invalid_type_error\" or \"required_error\" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(a,c)=>{let{message:u}=t;return a.code===\"invalid_enum_value\"?{message:u??c.defaultError}:typeof c.data>\"u\"?{message:u??r??c.defaultError}:a.code!==\"invalid_type\"?{message:c.defaultError}:{message:u??n??c.defaultError}},description:o}}var yr=class{get description(){return this._def.description}_getType(e){return C1(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:C1(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Tl,ctx:{common:e.parent.common,data:e.data,parsedType:C1(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(CA(n))throw new Error(\"Synchronous parse encountered promise.\");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){let r={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:C1(e)},o=this._parseSync({data:e,path:r.path,parent:r});return C7e(r,o)}\"~validate\"(e){let n={common:{issues:[],async:!!this[\"~standard\"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:C1(e)};if(!this[\"~standard\"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return y3(r)?{value:r.value}:{issues:n.common.issues}}catch(r){r?.message?.toLowerCase()?.includes(\"encountered\")&&(this[\"~standard\"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(r=>y3(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:C1(e)},o=this._parse({data:e,path:r.path,parent:r}),i=await(CA(o)?o:Promise.resolve(o));return C7e(r,i)}refine(e,n){let r=o=>typeof n==\"string\"||typeof n>\"u\"?{message:n}:typeof n==\"function\"?n(o):n;return this._refinement((o,i)=>{let a=e(o),c=()=>i.addIssue({code:Tt.custom,...r(o)});return typeof Promise<\"u\"&&a instanceof Promise?a.then(u=>u?!0:(c(),!1)):a?!0:(c(),!1)})}refinement(e,n){return this._refinement((r,o)=>e(r)?!0:(o.addIssue(typeof n==\"function\"?n(r,o):n),!1))}_refinement(e){return new Tm({schema:this,typeName:Pn.ZodEffects,effect:{type:\"refinement\",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this[\"~standard\"]={version:1,vendor:\"zod\",validate:n=>this[\"~validate\"](n)}}optional(){return Cm.create(this,this._def)}nullable(){return T1.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return t2.create(this)}promise(){return w3.create(this,this._def)}or(e){return qS.create([this,e],this._def)}and(e){return WS.create(this,e,this._def)}transform(e){return new Tm({...rr(this._def),schema:this,typeName:Pn.ZodEffects,effect:{type:\"transform\",transform:e}})}default(e){let n=typeof e==\"function\"?e:()=>e;return new ZS({...rr(this._def),innerType:this,defaultValue:n,typeName:Pn.ZodDefault})}brand(){return new JO({typeName:Pn.ZodBranded,type:this,...rr(this._def)})}catch(e){let n=typeof e==\"function\"?e:()=>e;return new YS({...rr(this._def),innerType:this,catchValue:n,typeName:Pn.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return XO.create(this,e)}readonly(){return QS.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},$at=/^c[^\\\\s-]{8,}$/i,Kat=/^[0-9a-z]+$/,Gat=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Zat=/^[0-9a-fA-F]{8}\\\\b-[0-9a-fA-F]{4}\\\\b-[0-9a-fA-F]{4}\\\\b-[0-9a-fA-F]{4}\\\\b-[0-9a-fA-F]{12}$/i,Yat=/^[a-z0-9_-]{21}$/i,Qat=/^[A-Za-z0-9-_]+\\\\.[A-Za-z0-9-_]+\\\\.[A-Za-z0-9-_]*$/,Jat=/^[-+]?P(?!$)(?:(?:[-+]?\\\\d+Y)|(?:[-+]?\\\\d+[.,]\\\\d+Y$))?(?:(?:[-+]?\\\\d+M)|(?:[-+]?\\\\d+[.,]\\\\d+M$))?(?:(?:[-+]?\\\\d+W)|(?:[-+]?\\\\d+[.,]\\\\d+W$))?(?:(?:[-+]?\\\\d+D)|(?:[-+]?\\\\d+[.,]\\\\d+D$))?(?:T(?=[\\\\d+-])(?:(?:[-+]?\\\\d+H)|(?:[-+]?\\\\d+[.,]\\\\d+H$))?(?:(?:[-+]?\\\\d+M)|(?:[-+]?\\\\d+[.,]\\\\d+M$))?(?:[-+]?\\\\d+(?:[.,]\\\\d+)?S)?)??$/,Xat=/^(?!\\\\.)(?!.*\\\\.\\\\.)([A-Z0-9_\\'+\\\\-\\\\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\\\\-]*\\\\.)+[A-Z]{2,}$/i,ect=\"^(\\\\\\\\p{Extended_Pictographic}|\\\\\\\\p{Emoji_Component})+$\",woe,tct=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,nct=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\\\/(3[0-2]|[12]?[0-9])$/,rct=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,oct=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\\\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ict=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,sct=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,T7e=\"((\\\\\\\\d\\\\\\\\d[2468][048]|\\\\\\\\d\\\\\\\\d[13579][26]|\\\\\\\\d\\\\\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\\\\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\\\\\\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\\\\\\\d|30)|(02)-(0[1-9]|1\\\\\\\\d|2[0-8])))\",act=new RegExp(`^${T7e}$`);function R7e(t){let e=\"[0-5]\\\\\\\\d\";t.precision?e=`${e}\\\\\\\\.\\\\\\\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\\\\\\\.\\\\\\\\d+)?`);let n=t.precision?\"+\":\"?\";return`([01]\\\\\\\\d|2[0-3]):[0-5]\\\\\\\\d(:${e})${n}`}function cct(t){return new RegExp(`^${R7e(t)}$`)}function I7e(t){let e=`${T7e}T${R7e(t)}`,n=[];return n.push(t.local?\"Z?\":\"Z\"),t.offset&&n.push(\"([+-]\\\\\\\\d{2}:?\\\\\\\\d{2})\"),e=`${e}(${n.join(\"|\")})`,new RegExp(`^${e}$`)}function lct(t,e){return!!((e===\"v4\"||!e)&&tct.test(t)||(e===\"v6\"||!e)&&rct.test(t))}function uct(t,e){if(!Qat.test(t))return!1;try{let[n]=t.split(\".\"),r=n.replace(/-/g,\"+\").replace(/_/g,\"/\").padEnd(n.length+(4-n.length%4)%4,\"=\"),o=JSON.parse(atob(r));return!(typeof o!=\"object\"||o===null||\"typ\"in o&&o?.typ!==\"JWT\"||!o.alg||e&&o.alg!==e)}catch{return!1}}function dct(t,e){return!!((e===\"v4\"||!e)&&nct.test(t)||(e===\"v6\"||!e)&&oct.test(t))}var b3=class t extends yr{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$t.string){let i=this._getOrReturnCtx(e);return Ut(i,{code:Tt.invalid_type,expected:$t.string,received:i.parsedType}),An}let r=new Tl,o;for(let i of this._def.checks)if(i.kind===\"min\")e.data.length<i.value&&(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.too_small,minimum:i.value,type:\"string\",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind===\"max\")e.data.length>i.value&&(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.too_big,maximum:i.value,type:\"string\",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind===\"length\"){let a=e.data.length>i.value,c=e.data.length<i.value;(a||c)&&(o=this._getOrReturnCtx(e,o),a?Ut(o,{code:Tt.too_big,maximum:i.value,type:\"string\",inclusive:!0,exact:!0,message:i.message}):c&&Ut(o,{code:Tt.too_small,minimum:i.value,type:\"string\",inclusive:!0,exact:!0,message:i.message}),r.dirty())}else if(i.kind===\"email\")Xat.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"email\",code:Tt.invalid_string,message:i.message}),r.dirty());else if(i.kind===\"emoji\")woe||(woe=new RegExp(ect,\"u\")),woe.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"emoji\",code:Tt.invalid_string,message:i.message}),r.dirty());else if(i.kind===\"uuid\")Zat.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"uuid\",code:Tt.invalid_string,message:i.message}),r.dirty());else if(i.kind===\"nanoid\")Yat.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"nanoid\",code:Tt.invalid_string,message:i.message}),r.dirty());else if(i.kind===\"cuid\")$at.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"cuid\",code:Tt.invalid_string,message:i.message}),r.dirty());else if(i.kind===\"cuid2\")Kat.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"cuid2\",code:Tt.invalid_string,message:i.message}),r.dirty());else if(i.kind===\"ulid\")Gat.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"ulid\",code:Tt.invalid_string,message:i.message}),r.dirty());else if(i.kind===\"url\")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"url\",code:Tt.invalid_string,message:i.message}),r.dirty()}else i.kind===\"regex\"?(i.regex.lastIndex=0,i.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"regex\",code:Tt.invalid_string,message:i.message}),r.dirty())):i.kind===\"trim\"?e.data=e.data.trim():i.kind===\"includes\"?e.data.includes(i.value,i.position)||(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),r.dirty()):i.kind===\"toLowerCase\"?e.data=e.data.toLowerCase():i.kind===\"toUpperCase\"?e.data=e.data.toUpperCase():i.kind===\"startsWith\"?e.data.startsWith(i.value)||(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.invalid_string,validation:{startsWith:i.value},message:i.message}),r.dirty()):i.kind===\"endsWith\"?e.data.endsWith(i.value)||(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.invalid_string,validation:{endsWith:i.value},message:i.message}),r.dirty()):i.kind===\"datetime\"?I7e(i).test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.invalid_string,validation:\"datetime\",message:i.message}),r.dirty()):i.kind===\"date\"?act.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.invalid_string,validation:\"date\",message:i.message}),r.dirty()):i.kind===\"time\"?cct(i).test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.invalid_string,validation:\"time\",message:i.message}),r.dirty()):i.kind===\"duration\"?Jat.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"duration\",code:Tt.invalid_string,message:i.message}),r.dirty()):i.kind===\"ip\"?lct(e.data,i.version)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"ip\",code:Tt.invalid_string,message:i.message}),r.dirty()):i.kind===\"jwt\"?uct(e.data,i.alg)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"jwt\",code:Tt.invalid_string,message:i.message}),r.dirty()):i.kind===\"cidr\"?dct(e.data,i.version)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"cidr\",code:Tt.invalid_string,message:i.message}),r.dirty()):i.kind===\"base64\"?ict.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"base64\",code:Tt.invalid_string,message:i.message}),r.dirty()):i.kind===\"base64url\"?sct.test(e.data)||(o=this._getOrReturnCtx(e,o),Ut(o,{validation:\"base64url\",code:Tt.invalid_string,message:i.message}),r.dirty()):Ur.assertNever(i);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(o=>e.test(o),{validation:n,code:Tt.invalid_string,...ln.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:\"email\",...ln.errToObj(e)})}url(e){return this._addCheck({kind:\"url\",...ln.errToObj(e)})}emoji(e){return this._addCheck({kind:\"emoji\",...ln.errToObj(e)})}uuid(e){return this._addCheck({kind:\"uuid\",...ln.errToObj(e)})}nanoid(e){return this._addCheck({kind:\"nanoid\",...ln.errToObj(e)})}cuid(e){return this._addCheck({kind:\"cuid\",...ln.errToObj(e)})}cuid2(e){return this._addCheck({kind:\"cuid2\",...ln.errToObj(e)})}ulid(e){return this._addCheck({kind:\"ulid\",...ln.errToObj(e)})}base64(e){return this._addCheck({kind:\"base64\",...ln.errToObj(e)})}base64url(e){return this._addCheck({kind:\"base64url\",...ln.errToObj(e)})}jwt(e){return this._addCheck({kind:\"jwt\",...ln.errToObj(e)})}ip(e){return this._addCheck({kind:\"ip\",...ln.errToObj(e)})}cidr(e){return this._addCheck({kind:\"cidr\",...ln.errToObj(e)})}datetime(e){return typeof e==\"string\"?this._addCheck({kind:\"datetime\",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:\"datetime\",precision:typeof e?.precision>\"u\"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...ln.errToObj(e?.message)})}date(e){return this._addCheck({kind:\"date\",message:e})}time(e){return typeof e==\"string\"?this._addCheck({kind:\"time\",precision:null,message:e}):this._addCheck({kind:\"time\",precision:typeof e?.precision>\"u\"?null:e?.precision,...ln.errToObj(e?.message)})}duration(e){return this._addCheck({kind:\"duration\",...ln.errToObj(e)})}regex(e,n){return this._addCheck({kind:\"regex\",regex:e,...ln.errToObj(n)})}includes(e,n){return this._addCheck({kind:\"includes\",value:e,position:n?.position,...ln.errToObj(n?.message)})}startsWith(e,n){return this._addCheck({kind:\"startsWith\",value:e,...ln.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:\"endsWith\",value:e,...ln.errToObj(n)})}min(e,n){return this._addCheck({kind:\"min\",value:e,...ln.errToObj(n)})}max(e,n){return this._addCheck({kind:\"max\",value:e,...ln.errToObj(n)})}length(e,n){return this._addCheck({kind:\"length\",value:e,...ln.errToObj(n)})}nonempty(e){return this.min(1,ln.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:\"trim\"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:\"toLowerCase\"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:\"toUpperCase\"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind===\"datetime\")}get isDate(){return!!this._def.checks.find(e=>e.kind===\"date\")}get isTime(){return!!this._def.checks.find(e=>e.kind===\"time\")}get isDuration(){return!!this._def.checks.find(e=>e.kind===\"duration\")}get isEmail(){return!!this._def.checks.find(e=>e.kind===\"email\")}get isURL(){return!!this._def.checks.find(e=>e.kind===\"url\")}get isEmoji(){return!!this._def.checks.find(e=>e.kind===\"emoji\")}get isUUID(){return!!this._def.checks.find(e=>e.kind===\"uuid\")}get isNANOID(){return!!this._def.checks.find(e=>e.kind===\"nanoid\")}get isCUID(){return!!this._def.checks.find(e=>e.kind===\"cuid\")}get isCUID2(){return!!this._def.checks.find(e=>e.kind===\"cuid2\")}get isULID(){return!!this._def.checks.find(e=>e.kind===\"ulid\")}get isIP(){return!!this._def.checks.find(e=>e.kind===\"ip\")}get isCIDR(){return!!this._def.checks.find(e=>e.kind===\"cidr\")}get isBase64(){return!!this._def.checks.find(e=>e.kind===\"base64\")}get isBase64url(){return!!this._def.checks.find(e=>e.kind===\"base64url\")}get minLength(){let e=null;for(let n of this._def.checks)n.kind===\"min\"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind===\"max\"&&(e===null||n.value<e)&&(e=n.value);return e}};b3.create=t=>new b3({checks:[],typeName:Pn.ZodString,coerce:t?.coerce??!1,...rr(t)});function fct(t,e){let n=(t.toString().split(\".\")[1]||\"\").length,r=(e.toString().split(\".\")[1]||\"\").length,o=n>r?n:r,i=Number.parseInt(t.toFixed(o).replace(\".\",\"\")),a=Number.parseInt(e.toFixed(o).replace(\".\",\"\"));return i%a/10**o}var DS=class t extends yr{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==$t.number){let i=this._getOrReturnCtx(e);return Ut(i,{code:Tt.invalid_type,expected:$t.number,received:i.parsedType}),An}let r,o=new Tl;for(let i of this._def.checks)i.kind===\"int\"?Ur.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),Ut(r,{code:Tt.invalid_type,expected:\"integer\",received:\"float\",message:i.message}),o.dirty()):i.kind===\"min\"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),Ut(r,{code:Tt.too_small,minimum:i.value,type:\"number\",inclusive:i.inclusive,exact:!1,message:i.message}),o.dirty()):i.kind===\"max\"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),Ut(r,{code:Tt.too_big,maximum:i.value,type:\"number\",inclusive:i.inclusive,exact:!1,message:i.message}),o.dirty()):i.kind===\"multipleOf\"?fct(e.data,i.value)!==0&&(r=this._getOrReturnCtx(e,r),Ut(r,{code:Tt.not_multiple_of,multipleOf:i.value,message:i.message}),o.dirty()):i.kind===\"finite\"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),Ut(r,{code:Tt.not_finite,message:i.message}),o.dirty()):Ur.assertNever(i);return{status:o.value,value:e.data}}gte(e,n){return this.setLimit(\"min\",e,!0,ln.toString(n))}gt(e,n){return this.setLimit(\"min\",e,!1,ln.toString(n))}lte(e,n){return this.setLimit(\"max\",e,!0,ln.toString(n))}lt(e,n){return this.setLimit(\"max\",e,!1,ln.toString(n))}setLimit(e,n,r,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:ln.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:\"int\",message:ln.toString(e)})}positive(e){return this._addCheck({kind:\"min\",value:0,inclusive:!1,message:ln.toString(e)})}negative(e){return this._addCheck({kind:\"max\",value:0,inclusive:!1,message:ln.toString(e)})}nonpositive(e){return this._addCheck({kind:\"max\",value:0,inclusive:!0,message:ln.toString(e)})}nonnegative(e){return this._addCheck({kind:\"min\",value:0,inclusive:!0,message:ln.toString(e)})}multipleOf(e,n){return this._addCheck({kind:\"multipleOf\",value:e,message:ln.toString(n)})}finite(e){return this._addCheck({kind:\"finite\",message:ln.toString(e)})}safe(e){return this._addCheck({kind:\"min\",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ln.toString(e)})._addCheck({kind:\"max\",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ln.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind===\"min\"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind===\"max\"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind===\"int\"||e.kind===\"multipleOf\"&&Ur.isInteger(e.value))}get isFinite(){let e=null,n=null;for(let r of this._def.checks){if(r.kind===\"finite\"||r.kind===\"int\"||r.kind===\"multipleOf\")return!0;r.kind===\"min\"?(n===null||r.value>n)&&(n=r.value):r.kind===\"max\"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}};DS.create=t=>new DS({checks:[],typeName:Pn.ZodNumber,coerce:t?.coerce||!1,...rr(t)});var FS=class t extends yr{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==$t.bigint)return this._getInvalidInput(e);let r,o=new Tl;for(let i of this._def.checks)i.kind===\"min\"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),Ut(r,{code:Tt.too_small,type:\"bigint\",minimum:i.value,inclusive:i.inclusive,message:i.message}),o.dirty()):i.kind===\"max\"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),Ut(r,{code:Tt.too_big,type:\"bigint\",maximum:i.value,inclusive:i.inclusive,message:i.message}),o.dirty()):i.kind===\"multipleOf\"?e.data%i.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),Ut(r,{code:Tt.not_multiple_of,multipleOf:i.value,message:i.message}),o.dirty()):Ur.assertNever(i);return{status:o.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return Ut(n,{code:Tt.invalid_type,expected:$t.bigint,received:n.parsedType}),An}gte(e,n){return this.setLimit(\"min\",e,!0,ln.toString(n))}gt(e,n){return this.setLimit(\"min\",e,!1,ln.toString(n))}lte(e,n){return this.setLimit(\"max\",e,!0,ln.toString(n))}lt(e,n){return this.setLimit(\"max\",e,!1,ln.toString(n))}setLimit(e,n,r,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:ln.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:\"min\",value:BigInt(0),inclusive:!1,message:ln.toString(e)})}negative(e){return this._addCheck({kind:\"max\",value:BigInt(0),inclusive:!1,message:ln.toString(e)})}nonpositive(e){return this._addCheck({kind:\"max\",value:BigInt(0),inclusive:!0,message:ln.toString(e)})}nonnegative(e){return this._addCheck({kind:\"min\",value:BigInt(0),inclusive:!0,message:ln.toString(e)})}multipleOf(e,n){return this._addCheck({kind:\"multipleOf\",value:e,message:ln.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind===\"min\"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind===\"max\"&&(e===null||n.value<e)&&(e=n.value);return e}};FS.create=t=>new FS({checks:[],typeName:Pn.ZodBigInt,coerce:t?.coerce??!1,...rr(t)});var US=class extends yr{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$t.boolean){let r=this._getOrReturnCtx(e);return Ut(r,{code:Tt.invalid_type,expected:$t.boolean,received:r.parsedType}),An}return Au(e.data)}};US.create=t=>new US({typeName:Pn.ZodBoolean,coerce:t?.coerce||!1,...rr(t)});var jS=class t extends yr{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$t.date){let i=this._getOrReturnCtx(e);return Ut(i,{code:Tt.invalid_type,expected:$t.date,received:i.parsedType}),An}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return Ut(i,{code:Tt.invalid_date}),An}let r=new Tl,o;for(let i of this._def.checks)i.kind===\"min\"?e.data.getTime()<i.value&&(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:\"date\"}),r.dirty()):i.kind===\"max\"?e.data.getTime()>i.value&&(o=this._getOrReturnCtx(e,o),Ut(o,{code:Tt.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:\"date\"}),r.dirty()):Ur.assertNever(i);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:\"min\",value:e.getTime(),message:ln.toString(n)})}max(e,n){return this._addCheck({kind:\"max\",value:e.getTime(),message:ln.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind===\"min\"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind===\"max\"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};jS.create=t=>new jS({checks:[],coerce:t?.coerce||!1,typeName:Pn.ZodDate,...rr(t)});var TA=class extends yr{_parse(e){if(this._getType(e)!==$t.symbol){let r=this._getOrReturnCtx(e);return Ut(r,{code:Tt.invalid_type,expected:$t.symbol,received:r.parsedType}),An}return Au(e.data)}};TA.create=t=>new TA({typeName:Pn.ZodSymbol,...rr(t)});var zS=class extends yr{_parse(e){if(this._getType(e)!==$t.undefined){let r=this._getOrReturnCtx(e);return Ut(r,{code:Tt.invalid_type,expected:$t.undefined,received:r.parsedType}),An}return Au(e.data)}};zS.create=t=>new zS({typeName:Pn.ZodUndefined,...rr(t)});var HS=class extends yr{_parse(e){if(this._getType(e)!==$t.null){let r=this._getOrReturnCtx(e);return Ut(r,{code:Tt.invalid_type,expected:$t.null,received:r.parsedType}),An}return Au(e.data)}};HS.create=t=>new HS({typeName:Pn.ZodNull,...rr(t)});var v3=class extends yr{constructor(){super(...arguments),this._any=!0}_parse(e){return Au(e.data)}};v3.create=t=>new v3({typeName:Pn.ZodAny,...rr(t)});var e2=class extends yr{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Au(e.data)}};e2.create=t=>new e2({typeName:Pn.ZodUnknown,...rr(t)});var gg=class extends yr{_parse(e){let n=this._getOrReturnCtx(e);return Ut(n,{code:Tt.invalid_type,expected:$t.never,received:n.parsedType}),An}};gg.create=t=>new gg({typeName:Pn.ZodNever,...rr(t)});var RA=class extends yr{_parse(e){if(this._getType(e)!==$t.undefined){let r=this._getOrReturnCtx(e);return Ut(r,{code:Tt.invalid_type,expected:$t.void,received:r.parsedType}),An}return Au(e.data)}};RA.create=t=>new RA({typeName:Pn.ZodVoid,...rr(t)});var t2=class t extends yr{_parse(e){let{ctx:n,status:r}=this._processInputParams(e),o=this._def;if(n.parsedType!==$t.array)return Ut(n,{code:Tt.invalid_type,expected:$t.array,received:n.parsedType}),An;if(o.exactLength!==null){let a=n.data.length>o.exactLength.value,c=n.data.length<o.exactLength.value;(a||c)&&(Ut(n,{code:a?Tt.too_big:Tt.too_small,minimum:c?o.exactLength.value:void 0,maximum:a?o.exactLength.value:void 0,type:\"array\",inclusive:!0,exact:!0,message:o.exactLength.message}),r.dirty())}if(o.minLength!==null&&n.data.length<o.minLength.value&&(Ut(n,{code:Tt.too_small,minimum:o.minLength.value,type:\"array\",inclusive:!0,exact:!1,message:o.minLength.message}),r.dirty()),o.maxLength!==null&&n.data.length>o.maxLength.value&&(Ut(n,{code:Tt.too_big,maximum:o.maxLength.value,type:\"array\",inclusive:!0,exact:!1,message:o.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((a,c)=>o.type._parseAsync(new Am(n,a,n.path,c)))).then(a=>Tl.mergeArray(r,a));let i=[...n.data].map((a,c)=>o.type._parseSync(new Am(n,a,n.path,c)));return Tl.mergeArray(r,i)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:ln.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:ln.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:ln.toString(n)}})}nonempty(e){return this.min(1,e)}};t2.create=(t,e)=>new t2({type:t,minLength:null,maxLength:null,exactLength:null,typeName:Pn.ZodArray,...rr(e)});function AA(t){if(t instanceof Mf){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=Cm.create(AA(r))}return new Mf({...t._def,shape:()=>e})}else return t instanceof t2?new t2({...t._def,type:AA(t.element)}):t instanceof Cm?Cm.create(AA(t.unwrap())):t instanceof T1?T1.create(AA(t.unwrap())):t instanceof A1?A1.create(t.items.map(e=>AA(e))):t}var Mf=class t extends yr{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),n=Ur.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==$t.object){let d=this._getOrReturnCtx(e);return Ut(d,{code:Tt.invalid_type,expected:$t.object,received:d.parsedType}),An}let{status:r,ctx:o}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),c=[];if(!(this._def.catchall instanceof gg&&this._def.unknownKeys===\"strip\"))for(let d in o.data)a.includes(d)||c.push(d);let u=[];for(let d of a){let h=i[d],m=o.data[d];u.push({key:{status:\"valid\",value:d},value:h._parse(new Am(o,m,o.path,d)),alwaysSet:d in o.data})}if(this._def.catchall instanceof gg){let d=this._def.unknownKeys;if(d===\"passthrough\")for(let h of c)u.push({key:{status:\"valid\",value:h},value:{status:\"valid\",value:o.data[h]}});else if(d===\"strict\")c.length>0&&(Ut(o,{code:Tt.unrecognized_keys,keys:c}),r.dirty());else if(d!==\"strip\")throw new Error(\"Internal ZodObject error: invalid unknownKeys value.\")}else{let d=this._def.catchall;for(let h of c){let m=o.data[h];u.push({key:{status:\"valid\",value:h},value:d._parse(new Am(o,m,o.path,h)),alwaysSet:h in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let d=[];for(let h of u){let m=await h.key,g=await h.value;d.push({key:m,value:g,alwaysSet:h.alwaysSet})}return d}).then(d=>Tl.mergeObjectSync(r,d)):Tl.mergeObjectSync(r,u)}get shape(){return this._def.shape()}strict(e){return ln.errToObj,new t({...this._def,unknownKeys:\"strict\",...e!==void 0?{errorMap:(n,r)=>{let o=this._def.errorMap?.(n,r).message??r.defaultError;return n.code===\"unrecognized_keys\"?{message:ln.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:\"strip\"})}passthrough(){return new t({...this._def,unknownKeys:\"passthrough\"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:Pn.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of Ur.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let r of Ur.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return AA(this)}partial(e){let n={};for(let r of Ur.objectKeys(this.shape)){let o=this.shape[r];e&&!e[r]?n[r]=o:n[r]=o.optional()}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let r of Ur.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let i=this.shape[r];for(;i instanceof Cm;)i=i._def.innerType;n[r]=i}return new t({...this._def,shape:()=>n})}keyof(){return O7e(Ur.objectKeys(this.shape))}};Mf.create=(t,e)=>new Mf({shape:()=>t,unknownKeys:\"strip\",catchall:gg.create(),typeName:Pn.ZodObject,...rr(e)});Mf.strictCreate=(t,e)=>new Mf({shape:()=>t,unknownKeys:\"strict\",catchall:gg.create(),typeName:Pn.ZodObject,...rr(e)});Mf.lazycreate=(t,e)=>new Mf({shape:t,unknownKeys:\"strip\",catchall:gg.create(),typeName:Pn.ZodObject,...rr(e)});var qS=class extends yr{_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function o(i){for(let c of i)if(c.result.status===\"valid\")return c.result;for(let c of i)if(c.result.status===\"dirty\")return n.common.issues.push(...c.ctx.common.issues),c.result;let a=i.map(c=>new Pf(c.ctx.common.issues));return Ut(n,{code:Tt.invalid_union,unionErrors:a}),An}if(n.common.async)return Promise.all(r.map(async i=>{let a={...n,common:{...n.common,issues:[]},parent:null};return{result:await i._parseAsync({data:n.data,path:n.path,parent:a}),ctx:a}})).then(o);{let i,a=[];for(let u of r){let d={...n,common:{...n.common,issues:[]},parent:null},h=u._parseSync({data:n.data,path:n.path,parent:d});if(h.status===\"valid\")return h;h.status===\"dirty\"&&!i&&(i={result:h,ctx:d}),d.common.issues.length&&a.push(d.common.issues)}if(i)return n.common.issues.push(...i.ctx.common.issues),i.result;let c=a.map(u=>new Pf(u));return Ut(n,{code:Tt.invalid_union,unionErrors:c}),An}}get options(){return this._def.options}};qS.create=(t,e)=>new qS({options:t,typeName:Pn.ZodUnion,...rr(e)});var Xv=t=>t instanceof VS?Xv(t.schema):t instanceof Tm?Xv(t.innerType()):t instanceof $S?[t.value]:t instanceof KS?t.options:t instanceof GS?Ur.objectValues(t.enum):t instanceof ZS?Xv(t._def.innerType):t instanceof zS?[void 0]:t instanceof HS?[null]:t instanceof Cm?[void 0,...Xv(t.unwrap())]:t instanceof T1?[null,...Xv(t.unwrap())]:t instanceof JO||t instanceof QS?Xv(t.unwrap()):t instanceof YS?Xv(t._def.innerType):[],xq=class t extends yr{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==$t.object)return Ut(n,{code:Tt.invalid_type,expected:$t.object,received:n.parsedType}),An;let r=this.discriminator,o=n.data[r],i=this.optionsMap.get(o);return i?n.common.async?i._parseAsync({data:n.data,path:n.path,parent:n}):i._parseSync({data:n.data,path:n.path,parent:n}):(Ut(n,{code:Tt.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),An)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let o=new Map;for(let i of n){let a=Xv(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \\\\`${e}\\\\` could not be extracted from all schema options`);for(let c of a){if(o.has(c))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(c)}`);o.set(c,i)}}return new t({typeName:Pn.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:o,...rr(r)})}};function xoe(t,e){let n=C1(t),r=C1(e);if(t===e)return{valid:!0,data:t};if(n===$t.object&&r===$t.object){let o=Ur.objectKeys(e),i=Ur.objectKeys(t).filter(c=>o.indexOf(c)!==-1),a={...t,...e};for(let c of i){let u=xoe(t[c],e[c]);if(!u.valid)return{valid:!1};a[c]=u.data}return{valid:!0,data:a}}else if(n===$t.array&&r===$t.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let i=0;i<t.length;i++){let a=t[i],c=e[i],u=xoe(a,c);if(!u.valid)return{valid:!1};o.push(u.data)}return{valid:!0,data:o}}else return n===$t.date&&r===$t.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var WS=class extends yr{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),o=(i,a)=>{if(vq(i)||vq(a))return An;let c=xoe(i.value,a.value);return c.valid?((wq(i)||wq(a))&&n.dirty(),{status:n.value,value:c.data}):(Ut(r,{code:Tt.invalid_intersection_types}),An)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([i,a])=>o(i,a)):o(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};WS.create=(t,e,n)=>new WS({left:t,right:e,typeName:Pn.ZodIntersection,...rr(n)});var A1=class t extends yr{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==$t.array)return Ut(r,{code:Tt.invalid_type,expected:$t.array,received:r.parsedType}),An;if(r.data.length<this._def.items.length)return Ut(r,{code:Tt.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:\"array\"}),An;!this._def.rest&&r.data.length>this._def.items.length&&(Ut(r,{code:Tt.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:\"array\"}),n.dirty());let i=[...r.data].map((a,c)=>{let u=this._def.items[c]||this._def.rest;return u?u._parse(new Am(r,a,r.path,c)):null}).filter(a=>!!a);return r.common.async?Promise.all(i).then(a=>Tl.mergeArray(n,a)):Tl.mergeArray(n,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};A1.create=(t,e)=>{if(!Array.isArray(t))throw new Error(\"You must pass an array of schemas to z.tuple([ ... ])\");return new A1({items:t,typeName:Pn.ZodTuple,rest:null,...rr(e)})};var Eq=class t extends yr{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==$t.object)return Ut(r,{code:Tt.invalid_type,expected:$t.object,received:r.parsedType}),An;let o=[],i=this._def.keyType,a=this._def.valueType;for(let c in r.data)o.push({key:i._parse(new Am(r,c,r.path,c)),value:a._parse(new Am(r,r.data[c],r.path,c)),alwaysSet:c in r.data});return r.common.async?Tl.mergeObjectAsync(n,o):Tl.mergeObjectSync(n,o)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof yr?new t({keyType:e,valueType:n,typeName:Pn.ZodRecord,...rr(r)}):new t({keyType:b3.create(),valueType:e,typeName:Pn.ZodRecord,...rr(n)})}},IA=class extends yr{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==$t.map)return Ut(r,{code:Tt.invalid_type,expected:$t.map,received:r.parsedType}),An;let o=this._def.keyType,i=this._def.valueType,a=[...r.data.entries()].map(([c,u],d)=>({key:o._parse(new Am(r,c,r.path,[d,\"key\"])),value:i._parse(new Am(r,u,r.path,[d,\"value\"]))}));if(r.common.async){let c=new Map;return Promise.resolve().then(async()=>{for(let u of a){let d=await u.key,h=await u.value;if(d.status===\"aborted\"||h.status===\"aborted\")return An;(d.status===\"dirty\"||h.status===\"dirty\")&&n.dirty(),c.set(d.value,h.value)}return{status:n.value,value:c}})}else{let c=new Map;for(let u of a){let d=u.key,h=u.value;if(d.status===\"aborted\"||h.status===\"aborted\")return An;(d.status===\"dirty\"||h.status===\"dirty\")&&n.dirty(),c.set(d.value,h.value)}return{status:n.value,value:c}}}};IA.create=(t,e,n)=>new IA({valueType:e,keyType:t,typeName:Pn.ZodMap,...rr(n)});var OA=class t extends yr{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==$t.set)return Ut(r,{code:Tt.invalid_type,expected:$t.set,received:r.parsedType}),An;let o=this._def;o.minSize!==null&&r.data.size<o.minSize.value&&(Ut(r,{code:Tt.too_small,minimum:o.minSize.value,type:\"set\",inclusive:!0,exact:!1,message:o.minSize.message}),n.dirty()),o.maxSize!==null&&r.data.size>o.maxSize.value&&(Ut(r,{code:Tt.too_big,maximum:o.maxSize.value,type:\"set\",inclusive:!0,exact:!1,message:o.maxSize.message}),n.dirty());let i=this._def.valueType;function a(u){let d=new Set;for(let h of u){if(h.status===\"aborted\")return An;h.status===\"dirty\"&&n.dirty(),d.add(h.value)}return{status:n.value,value:d}}let c=[...r.data.values()].map((u,d)=>i._parse(new Am(r,u,r.path,d)));return r.common.async?Promise.all(c).then(u=>a(u)):a(c)}min(e,n){return new t({...this._def,minSize:{value:e,message:ln.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:ln.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};OA.create=(t,e)=>new OA({valueType:t,minSize:null,maxSize:null,typeName:Pn.ZodSet,...rr(e)});var Sq=class t extends yr{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==$t.function)return Ut(n,{code:Tt.invalid_type,expected:$t.function,received:n.parsedType}),An;function r(c,u){return QO({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,_A(),Jv].filter(d=>!!d),issueData:{code:Tt.invalid_arguments,argumentsError:u}})}function o(c,u){return QO({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,_A(),Jv].filter(d=>!!d),issueData:{code:Tt.invalid_return_type,returnTypeError:u}})}let i={errorMap:n.common.contextualErrorMap},a=n.data;if(this._def.returns instanceof w3){let c=this;return Au(async function(...u){let d=new Pf([]),h=await c._def.args.parseAsync(u,i).catch(b=>{throw d.addIssue(r(u,b)),d}),m=await Reflect.apply(a,this,h);return await c._def.returns._def.type.parseAsync(m,i).catch(b=>{throw d.addIssue(o(m,b)),d})})}else{let c=this;return Au(function(...u){let d=c._def.args.safeParse(u,i);if(!d.success)throw new Pf([r(u,d.error)]);let h=Reflect.apply(a,this,d.data),m=c._def.returns.safeParse(h,i);if(!m.success)throw new Pf([o(h,m.error)]);return m.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:A1.create(e).rest(e2.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new t({args:e||A1.create([]).rest(e2.create()),returns:n||e2.create(),typeName:Pn.ZodFunction,...rr(r)})}},VS=class extends yr{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};VS.create=(t,e)=>new VS({getter:t,typeName:Pn.ZodLazy,...rr(e)});var $S=class extends yr{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return Ut(n,{received:n.data,code:Tt.invalid_literal,expected:this._def.value}),An}return{status:\"valid\",value:e.data}}get value(){return this._def.value}};$S.create=(t,e)=>new $S({value:t,typeName:Pn.ZodLiteral,...rr(e)});function O7e(t,e){return new KS({values:t,typeName:Pn.ZodEnum,...rr(e)})}var KS=class t extends yr{_parse(e){if(typeof e.data!=\"string\"){let n=this._getOrReturnCtx(e),r=this._def.values;return Ut(n,{expected:Ur.joinValues(r),received:n.parsedType,code:Tt.invalid_type}),An}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return Ut(n,{received:n.data,code:Tt.invalid_enum_value,options:r}),An}return Au(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};KS.create=O7e;var GS=class extends yr{_parse(e){let n=Ur.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==$t.string&&r.parsedType!==$t.number){let o=Ur.objectValues(n);return Ut(r,{expected:Ur.joinValues(o),received:r.parsedType,code:Tt.invalid_type}),An}if(this._cache||(this._cache=new Set(Ur.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=Ur.objectValues(n);return Ut(r,{received:r.data,code:Tt.invalid_enum_value,options:o}),An}return Au(e.data)}get enum(){return this._def.values}};GS.create=(t,e)=>new GS({values:t,typeName:Pn.ZodNativeEnum,...rr(e)});var w3=class extends yr{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==$t.promise&&n.common.async===!1)return Ut(n,{code:Tt.invalid_type,expected:$t.promise,received:n.parsedType}),An;let r=n.parsedType===$t.promise?n.data:Promise.resolve(n.data);return Au(r.then(o=>this._def.type.parseAsync(o,{path:n.path,errorMap:n.common.contextualErrorMap})))}};w3.create=(t,e)=>new w3({type:t,typeName:Pn.ZodPromise,...rr(e)});var Tm=class extends yr{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Pn.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),o=this._def.effect||null,i={addIssue:a=>{Ut(r,a),a.fatal?n.abort():n.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),o.type===\"preprocess\"){let a=o.transform(r.data,i);if(r.common.async)return Promise.resolve(a).then(async c=>{if(n.value===\"aborted\")return An;let u=await this._def.schema._parseAsync({data:c,path:r.path,parent:r});return u.status===\"aborted\"?An:u.status===\"dirty\"?BS(u.value):n.value===\"dirty\"?BS(u.value):u});{if(n.value===\"aborted\")return An;let c=this._def.schema._parseSync({data:a,path:r.path,parent:r});return c.status===\"aborted\"?An:c.status===\"dirty\"?BS(c.value):n.value===\"dirty\"?BS(c.value):c}}if(o.type===\"refinement\"){let a=c=>{let u=o.refinement(c,i);if(r.common.async)return Promise.resolve(u);if(u instanceof Promise)throw new Error(\"Async refinement encountered during synchronous parse operation. Use .parseAsync instead.\");return c};if(r.common.async===!1){let c=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return c.status===\"aborted\"?An:(c.status===\"dirty\"&&n.dirty(),a(c.value),{status:n.value,value:c.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(c=>c.status===\"aborted\"?An:(c.status===\"dirty\"&&n.dirty(),a(c.value).then(()=>({status:n.value,value:c.value}))))}if(o.type===\"transform\")if(r.common.async===!1){let a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!y3(a))return An;let c=o.transform(a.value,i);if(c instanceof Promise)throw new Error(\"Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.\");return{status:n.value,value:c}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>y3(a)?Promise.resolve(o.transform(a.value,i)).then(c=>({status:n.value,value:c})):An);Ur.assertNever(o)}};Tm.create=(t,e,n)=>new Tm({schema:t,typeName:Pn.ZodEffects,effect:e,...rr(n)});Tm.createWithPreprocess=(t,e,n)=>new Tm({schema:e,effect:{type:\"preprocess\",transform:t},typeName:Pn.ZodEffects,...rr(n)});var Cm=class extends yr{_parse(e){return this._getType(e)===$t.undefined?Au(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Cm.create=(t,e)=>new Cm({innerType:t,typeName:Pn.ZodOptional,...rr(e)});var T1=class extends yr{_parse(e){return this._getType(e)===$t.null?Au(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};T1.create=(t,e)=>new T1({innerType:t,typeName:Pn.ZodNullable,...rr(e)});var ZS=class extends yr{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===$t.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};ZS.create=(t,e)=>new ZS({innerType:t,typeName:Pn.ZodDefault,defaultValue:typeof e.default==\"function\"?e.default:()=>e.default,...rr(e)});var YS=class extends yr{_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},o=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return CA(o)?o.then(i=>({status:\"valid\",value:i.status===\"valid\"?i.value:this._def.catchValue({get error(){return new Pf(r.common.issues)},input:r.data})})):{status:\"valid\",value:o.status===\"valid\"?o.value:this._def.catchValue({get error(){return new Pf(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};YS.create=(t,e)=>new YS({innerType:t,typeName:Pn.ZodCatch,catchValue:typeof e.catch==\"function\"?e.catch:()=>e.catch,...rr(e)});var PA=class extends yr{_parse(e){if(this._getType(e)!==$t.nan){let r=this._getOrReturnCtx(e);return Ut(r,{code:Tt.invalid_type,expected:$t.nan,received:r.parsedType}),An}return{status:\"valid\",value:e.data}}};PA.create=t=>new PA({typeName:Pn.ZodNaN,...rr(t)});var hct=Symbol(\"zod_brand\"),JO=class extends yr{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},XO=class t extends yr{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return i.status===\"aborted\"?An:i.status===\"dirty\"?(n.dirty(),BS(i.value)):this._def.out._parseAsync({data:i.value,path:r.path,parent:r})})();{let o=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return o.status===\"aborted\"?An:o.status===\"dirty\"?(n.dirty(),{status:\"dirty\",value:o.value}):this._def.out._parseSync({data:o.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:Pn.ZodPipeline})}},QS=class extends yr{_parse(e){let n=this._def.innerType._parse(e),r=o=>(y3(o)&&(o.value=Object.freeze(o.value)),o);return CA(n)?n.then(o=>r(o)):r(n)}unwrap(){return this._def.innerType}};QS.create=(t,e)=>new QS({innerType:t,typeName:Pn.ZodReadonly,...rr(e)});function A7e(t,e){let n=typeof t==\"function\"?t(e):typeof t==\"string\"?{message:t}:t;return typeof n==\"string\"?{message:n}:n}function P7e(t,e={},n){return t?v3.create().superRefine((r,o)=>{let i=t(r);if(i instanceof Promise)return i.then(a=>{if(!a){let c=A7e(e,r),u=c.fatal??n??!0;o.addIssue({code:\"custom\",...c,fatal:u})}});if(!i){let a=A7e(e,r),c=a.fatal??n??!0;o.addIssue({code:\"custom\",...a,fatal:c})}}):v3.create()}var pct={object:Mf.lazycreate},Pn;(function(t){t.ZodString=\"ZodString\",t.ZodNumber=\"ZodNumber\",t.ZodNaN=\"ZodNaN\",t.ZodBigInt=\"ZodBigInt\",t.ZodBoolean=\"ZodBoolean\",t.ZodDate=\"ZodDate\",t.ZodSymbol=\"ZodSymbol\",t.ZodUndefined=\"ZodUndefined\",t.ZodNull=\"ZodNull\",t.ZodAny=\"ZodAny\",t.ZodUnknown=\"ZodUnknown\",t.ZodNever=\"ZodNever\",t.ZodVoid=\"ZodVoid\",t.ZodArray=\"ZodArray\",t.ZodObject=\"ZodObject\",t.ZodUnion=\"ZodUnion\",t.ZodDiscriminatedUnion=\"ZodDiscriminatedUnion\",t.ZodIntersection=\"ZodIntersection\",t.ZodTuple=\"ZodTuple\",t.ZodRecord=\"ZodRecord\",t.ZodMap=\"ZodMap\",t.ZodSet=\"ZodSet\",t.ZodFunction=\"ZodFunction\",t.ZodLazy=\"ZodLazy\",t.ZodLiteral=\"ZodLiteral\",t.ZodEnum=\"ZodEnum\",t.ZodEffects=\"ZodEffects\",t.ZodNativeEnum=\"ZodNativeEnum\",t.ZodOptional=\"ZodOptional\",t.ZodNullable=\"ZodNullable\",t.ZodDefault=\"ZodDefault\",t.ZodCatch=\"ZodCatch\",t.ZodPromise=\"ZodPromise\",t.ZodBranded=\"ZodBranded\",t.ZodPipeline=\"ZodPipeline\",t.ZodReadonly=\"ZodReadonly\"})(Pn||(Pn={}));var mct=(t,e={message:`Input not instance of ${t.name}`})=>P7e(n=>n instanceof t,e),M7e=b3.create,N7e=DS.create,gct=PA.create,yct=FS.create,L7e=US.create,bct=jS.create,vct=TA.create,wct=zS.create,xct=HS.create,Ect=v3.create,Sct=e2.create,kct=gg.create,_ct=RA.create,Cct=t2.create,Act=Mf.create,Tct=Mf.strictCreate,Rct=qS.create,Ict=xq.create,Oct=WS.create,Pct=A1.create,Mct=Eq.create,Nct=IA.create,Lct=OA.create,Bct=Sq.create,Dct=VS.create,Fct=$S.create,Uct=KS.create,jct=GS.create,zct=w3.create,Hct=Tm.create,qct=Cm.create,Wct=T1.create,Vct=Tm.createWithPreprocess,$ct=XO.create,Kct=()=>M7e().optional(),Gct=()=>N7e().optional(),Zct=()=>L7e().optional(),Yct={string:t=>b3.create({...t,coerce:!0}),number:t=>DS.create({...t,coerce:!0}),boolean:t=>US.create({...t,coerce:!0}),bigint:t=>FS.create({...t,coerce:!0}),date:t=>jS.create({...t,coerce:!0})};var Qct=An;p();var Jct=/[@#$%^&*+=\\\\/\\\\\\\\|~«»]/,Xct=/(!{2,}|\\\\?{2,}|-{2,})/,elt=/[\\\\u{1F300}-\\\\u{1F9FF}]|[\\\\u{2702}-\\\\u{27B0}]|[\\\\u{2600}-\\\\u{26FF}]|[\\\\u{2B00}-\\\\u{2BFF}]/u,JS=({max:t,noSpaces:e}={})=>(e?st.string().max(t??Number.POSITIVE_INFINITY).regex(/^\\\\S*$/,\"Spaces are not allowed\"):st.string().max(t??Number.POSITIVE_INFINITY)).refine(r=>!elt.test(r),{message:\"Emojis and symbols are not allowed\"}).refine(r=>!Jct.test(r),{message:\"Special characters (@, #, $, %, ^, &, *, +, =, /, \\\\\\\\, |, ~, \\\\xAB, \\\\xBB) are not allowed\"}).refine(r=>!Xct.test(r),{message:\"Repeated punctuations (!!, ??, --) are not allowed\"}),Tu=st.string().url().startsWith(\"https://\",{message:\"Must be an https url\"}).max(1024),kq=st.string().max(32),_q=st.string().max(32),tlt=/^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}\\\\/(?:[-a-z0-9]{3,8}:[-.%a-zA-Z0-9]{1,128}(?:\\\\/[-.%a-zA-Z0-9]{1,78})?|native)$/,B7e=st.string().regex(tlt,{message:\"Invalid CAIP-19 asset ID\"}),Cq=st.string().regex(/^#([0-9A-F]{3}|[0-9A-F]{6})$/i,{message:\"Invalid hex color code. It should be in the format #RRGGBB or #RGB.\"}),D7e=st.union([st.literal(\"1:1\"),st.literal(\"3:2\")]),F7e=st.object({header:st.string(),payload:st.string(),signature:st.string()}),_0n=st.object({fid:st.number(),type:st.literal(\"app_key\"),key:st.string().startsWith(\"0x\")});var nlt=st.object({type:st.literal(\"launch_frame\"),name:kq,url:Tu.optional(),splashImageUrl:Tu.optional(),splashBackgroundColor:Cq.optional()}),rlt=st.object({type:st.literal(\"view_token\"),token:B7e}),olt=st.discriminatedUnion(\"type\",[nlt,rlt]),ilt=st.object({title:_q,action:olt}),I0n=st.object({version:st.literal(\"next\"),imageUrl:Tu,aspectRatio:D7e.optional(),button:ilt});p();p();var Eoe=st.object({url:st.string(),token:st.string()}),L0n=st.object({notificationId:st.string().max(128),title:st.string().max(32),body:st.string().max(128),targetUrl:Tu,tokens:st.string().array().max(100)}),B0n=st.object({result:st.object({successfulTokens:st.array(st.string()),invalidTokens:st.array(st.string()),rateLimitedTokens:st.array(st.string())})});var slt=st.object({event:st.literal(\"frame_added\"),notificationDetails:Eoe.optional()}),alt=st.object({event:st.literal(\"frame_removed\")}),clt=st.object({event:st.literal(\"notifications_enabled\"),notificationDetails:Eoe.required()}),llt=st.object({event:st.literal(\"notifications_disabled\")}),z0n=st.discriminatedUnion(\"event\",[slt,alt,clt,llt]);p();var ult=st.enum([\"games\",\"social\",\"finance\",\"utility\",\"productivity\",\"health-fitness\",\"news-media\",\"music\",\"shopping\",\"education\",\"developer-tools\",\"entertainment\",\"art-creativity\"]),U7e=[\"eip155:1\",\"eip155:8453\",\"eip155:42161\",\"eip155:421614\",\"eip155:84532\",\"eip155:666666666\",\"eip155:100\",\"eip155:10\",\"eip155:11155420\",\"eip155:137\",\"eip155:11155111\",\"eip155:7777777\",\"eip155:130\",\"eip155:10143\",\"eip155:42220\",\"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp\"],dlt=st.object({version:st.union([st.literal(\"0.0.0\"),st.literal(\"0.0.1\"),st.literal(\"1\"),st.literal(\"next\")]),name:kq,iconUrl:Tu,homeUrl:Tu,imageUrl:Tu.optional(),buttonTitle:_q.optional(),splashImageUrl:Tu.optional(),splashBackgroundColor:Cq.optional(),webhookUrl:Tu.optional(),subtitle:JS({max:30}).optional(),description:JS({max:170}).optional(),screenshotUrls:st.array(Tu).max(3).optional(),primaryCategory:ult.optional(),tags:st.array(JS({max:20,noSpaces:!0})).max(5).optional(),heroImageUrl:Tu.optional(),tagline:JS({max:30}).optional(),ogTitle:JS({max:30}).optional(),ogDescription:JS({max:100}).optional(),ogImageUrl:Tu.optional(),noindex:st.boolean().optional(),requiredChains:st.array(st.enum(U7e)).max(U7e.length).optional(),requiredCapabilities:st.array(st.enum(boe)).max(boe.length).optional(),castShareUrl:Tu.optional()}).refine(t=>{if(t.castShareUrl===void 0)return!0;try{let e=new URL(t.homeUrl).hostname,n=new URL(t.castShareUrl).hostname;return e===n}catch{return!1}},{message:\"castShareUrl must have the same domain as homeUrl\",path:[\"castShareUrl\"]}),K0n=st.object({accountAssociation:F7e,frame:dlt.optional()});p();p();var Ln=he(Kb());p();kL();p();y6();WZ();v6();var R1=BigInt(0),Od=BigInt(1),Soe=BigInt(2),flt=BigInt(8),hlt={zip215:!0};function plt(t,e,n,r){let o=t.sqr(n),i=t.sqr(r),a=t.add(t.mul(e.a,o),i),c=t.add(t.ONE,t.mul(e.d,t.mul(o,i)));return t.eql(a,c)}function mlt(t,e={}){let{Fp:n,Fn:r}=IB(\"edwards\",t,e),{h:o,n:i}=t;Uy(e,{},{uvRatio:\"function\"});let a=Soe<<BigInt(r.BYTES*8)-Od,c=C=>n.create(C),u=e.uvRatio||((C,T)=>{try{return{isValid:!0,value:n.sqrt(n.div(C,T))}}catch{return{isValid:!1,value:R1}}});if(!plt(n,t,t.Gx,t.Gy))throw new Error(\"bad curve params: generator point\");function d(C,T,R=!1){let L=R?Od:R1;return Fy(\"coordinate \"+C,T,L,a),T}function h(C){if(!(C instanceof b))throw new Error(\"ExtendedPoint expected\")}let m=X4((C,T)=>{let{ex:R,ey:L,ez:D}=C,G=C.is0();T==null&&(T=G?flt:n.inv(D));let W=c(R*T),J=c(L*T),ne=c(D*T);if(G)return{x:R1,y:Od};if(ne!==Od)throw new Error(\"invZ was invalid\");return{x:W,y:J}}),g=X4(C=>{let{a:T,d:R}=t;if(C.is0())throw new Error(\"bad point: ZERO\");let{ex:L,ey:D,ez:G,et:W}=C,J=c(L*L),ne=c(D*D),ie=c(G*G),Z=c(ie*ie),ae=c(J*T),V=c(ie*c(ae+ne)),$=c(Z+c(R*c(J*ne)));if(V!==$)throw new Error(\"bad point: equation left != right (1)\");let F=c(L*D),_=c(G*W);if(F!==_)throw new Error(\"bad point: equation left != right (2)\");return!0});class b{constructor(T,R,L,D){this.ex=d(\"x\",T),this.ey=d(\"y\",R),this.ez=d(\"z\",L,!0),this.et=d(\"t\",D),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(T){if(T instanceof b)throw new Error(\"extended point not allowed\");let{x:R,y:L}=T||{};return d(\"x\",R),d(\"y\",L),new b(R,L,Od,c(R*L))}static normalizeZ(T){return AB(b,\"ez\",T)}static msm(T,R){return RB(b,r,T,R)}_setWindowSize(T){this.precompute(T)}precompute(T=8,R=!0){return E.setWindowSize(this,T),R||this.multiply(Soe),this}assertValidity(){g(this)}equals(T){h(T);let{ex:R,ey:L,ez:D}=this,{ex:G,ey:W,ez:J}=T,ne=c(R*J),ie=c(G*D),Z=c(L*J),ae=c(W*D);return ne===ie&&Z===ae}is0(){return this.equals(b.ZERO)}negate(){return new b(c(-this.ex),this.ey,this.ez,c(-this.et))}double(){let{a:T}=t,{ex:R,ey:L,ez:D}=this,G=c(R*R),W=c(L*L),J=c(Soe*c(D*D)),ne=c(T*G),ie=R+L,Z=c(c(ie*ie)-G-W),ae=ne+W,V=ae-J,$=ne-W,F=c(Z*V),_=c(ae*$),O=c(Z*$),z=c(V*ae);return new b(F,_,z,O)}add(T){h(T);let{a:R,d:L}=t,{ex:D,ey:G,ez:W,et:J}=this,{ex:ne,ey:ie,ez:Z,et:ae}=T,V=c(D*ne),$=c(G*ie),F=c(J*L*ae),_=c(W*Z),O=c((D+G)*(ne+ie)-V-$),z=_-F,N=_+F,B=c($-R*V),j=c(O*z),q=c(N*B),H=c(O*B),I=c(z*N);return new b(j,q,I,H)}subtract(T){return this.add(T.negate())}multiply(T){let R=T;Fy(\"scalar\",R,Od,i);let{p:L,f:D}=E.wNAFCached(this,R,b.normalizeZ);return b.normalizeZ([L,D])[0]}multiplyUnsafe(T,R=b.ZERO){let L=T;return Fy(\"scalar\",L,R1,i),L===R1?b.ZERO:this.is0()||L===Od?this:E.wNAFCachedUnsafe(this,L,b.normalizeZ,R)}isSmallOrder(){return this.multiplyUnsafe(o).is0()}isTorsionFree(){return E.wNAFCachedUnsafe(this,i).is0()}toAffine(T){return m(this,T)}clearCofactor(){return o===Od?this:this.multiplyUnsafe(o)}static fromBytes(T,R=!1){return Zi(T),this.fromHex(T,R)}static fromHex(T,R=!1){let{d:L,a:D}=t,G=n.BYTES;T=Ho(\"pointHex\",T,G),pv(\"zip215\",R);let W=T.slice(),J=T[G-1];W[G-1]=J&-129;let ne=p6(W),ie=R?a:n.ORDER;Fy(\"pointHex.y\",ne,R1,ie);let Z=c(ne*ne),ae=c(Z-Od),V=c(L*Z-D),{isValid:$,value:F}=u(ae,V);if(!$)throw new Error(\"Point.fromHex: invalid y coordinate\");let _=(F&Od)===Od,O=(J&128)!==0;if(!R&&F===R1&&O)throw new Error(\"Point.fromHex: x=0 and x_0=1\");return O!==_&&(F=c(-F)),b.fromAffine({x:F,y:ne})}static fromPrivateScalar(T){return b.BASE.multiply(T)}toBytes(){let{x:T,y:R}=this.toAffine(),L=J4(R,n.BYTES);return L[L.length-1]|=T&Od?128:0,L}toRawBytes(){return this.toBytes()}toHex(){return Fp(this.toBytes())}toString(){return`<Point ${this.is0()?\"ZERO\":this.toHex()}>`}}b.BASE=new b(t.Gx,t.Gy,Od,c(t.Gx*t.Gy)),b.ZERO=new b(R1,Od,Od,R1),b.Fp=n,b.Fn=r;let E=TB(b,r.BYTES*8);return b}function glt(t,e){Uy(e,{hash:\"function\"},{adjustScalarBytes:\"function\",randomBytes:\"function\",domain:\"function\",prehash:\"function\",mapToCurve:\"function\"});let{prehash:n,hash:r}=e,{BASE:o,Fp:i,Fn:a}=t,c=a.ORDER,u=e.randomBytes||E5,d=e.adjustScalarBytes||(W=>W),h=e.domain||((W,J,ne)=>{if(pv(\"phflag\",ne),J.length||ne)throw new Error(\"Contexts/pre-hash are not supported\");return W});function m(W){return a.create(W)}function g(W){return m(p6(W))}function b(W){let J=i.BYTES;W=Ho(\"private key\",W,J);let ne=Ho(\"hashed private key\",r(W),2*J),ie=d(ne.slice(0,J)),Z=ne.slice(J,2*J),ae=g(ie);return{head:ie,prefix:Z,scalar:ae}}function E(W){let{head:J,prefix:ne,scalar:ie}=b(W),Z=o.multiply(ie),ae=Z.toBytes();return{head:J,prefix:ne,scalar:ie,point:Z,pointBytes:ae}}function C(W){return E(W).pointBytes}function T(W=Uint8Array.of(),...J){let ne=ws(...J);return g(r(h(ne,Ho(\"context\",W),!!n)))}function R(W,J,ne={}){W=Ho(\"message\",W),n&&(W=n(W));let{prefix:ie,scalar:Z,pointBytes:ae}=E(J),V=T(ne.context,ie,W),$=o.multiply(V).toBytes(),F=T(ne.context,$,ae,W),_=m(V+F*Z);Fy(\"signature.s\",_,R1,c);let O=i.BYTES,z=ws($,J4(_,O));return Ho(\"result\",z,O*2)}let L=hlt;function D(W,J,ne,ie=L){let{context:Z,zip215:ae}=ie,V=i.BYTES;W=Ho(\"signature\",W,2*V),J=Ho(\"message\",J),ne=Ho(\"publicKey\",ne,V),ae!==void 0&&pv(\"zip215\",ae),n&&(J=n(J));let $=p6(W.slice(V,2*V)),F,_,O;try{F=t.fromHex(ne,ae),_=t.fromHex(W.slice(0,V),ae),O=o.multiplyUnsafe($)}catch{return!1}if(!ae&&F.isSmallOrder())return!1;let z=T(Z,_.toBytes(),F.toBytes(),J);return _.add(F.multiplyUnsafe(z)).subtract(O).clearCofactor().is0()}return o.precompute(8),{getPublicKey:C,sign:R,verify:D,utils:{getExtendedPublicKey:E,randomPrivateKey:()=>u(i.BYTES),precompute(W=8,J=t.BASE){return J.precompute(W,!1)}},Point:t}}function ylt(t){let e={a:t.a,d:t.d,p:t.Fp.ORDER,n:t.n,h:t.h,Gx:t.Gx,Gy:t.Gy},n=t.Fp,r=Z0(e.n,t.nBitLength,!0),o={Fp:n,Fn:r,uvRatio:t.uvRatio},i={hash:t.hash,randomBytes:t.randomBytes,adjustScalarBytes:t.adjustScalarBytes,domain:t.domain,prehash:t.prehash,mapToCurve:t.mapToCurve};return{CURVE:e,curveOpts:o,eddsaOpts:i}}function blt(t,e){return Object.assign({},e,{ExtendedPoint:e.Point,CURVE:t})}function j7e(t){let{CURVE:e,curveOpts:n,eddsaOpts:r}=ylt(t),o=mlt(e,n),i=glt(o,r);return blt(t,i)}v6();var fgn=BigInt(0),vlt=BigInt(1),z7e=BigInt(2),hgn=BigInt(3),wlt=BigInt(5),xlt=BigInt(8),Aq={p:BigInt(\"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed\"),n:BigInt(\"0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed\"),h:xlt,a:BigInt(\"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec\"),d:BigInt(\"0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3\"),Gx:BigInt(\"0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a\"),Gy:BigInt(\"0x6666666666666666666666666666666666666666666666666666666666666658\")};function Elt(t){let e=BigInt(10),n=BigInt(20),r=BigInt(40),o=BigInt(80),i=Aq.p,c=t*t%i*t%i,u=us(c,z7e,i)*c%i,d=us(u,vlt,i)*t%i,h=us(d,wlt,i)*d%i,m=us(h,e,i)*h%i,g=us(m,n,i)*m%i,b=us(g,r,i)*g%i,E=us(b,o,i)*b%i,C=us(E,o,i)*b%i,T=us(C,e,i)*h%i;return{pow_p_5_8:us(T,z7e,i)*t%i,b2:c}}function Slt(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}var H7e=BigInt(\"19681161376707505956807079304988542015446066515923890162744021073123829784752\");function klt(t,e){let n=Aq.p,r=ui(e*e*e,n),o=ui(r*r*e,n),i=Elt(t*o).pow_p_5_8,a=ui(t*r*i,n),c=ui(e*a*a,n),u=a,d=ui(a*H7e,n),h=c===t,m=c===ui(-t,n),g=c===ui(-t*H7e,n);return h&&(a=u),(m||g)&&(a=d),mpe(a,n)&&(a=ui(-a,n)),{isValid:h||m,value:a}}var _lt=Z0(Aq.p,void 0,!0),Clt={...Aq,Fp:_lt,hash:Bde,adjustScalarBytes:Slt,uvRatio:klt},XS=j7e(Clt);var Goe=he(q6()),Ou=he(koe());_L();var qA=he(Q7e()),we=he(Moe()),ORe=he(Moe());p();p();var $lt=1,Klt=2,Glt=3,Zlt=4,Ylt=5,Qlt=6,Jlt=7,Xlt=8,eut=9,tut=10,nut=-32700,rut=-32603,out=-32602,iut=-32601,sut=-32600,aut=-32016,cut=-32015,lut=-32014,uut=-32013,dut=-32012,fut=-32011,hut=-32010,put=-32009,mut=-32008,gut=-32007,yut=-32006,but=-32005,vut=-32004,wut=-32003,xut=-32002,Eut=-32001,Sut=28e5,kut=2800001,_ut=2800002,Cut=2800003,Aut=2800004,Tut=2800005,Rut=2800006,Iut=2800007,Out=2800008,Put=2800009,Mut=2800010,Nut=323e4,Lut=32300001,But=3230002,Dut=3230003,Fut=3230004,Uut=361e4,jut=3610001,zut=3610002,Hut=3610003,qut=3610004,Wut=3610005,Vut=3610006,$ut=3610007,Kut=3611e3,Gut=3704e3,Zut=3704001,Yut=3704002,Qut=3704003,Jut=3704004,Xut=4128e3,edt=4128001,tdt=4128002,ndt=4615e3,rdt=4615001,odt=4615002,idt=4615003,sdt=4615004,adt=4615005,cdt=4615006,ldt=4615007,udt=4615008,ddt=4615009,fdt=4615010,hdt=4615011,pdt=4615012,mdt=4615013,gdt=4615014,ydt=4615015,bdt=4615016,vdt=4615017,wdt=4615018,xdt=4615019,Edt=4615020,Sdt=4615021,kdt=4615022,_dt=4615023,Cdt=4615024,Adt=4615025,Tdt=4615026,Rdt=4615027,Idt=4615028,Odt=4615029,Pdt=4615030,Mdt=4615031,Ndt=4615032,Ldt=4615033,Bdt=4615034,Ddt=4615035,Fdt=4615036,Udt=4615037,jdt=4615038,zdt=4615039,Hdt=4615040,qdt=4615041,Wdt=4615042,Vdt=4615043,$dt=4615044,Kdt=4615045,Gdt=4615046,Zdt=4615047,Ydt=4615048,Qdt=4615049,Jdt=4615050,Xdt=4615051,eft=4615052,tft=4615053,nft=4615054,rft=5508e3,oft=5508001,ift=5508002,sft=5508003,aft=5508004,cft=5508005,lft=5508006,uft=5508007,dft=5508008,fft=5508009,hft=5508010,pft=5508011,mft=5663e3,gft=5663001,yft=5663002,bft=5663003,vft=5663004,wft=5663005,xft=5663006,Eft=5663007,Sft=5663008,kft=5663009,_ft=5663010,Cft=5663011,Aft=5663012,Tft=5663013,Rft=5663014,Ift=5663015,Oft=5663016,Pft=5663017,Mft=5663018,Nft=5663019,Lft=705e4,Bft=7050001,Dft=7050002,Fft=7050003,Uft=7050004,jft=7050005,zft=7050006,Hft=7050007,qft=7050008,Wft=7050009,Vft=7050010,$ft=7050011,Kft=7050012,Gft=7050013,Zft=7050014,Yft=7050015,Qft=7050016,Jft=7050017,Xft=7050018,eht=7050019,tht=7050020,nht=7050021,rht=7050022,oht=7050023,iht=7050024,sht=7050025,aht=7050026,cht=7050027,lht=7050028,uht=7050029,dht=7050030,fht=7050031,hht=7050032,pht=7050033,mht=7050034,ght=7050035,yht=7050036,Noe=8078e3,Loe=8078001,J7e=8078002,X7e=8078003,Boe=8078004,Doe=8078005,Foe=8078006,bht=8078007,vht=8078008,wht=8078009,xht=8078010,Uoe=8078011,Eht=8078012,eRe=8078013,tRe=8078014,Sht=8078015,kht=8078016,_ht=8078017,Cht=8078018,Aht=8078019,nRe=8078020,rRe=8078021,Tht=8078022,Rht=81e5,Iht=8100001,Oht=8100002,Pht=8100003,Mht=819e4,Nht=8190001,Lht=8190002,Bht=8190003,Dht=8190004,Fht=99e5,Uht=9900001,jht=9900002,zht=9900003,Hht=9900004;var qht={[Nut]:\"Account not found at address: $address\",[Fut]:\"Not all accounts were decoded. Encoded accounts found at addresses: $addresses.\",[Dut]:\"Expected decoded account at address: $address\",[But]:\"Failed to decode account data at address: $address\",[Lut]:\"Accounts not found at addresses: $addresses\",[Put]:\"Unable to find a viable program address bump seed.\",[_ut]:\"$putativeAddress is not a base58-encoded address.\",[Sut]:\"Expected base58 encoded address to decode to a byte array of length 32. Actual length: $actualLength.\",[Cut]:\"The `CryptoKey` must be an `Ed25519` public key.\",[Out]:\"Invalid seeds; point must fall off the Ed25519 curve.\",[Aut]:\"Expected given program derived address to have the following format: [Address, ProgramDerivedAddressBump].\",[Rut]:\"A maximum of $maxSeeds seeds, including the bump seed, may be supplied when creating an address. Received: $actual.\",[Iut]:\"The seed at index $index with length $actual exceeds the maximum length of $maxSeedLength bytes.\",[Tut]:\"Expected program derived address bump to be in the range [0, 255], got: $bump.\",[Mut]:\"Program address cannot end with PDA marker.\",[kut]:\"Expected base58-encoded address string of length in the range [32, 44]. Actual length: $actualLength.\",[Zlt]:\"Expected base58-encoded blockash string of length in the range [32, 44]. Actual length: $actualLength.\",[$lt]:\"The network has progressed past the last block for which this transaction could have been committed.\",[Noe]:\"Codec [$codecDescription] cannot decode empty byte arrays.\",[Tht]:\"Enum codec cannot use lexical values [$stringValues] as discriminators. Either remove all lexical values or set `useValuesAsDiscriminators` to `false`.\",[nRe]:\"Sentinel [$hexSentinel] must not be present in encoded bytes [$hexEncodedBytes].\",[Doe]:\"Encoder and decoder must have the same fixed size, got [$encoderFixedSize] and [$decoderFixedSize].\",[Foe]:\"Encoder and decoder must have the same max size, got [$encoderMaxSize] and [$decoderMaxSize].\",[Boe]:\"Encoder and decoder must either both be fixed-size or variable-size.\",[vht]:\"Enum discriminator out of range. Expected a number in [$formattedValidDiscriminators], got $discriminator.\",[J7e]:\"Expected a fixed-size codec, got a variable-size one.\",[eRe]:\"Codec [$codecDescription] expected a positive byte length, got $bytesLength.\",[X7e]:\"Expected a variable-size codec, got a fixed-size one.\",[Aht]:\"Codec [$codecDescription] expected zero-value [$hexZeroValue] to have the same size as the provided fixed-size item [$expectedSize bytes].\",[Loe]:\"Codec [$codecDescription] expected $expected bytes, got $bytesLength.\",[Cht]:\"Expected byte array constant [$hexConstant] to be present in data [$hexData] at offset [$offset].\",[wht]:\"Invalid discriminated union variant. Expected one of [$variants], got $value.\",[xht]:\"Invalid enum variant. Expected one of [$stringValues] or a number in [$formattedNumericalValues], got $variant.\",[Sht]:\"Invalid literal union variant. Expected one of [$variants], got $value.\",[bht]:\"Expected [$codecDescription] to have $expected items, got $actual.\",[Eht]:\"Invalid value $value for base $base with alphabet $alphabet.\",[kht]:\"Literal union discriminator out of range. Expected a number between $minRange and $maxRange, got $discriminator.\",[Uoe]:\"Codec [$codecDescription] expected number to be in the range [$min, $max], got $value.\",[tRe]:\"Codec [$codecDescription] expected offset to be in the range [0, $bytesLength], got $offset.\",[rRe]:\"Expected sentinel [$hexSentinel] to be present in decoded bytes [$hexDecodedBytes].\",[_ht]:\"Union variant out of range. Expected an index between $minRange and $maxRange, got $variant.\",[Kut]:\"No random values implementation could be found.\",[ddt]:\"instruction requires an uninitialized account\",[_dt]:\"instruction tries to borrow reference for an account which is already borrowed\",[Cdt]:\"instruction left account with an outstanding borrowed reference\",[Sdt]:\"program other than the account\\'s owner changed the size of the account data\",[adt]:\"account data too small for instruction\",[kdt]:\"instruction expected an executable account\",[Gdt]:\"An account does not have enough lamports to be rent-exempt\",[Ydt]:\"Program arithmetic overflowed\",[Kdt]:\"Failed to serialize or deserialize account data: $encodedData\",[nft]:\"Builtin programs must consume compute units\",[Ndt]:\"Cross-program invocation call depth too deep\",[jdt]:\"Computational budget exceeded\",[Tdt]:\"custom program error: #$code\",[vdt]:\"instruction contains duplicate accounts\",[Adt]:\"instruction modifications of multiply-passed account differ\",[Pdt]:\"executable accounts must be rent exempt\",[Idt]:\"instruction changed executable accounts data\",[Odt]:\"instruction changed the balance of an executable account\",[wdt]:\"instruction changed executable bit of an account\",[gdt]:\"instruction modified data of an account it does not own\",[mdt]:\"instruction spent from the balance of an account it does not own\",[rdt]:\"generic instruction error\",[Jdt]:\"Provided owner is not allowed\",[Vdt]:\"Account is immutable\",[$dt]:\"Incorrect authority provided\",[ldt]:\"incorrect program id for instruction\",[cdt]:\"insufficient funds for instruction\",[sdt]:\"invalid account data for instruction\",[Zdt]:\"Invalid account owner\",[odt]:\"invalid program argument\",[Rdt]:\"program returned invalid error code\",[idt]:\"invalid instruction data\",[Udt]:\"Failed to reallocate account data\",[Fdt]:\"Provided seeds do not result in a valid address\",[Xdt]:\"Accounts data allocations exceeded the maximum allowed per transaction\",[eft]:\"Max accounts exceeded\",[tft]:\"Max instruction trace length exceeded\",[Ddt]:\"Length of the seed is too long for address generation\",[Ldt]:\"An account required by the instruction is missing\",[udt]:\"missing required signature for instruction\",[pdt]:\"instruction illegally modified the program id of an account\",[Edt]:\"insufficient account keys for instruction\",[zdt]:\"Cross-program invocation with unauthorized signer or writable account\",[Hdt]:\"Failed to create program execution environment\",[Wdt]:\"Program failed to compile\",[qdt]:\"Program failed to complete\",[bdt]:\"instruction modified data of a read-only account\",[ydt]:\"instruction changed the balance of a read-only account\",[Bdt]:\"Cross-program invocation reentrancy not allowed for this instruction\",[xdt]:\"instruction modified rent epoch of an account\",[hdt]:\"sum of account balances before and after instruction do not match\",[fdt]:\"instruction requires an initialized account\",[ndt]:\"\",[Mdt]:\"Unsupported program id\",[Qdt]:\"Unsupported sysvar\",[Xut]:\"The instruction does not have any accounts.\",[edt]:\"The instruction does not have any data.\",[tdt]:\"Expected instruction to have progress address $expectedProgramAddress, got $actualProgramAddress.\",[Ylt]:\"Expected base58 encoded blockhash to decode to a byte array of length 32. Actual length: $actualLength.\",[Klt]:\"The nonce `$expectedNonceValue` is no longer valid. It has advanced to `$actualNonceValue`\",[jht]:\"Invariant violation: Found no abortable iterable cache entry for key `$cacheKey`. It should be impossible to hit this error; please file an issue at https://sola.na/web3invariant\",[Hht]:\"Invariant violation: This data publisher does not publish to the channel named `$channelName`. Supported channels include $supportedChannelNames.\",[Uht]:\"Invariant violation: WebSocket message iterator state is corrupt; iterated without first resolving existing message promise. It should be impossible to hit this error; please file an issue at https://sola.na/web3invariant\",[Fht]:\"Invariant violation: WebSocket message iterator is missing state storage. It should be impossible to hit this error; please file an issue at https://sola.na/web3invariant\",[zht]:\"Invariant violation: Switch statement non-exhaustive. Received unexpected value `$unexpectedValue`. It should be impossible to hit this error; please file an issue at https://sola.na/web3invariant\",[rut]:\"JSON-RPC error: Internal JSON-RPC error ($__serverMessage)\",[out]:\"JSON-RPC error: Invalid method parameter(s) ($__serverMessage)\",[sut]:\"JSON-RPC error: The JSON sent is not a valid `Request` object ($__serverMessage)\",[iut]:\"JSON-RPC error: The method does not exist / is not available ($__serverMessage)\",[nut]:\"JSON-RPC error: An error occurred on the server while parsing the JSON text ($__serverMessage)\",[dut]:\"$__serverMessage\",[Eut]:\"$__serverMessage\",[vut]:\"$__serverMessage\",[lut]:\"$__serverMessage\",[hut]:\"$__serverMessage\",[put]:\"$__serverMessage\",[aut]:\"Minimum context slot has not been reached\",[but]:\"Node is unhealthy; behind by $numSlotsBehind slots\",[mut]:\"No snapshot\",[xut]:\"Transaction simulation failed\",[gut]:\"$__serverMessage\",[fut]:\"Transaction history is not available from this node\",[yut]:\"$__serverMessage\",[uut]:\"Transaction signature length mismatch\",[wut]:\"Transaction signature verification failure\",[cut]:\"$__serverMessage\",[Gut]:\"Key pair bytes must be of length 64, got $byteLength.\",[Zut]:\"Expected private key bytes with length 32. Actual length: $actualLength.\",[Yut]:\"Expected base58-encoded signature to decode to a byte array of length 64. Actual length: $actualLength.\",[Jut]:\"The provided private key does not match the provided public key.\",[Qut]:\"Expected base58-encoded signature string of length in the range [64, 88]. Actual length: $actualLength.\",[Qlt]:\"Lamports value must be in the range [0, 2e64-1]\",[Jlt]:\"`$value` cannot be parsed as a `BigInt`\",[tut]:\"$message\",[Xlt]:\"`$value` cannot be parsed as a `Number`\",[Glt]:\"No nonce account could be found at address `$nonceAccountAddress`\",[Mht]:\"The notification name must end in \\'Notifications\\' and the API must supply a subscription plan creator function for the notification \\'$notificationName\\'.\",[Lht]:\"WebSocket was closed before payload could be added to the send buffer\",[Bht]:\"WebSocket connection closed\",[Dht]:\"WebSocket failed to connect\",[Nht]:\"Failed to obtain a subscription id from the server\",[Pht]:\"Could not find an API plan for RPC method: `$method`\",[Rht]:\"The $argumentLabel argument to the `$methodName` RPC method$optionalPathLabel was `$value`. This number is unsafe for use with the Solana JSON-RPC because it exceeds `Number.MAX_SAFE_INTEGER`.\",[Oht]:\"HTTP error ($statusCode): $message\",[Iht]:\"HTTP header(s) forbidden: $headers. Learn more at https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name.\",[rft]:\"Multiple distinct signers were identified for address `$address`. Please ensure that you are using the same signer instance for each address.\",[oft]:\"The provided value does not implement the `KeyPairSigner` interface\",[sft]:\"The provided value does not implement the `MessageModifyingSigner` interface\",[aft]:\"The provided value does not implement the `MessagePartialSigner` interface\",[ift]:\"The provided value does not implement any of the `MessageSigner` interfaces\",[lft]:\"The provided value does not implement the `TransactionModifyingSigner` interface\",[uft]:\"The provided value does not implement the `TransactionPartialSigner` interface\",[dft]:\"The provided value does not implement the `TransactionSendingSigner` interface\",[cft]:\"The provided value does not implement any of the `TransactionSigner` interfaces\",[fft]:\"More than one `TransactionSendingSigner` was identified.\",[hft]:\"No `TransactionSendingSigner` was identified. Please provide a valid `ITransactionWithSingleSendingSigner` transaction.\",[pft]:\"Wallet account signers do not support signing multiple messages/transactions in a single operation\",[$ut]:\"Cannot export a non-extractable key.\",[jut]:\"No digest implementation could be found.\",[Uut]:\"Cryptographic operations are only allowed in secure browser contexts. Read more here: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts.\",[zut]:`This runtime does not support the generation of Ed25519 key pairs.\\n\\nInstall @solana/webcrypto-ed25519-polyfill and call its \\\\`install\\\\` function before generating keys in environments that do not support Ed25519.\\n\\nFor a list of runtimes that currently support Ed25519 operations, visit https://github.com/WICG/webcrypto-secure-curves/issues/20.`,[Hut]:\"No signature verification implementation could be found.\",[qut]:\"No key generation implementation could be found.\",[Wut]:\"No signing implementation could be found.\",[Vut]:\"No key export implementation could be found.\",[eut]:\"Timestamp value must be in the range [-(2n ** 63n), (2n ** 63n) - 1]. `$value` given\",[Qft]:\"Transaction processing left an account with an outstanding borrowed reference\",[Bft]:\"Account in use\",[Dft]:\"Account loaded twice\",[Fft]:\"Attempt to debit an account but found no record of a prior credit.\",[oht]:\"Transaction loads an address table account that doesn\\'t exist\",[Hft]:\"This transaction has already been processed\",[qft]:\"Blockhash not found\",[Wft]:\"Loader call chain is too deep\",[Yft]:\"Transactions are currently disabled due to cluster maintenance\",[dht]:\"Transaction contains a duplicate instruction ($index) that is not allowed\",[jft]:\"Insufficient funds for fee\",[fht]:\"Transaction results in an account ($accountIndex) with insufficient funds for rent\",[zft]:\"This account may not be used to pay transaction fees\",[$ft]:\"Transaction contains an invalid account reference\",[sht]:\"Transaction loads an address table account with invalid data\",[aht]:\"Transaction address table lookup uses an invalid index\",[iht]:\"Transaction loads an address table account with an invalid owner\",[pht]:\"LoadedAccountsDataSizeLimit set for transaction must be greater than 0.\",[Gft]:\"This program may not be used for executing instructions\",[cht]:\"Transaction leaves an account with a lower balance than rent-exempt minimum\",[eht]:\"Transaction loads a writable account that cannot be written\",[hht]:\"Transaction exceeded max loaded accounts data size cap\",[Vft]:\"Transaction requires a fee but has no signature present\",[Uft]:\"Attempt to load a program that does not exist\",[ght]:\"Execution of the program referenced by account at index $accountIndex is temporarily restricted.\",[mht]:\"ResanitizationNeeded\",[Zft]:\"Transaction failed to sanitize accounts offsets correctly\",[Kft]:\"Transaction did not pass signature verification\",[rht]:\"Transaction locked too many accounts\",[yht]:\"Sum of account balances before and after transaction do not match\",[Lft]:\"The transaction failed with the error `$errorName`\",[Xft]:\"Transaction version is unsupported\",[nht]:\"Transaction would exceed account data limit within the block\",[uht]:\"Transaction would exceed total account data limit\",[tht]:\"Transaction would exceed max account limit within the block\",[Jft]:\"Transaction would exceed max Block Cost Limit\",[lht]:\"Transaction would exceed max Vote Cost Limit\",[Ift]:\"Attempted to sign a transaction with an address that is not a signer for it\",[_ft]:\"Transaction is missing an address at index: $index.\",[Oft]:\"Transaction has no expected signers therefore it cannot be encoded\",[yft]:\"Transaction does not have a blockhash lifetime\",[bft]:\"Transaction is not a durable nonce transaction\",[wft]:\"Contents of these address lookup tables unknown: $lookupTableAddresses\",[xft]:\"Lookup of address at index $highestRequestedIndex failed for lookup table `$lookupTableAddress`. Highest known index is $highestKnownIndex. The lookup table may have been extended since its contents were retrieved\",[Sft]:\"No fee payer set in CompiledTransaction\",[Eft]:\"Could not find program address at index $index\",[Mft]:\"Failed to estimate the compute unit consumption for this transaction message. This is likely because simulating the transaction failed. Inspect the `cause` property of this error to learn more\",[Nft]:\"Transaction failed when it was simulated in order to estimate the compute unit consumption. The compute unit estimate provided is for a transaction that failed when simulated and may not be representative of the compute units this transaction would consume if successful. Inspect the `cause` property of this error to learn more\",[Cft]:\"Transaction is missing a fee payer.\",[Aft]:\"Could not determine this transaction\\'s signature. Make sure that the transaction has been signed by its fee payer.\",[Rft]:\"Transaction first instruction is not advance nonce account instruction.\",[Tft]:\"Transaction with no instructions cannot be durable nonce transaction.\",[mft]:\"This transaction includes an address (`$programAddress`) which is both invoked and set as the fee payer. Program addresses may not pay fees\",[gft]:\"This transaction includes an address (`$programAddress`) which is both invoked and marked writable. Program addresses may not be writable\",[Pft]:\"The transaction message expected the transaction to have $signerAddressesLength signatures, got $signaturesLength.\",[kft]:\"Transaction is missing signatures for addresses: $addresses.\",[vft]:\"Transaction version must be in the range [0, 127]. `$actualVersion` given\"},o2=\"i\",P1=\"t\";function Wht(t,e={}){let n=qht[t];if(n.length===0)return\"\";let r;function o(a){if(r[P1]===2){let c=n.slice(r[o2]+1,a);i.push(c in e?`${e[c]}`:`$${c}`)}else r[P1]===1&&i.push(n.slice(r[o2],a))}let i=[];return n.split(\"\").forEach((a,c)=>{if(c===0){r={[o2]:0,[P1]:n[0]===\"\\\\\\\\\"?0:n[0]===\"$\"?2:1};return}let u;switch(r[P1]){case 0:u={[o2]:c,[P1]:1};break;case 1:a===\"\\\\\\\\\"?u={[o2]:c,[P1]:0}:a===\"$\"&&(u={[o2]:c,[P1]:2});break;case 2:a===\"\\\\\\\\\"?u={[o2]:c,[P1]:0}:a===\"$\"?u={[o2]:c,[P1]:2}:a.match(/\\\\w/)||(u={[o2]:c,[P1]:1});break}u&&(r!==u&&o(c),r=u)}),o(),i.join(\"\")}function Vht(t,e={}){return Wht(t,e)}var S3=class extends Error{constructor(...[e,n]){let r,o;if(n){let{cause:a,...c}=n;a&&(o={cause:a}),Object.keys(c).length>0&&(r=c)}let i=Vht(e,r);super(i,o);Op(this,\"cause\",this.cause);Op(this,\"context\");this.context={__code:e,...r},this.name=\"SolanaError\"}};p();function $ht(t,e){return\"fixedSize\"in e?e.fixedSize:e.getSizeFromValue(t)}function oRe(t){return Object.freeze({...t,encode:e=>{let n=new Uint8Array($ht(e,t));return t.write(e,n,0),n}})}function iRe(t){return Object.freeze({...t,decode:(e,n=0)=>t.read(e,n)[0]})}function DA(t){return\"fixedSize\"in t&&typeof t.fixedSize==\"number\"}function sRe(t,e){if(DA(t)!==DA(e))throw new S3(Boe);if(DA(t)&&DA(e)&&t.fixedSize!==e.fixedSize)throw new S3(Doe,{decoderFixedSize:e.fixedSize,encoderFixedSize:t.fixedSize});if(!DA(t)&&!DA(e)&&t.maxSize!==e.maxSize)throw new S3(Foe,{decoderMaxSize:e.maxSize,encoderMaxSize:t.maxSize});return{...e,...t,decode:e.decode,encode:t.encode,read:e.read,write:t.write}}function aRe(t,e,n=0){if(e.length-n<=0)throw new S3(Noe,{codecDescription:t})}function cRe(t,e,n,r=0){let o=n.length-r;if(o<e)throw new S3(Loe,{bytesLength:o,codecDescription:t,expected:e})}function Kht(t,e,n,r){if(r<e||r>n)throw new S3(Uoe,{codecDescription:t,max:n,min:e,value:r})}function lRe(t){return t?.endian!==1}function Ght(t){return oRe({fixedSize:t.size,write(e,n,r){t.range&&Kht(t.name,t.range[0],t.range[1],e);let o=new ArrayBuffer(t.size);return t.set(new DataView(o),e,lRe(t.config)),n.set(new Uint8Array(o),r),r+t.size}})}function Zht(t){return iRe({fixedSize:t.size,read(e,n=0){aRe(t.name,e,n),cRe(t.name,t.size,e,n);let r=new DataView(Yht(e,n,t.size));return[t.get(r,lRe(t.config)),n+t.size]}})}function Yht(t,e,n){let r=t.byteOffset+(e??0),o=n??t.byteLength;return t.buffer.slice(r,r+o)}var joe=(t={})=>Ght({config:t,name:\"u64\",range:[0n,BigInt(\"0xffffffffffffffff\")],set:(e,n,r)=>e.setBigUint64(0,BigInt(n),r),size:8}),Qht=(t={})=>Zht({config:t,get:(e,n)=>e.getBigUint64(0,n),name:\"u64\",size:8}),uRe=(t={})=>sRe(joe(t),Qht(t));p();var zoe=class extends TypeError{constructor(e,n){let r,{message:o,explanation:i,...a}=e,{path:c}=e,u=c.length===0?o:`At path: ${c.join(\".\")} -- ${o}`;super(i??u),i!=null&&(this.cause=u),Object.assign(this,a),this.name=this.constructor.name,this.failures=()=>r??(r=[e,...n()])}};function Jht(t){return iP(t)&&typeof t[Symbol.iterator]==\"function\"}function iP(t){return typeof t==\"object\"&&t!=null}function eW(t){return iP(t)&&!Array.isArray(t)}function yg(t){return typeof t==\"symbol\"?t.toString():typeof t==\"string\"?JSON.stringify(t):`${t}`}function Xht(t){let{done:e,value:n}=t.next();return e?void 0:n}function ept(t,e,n,r){if(t===!0)return;t===!1?t={}:typeof t==\"string\"&&(t={message:t});let{path:o,branch:i}=e,{type:a}=n,{refinement:c,message:u=`Expected a value of type \\\\`${a}\\\\`${c?` with refinement \\\\`${c}\\\\``:\"\"}, but received: \\\\`${yg(r)}\\\\``}=t;return{value:r,type:a,refinement:c,key:o[o.length-1],path:o,branch:i,...t,message:u}}function*dRe(t,e,n,r){Jht(t)||(t=[t]);for(let o of t){let i=ept(o,e,n,r);i&&(yield i)}}function*Hoe(t,e,n={}){let{path:r=[],branch:o=[t],coerce:i=!1,mask:a=!1}=n,c={path:r,branch:o,mask:a};i&&(t=e.coercer(t,c));let u=\"valid\";for(let d of e.validator(t,c))d.explanation=n.message,u=\"not_valid\",yield[d,void 0];for(let[d,h,m]of e.entries(t,c)){let g=Hoe(h,m,{path:d===void 0?r:[...r,d],branch:d===void 0?o:[...o,h],coerce:i,mask:a,message:n.message});for(let b of g)b[0]?(u=b[0].refinement!=null?\"not_refined\":\"not_valid\",yield[b[0],void 0]):i&&(h=b[1],d===void 0?t=h:t instanceof Map?t.set(d,h):t instanceof Set?t.add(h):iP(t)&&(h!==void 0||d in t)&&(t[d]=h))}if(u!==\"not_valid\")for(let d of e.refiner(t,c))d.explanation=n.message,u=\"not_refined\",yield[d,void 0];u===\"valid\"&&(yield[void 0,t])}var Rm=class{constructor(e){let{type:n,schema:r,validator:o,refiner:i,coercer:a=u=>u,entries:c=function*(){}}=e;this.type=n,this.schema=r,this.entries=c,this.coercer=a,o?this.validator=(u,d)=>{let h=o(u,d);return dRe(h,d,this,u)}:this.validator=()=>[],i?this.refiner=(u,d)=>{let h=i(u,d);return dRe(h,d,this,u)}:this.refiner=()=>[]}assert(e,n){return fRe(e,this,n)}create(e,n){return FA(e,this,n)}is(e){return hRe(e,this)}mask(e,n){return tpt(e,this,n)}validate(e,n={}){return sP(e,this,n)}};function fRe(t,e,n){let r=sP(t,e,{message:n});if(r[0])throw r[0]}function FA(t,e,n){let r=sP(t,e,{coerce:!0,message:n});if(r[0])throw r[0];return r[1]}function tpt(t,e,n){let r=sP(t,e,{coerce:!0,mask:!0,message:n});if(r[0])throw r[0];return r[1]}function hRe(t,e){return!sP(t,e)[0]}function sP(t,e,n={}){let r=Hoe(t,e,n),o=Xht(r);return o[0]?[new zoe(o[0],function*(){for(let a of r)a[0]&&(yield a[0])}),void 0]:[void 0,o[1]]}function nk(t,e){return new Rm({type:t,schema:null,validator:e})}function pRe(){return nk(\"any\",()=>!0)}function Zt(t){return new Rm({type:\"array\",schema:t,*entries(e){if(t&&Array.isArray(e))for(let[n,r]of e.entries())yield[n,r,t]},coercer(e){return Array.isArray(e)?e.slice():e},validator(e){return Array.isArray(e)||`Expected an array value, but received: ${yg(e)}`}})}function bg(){return nk(\"boolean\",t=>typeof t==\"boolean\")}function tW(t){return nk(\"instance\",e=>e instanceof t||`Expected a \\\\`${t.name}\\\\` instance, but received: ${yg(e)}`)}function ps(t){let e=yg(t),n=typeof t;return new Rm({type:\"literal\",schema:n===\"string\"||n===\"number\"||n===\"boolean\"?t:null,validator(r){return r===t||`Expected the literal \\\\`${e}\\\\`, but received: ${yg(r)}`}})}function npt(){return nk(\"never\",()=>!1)}function Yt(t){return new Rm({...t,validator:(e,n)=>e===null||t.validator(e,n),refiner:(e,n)=>e===null||t.refiner(e,n)})}function je(){return nk(\"number\",t=>typeof t==\"number\"&&!isNaN(t)||`Expected a number, but received: ${yg(t)}`)}function wn(t){return new Rm({...t,validator:(e,n)=>e===void 0||t.validator(e,n),refiner:(e,n)=>e===void 0||t.refiner(e,n)})}function qoe(t,e){return new Rm({type:\"record\",schema:null,*entries(n){if(iP(n))for(let r in n){let o=n[r];yield[r,r,t],yield[r,o,e]}},validator(n){return eW(n)||`Expected an object, but received: ${yg(n)}`},coercer(n){return eW(n)?{...n}:n}})}function Ot(){return nk(\"string\",t=>typeof t==\"string\"||`Expected a string, but received: ${yg(t)}`)}function nW(t){let e=npt();return new Rm({type:\"tuple\",schema:null,*entries(n){if(Array.isArray(n)){let r=Math.max(t.length,n.length);for(let o=0;o<r;o++)yield[o,n[o],t[o]||e]}},validator(n){return Array.isArray(n)||`Expected an array, but received: ${yg(n)}`},coercer(n){return Array.isArray(n)?n.slice():n}})}function St(t){let e=Object.keys(t);return new Rm({type:\"type\",schema:t,*entries(n){if(iP(n))for(let r of e)yield[r,n[r],t[r]]},validator(n){return eW(n)||`Expected an object, but received: ${yg(n)}`},coercer(n){return eW(n)?{...n}:n}})}function Iu(t){let e=t.map(n=>n.type).join(\" | \");return new Rm({type:\"union\",schema:null,coercer(n,r){for(let o of t){let[i,a]=o.validate(n,{coerce:!0,mask:r.mask});if(!i)return a}return n},validator(n,r){let o=[];for(let i of t){let[...a]=Hoe(n,i,r),[c]=a;if(c[0])for(let[u]of a)u&&o.push(u);else return[]}return[`Expected the value to satisfy a union of \\\\`${e}\\\\`, but received: ${yg(n)}`,...o]}})}function rk(){return nk(\"unknown\",()=>!0)}function UA(t,e,n){return new Rm({...t,coercer:(r,o)=>hRe(r,e)?t.coercer(n(r,o),o):t.coercer(r,o)})}var cpt=he(bRe());p();var apt=he(Kb(),1);DC();ML();NB();var nyn=XS.utils.randomPrivateKey,vRe=()=>{let t=XS.utils.randomPrivateKey(),e=Zoe(t),n=new Uint8Array(64);return n.set(t),n.set(e,32),{publicKey:e,secretKey:n}},Zoe=XS.getPublicKey;function wRe(t){try{return XS.ExtendedPoint.fromHex(t),!0}catch{return!1}}var lie=(t,e)=>XS.sign(t,e.slice(0,32)),lpt=XS.verify,xo=t=>Ln.Buffer.isBuffer(t)?t:t instanceof Uint8Array?Ln.Buffer.from(t.buffer,t.byteOffset,t.byteLength):Ln.Buffer.from(t),Yoe=class{constructor(e){Object.assign(this,e)}encode(){return Ln.Buffer.from((0,qA.serialize)(oW,this))}static decode(e){return(0,qA.deserialize)(oW,this,e)}static decodeUnchecked(e){return(0,qA.deserializeUnchecked)(oW,this,e)}};var oW=new Map,PRe,upt=32,_3=32;function dpt(t){return t._bn!==void 0}var xRe=1,ar=class t extends Yoe{constructor(e){if(super({}),this._bn=void 0,dpt(e))this._bn=e._bn;else{if(typeof e==\"string\"){let n=Ou.default.decode(e);if(n.length!=_3)throw new Error(\"Invalid public key input\");this._bn=new Goe.default(n)}else this._bn=new Goe.default(e);if(this._bn.byteLength()>_3)throw new Error(\"Invalid public key input\")}}static unique(){let e=new t(xRe);return xRe+=1,new t(e.toBuffer())}equals(e){return this._bn.eq(e._bn)}toBase58(){return Ou.default.encode(this.toBytes())}toJSON(){return this.toBase58()}toBytes(){let e=this.toBuffer();return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}toBuffer(){let e=this._bn.toArrayLike(Ln.Buffer);if(e.length===_3)return e;let n=Ln.Buffer.alloc(32);return e.copy(n,32-e.length),n}get[Symbol.toStringTag](){return`PublicKey(${this.toString()})`}toString(){return this.toBase58()}static async createWithSeed(e,n,r){let o=Ln.Buffer.concat([e.toBuffer(),Ln.Buffer.from(n),r.toBuffer()]),i=C5(o);return new t(i)}static createProgramAddressSync(e,n){let r=Ln.Buffer.alloc(0);e.forEach(function(i){if(i.length>upt)throw new TypeError(\"Max seed length exceeded\");r=Ln.Buffer.concat([r,xo(i)])}),r=Ln.Buffer.concat([r,n.toBuffer(),Ln.Buffer.from(\"ProgramDerivedAddress\")]);let o=C5(r);if(wRe(o))throw new Error(\"Invalid seeds, address must fall off the curve\");return new t(o)}static async createProgramAddress(e,n){return this.createProgramAddressSync(e,n)}static findProgramAddressSync(e,n){let r=255,o;for(;r!=0;){try{let i=e.concat(Ln.Buffer.from([r]));o=this.createProgramAddressSync(i,n)}catch(i){if(i instanceof TypeError)throw i;r--;continue}return[o,r]}throw new Error(\"Unable to find a viable program address nonce\")}static async findProgramAddress(e,n){return this.findProgramAddressSync(e,n)}static isOnCurve(e){let n=new t(e);return wRe(n.toBytes())}};PRe=ar;ar.default=new PRe(\"11111111111111111111111111111111\");oW.set(ar,{kind:\"struct\",fields:[[\"_bn\",\"u256\"]]});var ryn=new ar(\"BPFLoader1111111111111111111111111111111111\"),ok=1232,uie=127,iW=64,Qoe=class extends Error{constructor(e){super(`Signature ${e} has expired: block height exceeded.`),this.signature=void 0,this.signature=e}};Object.defineProperty(Qoe.prototype,\"name\",{value:\"TransactionExpiredBlockheightExceededError\"});var Joe=class extends Error{constructor(e,n){super(`Transaction was not confirmed in ${n.toFixed(2)} seconds. It is unknown if it succeeded or failed. Check signature ${e} using the Solana Explorer or CLI tools.`),this.signature=void 0,this.signature=e}};Object.defineProperty(Joe.prototype,\"name\",{value:\"TransactionExpiredTimeoutError\"});var Xoe=class extends Error{constructor(e){super(`Signature ${e} has expired: the nonce is no longer valid.`),this.signature=void 0,this.signature=e}};Object.defineProperty(Xoe.prototype,\"name\",{value:\"TransactionExpiredNonceInvalidError\"});var zA=class{constructor(e,n){this.staticAccountKeys=void 0,this.accountKeysFromLookups=void 0,this.staticAccountKeys=e,this.accountKeysFromLookups=n}keySegments(){let e=[this.staticAccountKeys];return this.accountKeysFromLookups&&(e.push(this.accountKeysFromLookups.writable),e.push(this.accountKeysFromLookups.readonly)),e}get(e){for(let n of this.keySegments()){if(e<n.length)return n[e];e-=n.length}}get length(){return this.keySegments().flat().length}compileInstructions(e){if(this.length>256)throw new Error(\"Account index overflow encountered during compilation\");let r=new Map;this.keySegments().flat().forEach((i,a)=>{r.set(i.toBase58(),a)});let o=i=>{let a=r.get(i.toBase58());if(a===void 0)throw new Error(\"Encountered an unknown instruction account key during compilation\");return a};return e.map(i=>({programIdIndex:o(i.programId),accountKeyIndexes:i.keys.map(a=>o(a.pubkey)),data:i.data}))}},Vr=(t=\"publicKey\")=>we.blob(32,t),fpt=(t=\"signature\")=>we.blob(64,t),jA=(t=\"string\")=>{let e=we.struct([we.u32(\"length\"),we.u32(\"lengthPadding\"),we.blob(we.offset(we.u32(),-8),\"chars\")],t),n=e.decode.bind(e),r=e.encode.bind(e),o=e;return o.decode=(i,a)=>n(i,a).chars.toString(),o.encode=(i,a,c)=>{let u={chars:Ln.Buffer.from(i,\"utf8\")};return r(u,a,c)},o.alloc=i=>we.u32().span+we.u32().span+Ln.Buffer.from(i,\"utf8\").length,o},hpt=(t=\"authorized\")=>we.struct([Vr(\"staker\"),Vr(\"withdrawer\")],t),ppt=(t=\"lockup\")=>we.struct([we.ns64(\"unixTimestamp\"),we.ns64(\"epoch\"),Vr(\"custodian\")],t),mpt=(t=\"voteInit\")=>we.struct([Vr(\"nodePubkey\"),Vr(\"authorizedVoter\"),Vr(\"authorizedWithdrawer\"),we.u8(\"commission\")],t),gpt=(t=\"voteAuthorizeWithSeedArgs\")=>we.struct([we.u32(\"voteAuthorizationType\"),Vr(\"currentAuthorityDerivedKeyOwnerPubkey\"),jA(\"currentAuthorityDerivedKeySeed\"),Vr(\"newAuthorized\")],t);function MRe(t,e){let n=o=>{if(o.span>=0)return o.span;if(typeof o.alloc==\"function\")return o.alloc(e[o.property]);if(\"count\"in o&&\"elementLayout\"in o){let i=e[o.property];if(Array.isArray(i))return i.length*n(o.elementLayout)}else if(\"fields\"in o)return MRe({layout:o},e[o.property]);return 0},r=0;return t.layout.fields.forEach(o=>{r+=n(o)}),r}function Dh(t){let e=0,n=0;for(;;){let r=t.shift();if(e|=(r&127)<<n*7,n+=1,(r&128)===0)break}return e}function Fh(t,e){let n=e;for(;;){let r=n&127;if(n>>=7,n==0){t.push(r);break}else r|=128,t.push(r)}}function Xi(t,e){if(!t)throw new Error(e||\"Assertion failed\")}var sW=class t{constructor(e,n){this.payer=void 0,this.keyMetaMap=void 0,this.payer=e,this.keyMetaMap=n}static compile(e,n){let r=new Map,o=a=>{let c=a.toBase58(),u=r.get(c);return u===void 0&&(u={isSigner:!1,isWritable:!1,isInvoked:!1},r.set(c,u)),u},i=o(n);i.isSigner=!0,i.isWritable=!0;for(let a of e){o(a.programId).isInvoked=!0;for(let c of a.keys){let u=o(c.pubkey);u.isSigner||(u.isSigner=c.isSigner),u.isWritable||(u.isWritable=c.isWritable)}}return new t(n,r)}getMessageComponents(){let e=[...this.keyMetaMap.entries()];Xi(e.length<=256,\"Max static account keys length exceeded\");let n=e.filter(([,u])=>u.isSigner&&u.isWritable),r=e.filter(([,u])=>u.isSigner&&!u.isWritable),o=e.filter(([,u])=>!u.isSigner&&u.isWritable),i=e.filter(([,u])=>!u.isSigner&&!u.isWritable),a={numRequiredSignatures:n.length+r.length,numReadonlySignedAccounts:r.length,numReadonlyUnsignedAccounts:i.length};{Xi(n.length>0,\"Expected at least one writable signer key\");let[u]=n[0];Xi(u===this.payer.toBase58(),\"Expected first writable signer key to be the fee payer\")}let c=[...n.map(([u])=>new ar(u)),...r.map(([u])=>new ar(u)),...o.map(([u])=>new ar(u)),...i.map(([u])=>new ar(u))];return[a,c]}extractTableLookup(e){let[n,r]=this.drainKeysFoundInLookupTable(e.state.addresses,a=>!a.isSigner&&!a.isInvoked&&a.isWritable),[o,i]=this.drainKeysFoundInLookupTable(e.state.addresses,a=>!a.isSigner&&!a.isInvoked&&!a.isWritable);if(!(n.length===0&&o.length===0))return[{accountKey:e.key,writableIndexes:n,readonlyIndexes:o},{writable:r,readonly:i}]}drainKeysFoundInLookupTable(e,n){let r=new Array,o=new Array;for(let[i,a]of this.keyMetaMap.entries())if(n(a)){let c=new ar(i),u=e.findIndex(d=>d.equals(c));u>=0&&(Xi(u<256,\"Max lookup table index exceeded\"),r.push(u),o.push(c),this.keyMetaMap.delete(i))}return[r,o]}},NRe=\"Reached end of buffer unexpectedly\";function s2(t){if(t.length===0)throw new Error(NRe);return t.shift()}function Uh(t,...e){let[n]=e;if(e.length===2?n+(e[1]??0)>t.length:n>=t.length)throw new Error(NRe);return t.splice(...e)}var uP=class t{constructor(e){this.header=void 0,this.accountKeys=void 0,this.recentBlockhash=void 0,this.instructions=void 0,this.indexToProgramIds=new Map,this.header=e.header,this.accountKeys=e.accountKeys.map(n=>new ar(n)),this.recentBlockhash=e.recentBlockhash,this.instructions=e.instructions,this.instructions.forEach(n=>this.indexToProgramIds.set(n.programIdIndex,this.accountKeys[n.programIdIndex]))}get version(){return\"legacy\"}get staticAccountKeys(){return this.accountKeys}get compiledInstructions(){return this.instructions.map(e=>({programIdIndex:e.programIdIndex,accountKeyIndexes:e.accounts,data:Ou.default.decode(e.data)}))}get addressTableLookups(){return[]}getAccountKeys(){return new zA(this.staticAccountKeys)}static compile(e){let n=sW.compile(e.instructions,e.payerKey),[r,o]=n.getMessageComponents(),a=new zA(o).compileInstructions(e.instructions).map(c=>({programIdIndex:c.programIdIndex,accounts:c.accountKeyIndexes,data:Ou.default.encode(c.data)}));return new t({header:r,accountKeys:o,recentBlockhash:e.recentBlockhash,instructions:a})}isAccountSigner(e){return e<this.header.numRequiredSignatures}isAccountWritable(e){let n=this.header.numRequiredSignatures;if(e>=this.header.numRequiredSignatures){let r=e-n,i=this.accountKeys.length-n-this.header.numReadonlyUnsignedAccounts;return r<i}else{let r=n-this.header.numReadonlySignedAccounts;return e<r}}isProgramId(e){return this.indexToProgramIds.has(e)}programIds(){return[...this.indexToProgramIds.values()]}nonProgramIds(){return this.accountKeys.filter((e,n)=>!this.isProgramId(n))}serialize(){let e=this.accountKeys.length,n=[];Fh(n,e);let r=this.instructions.map(m=>{let{accounts:g,programIdIndex:b}=m,E=Array.from(Ou.default.decode(m.data)),C=[];Fh(C,g.length);let T=[];return Fh(T,E.length),{programIdIndex:b,keyIndicesCount:Ln.Buffer.from(C),keyIndices:g,dataLength:Ln.Buffer.from(T),data:E}}),o=[];Fh(o,r.length);let i=Ln.Buffer.alloc(ok);Ln.Buffer.from(o).copy(i);let a=o.length;r.forEach(m=>{let b=we.struct([we.u8(\"programIdIndex\"),we.blob(m.keyIndicesCount.length,\"keyIndicesCount\"),we.seq(we.u8(\"keyIndex\"),m.keyIndices.length,\"keyIndices\"),we.blob(m.dataLength.length,\"dataLength\"),we.seq(we.u8(\"userdatum\"),m.data.length,\"data\")]).encode(m,i,a);a+=b}),i=i.slice(0,a);let c=we.struct([we.blob(1,\"numRequiredSignatures\"),we.blob(1,\"numReadonlySignedAccounts\"),we.blob(1,\"numReadonlyUnsignedAccounts\"),we.blob(n.length,\"keyCount\"),we.seq(Vr(\"key\"),e,\"keys\"),Vr(\"recentBlockhash\")]),u={numRequiredSignatures:Ln.Buffer.from([this.header.numRequiredSignatures]),numReadonlySignedAccounts:Ln.Buffer.from([this.header.numReadonlySignedAccounts]),numReadonlyUnsignedAccounts:Ln.Buffer.from([this.header.numReadonlyUnsignedAccounts]),keyCount:Ln.Buffer.from(n),keys:this.accountKeys.map(m=>xo(m.toBytes())),recentBlockhash:Ou.default.decode(this.recentBlockhash)},d=Ln.Buffer.alloc(2048),h=c.encode(u,d);return i.copy(d,h),d.slice(0,h+i.length)}static from(e){let n=[...e],r=s2(n);if(r!==(r&uie))throw new Error(\"Versioned messages must be deserialized with VersionedMessage.deserialize()\");let o=s2(n),i=s2(n),a=Dh(n),c=[];for(let g=0;g<a;g++){let b=Uh(n,0,_3);c.push(new ar(Ln.Buffer.from(b)))}let u=Uh(n,0,_3),d=Dh(n),h=[];for(let g=0;g<d;g++){let b=s2(n),E=Dh(n),C=Uh(n,0,E),T=Dh(n),R=Uh(n,0,T),L=Ou.default.encode(Ln.Buffer.from(R));h.push({programIdIndex:b,accounts:C,data:L})}let m={header:{numRequiredSignatures:r,numReadonlySignedAccounts:o,numReadonlyUnsignedAccounts:i},recentBlockhash:Ou.default.encode(Ln.Buffer.from(u)),accountKeys:c,instructions:h};return new t(m)}},eie=class t{constructor(e){this.header=void 0,this.staticAccountKeys=void 0,this.recentBlockhash=void 0,this.compiledInstructions=void 0,this.addressTableLookups=void 0,this.header=e.header,this.staticAccountKeys=e.staticAccountKeys,this.recentBlockhash=e.recentBlockhash,this.compiledInstructions=e.compiledInstructions,this.addressTableLookups=e.addressTableLookups}get version(){return 0}get numAccountKeysFromLookups(){let e=0;for(let n of this.addressTableLookups)e+=n.readonlyIndexes.length+n.writableIndexes.length;return e}getAccountKeys(e){let n;if(e&&\"accountKeysFromLookups\"in e&&e.accountKeysFromLookups){if(this.numAccountKeysFromLookups!=e.accountKeysFromLookups.writable.length+e.accountKeysFromLookups.readonly.length)throw new Error(\"Failed to get account keys because of a mismatch in the number of account keys from lookups\");n=e.accountKeysFromLookups}else if(e&&\"addressLookupTableAccounts\"in e&&e.addressLookupTableAccounts)n=this.resolveAddressTableLookups(e.addressLookupTableAccounts);else if(this.addressTableLookups.length>0)throw new Error(\"Failed to get account keys because address table lookups were not resolved\");return new zA(this.staticAccountKeys,n)}isAccountSigner(e){return e<this.header.numRequiredSignatures}isAccountWritable(e){let n=this.header.numRequiredSignatures,r=this.staticAccountKeys.length;if(e>=r){let o=e-r,i=this.addressTableLookups.reduce((a,c)=>a+c.writableIndexes.length,0);return o<i}else if(e>=this.header.numRequiredSignatures){let o=e-n,a=r-n-this.header.numReadonlyUnsignedAccounts;return o<a}else{let o=n-this.header.numReadonlySignedAccounts;return e<o}}resolveAddressTableLookups(e){let n={writable:[],readonly:[]};for(let r of this.addressTableLookups){let o=e.find(i=>i.key.equals(r.accountKey));if(!o)throw new Error(`Failed to find address lookup table account for table key ${r.accountKey.toBase58()}`);for(let i of r.writableIndexes)if(i<o.state.addresses.length)n.writable.push(o.state.addresses[i]);else throw new Error(`Failed to find address for index ${i} in address lookup table ${r.accountKey.toBase58()}`);for(let i of r.readonlyIndexes)if(i<o.state.addresses.length)n.readonly.push(o.state.addresses[i]);else throw new Error(`Failed to find address for index ${i} in address lookup table ${r.accountKey.toBase58()}`)}return n}static compile(e){let n=sW.compile(e.instructions,e.payerKey),r=new Array,o={writable:new Array,readonly:new Array},i=e.addressLookupTableAccounts||[];for(let h of i){let m=n.extractTableLookup(h);if(m!==void 0){let[g,{writable:b,readonly:E}]=m;r.push(g),o.writable.push(...b),o.readonly.push(...E)}}let[a,c]=n.getMessageComponents(),d=new zA(c,o).compileInstructions(e.instructions);return new t({header:a,staticAccountKeys:c,recentBlockhash:e.recentBlockhash,compiledInstructions:d,addressTableLookups:r})}serialize(){let e=Array();Fh(e,this.staticAccountKeys.length);let n=this.serializeInstructions(),r=Array();Fh(r,this.compiledInstructions.length);let o=this.serializeAddressTableLookups(),i=Array();Fh(i,this.addressTableLookups.length);let a=we.struct([we.u8(\"prefix\"),we.struct([we.u8(\"numRequiredSignatures\"),we.u8(\"numReadonlySignedAccounts\"),we.u8(\"numReadonlyUnsignedAccounts\")],\"header\"),we.blob(e.length,\"staticAccountKeysLength\"),we.seq(Vr(),this.staticAccountKeys.length,\"staticAccountKeys\"),Vr(\"recentBlockhash\"),we.blob(r.length,\"instructionsLength\"),we.blob(n.length,\"serializedInstructions\"),we.blob(i.length,\"addressTableLookupsLength\"),we.blob(o.length,\"serializedAddressTableLookups\")]),c=new Uint8Array(ok),d=a.encode({prefix:128,header:this.header,staticAccountKeysLength:new Uint8Array(e),staticAccountKeys:this.staticAccountKeys.map(h=>h.toBytes()),recentBlockhash:Ou.default.decode(this.recentBlockhash),instructionsLength:new Uint8Array(r),serializedInstructions:n,addressTableLookupsLength:new Uint8Array(i),serializedAddressTableLookups:o},c);return c.slice(0,d)}serializeInstructions(){let e=0,n=new Uint8Array(ok);for(let r of this.compiledInstructions){let o=Array();Fh(o,r.accountKeyIndexes.length);let i=Array();Fh(i,r.data.length);let a=we.struct([we.u8(\"programIdIndex\"),we.blob(o.length,\"encodedAccountKeyIndexesLength\"),we.seq(we.u8(),r.accountKeyIndexes.length,\"accountKeyIndexes\"),we.blob(i.length,\"encodedDataLength\"),we.blob(r.data.length,\"data\")]);e+=a.encode({programIdIndex:r.programIdIndex,encodedAccountKeyIndexesLength:new Uint8Array(o),accountKeyIndexes:r.accountKeyIndexes,encodedDataLength:new Uint8Array(i),data:r.data},n,e)}return n.slice(0,e)}serializeAddressTableLookups(){let e=0,n=new Uint8Array(ok);for(let r of this.addressTableLookups){let o=Array();Fh(o,r.writableIndexes.length);let i=Array();Fh(i,r.readonlyIndexes.length);let a=we.struct([Vr(\"accountKey\"),we.blob(o.length,\"encodedWritableIndexesLength\"),we.seq(we.u8(),r.writableIndexes.length,\"writableIndexes\"),we.blob(i.length,\"encodedReadonlyIndexesLength\"),we.seq(we.u8(),r.readonlyIndexes.length,\"readonlyIndexes\")]);e+=a.encode({accountKey:r.accountKey.toBytes(),encodedWritableIndexesLength:new Uint8Array(o),writableIndexes:r.writableIndexes,encodedReadonlyIndexesLength:new Uint8Array(i),readonlyIndexes:r.readonlyIndexes},n,e)}return n.slice(0,e)}static deserialize(e){let n=[...e],r=s2(n),o=r&uie;Xi(r!==o,\"Expected versioned message but received legacy message\");let i=o;Xi(i===0,`Expected versioned message with version 0 but found version ${i}`);let a={numRequiredSignatures:s2(n),numReadonlySignedAccounts:s2(n),numReadonlyUnsignedAccounts:s2(n)},c=[],u=Dh(n);for(let E=0;E<u;E++)c.push(new ar(Uh(n,0,_3)));let d=Ou.default.encode(Uh(n,0,_3)),h=Dh(n),m=[];for(let E=0;E<h;E++){let C=s2(n),T=Dh(n),R=Uh(n,0,T),L=Dh(n),D=new Uint8Array(Uh(n,0,L));m.push({programIdIndex:C,accountKeyIndexes:R,data:D})}let g=Dh(n),b=[];for(let E=0;E<g;E++){let C=new ar(Uh(n,0,_3)),T=Dh(n),R=Uh(n,0,T),L=Dh(n),D=Uh(n,0,L);b.push({accountKey:C,writableIndexes:R,readonlyIndexes:D})}return new t({header:a,staticAccountKeys:c,recentBlockhash:d,compiledInstructions:m,addressTableLookups:b})}},dW={deserializeMessageVersion(t){let e=t[0],n=e&uie;return n===e?\"legacy\":n},deserialize:t=>{let e=dW.deserializeMessageVersion(t);if(e===\"legacy\")return uP.from(t);if(e===0)return eie.deserialize(t);throw new Error(`Transaction message version ${e} deserialization is not supported`)}};var ypt=Ln.Buffer.alloc(iW).fill(0),Ai=class{constructor(e){this.keys=void 0,this.programId=void 0,this.data=Ln.Buffer.alloc(0),this.programId=e.programId,this.keys=e.keys,e.data&&(this.data=e.data)}toJSON(){return{keys:this.keys.map(({pubkey:e,isSigner:n,isWritable:r})=>({pubkey:e.toJSON(),isSigner:n,isWritable:r})),programId:this.programId.toJSON(),data:[...this.data]}}},Fi=class t{get signature(){return this.signatures.length>0?this.signatures[0].signature:null}constructor(e){if(this.signatures=[],this.feePayer=void 0,this.instructions=[],this.recentBlockhash=void 0,this.lastValidBlockHeight=void 0,this.nonceInfo=void 0,this.minNonceContextSlot=void 0,this._message=void 0,this._json=void 0,!!e)if(e.feePayer&&(this.feePayer=e.feePayer),e.signatures&&(this.signatures=e.signatures),Object.prototype.hasOwnProperty.call(e,\"nonceInfo\")){let{minContextSlot:n,nonceInfo:r}=e;this.minNonceContextSlot=n,this.nonceInfo=r}else if(Object.prototype.hasOwnProperty.call(e,\"lastValidBlockHeight\")){let{blockhash:n,lastValidBlockHeight:r}=e;this.recentBlockhash=n,this.lastValidBlockHeight=r}else{let{recentBlockhash:n,nonceInfo:r}=e;r&&(this.nonceInfo=r),this.recentBlockhash=n}}toJSON(){return{recentBlockhash:this.recentBlockhash||null,feePayer:this.feePayer?this.feePayer.toJSON():null,nonceInfo:this.nonceInfo?{nonce:this.nonceInfo.nonce,nonceInstruction:this.nonceInfo.nonceInstruction.toJSON()}:null,instructions:this.instructions.map(e=>e.toJSON()),signers:this.signatures.map(({publicKey:e})=>e.toJSON())}}add(...e){if(e.length===0)throw new Error(\"No instructions\");return e.forEach(n=>{\"instructions\"in n?this.instructions=this.instructions.concat(n.instructions):\"data\"in n&&\"programId\"in n&&\"keys\"in n?this.instructions.push(n):this.instructions.push(new Ai(n))}),this}compileMessage(){if(this._message&&JSON.stringify(this.toJSON())===JSON.stringify(this._json))return this._message;let e,n;if(this.nonceInfo?(e=this.nonceInfo.nonce,this.instructions[0]!=this.nonceInfo.nonceInstruction?n=[this.nonceInfo.nonceInstruction,...this.instructions]:n=this.instructions):(e=this.recentBlockhash,n=this.instructions),!e)throw new Error(\"Transaction recentBlockhash required\");n.length<1&&console.warn(\"No instructions provided\");let r;if(this.feePayer)r=this.feePayer;else if(this.signatures.length>0&&this.signatures[0].publicKey)r=this.signatures[0].publicKey;else throw new Error(\"Transaction fee payer required\");for(let C=0;C<n.length;C++)if(n[C].programId===void 0)throw new Error(`Transaction instruction index ${C} has undefined program id`);let o=[],i=[];n.forEach(C=>{C.keys.forEach(R=>{i.push({...R})});let T=C.programId.toString();o.includes(T)||o.push(T)}),o.forEach(C=>{i.push({pubkey:new ar(C),isSigner:!1,isWritable:!1})});let a=[];i.forEach(C=>{let T=C.pubkey.toString(),R=a.findIndex(L=>L.pubkey.toString()===T);R>-1?(a[R].isWritable=a[R].isWritable||C.isWritable,a[R].isSigner=a[R].isSigner||C.isSigner):a.push(C)}),a.sort(function(C,T){if(C.isSigner!==T.isSigner)return C.isSigner?-1:1;if(C.isWritable!==T.isWritable)return C.isWritable?-1:1;let R={localeMatcher:\"best fit\",usage:\"sort\",sensitivity:\"variant\",ignorePunctuation:!1,numeric:!1,caseFirst:\"lower\"};return C.pubkey.toBase58().localeCompare(T.pubkey.toBase58(),\"en\",R)});let c=a.findIndex(C=>C.pubkey.equals(r));if(c>-1){let[C]=a.splice(c,1);C.isSigner=!0,C.isWritable=!0,a.unshift(C)}else a.unshift({pubkey:r,isSigner:!0,isWritable:!0});for(let C of this.signatures){let T=a.findIndex(R=>R.pubkey.equals(C.publicKey));if(T>-1)a[T].isSigner||(a[T].isSigner=!0,console.warn(\"Transaction references a signature that is unnecessary, only the fee payer and instruction signer accounts should sign a transaction. This behavior is deprecated and will throw an error in the next major version release.\"));else throw new Error(`unknown signer: ${C.publicKey.toString()}`)}let u=0,d=0,h=0,m=[],g=[];a.forEach(({pubkey:C,isSigner:T,isWritable:R})=>{T?(m.push(C.toString()),u+=1,R||(d+=1)):(g.push(C.toString()),R||(h+=1))});let b=m.concat(g),E=n.map(C=>{let{data:T,programId:R}=C;return{programIdIndex:b.indexOf(R.toString()),accounts:C.keys.map(L=>b.indexOf(L.pubkey.toString())),data:Ou.default.encode(T)}});return E.forEach(C=>{Xi(C.programIdIndex>=0),C.accounts.forEach(T=>Xi(T>=0))}),new uP({header:{numRequiredSignatures:u,numReadonlySignedAccounts:d,numReadonlyUnsignedAccounts:h},accountKeys:b,recentBlockhash:e,instructions:E})}_compile(){let e=this.compileMessage(),n=e.accountKeys.slice(0,e.header.numRequiredSignatures);return this.signatures.length===n.length&&this.signatures.every((o,i)=>n[i].equals(o.publicKey))||(this.signatures=n.map(r=>({signature:null,publicKey:r}))),e}serializeMessage(){return this._compile().serialize()}async getEstimatedFee(e){return(await e.getFeeForMessage(this.compileMessage())).value}setSigners(...e){if(e.length===0)throw new Error(\"No signers\");let n=new Set;this.signatures=e.filter(r=>{let o=r.toString();return n.has(o)?!1:(n.add(o),!0)}).map(r=>({signature:null,publicKey:r}))}sign(...e){if(e.length===0)throw new Error(\"No signers\");let n=new Set,r=[];for(let i of e){let a=i.publicKey.toString();n.has(a)||(n.add(a),r.push(i))}this.signatures=r.map(i=>({signature:null,publicKey:i.publicKey}));let o=this._compile();this._partialSign(o,...r)}partialSign(...e){if(e.length===0)throw new Error(\"No signers\");let n=new Set,r=[];for(let i of e){let a=i.publicKey.toString();n.has(a)||(n.add(a),r.push(i))}let o=this._compile();this._partialSign(o,...r)}_partialSign(e,...n){let r=e.serialize();n.forEach(o=>{let i=lie(r,o.secretKey);this._addSignature(o.publicKey,xo(i))})}addSignature(e,n){this._compile(),this._addSignature(e,n)}_addSignature(e,n){Xi(n.length===64);let r=this.signatures.findIndex(o=>e.equals(o.publicKey));if(r<0)throw new Error(`unknown signer: ${e.toString()}`);this.signatures[r].signature=Ln.Buffer.from(n)}verifySignatures(e=!0){return!this._getMessageSignednessErrors(this.serializeMessage(),e)}_getMessageSignednessErrors(e,n){let r={};for(let{signature:o,publicKey:i}of this.signatures)o===null?n&&(r.missing||(r.missing=[])).push(i):lpt(o,e,i.toBytes())||(r.invalid||(r.invalid=[])).push(i);return r.invalid||r.missing?r:void 0}serialize(e){let{requireAllSignatures:n,verifySignatures:r}=Object.assign({requireAllSignatures:!0,verifySignatures:!0},e),o=this.serializeMessage();if(r){let i=this._getMessageSignednessErrors(o,n);if(i){let a=\"Signature verification failed.\";throw i.invalid&&(a+=`\\nInvalid signature for public key${i.invalid.length===1?\"\":\"(s)\"} [\\\\`${i.invalid.map(c=>c.toBase58()).join(\"`, `\")}\\\\`].`),i.missing&&(a+=`\\nMissing signature for public key${i.missing.length===1?\"\":\"(s)\"} [\\\\`${i.missing.map(c=>c.toBase58()).join(\"`, `\")}\\\\`].`),new Error(a)}}return this._serialize(o)}_serialize(e){let{signatures:n}=this,r=[];Fh(r,n.length);let o=r.length+n.length*64+e.length,i=Ln.Buffer.alloc(o);return Xi(n.length<256),Ln.Buffer.from(r).copy(i,0),n.forEach(({signature:a},c)=>{a!==null&&(Xi(a.length===64,\"signature has invalid length\"),Ln.Buffer.from(a).copy(i,r.length+c*64))}),e.copy(i,r.length+n.length*64),Xi(i.length<=ok,`Transaction too large: ${i.length} > ${ok}`),i}get keys(){return Xi(this.instructions.length===1),this.instructions[0].keys.map(e=>e.pubkey)}get programId(){return Xi(this.instructions.length===1),this.instructions[0].programId}get data(){return Xi(this.instructions.length===1),this.instructions[0].data}static from(e){let n=[...e],r=Dh(n),o=[];for(let i=0;i<r;i++){let a=Uh(n,0,iW);o.push(Ou.default.encode(Ln.Buffer.from(a)))}return t.populate(uP.from(n),o)}static populate(e,n=[]){let r=new t;return r.recentBlockhash=e.recentBlockhash,e.header.numRequiredSignatures>0&&(r.feePayer=e.accountKeys[0]),n.forEach((o,i)=>{let a={signature:o==Ou.default.encode(ypt)?null:Ou.default.decode(o),publicKey:e.accountKeys[i]};r.signatures.push(a)}),e.instructions.forEach(o=>{let i=o.accounts.map(a=>{let c=e.accountKeys[a];return{pubkey:c,isSigner:r.signatures.some(u=>u.publicKey.toString()===c.toString())||e.isAccountSigner(a),isWritable:e.isAccountWritable(a)}});r.instructions.push(new Ai({keys:i,programId:e.accountKeys[o.programIdIndex],data:Ou.default.decode(o.data)}))}),r._message=e,r._json=r.toJSON(),r}};var aW=class t{get version(){return this.message.version}constructor(e,n){if(this.signatures=void 0,this.message=void 0,n!==void 0)Xi(n.length===e.header.numRequiredSignatures,\"Expected signatures length to be equal to the number of required signatures\"),this.signatures=n;else{let r=[];for(let o=0;o<e.header.numRequiredSignatures;o++)r.push(new Uint8Array(iW));this.signatures=r}this.message=e}serialize(){let e=this.message.serialize(),n=Array();Fh(n,this.signatures.length);let r=we.struct([we.blob(n.length,\"encodedSignaturesLength\"),we.seq(fpt(),this.signatures.length,\"signatures\"),we.blob(e.length,\"serializedMessage\")]),o=new Uint8Array(2048),i=r.encode({encodedSignaturesLength:new Uint8Array(n),signatures:this.signatures,serializedMessage:e},o);return o.slice(0,i)}static deserialize(e){let n=[...e],r=[],o=Dh(n);for(let a=0;a<o;a++)r.push(new Uint8Array(Uh(n,0,iW)));let i=dW.deserialize(new Uint8Array(n));return new t(i,r)}sign(e){let n=this.message.serialize(),r=this.message.staticAccountKeys.slice(0,this.message.header.numRequiredSignatures);for(let o of e){let i=r.findIndex(a=>a.equals(o.publicKey));Xi(i>=0,`Cannot sign with non signer key ${o.publicKey.toBase58()}`),this.signatures[i]=lie(n,o.secretKey)}}addSignature(e,n){Xi(n.byteLength===64,\"Signature must be 64 bytes long\");let o=this.message.staticAccountKeys.slice(0,this.message.header.numRequiredSignatures).findIndex(i=>i.equals(e));Xi(o>=0,`Can not add signature; \\\\`${e.toBase58()}\\\\` is not required to sign this transaction`),this.signatures[o]=n}},bpt=160,vpt=64,wpt=bpt/vpt,xpt=1e3/wpt,i2=new ar(\"SysvarC1ock11111111111111111111111111111111\"),oyn=new ar(\"SysvarEpochSchedu1e111111111111111111111111\"),iyn=new ar(\"Sysvar1nstructions1111111111111111111111111\"),Woe=new ar(\"SysvarRecentB1ockHashes11111111111111111111\"),dP=new ar(\"SysvarRent111111111111111111111111111111111\"),syn=new ar(\"SysvarRewards111111111111111111111111111111\"),ayn=new ar(\"SysvarS1otHashes111111111111111111111111111\"),cyn=new ar(\"SysvarS1otHistory11111111111111111111111111\"),Voe=new ar(\"SysvarStakeHistory1111111111111111111111111\"),tie=class extends Error{constructor({action:e,signature:n,transactionMessage:r,logs:o}){let i=o?`Logs: \\n${JSON.stringify(o.slice(-10),null,2)}. `:\"\",a=\"\\\\nCatch the `SendTransactionError` and call `getLogs()` on it for full details.\",c;switch(e){case\"send\":c=`Transaction ${n} resulted in an error. \\n${r}. `+i+a;break;case\"simulate\":c=`Simulation failed. \\nMessage: ${r}. \\n`+i+a;break;default:c=`Unknown action \\'${(u=>u)(e)}\\'`}super(c),this.signature=void 0,this.transactionMessage=void 0,this.transactionLogs=void 0,this.signature=n,this.transactionMessage=r,this.transactionLogs=o||void 0}get transactionError(){return{message:this.transactionMessage,logs:Array.isArray(this.transactionLogs)?this.transactionLogs:void 0}}get logs(){let e=this.transactionLogs;if(!(e!=null&&typeof e==\"object\"&&\"then\"in e))return e}async getLogs(e){return Array.isArray(this.transactionLogs)||(this.transactionLogs=new Promise((n,r)=>{e.getTransaction(this.signature).then(o=>{if(o&&o.meta&&o.meta.logMessages){let i=o.meta.logMessages;this.transactionLogs=i,n(i)}else r(new Error(\"Log messages not found\"))}).catch(r)})),await this.transactionLogs}};async function ERe(t,e,n,r){let o=r&&{skipPreflight:r.skipPreflight,preflightCommitment:r.preflightCommitment||r.commitment,maxRetries:r.maxRetries,minContextSlot:r.minContextSlot},i=await t.sendTransaction(e,n,o),a;if(e.recentBlockhash!=null&&e.lastValidBlockHeight!=null)a=(await t.confirmTransaction({abortSignal:r?.abortSignal,signature:i,blockhash:e.recentBlockhash,lastValidBlockHeight:e.lastValidBlockHeight},r&&r.commitment)).value;else if(e.minNonceContextSlot!=null&&e.nonceInfo!=null){let{nonceInstruction:c}=e.nonceInfo,u=c.keys[0].pubkey;a=(await t.confirmTransaction({abortSignal:r?.abortSignal,minContextSlot:e.minNonceContextSlot,nonceAccountPubkey:u,nonceValue:e.nonceInfo.nonce,signature:i},r&&r.commitment)).value}else r?.abortSignal!=null&&console.warn(\"sendAndConfirmTransaction(): A transaction with a deprecated confirmation strategy was supplied along with an `abortSignal`. Only transactions having `lastValidBlockHeight` or a combination of `nonceInfo` and `minNonceContextSlot` are abortable.\"),a=(await t.confirmTransaction(i,r&&r.commitment)).value;if(a.err)throw i!=null?new tie({action:\"send\",signature:i,transactionMessage:`Status: (${JSON.stringify(a)})`}):new Error(`Transaction ${i} failed (${JSON.stringify(a)})`);return i}function Ept(t){return new Promise(e=>setTimeout(e,t))}function to(t,e){let n=t.layout.span>=0?t.layout.span:MRe(t,e),r=Ln.Buffer.alloc(n),o=Object.assign({instruction:t.index},e);return t.layout.encode(o,r),r}var Spt=we.nu64(\"lamportsPerSignature\"),kpt=we.struct([we.u32(\"version\"),we.u32(\"state\"),Vr(\"authorizedPubkey\"),Vr(\"nonce\"),we.struct([Spt],\"feeCalculator\")]),SRe=kpt.span;function HA(t){let e=(0,ORe.blob)(8,t),n=e.decode.bind(e),r=e.encode.bind(e),o=e,i=uRe();return o.decode=(a,c)=>{let u=n(a,c);return i.decode(u)},o.encode=(a,c,u)=>{let d=i.encode(a);return r(d,c,u)},o}var Im=Object.freeze({Create:{index:0,layout:we.struct([we.u32(\"instruction\"),we.ns64(\"lamports\"),we.ns64(\"space\"),Vr(\"programId\")])},Assign:{index:1,layout:we.struct([we.u32(\"instruction\"),Vr(\"programId\")])},Transfer:{index:2,layout:we.struct([we.u32(\"instruction\"),HA(\"lamports\")])},CreateWithSeed:{index:3,layout:we.struct([we.u32(\"instruction\"),Vr(\"base\"),jA(\"seed\"),we.ns64(\"lamports\"),we.ns64(\"space\"),Vr(\"programId\")])},AdvanceNonceAccount:{index:4,layout:we.struct([we.u32(\"instruction\")])},WithdrawNonceAccount:{index:5,layout:we.struct([we.u32(\"instruction\"),we.ns64(\"lamports\")])},InitializeNonceAccount:{index:6,layout:we.struct([we.u32(\"instruction\"),Vr(\"authorized\")])},AuthorizeNonceAccount:{index:7,layout:we.struct([we.u32(\"instruction\"),Vr(\"authorized\")])},Allocate:{index:8,layout:we.struct([we.u32(\"instruction\"),we.ns64(\"space\")])},AllocateWithSeed:{index:9,layout:we.struct([we.u32(\"instruction\"),Vr(\"base\"),jA(\"seed\"),we.ns64(\"space\"),Vr(\"programId\")])},AssignWithSeed:{index:10,layout:we.struct([we.u32(\"instruction\"),Vr(\"base\"),jA(\"seed\"),Vr(\"programId\")])},TransferWithSeed:{index:11,layout:we.struct([we.u32(\"instruction\"),HA(\"lamports\"),jA(\"seed\"),Vr(\"programId\")])},UpgradeNonceAccount:{index:12,layout:we.struct([we.u32(\"instruction\")])}}),Md=class t{constructor(){}static createAccount(e){let n=Im.Create,r=to(n,{lamports:e.lamports,space:e.space,programId:xo(e.programId.toBuffer())});return new Ai({keys:[{pubkey:e.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:e.newAccountPubkey,isSigner:!0,isWritable:!0}],programId:this.programId,data:r})}static transfer(e){let n,r;if(\"basePubkey\"in e){let o=Im.TransferWithSeed;n=to(o,{lamports:BigInt(e.lamports),seed:e.seed,programId:xo(e.programId.toBuffer())}),r=[{pubkey:e.fromPubkey,isSigner:!1,isWritable:!0},{pubkey:e.basePubkey,isSigner:!0,isWritable:!1},{pubkey:e.toPubkey,isSigner:!1,isWritable:!0}]}else{let o=Im.Transfer;n=to(o,{lamports:BigInt(e.lamports)}),r=[{pubkey:e.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:e.toPubkey,isSigner:!1,isWritable:!0}]}return new Ai({keys:r,programId:this.programId,data:n})}static assign(e){let n,r;if(\"basePubkey\"in e){let o=Im.AssignWithSeed;n=to(o,{base:xo(e.basePubkey.toBuffer()),seed:e.seed,programId:xo(e.programId.toBuffer())}),r=[{pubkey:e.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:e.basePubkey,isSigner:!0,isWritable:!1}]}else{let o=Im.Assign;n=to(o,{programId:xo(e.programId.toBuffer())}),r=[{pubkey:e.accountPubkey,isSigner:!0,isWritable:!0}]}return new Ai({keys:r,programId:this.programId,data:n})}static createAccountWithSeed(e){let n=Im.CreateWithSeed,r=to(n,{base:xo(e.basePubkey.toBuffer()),seed:e.seed,lamports:e.lamports,space:e.space,programId:xo(e.programId.toBuffer())}),o=[{pubkey:e.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:e.newAccountPubkey,isSigner:!1,isWritable:!0}];return e.basePubkey.equals(e.fromPubkey)||o.push({pubkey:e.basePubkey,isSigner:!0,isWritable:!1}),new Ai({keys:o,programId:this.programId,data:r})}static createNonceAccount(e){let n=new Fi;\"basePubkey\"in e&&\"seed\"in e?n.add(t.createAccountWithSeed({fromPubkey:e.fromPubkey,newAccountPubkey:e.noncePubkey,basePubkey:e.basePubkey,seed:e.seed,lamports:e.lamports,space:SRe,programId:this.programId})):n.add(t.createAccount({fromPubkey:e.fromPubkey,newAccountPubkey:e.noncePubkey,lamports:e.lamports,space:SRe,programId:this.programId}));let r={noncePubkey:e.noncePubkey,authorizedPubkey:e.authorizedPubkey};return n.add(this.nonceInitialize(r)),n}static nonceInitialize(e){let n=Im.InitializeNonceAccount,r=to(n,{authorized:xo(e.authorizedPubkey.toBuffer())}),o={keys:[{pubkey:e.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:Woe,isSigner:!1,isWritable:!1},{pubkey:dP,isSigner:!1,isWritable:!1}],programId:this.programId,data:r};return new Ai(o)}static nonceAdvance(e){let n=Im.AdvanceNonceAccount,r=to(n),o={keys:[{pubkey:e.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:Woe,isSigner:!1,isWritable:!1},{pubkey:e.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:r};return new Ai(o)}static nonceWithdraw(e){let n=Im.WithdrawNonceAccount,r=to(n,{lamports:e.lamports});return new Ai({keys:[{pubkey:e.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:e.toPubkey,isSigner:!1,isWritable:!0},{pubkey:Woe,isSigner:!1,isWritable:!1},{pubkey:dP,isSigner:!1,isWritable:!1},{pubkey:e.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:r})}static nonceAuthorize(e){let n=Im.AuthorizeNonceAccount,r=to(n,{authorized:xo(e.newAuthorizedPubkey.toBuffer())});return new Ai({keys:[{pubkey:e.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:e.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:r})}static allocate(e){let n,r;if(\"basePubkey\"in e){let o=Im.AllocateWithSeed;n=to(o,{base:xo(e.basePubkey.toBuffer()),seed:e.seed,space:e.space,programId:xo(e.programId.toBuffer())}),r=[{pubkey:e.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:e.basePubkey,isSigner:!0,isWritable:!1}]}else{let o=Im.Allocate;n=to(o,{space:e.space}),r=[{pubkey:e.accountPubkey,isSigner:!0,isWritable:!0}]}return new Ai({keys:r,programId:this.programId,data:n})}};Md.programId=new ar(\"11111111111111111111111111111111\");var _pt=ok-300,nie=class t{constructor(){}static getMinNumSignatures(e){return 2*(Math.ceil(e/t.chunkSize)+1+1)}static async load(e,n,r,o,i){{let m=await e.getMinimumBalanceForRentExemption(i.length),g=await e.getAccountInfo(r.publicKey,\"confirmed\"),b=null;if(g!==null){if(g.executable)return console.error(\"Program load failed, account is already executable\"),!1;g.data.length!==i.length&&(b=b||new Fi,b.add(Md.allocate({accountPubkey:r.publicKey,space:i.length}))),g.owner.equals(o)||(b=b||new Fi,b.add(Md.assign({accountPubkey:r.publicKey,programId:o}))),g.lamports<m&&(b=b||new Fi,b.add(Md.transfer({fromPubkey:n.publicKey,toPubkey:r.publicKey,lamports:m-g.lamports})))}else b=new Fi().add(Md.createAccount({fromPubkey:n.publicKey,newAccountPubkey:r.publicKey,lamports:m>0?m:1,space:i.length,programId:o}));b!==null&&await ERe(e,b,[n,r],{commitment:\"confirmed\"})}let a=we.struct([we.u32(\"instruction\"),we.u32(\"offset\"),we.u32(\"bytesLength\"),we.u32(\"bytesLengthPadding\"),we.seq(we.u8(\"byte\"),we.offset(we.u32(),-8),\"bytes\")]),c=t.chunkSize,u=0,d=i,h=[];for(;d.length>0;){let m=d.slice(0,c),g=Ln.Buffer.alloc(c+16);a.encode({instruction:0,offset:u,bytes:m,bytesLength:0,bytesLengthPadding:0},g);let b=new Fi().add({keys:[{pubkey:r.publicKey,isSigner:!0,isWritable:!0}],programId:o,data:g});h.push(ERe(e,b,[n,r],{commitment:\"confirmed\"})),e._rpcEndpoint.includes(\"solana.com\")&&await Ept(1e3/4),u+=c,d=d.slice(c)}await Promise.all(h);{let m=we.struct([we.u32(\"instruction\")]),g=Ln.Buffer.alloc(m.span);m.encode({instruction:1},g);let b=new Fi().add({keys:[{pubkey:r.publicKey,isSigner:!0,isWritable:!0},{pubkey:dP,isSigner:!1,isWritable:!1}],programId:o,data:g}),E=\"processed\",C=await e.sendTransaction(b,[n,r],{preflightCommitment:E}),{context:T,value:R}=await e.confirmTransaction({signature:C,lastValidBlockHeight:b.lastValidBlockHeight,blockhash:b.recentBlockhash},E);if(R.err)throw new Error(`Transaction ${C} failed (${JSON.stringify(R)})`);for(;;){try{if(await e.getSlot({commitment:E})>T.slot)break}catch{}await new Promise(L=>setTimeout(L,Math.round(xpt/2)))}}return!0}};nie.chunkSize=_pt;var lyn=new ar(\"BPFLoader2111111111111111111111111111111111\");var uyn=globalThis.fetch;var dyn={index:1,layout:we.struct([we.u32(\"typeIndex\"),HA(\"deactivationSlot\"),we.nu64(\"lastExtendedSlot\"),we.u8(\"lastExtendedStartIndex\"),we.u8(),we.seq(Vr(),we.offset(we.u8(),-1),\"authority\")])};var $s=UA(tW(ar),Ot(),t=>new ar(t)),LRe=nW([Ot(),ps(\"base64\")]),die=UA(tW(Ln.Buffer),LRe,t=>Ln.Buffer.from(t[0],\"base64\")),fyn=30*1e3;function BRe(t){return Iu([St({jsonrpc:ps(\"2.0\"),id:Ot(),result:t}),St({jsonrpc:ps(\"2.0\"),id:Ot(),error:St({code:rk(),message:Ot(),data:wn(pRe())})})])}var Cpt=BRe(rk());function Ui(t){return UA(BRe(t),Cpt,e=>\"error\"in e?e:{...e,result:FA(e.result,t)})}function vg(t){return Ui(St({context:St({slot:je()}),value:t}))}function fW(t){return St({context:St({slot:je()}),value:t})}var Apt=St({foundation:je(),foundationTerm:je(),initial:je(),taper:je(),terminal:je()}),hyn=Ui(Zt(Yt(St({epoch:je(),effectiveSlot:je(),amount:je(),postBalance:je(),commission:wn(Yt(je()))})))),Tpt=Zt(St({slot:je(),prioritizationFee:je()})),Rpt=St({total:je(),validator:je(),foundation:je(),epoch:je()}),Ipt=St({epoch:je(),slotIndex:je(),slotsInEpoch:je(),absoluteSlot:je(),blockHeight:wn(je()),transactionCount:wn(je())}),Opt=St({slotsPerEpoch:je(),leaderScheduleSlotOffset:je(),warmup:bg(),firstNormalEpoch:je(),firstNormalSlot:je()}),Ppt=qoe(Ot(),Zt(je())),ik=Yt(Iu([St({}),Ot()])),Mpt=St({err:ik}),Npt=ps(\"receivedSignature\"),pyn=St({\"solana-core\":Ot(),\"feature-set\":wn(je())}),Lpt=St({program:Ot(),programId:$s,parsed:rk()}),Bpt=St({programId:$s,accounts:Zt($s),data:Ot()}),myn=vg(St({err:Yt(Iu([St({}),Ot()])),logs:Yt(Zt(Ot())),accounts:wn(Yt(Zt(Yt(St({executable:bg(),owner:Ot(),lamports:je(),data:Zt(Ot()),rentEpoch:wn(je())}))))),unitsConsumed:wn(je()),returnData:wn(Yt(St({programId:Ot(),data:nW([Ot(),ps(\"base64\")])}))),innerInstructions:wn(Yt(Zt(St({index:je(),instructions:Zt(Iu([Lpt,Bpt]))}))))})),gyn=vg(St({byIdentity:qoe(Ot(),Zt(je())),range:St({firstSlot:je(),lastSlot:je()})}));var yyn=Ui(Apt),byn=Ui(Rpt),vyn=Ui(Tpt),wyn=Ui(Ipt),xyn=Ui(Opt),Eyn=Ui(Ppt),Syn=Ui(je()),kyn=vg(St({total:je(),circulating:je(),nonCirculating:je(),nonCirculatingAccounts:Zt($s)})),Dpt=St({amount:Ot(),uiAmount:Yt(je()),decimals:je(),uiAmountString:wn(Ot())}),_yn=vg(Zt(St({address:$s,amount:Ot(),uiAmount:Yt(je()),decimals:je(),uiAmountString:wn(Ot())}))),Cyn=vg(Zt(St({pubkey:$s,account:St({executable:bg(),owner:$s,lamports:je(),data:die,rentEpoch:je()})}))),rie=St({program:Ot(),parsed:rk(),space:je()}),Ayn=vg(Zt(St({pubkey:$s,account:St({executable:bg(),owner:$s,lamports:je(),data:rie,rentEpoch:je()})}))),Tyn=vg(Zt(St({lamports:je(),address:$s}))),fie=St({executable:bg(),owner:$s,lamports:je(),data:die,rentEpoch:je()}),Ryn=St({pubkey:$s,account:fie}),Fpt=UA(Iu([tW(Ln.Buffer),rie]),Iu([LRe,rie]),t=>Array.isArray(t)?FA(t,die):t),Upt=St({executable:bg(),owner:$s,lamports:je(),data:Fpt,rentEpoch:je()}),Iyn=St({pubkey:$s,account:Upt}),Oyn=St({state:Iu([ps(\"active\"),ps(\"inactive\"),ps(\"activating\"),ps(\"deactivating\")]),active:je(),inactive:je()}),Pyn=Ui(Zt(St({signature:Ot(),slot:je(),err:ik,memo:Yt(Ot()),blockTime:wn(Yt(je()))}))),Myn=Ui(Zt(St({signature:Ot(),slot:je(),err:ik,memo:Yt(Ot()),blockTime:wn(Yt(je()))}))),Nyn=St({subscription:je(),result:fW(fie)}),jpt=St({pubkey:$s,account:fie}),Lyn=St({subscription:je(),result:fW(jpt)}),zpt=St({parent:je(),slot:je(),root:je()}),Byn=St({subscription:je(),result:zpt}),Hpt=Iu([St({type:Iu([ps(\"firstShredReceived\"),ps(\"completed\"),ps(\"optimisticConfirmation\"),ps(\"root\")]),slot:je(),timestamp:je()}),St({type:ps(\"createdBank\"),parent:je(),slot:je(),timestamp:je()}),St({type:ps(\"frozen\"),slot:je(),timestamp:je(),stats:St({numTransactionEntries:je(),numSuccessfulTransactions:je(),numFailedTransactions:je(),maxTransactionsPerEntry:je()})}),St({type:ps(\"dead\"),slot:je(),timestamp:je(),err:Ot()})]),Dyn=St({subscription:je(),result:Hpt}),Fyn=St({subscription:je(),result:fW(Iu([Mpt,Npt]))}),Uyn=St({subscription:je(),result:je()}),jyn=St({pubkey:Ot(),gossip:Yt(Ot()),tpu:Yt(Ot()),rpc:Yt(Ot()),version:Yt(Ot())}),kRe=St({votePubkey:Ot(),nodePubkey:Ot(),activatedStake:je(),epochVoteAccount:bg(),epochCredits:Zt(nW([je(),je(),je()])),commission:je(),lastVote:je(),rootSlot:Yt(je())}),zyn=Ui(St({current:Zt(kRe),delinquent:Zt(kRe)})),qpt=Iu([ps(\"processed\"),ps(\"confirmed\"),ps(\"finalized\")]),Wpt=St({slot:je(),confirmations:Yt(je()),err:ik,confirmationStatus:wn(qpt)}),Hyn=vg(Zt(Yt(Wpt))),qyn=Ui(je()),DRe=St({accountKey:$s,writableIndexes:Zt(je()),readonlyIndexes:Zt(je())}),hie=St({signatures:Zt(Ot()),message:St({accountKeys:Zt(Ot()),header:St({numRequiredSignatures:je(),numReadonlySignedAccounts:je(),numReadonlyUnsignedAccounts:je()}),instructions:Zt(St({accounts:Zt(je()),data:Ot(),programIdIndex:je()})),recentBlockhash:Ot(),addressTableLookups:wn(Zt(DRe))})}),FRe=St({pubkey:$s,signer:bg(),writable:bg(),source:wn(Iu([ps(\"transaction\"),ps(\"lookupTable\")]))}),URe=St({accountKeys:Zt(FRe),signatures:Zt(Ot())}),jRe=St({parsed:rk(),program:Ot(),programId:$s}),zRe=St({accounts:Zt($s),data:Ot(),programId:$s}),Vpt=Iu([zRe,jRe]),$pt=Iu([St({parsed:rk(),program:Ot(),programId:Ot()}),St({accounts:Zt(Ot()),data:Ot(),programId:Ot()})]),HRe=UA(Vpt,$pt,t=>\"accounts\"in t?FA(t,zRe):FA(t,jRe)),qRe=St({signatures:Zt(Ot()),message:St({accountKeys:Zt(FRe),instructions:Zt(HRe),recentBlockhash:Ot(),addressTableLookups:wn(Yt(Zt(DRe)))})}),cW=St({accountIndex:je(),mint:Ot(),owner:wn(Ot()),programId:wn(Ot()),uiTokenAmount:Dpt}),WRe=St({writable:Zt($s),readonly:Zt($s)}),hW=St({err:ik,fee:je(),innerInstructions:wn(Yt(Zt(St({index:je(),instructions:Zt(St({accounts:Zt(je()),data:Ot(),programIdIndex:je()}))})))),preBalances:Zt(je()),postBalances:Zt(je()),logMessages:wn(Yt(Zt(Ot()))),preTokenBalances:wn(Yt(Zt(cW))),postTokenBalances:wn(Yt(Zt(cW))),loadedAddresses:wn(WRe),computeUnitsConsumed:wn(je())}),pie=St({err:ik,fee:je(),innerInstructions:wn(Yt(Zt(St({index:je(),instructions:Zt(HRe)})))),preBalances:Zt(je()),postBalances:Zt(je()),logMessages:wn(Yt(Zt(Ot()))),preTokenBalances:wn(Yt(Zt(cW))),postTokenBalances:wn(Yt(Zt(cW))),loadedAddresses:wn(WRe),computeUnitsConsumed:wn(je())}),WA=Iu([ps(0),ps(\"legacy\")]),sk=St({pubkey:Ot(),lamports:je(),postBalance:Yt(je()),rewardType:Yt(Ot()),commission:wn(Yt(je()))}),Wyn=Ui(Yt(St({blockhash:Ot(),previousBlockhash:Ot(),parentSlot:je(),transactions:Zt(St({transaction:hie,meta:Yt(hW),version:wn(WA)})),rewards:wn(Zt(sk)),blockTime:Yt(je()),blockHeight:Yt(je())}))),Vyn=Ui(Yt(St({blockhash:Ot(),previousBlockhash:Ot(),parentSlot:je(),rewards:wn(Zt(sk)),blockTime:Yt(je()),blockHeight:Yt(je())}))),$yn=Ui(Yt(St({blockhash:Ot(),previousBlockhash:Ot(),parentSlot:je(),transactions:Zt(St({transaction:URe,meta:Yt(hW),version:wn(WA)})),rewards:wn(Zt(sk)),blockTime:Yt(je()),blockHeight:Yt(je())}))),Kyn=Ui(Yt(St({blockhash:Ot(),previousBlockhash:Ot(),parentSlot:je(),transactions:Zt(St({transaction:qRe,meta:Yt(pie),version:wn(WA)})),rewards:wn(Zt(sk)),blockTime:Yt(je()),blockHeight:Yt(je())}))),Gyn=Ui(Yt(St({blockhash:Ot(),previousBlockhash:Ot(),parentSlot:je(),transactions:Zt(St({transaction:URe,meta:Yt(pie),version:wn(WA)})),rewards:wn(Zt(sk)),blockTime:Yt(je()),blockHeight:Yt(je())}))),Zyn=Ui(Yt(St({blockhash:Ot(),previousBlockhash:Ot(),parentSlot:je(),rewards:wn(Zt(sk)),blockTime:Yt(je()),blockHeight:Yt(je())}))),Yyn=Ui(Yt(St({blockhash:Ot(),previousBlockhash:Ot(),parentSlot:je(),transactions:Zt(St({transaction:hie,meta:Yt(hW)})),rewards:wn(Zt(sk)),blockTime:Yt(je())}))),Qyn=Ui(Yt(St({blockhash:Ot(),previousBlockhash:Ot(),parentSlot:je(),signatures:Zt(Ot()),blockTime:Yt(je())}))),Jyn=Ui(Yt(St({slot:je(),meta:Yt(hW),blockTime:wn(Yt(je())),transaction:hie,version:wn(WA)}))),Xyn=Ui(Yt(St({slot:je(),transaction:qRe,meta:Yt(pie),blockTime:wn(Yt(je())),version:wn(WA)}))),e1n=vg(St({blockhash:Ot(),lastValidBlockHeight:je()})),t1n=vg(bg()),Kpt=St({slot:je(),numTransactions:je(),numSlots:je(),samplePeriodSecs:je()}),n1n=Ui(Zt(Kpt)),r1n=vg(Yt(St({feeCalculator:St({lamportsPerSignature:je()})}))),o1n=Ui(Ot()),i1n=Ui(Ot()),Gpt=St({err:ik,logs:Zt(Ot()),signature:Ot()}),s1n=St({result:fW(Gpt),subscription:je()});var oie=class t{constructor(e){this._keypair=void 0,this._keypair=e??vRe()}static generate(){return new t(vRe())}static fromSecretKey(e,n){if(e.byteLength!==64)throw new Error(\"bad secret key size\");let r=e.slice(32,64);if(!n||!n.skipValidation){let o=e.slice(0,32),i=Zoe(o);for(let a=0;a<32;a++)if(r[a]!==i[a])throw new Error(\"provided secretKey is invalid\")}return new t({publicKey:r,secretKey:e})}static fromSeed(e){let n=Zoe(e),r=new Uint8Array(64);return r.set(e),r.set(n,32),new t({publicKey:n,secretKey:r})}get publicKey(){return new ar(this._keypair.publicKey)}get secretKey(){return new Uint8Array(this._keypair.secretKey)}},cP=Object.freeze({CreateLookupTable:{index:0,layout:we.struct([we.u32(\"instruction\"),HA(\"recentSlot\"),we.u8(\"bumpSeed\")])},FreezeLookupTable:{index:1,layout:we.struct([we.u32(\"instruction\")])},ExtendLookupTable:{index:2,layout:we.struct([we.u32(\"instruction\"),HA(),we.seq(Vr(),we.offset(we.u32(),-8),\"addresses\")])},DeactivateLookupTable:{index:3,layout:we.struct([we.u32(\"instruction\")])},CloseLookupTable:{index:4,layout:we.struct([we.u32(\"instruction\")])}});var iie=class{constructor(){}static createLookupTable(e){let[n,r]=ar.findProgramAddressSync([e.authority.toBuffer(),joe().encode(e.recentSlot)],this.programId),o=cP.CreateLookupTable,i=to(o,{recentSlot:BigInt(e.recentSlot),bumpSeed:r}),a=[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1},{pubkey:e.payer,isSigner:!0,isWritable:!0},{pubkey:Md.programId,isSigner:!1,isWritable:!1}];return[new Ai({programId:this.programId,keys:a,data:i}),n]}static freezeLookupTable(e){let n=cP.FreezeLookupTable,r=to(n),o=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1}];return new Ai({programId:this.programId,keys:o,data:r})}static extendLookupTable(e){let n=cP.ExtendLookupTable,r=to(n,{addresses:e.addresses.map(i=>i.toBytes())}),o=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1}];return e.payer&&o.push({pubkey:e.payer,isSigner:!0,isWritable:!0},{pubkey:Md.programId,isSigner:!1,isWritable:!1}),new Ai({programId:this.programId,keys:o,data:r})}static deactivateLookupTable(e){let n=cP.DeactivateLookupTable,r=to(n),o=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1}];return new Ai({programId:this.programId,keys:o,data:r})}static closeLookupTable(e){let n=cP.CloseLookupTable,r=to(n),o=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1},{pubkey:e.recipient,isSigner:!1,isWritable:!0}];return new Ai({programId:this.programId,keys:o,data:r})}};iie.programId=new ar(\"AddressLookupTab1e1111111111111111111111111\");var rW=Object.freeze({RequestUnits:{index:0,layout:we.struct([we.u8(\"instruction\"),we.u32(\"units\"),we.u32(\"additionalFee\")])},RequestHeapFrame:{index:1,layout:we.struct([we.u8(\"instruction\"),we.u32(\"bytes\")])},SetComputeUnitLimit:{index:2,layout:we.struct([we.u8(\"instruction\"),we.u32(\"units\")])},SetComputeUnitPrice:{index:3,layout:we.struct([we.u8(\"instruction\"),HA(\"microLamports\")])}}),sie=class{constructor(){}static requestUnits(e){let n=rW.RequestUnits,r=to(n,e);return new Ai({keys:[],programId:this.programId,data:r})}static requestHeapFrame(e){let n=rW.RequestHeapFrame,r=to(n,e);return new Ai({keys:[],programId:this.programId,data:r})}static setComputeUnitLimit(e){let n=rW.SetComputeUnitLimit,r=to(n,e);return new Ai({keys:[],programId:this.programId,data:r})}static setComputeUnitPrice(e){let n=rW.SetComputeUnitPrice,r=to(n,{microLamports:BigInt(e.microLamports)});return new Ai({keys:[],programId:this.programId,data:r})}};sie.programId=new ar(\"ComputeBudget111111111111111111111111111111\");var _Re=64,CRe=32,ARe=64,TRe=we.struct([we.u8(\"numSignatures\"),we.u8(\"padding\"),we.u16(\"signatureOffset\"),we.u16(\"signatureInstructionIndex\"),we.u16(\"publicKeyOffset\"),we.u16(\"publicKeyInstructionIndex\"),we.u16(\"messageDataOffset\"),we.u16(\"messageDataSize\"),we.u16(\"messageInstructionIndex\")]),aie=class t{constructor(){}static createInstructionWithPublicKey(e){let{publicKey:n,message:r,signature:o,instructionIndex:i}=e;Xi(n.length===CRe,`Public Key must be ${CRe} bytes but received ${n.length} bytes`),Xi(o.length===ARe,`Signature must be ${ARe} bytes but received ${o.length} bytes`);let a=TRe.span,c=a+n.length,u=c+o.length,d=1,h=Ln.Buffer.alloc(u+r.length),m=i??65535;return TRe.encode({numSignatures:d,padding:0,signatureOffset:c,signatureInstructionIndex:m,publicKeyOffset:a,publicKeyInstructionIndex:m,messageDataOffset:u,messageDataSize:r.length,messageInstructionIndex:m},h),h.fill(n,a),h.fill(o,c),h.fill(r,u),new Ai({keys:[],programId:t.programId,data:h})}static createInstructionWithPrivateKey(e){let{privateKey:n,message:r,instructionIndex:o}=e;Xi(n.length===_Re,`Private key must be ${_Re} bytes but received ${n.length} bytes`);try{let i=oie.fromSecretKey(n),a=i.publicKey.toBytes(),c=lie(r,i.secretKey);return this.createInstructionWithPublicKey({publicKey:a,message:r,signature:c,instructionIndex:o})}catch(i){throw new Error(`Error creating instruction; ${i}`)}}};aie.programId=new ar(\"Ed25519SigVerify111111111111111111111111111\");var Zpt=(t,e)=>{let n=Y0.sign(t,e);return[n.toCompactRawBytes(),n.recovery]};Y0.utils.isValidPrivateKey;var Ypt=Y0.getPublicKey,RRe=32,$oe=20,IRe=64,Qpt=11,Koe=we.struct([we.u8(\"numSignatures\"),we.u16(\"signatureOffset\"),we.u8(\"signatureInstructionIndex\"),we.u16(\"ethAddressOffset\"),we.u8(\"ethAddressInstructionIndex\"),we.u16(\"messageDataOffset\"),we.u16(\"messageDataSize\"),we.u8(\"messageInstructionIndex\"),we.blob(20,\"ethAddress\"),we.blob(64,\"signature\"),we.u8(\"recoveryId\")]),cie=class t{constructor(){}static publicKeyToEthAddress(e){Xi(e.length===IRe,`Public key must be ${IRe} bytes but received ${e.length} bytes`);try{return Ln.Buffer.from(R5(xo(e))).slice(-$oe)}catch(n){throw new Error(`Error constructing Ethereum address: ${n}`)}}static createInstructionWithPublicKey(e){let{publicKey:n,message:r,signature:o,recoveryId:i,instructionIndex:a}=e;return t.createInstructionWithEthAddress({ethAddress:t.publicKeyToEthAddress(n),message:r,signature:o,recoveryId:i,instructionIndex:a})}static createInstructionWithEthAddress(e){let{ethAddress:n,message:r,signature:o,recoveryId:i,instructionIndex:a=0}=e,c;typeof n==\"string\"?n.startsWith(\"0x\")?c=Ln.Buffer.from(n.substr(2),\"hex\"):c=Ln.Buffer.from(n,\"hex\"):c=n,Xi(c.length===$oe,`Address must be ${$oe} bytes but received ${c.length} bytes`);let u=1+Qpt,d=u,h=u+c.length,m=h+o.length+1,g=1,b=Ln.Buffer.alloc(Koe.span+r.length);return Koe.encode({numSignatures:g,signatureOffset:h,signatureInstructionIndex:a,ethAddressOffset:d,ethAddressInstructionIndex:a,messageDataOffset:m,messageDataSize:r.length,messageInstructionIndex:a,signature:xo(o),ethAddress:xo(c),recoveryId:i},b),b.fill(xo(r),Koe.span),new Ai({keys:[],programId:t.programId,data:b})}static createInstructionWithPrivateKey(e){let{privateKey:n,message:r,instructionIndex:o}=e;Xi(n.length===RRe,`Private key must be ${RRe} bytes but received ${n.length} bytes`);try{let i=xo(n),a=Ypt(i,!1).slice(1),c=Ln.Buffer.from(R5(xo(r))),[u,d]=Zpt(c,i);return this.createInstructionWithPublicKey({publicKey:a,message:r,signature:u,recoveryId:d,instructionIndex:o})}catch(i){throw new Error(`Error creating instruction; ${i}`)}}};cie.programId=new ar(\"KeccakSecp256k11111111111111111111111111111\");var VRe,Jpt=new ar(\"StakeConfig11111111111111111111111111111111\");var fP=class{constructor(e,n,r){this.unixTimestamp=void 0,this.epoch=void 0,this.custodian=void 0,this.unixTimestamp=e,this.epoch=n,this.custodian=r}};VRe=fP;fP.default=new VRe(0,0,ar.default);var k3=Object.freeze({Initialize:{index:0,layout:we.struct([we.u32(\"instruction\"),hpt(),ppt()])},Authorize:{index:1,layout:we.struct([we.u32(\"instruction\"),Vr(\"newAuthorized\"),we.u32(\"stakeAuthorizationType\")])},Delegate:{index:2,layout:we.struct([we.u32(\"instruction\")])},Split:{index:3,layout:we.struct([we.u32(\"instruction\"),we.ns64(\"lamports\")])},Withdraw:{index:4,layout:we.struct([we.u32(\"instruction\"),we.ns64(\"lamports\")])},Deactivate:{index:5,layout:we.struct([we.u32(\"instruction\")])},Merge:{index:7,layout:we.struct([we.u32(\"instruction\")])},AuthorizeWithSeed:{index:8,layout:we.struct([we.u32(\"instruction\"),Vr(\"newAuthorized\"),we.u32(\"stakeAuthorizationType\"),jA(\"authoritySeed\"),Vr(\"authorityOwner\")])}}),a1n=Object.freeze({Staker:{index:0},Withdrawer:{index:1}}),lW=class{constructor(){}static initialize(e){let{stakePubkey:n,authorized:r,lockup:o}=e,i=o||fP.default,a=k3.Initialize,c=to(a,{authorized:{staker:xo(r.staker.toBuffer()),withdrawer:xo(r.withdrawer.toBuffer())},lockup:{unixTimestamp:i.unixTimestamp,epoch:i.epoch,custodian:xo(i.custodian.toBuffer())}}),u={keys:[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:dP,isSigner:!1,isWritable:!1}],programId:this.programId,data:c};return new Ai(u)}static createAccountWithSeed(e){let n=new Fi;n.add(Md.createAccountWithSeed({fromPubkey:e.fromPubkey,newAccountPubkey:e.stakePubkey,basePubkey:e.basePubkey,seed:e.seed,lamports:e.lamports,space:this.space,programId:this.programId}));let{stakePubkey:r,authorized:o,lockup:i}=e;return n.add(this.initialize({stakePubkey:r,authorized:o,lockup:i}))}static createAccount(e){let n=new Fi;n.add(Md.createAccount({fromPubkey:e.fromPubkey,newAccountPubkey:e.stakePubkey,lamports:e.lamports,space:this.space,programId:this.programId}));let{stakePubkey:r,authorized:o,lockup:i}=e;return n.add(this.initialize({stakePubkey:r,authorized:o,lockup:i}))}static delegate(e){let{stakePubkey:n,authorizedPubkey:r,votePubkey:o}=e,i=k3.Delegate,a=to(i);return new Fi().add({keys:[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!1},{pubkey:i2,isSigner:!1,isWritable:!1},{pubkey:Voe,isSigner:!1,isWritable:!1},{pubkey:Jpt,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:a})}static authorize(e){let{stakePubkey:n,authorizedPubkey:r,newAuthorizedPubkey:o,stakeAuthorizationType:i,custodianPubkey:a}=e,c=k3.Authorize,u=to(c,{newAuthorized:xo(o.toBuffer()),stakeAuthorizationType:i.index}),d=[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:i2,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}];return a&&d.push({pubkey:a,isSigner:!0,isWritable:!1}),new Fi().add({keys:d,programId:this.programId,data:u})}static authorizeWithSeed(e){let{stakePubkey:n,authorityBase:r,authoritySeed:o,authorityOwner:i,newAuthorizedPubkey:a,stakeAuthorizationType:c,custodianPubkey:u}=e,d=k3.AuthorizeWithSeed,h=to(d,{newAuthorized:xo(a.toBuffer()),stakeAuthorizationType:c.index,authoritySeed:o,authorityOwner:xo(i.toBuffer())}),m=[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1},{pubkey:i2,isSigner:!1,isWritable:!1}];return u&&m.push({pubkey:u,isSigner:!0,isWritable:!1}),new Fi().add({keys:m,programId:this.programId,data:h})}static splitInstruction(e){let{stakePubkey:n,authorizedPubkey:r,splitStakePubkey:o,lamports:i}=e,a=k3.Split,c=to(a,{lamports:i});return new Ai({keys:[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:c})}static split(e,n){let r=new Fi;return r.add(Md.createAccount({fromPubkey:e.authorizedPubkey,newAccountPubkey:e.splitStakePubkey,lamports:n,space:this.space,programId:this.programId})),r.add(this.splitInstruction(e))}static splitWithSeed(e,n){let{stakePubkey:r,authorizedPubkey:o,splitStakePubkey:i,basePubkey:a,seed:c,lamports:u}=e,d=new Fi;return d.add(Md.allocate({accountPubkey:i,basePubkey:a,seed:c,space:this.space,programId:this.programId})),n&&n>0&&d.add(Md.transfer({fromPubkey:e.authorizedPubkey,toPubkey:i,lamports:n})),d.add(this.splitInstruction({stakePubkey:r,authorizedPubkey:o,splitStakePubkey:i,lamports:u}))}static merge(e){let{stakePubkey:n,sourceStakePubKey:r,authorizedPubkey:o}=e,i=k3.Merge,a=to(i);return new Fi().add({keys:[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i2,isSigner:!1,isWritable:!1},{pubkey:Voe,isSigner:!1,isWritable:!1},{pubkey:o,isSigner:!0,isWritable:!1}],programId:this.programId,data:a})}static withdraw(e){let{stakePubkey:n,authorizedPubkey:r,toPubkey:o,lamports:i,custodianPubkey:a}=e,c=k3.Withdraw,u=to(c,{lamports:i}),d=[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:i2,isSigner:!1,isWritable:!1},{pubkey:Voe,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}];return a&&d.push({pubkey:a,isSigner:!0,isWritable:!1}),new Fi().add({keys:d,programId:this.programId,data:u})}static deactivate(e){let{stakePubkey:n,authorizedPubkey:r}=e,o=k3.Deactivate,i=to(o);return new Fi().add({keys:[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:i2,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:i})}};lW.programId=new ar(\"Stake11111111111111111111111111111111111111\");lW.space=200;var lP=Object.freeze({InitializeAccount:{index:0,layout:we.struct([we.u32(\"instruction\"),mpt()])},Authorize:{index:1,layout:we.struct([we.u32(\"instruction\"),Vr(\"newAuthorized\"),we.u32(\"voteAuthorizationType\")])},Withdraw:{index:3,layout:we.struct([we.u32(\"instruction\"),we.ns64(\"lamports\")])},UpdateValidatorIdentity:{index:4,layout:we.struct([we.u32(\"instruction\")])},AuthorizeWithSeed:{index:10,layout:we.struct([we.u32(\"instruction\"),gpt()])}}),c1n=Object.freeze({Voter:{index:0},Withdrawer:{index:1}}),uW=class t{constructor(){}static initializeAccount(e){let{votePubkey:n,nodePubkey:r,voteInit:o}=e,i=lP.InitializeAccount,a=to(i,{voteInit:{nodePubkey:xo(o.nodePubkey.toBuffer()),authorizedVoter:xo(o.authorizedVoter.toBuffer()),authorizedWithdrawer:xo(o.authorizedWithdrawer.toBuffer()),commission:o.commission}}),c={keys:[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:dP,isSigner:!1,isWritable:!1},{pubkey:i2,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:a};return new Ai(c)}static createAccount(e){let n=new Fi;return n.add(Md.createAccount({fromPubkey:e.fromPubkey,newAccountPubkey:e.votePubkey,lamports:e.lamports,space:this.space,programId:this.programId})),n.add(this.initializeAccount({votePubkey:e.votePubkey,nodePubkey:e.voteInit.nodePubkey,voteInit:e.voteInit}))}static authorize(e){let{votePubkey:n,authorizedPubkey:r,newAuthorizedPubkey:o,voteAuthorizationType:i}=e,a=lP.Authorize,c=to(a,{newAuthorized:xo(o.toBuffer()),voteAuthorizationType:i.index}),u=[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:i2,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}];return new Fi().add({keys:u,programId:this.programId,data:c})}static authorizeWithSeed(e){let{currentAuthorityDerivedKeyBasePubkey:n,currentAuthorityDerivedKeyOwnerPubkey:r,currentAuthorityDerivedKeySeed:o,newAuthorizedPubkey:i,voteAuthorizationType:a,votePubkey:c}=e,u=lP.AuthorizeWithSeed,d=to(u,{voteAuthorizeWithSeedArgs:{currentAuthorityDerivedKeyOwnerPubkey:xo(r.toBuffer()),currentAuthorityDerivedKeySeed:o,newAuthorized:xo(i.toBuffer()),voteAuthorizationType:a.index}}),h=[{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:i2,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!0,isWritable:!1}];return new Fi().add({keys:h,programId:this.programId,data:d})}static withdraw(e){let{votePubkey:n,authorizedWithdrawerPubkey:r,lamports:o,toPubkey:i}=e,a=lP.Withdraw,c=to(a,{lamports:o}),u=[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}];return new Fi().add({keys:u,programId:this.programId,data:c})}static safeWithdraw(e,n,r){if(e.lamports>n-r)throw new Error(\"Withdraw will leave vote account with insufficient funds.\");return t.withdraw(e)}static updateValidatorIdentity(e){let{votePubkey:n,authorizedWithdrawerPubkey:r,nodePubkey:o}=e,i=lP.UpdateValidatorIdentity,a=to(i),c=[{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!0,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}];return new Fi().add({keys:c,programId:this.programId,data:a})}};uW.programId=new ar(\"Vote111111111111111111111111111111111111111\");uW.space=3762;var l1n=new ar(\"Va1idator1nfo111111111111111111111111111111\"),u1n=St({name:Ot(),website:wn(Ot()),details:wn(Ot()),iconUrl:wn(Ot()),keybaseUsername:wn(Ot())});var d1n=new ar(\"Vote111111111111111111111111111111111111111\"),f1n=we.struct([Vr(\"nodePubkey\"),Vr(\"authorizedWithdrawer\"),we.u8(\"commission\"),we.nu64(),we.seq(we.struct([we.nu64(\"slot\"),we.u32(\"confirmationCount\")]),we.offset(we.u32(),-8),\"votes\"),we.u8(\"rootSlotValid\"),we.nu64(\"rootSlot\"),we.nu64(),we.seq(we.struct([we.nu64(\"epoch\"),Vr(\"authorizedVoter\")]),we.offset(we.u32(),-8),\"authorizedVoters\"),we.struct([we.seq(we.struct([Vr(\"authorizedPubkey\"),we.nu64(\"epochOfLastAuthorizedSwitch\"),we.nu64(\"targetEpoch\")]),32,\"buf\"),we.nu64(\"idx\"),we.u8(\"isEmpty\")],\"priorVoters\"),we.nu64(),we.seq(we.struct([we.nu64(\"epoch\"),we.nu64(\"credits\"),we.nu64(\"prevCredits\")]),we.offset(we.u32(),-8),\"epochCredits\"),we.struct([we.nu64(\"slot\"),we.nu64(\"timestamp\")],\"lastTimestamp\")]);var $Re=t=>({request:t,signMessage:e=>t({method:\"signMessage\",params:{message:e}}),signTransaction:e=>t({method:\"signTransaction\",params:{transaction:e}}),signAndSendTransaction:e=>t({method:\"signAndSendTransaction\",params:e})});p();function KRe(t){return globalThis.Buffer.from(t.serialize({verifySignatures:!1})).toString(\"base64\")}function Xpt(t){let e=globalThis.Buffer.from(t,\"base64\");return dW.deserializeMessageVersion(e)===\"legacy\"?aW.deserialize(e):Fi.from(e)}function GRe(t){return async n=>{if(n.method===\"connect\")return await t(n);if(n.method===\"signMessage\")return await t(n);if(n.method===\"signAndSendTransaction\"){let{transaction:r,options:o}=n.params,i={transaction:KRe(r)};return await t({method:\"signAndSendTransaction\",params:i})}if(n.method===\"signTransaction\"){let{transaction:r}=n.params,o={transaction:KRe(r)},{signedTransaction:i}=await t({method:\"signTransaction\",params:o});return{signedTransaction:Xpt(i)}}}}p();p();p();var pW=class t extends Error{constructor(e,n={}){let r=(()=>{if(n.cause instanceof t){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&\"details\"in n.cause&&typeof n.cause.details==\"string\"?n.cause.details:n.cause?.message?n.cause.message:n.details})(),o=[e||\"An error occurred.\",...n.metaMessages?[\"\",...n.metaMessages]:[],...r?[\"\",r?`Details: ${r}`:void 0]:[]].filter(i=>typeof i==\"string\").join(`\\n`);super(o,n.cause?{cause:n.cause}:void 0),this.name=\"BaseError\",this.cause=n.cause,this.details=r,this.shortMessage=e}},VA=class extends pW{constructor({status:e}){super(`Request failed with status ${e}`),this.name=\"RequestFailedError\"}},mW=class extends pW{constructor(e){super(e),this.name=\"InvalidToken\"}};async function ZRe({origin:t}){let e=await fetch(`${t}/nonce`,{method:\"POST\"});if(!e.ok)throw new VA({status:e.status});return await e.json()}p();async function YRe({origin:t},e){let n=await fetch(`${t}/verify-siwf`,{method:\"POST\",headers:new Headers({\"Content-Type\":\"application/json\"}),body:JSON.stringify(e)});if(!n.ok)throw new VA({status:n.status});let r=await n.json();if(r.valid===!1)throw new mW(r.message??\"unknown\");return{token:r.token}}p();function QRe(t={}){return{origin:t.origin??\"https://auth.farcaster.xyz\"}}function JRe(t={}){let e=QRe(t);return{generateNonce:()=>ZRe(e),verifySiwf:n=>YRe(e,n)}}p();p();p();p();var XRe=\"0.1.1\";function e9e(){return XRe}var gW=class t extends Error{constructor(e,n={}){let r=(()=>{if(n.cause instanceof t){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause?.message?n.cause.message:n.details})(),o=n.cause instanceof t&&n.cause.docsPath||n.docsPath,a=`https://oxlib.sh${o??\"\"}`,c=[e||\"An error occurred.\",...n.metaMessages?[\"\",...n.metaMessages]:[],...r||o?[\"\",r?`Details: ${r}`:void 0,o?`See: ${a}`:void 0]:[]].filter(u=>typeof u==\"string\").join(`\\n`);super(c,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,\"details\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"docs\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"docsPath\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"shortMessage\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"cause\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"BaseError\"}),Object.defineProperty(this,\"version\",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${e9e()}`}),this.cause=n.cause,this.details=r,this.docs=a,this.docsPath=o,this.shortMessage=e}walk(e){return t9e(this,e)}};function t9e(t,e){return e?.(t)?t:t&&typeof t==\"object\"&&\"cause\"in t&&t.cause?t9e(t.cause,e):e?null:t}var tmt=/^(?:(?<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)?/,nmt=/(?: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>.+))?/;function n9e(t){let{scheme:e,statement:n,...r}=t.match(tmt)?.groups??{},{chainId:o,expirationTime:i,issuedAt:a,notBefore:c,requestId:u,...d}=t.match(nmt)?.groups??{},h=t.split(\"Resources:\")[1]?.split(`\\n- `).slice(1);return{...r,...d,...o?{chainId:Number(o)}:{},...i?{expirationTime:new Date(i)}:{},...a?{issuedAt:new Date(a)}:{},...c?{notBefore:new Date(c)}:{},...u?{requestId:u}:{},...h?{resources:h}:{},...e?{scheme:e}:{},...n?{statement:n}:{}}}p();var r9e=({frameHost:t,emitter:e})=>{let n,r=null;return{visible:!1,get onback(){return r},set onback(o){r&&e.removeListener(\"backNavigationTriggered\",r),r=o,o&&e.addListener(\"backNavigationTriggered\",o)},async show(){await t.updateBackState({visible:!0}),this.visible=!0},async hide(){await t.updateBackState({visible:!1}),this.visible=!1},async enableWebNavigation(){n=omt({back:this,emitter:e})},async disableWebNavigation(){n?.(),n=void 0}}};function omt({emitter:t,back:e}){let n=imt();if(n)return smt({emitter:t,back:e,navigation:n});if(typeof window<\"u\")return amt({emitter:t,back:e,window})}function imt(){if(typeof window<\"u\"&&window.navigation!==void 0)return window.navigation}function smt({emitter:t,back:e,navigation:n}){function r(){n.canGoBack?e.show():e.hide()}function o(){e.visible&&n.canGoBack&&n.back()}return n.addEventListener(\"navigatesuccess\",r),t.addListener(\"backNavigationTriggered\",o),()=>{n.removeEventListener(\"navigatesuccess\",r),t.removeListener(\"backNavigationTriggered\",o)}}function amt({emitter:t,back:e,window:n}){e.show();function r(){e.visible&&n.history.back()}return t.addListener(\"backNavigationTriggered\",r),()=>{t.removeListener(\"backNavigationTriggered\",r)}}p();p();DC();p();function yW(t,e={}){let{raw:n=!1}=e,r=t;if(n)return t;if(r.error){let{code:o}=r.error,i=o===ak.code?ak:o===hP.code?hP:o===EP.code?EP:o===wP.code?wP:o===bP.code?bP:o===xP.code?xP:o===yP.code?yP:o===SP.code?SP:o===pP.code?pP:o===mP.code?mP:o===gP.code?gP:o===vP.code?vP:Il;throw new i(r.error)}return r.result}var Il=class extends Error{constructor(e){let{code:n,message:r,data:o}=e;super(r),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.BaseError\"}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"data\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=n,this.data=o}},hP=class t extends Il{constructor(e={}){super({message:\"Missing or invalid parameters.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.InvalidInputError\"})}};Object.defineProperty(hP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var pP=class t extends Il{constructor(e={}){super({message:\"Requested resource not found.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.ResourceNotFoundError\"})}};Object.defineProperty(pP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32001});var mP=class t extends Il{constructor(e={}){super({message:\"Requested resource not available.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.ResourceUnavailableError\"})}};Object.defineProperty(mP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32002});var gP=class t extends Il{constructor(e={}){super({message:\"Transaction creation failed.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.TransactionRejectedError\"})}};Object.defineProperty(gP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32003});var yP=class t extends Il{constructor(e={}){super({message:\"Method is not implemented.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.MethodNotSupportedError\"})}};Object.defineProperty(yP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32004});var bP=class t extends Il{constructor(e={}){super({message:\"Rate limit exceeded.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.LimitExceededError\"})}};Object.defineProperty(bP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32005});var vP=class t extends Il{constructor(e={}){super({message:\"JSON-RPC version not supported.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.VersionNotSupportedError\"})}};Object.defineProperty(vP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32006});var wP=class t extends Il{constructor(e={}){super({message:\"Input is not a valid JSON-RPC request.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.InvalidRequestError\"})}};Object.defineProperty(wP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32600});var xP=class t extends Il{constructor(e={}){super({message:\"Method does not exist.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.MethodNotFoundError\"})}};Object.defineProperty(xP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32601});var EP=class t extends Il{constructor(e={}){super({message:\"Invalid method parameters.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.InvalidParamsError\"})}};Object.defineProperty(EP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32602});var ak=class t extends Il{constructor(e={}){super({message:\"Internal JSON-RPC error.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.InternalErrorError\"})}};Object.defineProperty(ak,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32603});var SP=class t extends Il{constructor(e={}){super({message:\"Failed to parse JSON-RPC response.\",...e,code:t.code}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"RpcResponse.ParseError\"})}};Object.defineProperty(SP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:-32700});var M1=class extends Error{constructor(e,n){super(n),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"ProviderRpcError\"}),Object.defineProperty(this,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"details\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=n}},kP=class extends M1{constructor({message:e=\"The user rejected the request.\"}={}){super(4001,e),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Provider.UserRejectedRequestError\"})}};Object.defineProperty(kP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4001});var _P=class extends M1{constructor({message:e=\"The requested method and/or account has not been authorized by the user.\"}={}){super(4100,e),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Provider.UnauthorizedError\"})}};Object.defineProperty(_P,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4100});var CP=class extends M1{constructor({message:e=\"The provider does not support the requested method.\"}={}){super(4200,e),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Provider.UnsupportedMethodError\"})}};Object.defineProperty(CP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4200});var AP=class extends M1{constructor({message:e=\"The provider is disconnected from all chains.\"}={}){super(4900,e),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Provider.DisconnectedError\"})}};Object.defineProperty(AP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4900});var TP=class extends M1{constructor({message:e=\"The provider is not connected to the requested chain.\"}={}){super(4901,e),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Provider.ChainDisconnectedError\"})}};Object.defineProperty(TP,\"code\",{enumerable:!0,configurable:!0,writable:!0,value:4901});function i9e(){let t=new kv.default;return{get eventNames(){return t.eventNames.bind(t)},get listenerCount(){return t.listenerCount.bind(t)},get listeners(){return t.listeners.bind(t)},addListener:t.addListener.bind(t),emit:t.emit.bind(t),off:t.off.bind(t),on:t.on.bind(t),once:t.once.bind(t),removeAllListeners:t.removeAllListeners.bind(t),removeListener:t.removeListener.bind(t)}}function s9e(t,e={}){let{includeEvents:n=!0}=e;if(!t)throw new mie;return{...n?{on:t.on?.bind(t),removeListener:t.removeListener?.bind(t)}:{},async request(r){let o=await t.request(r);return o&&typeof o==\"object\"&&\"jsonrpc\"in o?yW(o):o}}}var mie=class extends gW{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,\"name\",{enumerable:!0,configurable:!0,writable:!0,value:\"Provider.IsUndefinedError\"})}};p();function a9e(t={}){let e=t.id??0;return{prepare(n){return lmt({id:e++,...n})},get id(){return e}}}function lmt(t){return{...t,jsonrpc:\"2.0\"}}p();p();var l9e=Symbol(\"Comlink.proxy\"),dmt=Symbol(\"Comlink.endpoint\"),fmt=Symbol(\"Comlink.releaseProxy\"),gie=Symbol(\"Comlink.finalizer\"),vW=Symbol(\"Comlink.thrown\"),u9e=t=>typeof t==\"object\"&&t!==null||typeof t==\"function\",hmt={canHandle:t=>u9e(t)&&t[l9e],serialize(t){let{port1:e,port2:n}=new MessageChannel;return f9e(t,e),[n,[n]]},deserialize(t){return t.start(),bie(t)}},pmt={canHandle:t=>u9e(t)&&vW in t,serialize({value:t}){let e;return t instanceof Error?e={isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:e={isError:!1,value:t},[e,[]]},deserialize(t){throw t.isError?Object.assign(new Error(t.value.message),t.value):t.value}},d9e=new Map([[\"proxy\",hmt],[\"throw\",pmt]]);function mmt(t,e){for(let n of t)if(e===n||n===\"*\"||n instanceof RegExp&&n.test(e))return!0;return!1}function f9e(t,e=globalThis,n=[\"*\"]){e.addEventListener(\"message\",function r(o){if(!o||!o.data)return;if(!mmt(n,o.origin)){console.warn(`Invalid origin \\'${o.origin}\\' for comlink proxy`);return}let{id:i,type:a,path:c}=Object.assign({path:[]},o.data),u=(o.data.argumentList||[]).map(ck),d;try{let h=c.slice(0,-1).reduce((g,b)=>g[b],t),m=c.reduce((g,b)=>g[b],t);switch(a){case\"GET\":d=m;break;case\"SET\":h[c.slice(-1)[0]]=ck(o.data.value),d=!0;break;case\"APPLY\":d=m.apply(h,u);break;case\"CONSTRUCT\":{let g=new m(...u);d=xmt(g)}break;case\"ENDPOINT\":{let{port1:g,port2:b}=new MessageChannel;f9e(t,b),d=wmt(g,[g])}break;case\"RELEASE\":d=void 0;break;default:return}}catch(h){d={value:h,[vW]:0}}Promise.resolve(d).catch(h=>({value:h,[vW]:0})).then(h=>{let[m,g]=EW(h);e.postMessage(Object.assign(Object.assign({},m),{id:i}),g),a===\"RELEASE\"&&(e.removeEventListener(\"message\",r),h9e(e),gie in t&&typeof t[gie]==\"function\"&&t[gie]())}).catch(h=>{let[m,g]=EW({value:new TypeError(\"Unserializable return value\"),[vW]:0});e.postMessage(Object.assign(Object.assign({},m),{id:i}),g)})}),e.start&&e.start()}function gmt(t){return t.constructor.name===\"MessagePort\"}function h9e(t){gmt(t)&&t.close()}function bie(t,e){let n=new Map;return t.addEventListener(\"message\",function(o){let{data:i}=o;if(!i||!i.id)return;let a=n.get(i.id);if(a)try{a(i)}finally{n.delete(i.id)}}),yie(t,n,[],e)}function bW(t){if(t)throw new Error(\"Proxy has been released and is not useable\")}function p9e(t){return $A(t,new Map,{type:\"RELEASE\"}).then(()=>{h9e(t)})}var wW=new WeakMap,xW=\"FinalizationRegistry\"in globalThis&&new FinalizationRegistry(t=>{let e=(wW.get(t)||0)-1;wW.set(t,e),e===0&&p9e(t)});function ymt(t,e){let n=(wW.get(e)||0)+1;wW.set(e,n),xW&&xW.register(t,e,t)}function bmt(t){xW&&xW.unregister(t)}function yie(t,e,n=[],r=function(){}){let o=!1,i=new Proxy(r,{get(a,c){if(bW(o),c===fmt)return()=>{bmt(i),p9e(t),e.clear(),o=!0};if(c===\"then\"){if(n.length===0)return{then:()=>i};let u=$A(t,e,{type:\"GET\",path:n.map(d=>d.toString())}).then(ck);return u.then.bind(u)}return yie(t,e,[...n,c])},set(a,c,u){bW(o);let[d,h]=EW(u);return $A(t,e,{type:\"SET\",path:[...n,c].map(m=>m.toString()),value:d},h).then(ck)},apply(a,c,u){bW(o);let d=n[n.length-1];if(d===dmt)return $A(t,e,{type:\"ENDPOINT\"}).then(ck);if(d===\"bind\")return yie(t,e,n.slice(0,-1));let[h,m]=c9e(u);return $A(t,e,{type:\"APPLY\",path:n.map(g=>g.toString()),argumentList:h},m).then(ck)},construct(a,c){bW(o);let[u,d]=c9e(c);return $A(t,e,{type:\"CONSTRUCT\",path:n.map(h=>h.toString()),argumentList:u},d).then(ck)}});return ymt(i,t),i}function vmt(t){return Array.prototype.concat.apply([],t)}function c9e(t){let e=t.map(EW);return[e.map(n=>n[0]),vmt(e.map(n=>n[1]))]}var m9e=new WeakMap;function wmt(t,e){return m9e.set(t,e),t}function xmt(t){return Object.assign(t,{[l9e]:!0})}function g9e(t,e=globalThis,n=\"*\"){return{postMessage:(r,o)=>t.postMessage(r,n,o),addEventListener:e.addEventListener.bind(e),removeEventListener:e.removeEventListener.bind(e)}}function EW(t){for(let[e,n]of d9e)if(n.canHandle(t)){let[r,o]=n.serialize(t);return[{type:\"HANDLER\",name:e,value:r},o]}return[{type:\"RAW\",value:t},m9e.get(t)||[]]}function ck(t){switch(t.type){case\"HANDLER\":return d9e.get(t.name).deserialize(t.value);case\"RAW\":return t.value}}function $A(t,e,n,r){return new Promise(o=>{let i=Emt();e.set(i,o),t.start&&t.start(),t.postMessage(Object.assign({id:i},n),r)})}function Emt(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join(\"-\")}p();var Smt={postMessage(){},addEventListener:()=>{},removeEventListener:()=>{}},kmt={postMessage:t=>{console.debug(\"[webview:req]\",t),window.ReactNativeWebView.postMessage(JSON.stringify(t))},addEventListener:(t,e,...n)=>{document.addEventListener(\"FarcasterFrameCallback\",e,...n)},removeEventListener:(t,e)=>{document.removeEventListener(\"FarcasterFrameCallback\",e)}},y9e=typeof window>\"u\"?Smt:window?.ReactNativeWebView?kmt:g9e(window?.parent??window);var cr=bie(y9e);var vie=i9e(),_mt=a9e();function Cmt({code:t,details:e}){switch(t){case 4001:return new kP;case 4100:return new _P;case 4200:return new CP;case 4900:return new AP;case 4901:return new TP;default:return new M1(t,e??\"Unknown provider RPC error\")}}var KA=s9e({...vie,async request(t){let e=_mt.prepare(t);try{let n=await cr.ethProviderRequestV2(e).then(r=>yW(r,{request:e,raw:!0}));if(n.error)throw Cmt(n.error);return n.result}catch(n){if(n instanceof Error&&n.message.match(/cannot read property \\'apply\\'/i))return await cr.ethProviderRequest(e);throw n instanceof M1||n instanceof Il?n:new ak({message:n instanceof Error?n.message:void 0})}}});async function b9e(){try{let t=await cr.getCapabilities();return!t.includes(\"wallet.getEthereumProvider\")&&!t.includes(\"wallet.getEvmProvider\")?void 0:KA}catch{return KA}}function v9e(t){let e=new CustomEvent(\"eip6963:announceProvider\",{detail:Object.freeze(t)});window.dispatchEvent(e);let n=()=>window.dispatchEvent(e);return window.addEventListener(\"eip6963:requestProvider\",n),()=>window.removeEventListener(\"eip6963:requestProvider\",n)}typeof document<\"u\"&&(document.addEventListener(\"eip6963:requestProvider\",()=>{cr.eip6963RequestProvider()}),document.addEventListener(\"FarcasterFrameEthProviderEvent\",t=>{if(t instanceof MessageEvent){let e=t.data;vie.emit(e.event,...e.params)}}),document.addEventListener(\"FarcasterFrameEvent\",t=>{if(t instanceof MessageEvent){let e=t.data;e.event===\"eip6963:announceProvider\"&&v9e({info:e.info,provider:KA})}}));typeof window<\"u\"&&(window.addEventListener(\"eip6963:requestProvider\",()=>{cr.eip6963RequestProvider()}),window.addEventListener(\"message\",t=>{if(t instanceof MessageEvent&&t.data.type===\"frameEthProviderEvent\"){let e=t.data;vie.emit(e.event,...e.params)}}),window.addEventListener(\"message\",t=>{if(t instanceof MessageEvent&&t.data.type===\"frameEvent\"){let e=t.data.event;e.event===\"eip6963:announceProvider\"&&v9e({info:e.info,provider:KA})}}));p();DC();function Amt(){let t=new Xye;return{get eventNames(){return t.eventNames.bind(t)},get listenerCount(){return t.listenerCount.bind(t)},get listeners(){return t.listeners.bind(t)},addListener:t.addListener.bind(t),emit:t.emit.bind(t),off:t.off.bind(t),on:t.on.bind(t),once:t.once.bind(t),removeAllListeners:t.removeAllListeners.bind(t),removeListener:t.removeListener.bind(t)}}var Ol=Amt();p();var{solanaProviderRequest:w9e}=cr,x9e;w9e&&(x9e=$Re(GRe(w9e)));async function wie(){let t;try{t=await cr.getCapabilities()}catch{}if(t?.includes(\"wallet.getSolanaProvider\"))return x9e}var E9e=null;async function Tmt(t=50){if(E9e===!0)return!0;if(typeof window>\"u\"||!window.ReactNativeWebView&&window===window.parent)return!1;let e=await Promise.race([cr.context.then(n=>!!n),new Promise(n=>{setTimeout(()=>n(!1),t)})]).catch(()=>!1);return e&&(E9e=!0),e}var S9e=async(t={})=>{let e=JRe({origin:t.quickAuthServerOrigin}),{nonce:n}=await e.generateNonce(),r=await cr.signIn({nonce:n,acceptAuthAddress:!0});if(r.result){let o=n9e(r.result.message);if(!o.domain)throw new Error(\"Missing domain on SIWE message\");return await e.verifySiwf({domain:o.domain,message:r.result.message,signature:r.result.signature})}throw r.error.type===\"rejected_by_user\"?new YO.RejectedByUser:new Error(\"Unreachable\")},k9e=async()=>{let t=await cr.addFrame();if(t.result)return t.result;throw t.error.type===\"invalid_domain_manifest\"?new ZO.InvalidDomainManifest:t.error.type===\"rejected_by_user\"?new ZO.RejectedByUser:new Error(\"Unreachable\")},_9e={...Ol,getCapabilities:cr.getCapabilities,getChains:cr.getChains,isInMiniApp:Tmt,context:cr.context,back:r9e({frameHost:cr,emitter:Ol}),actions:{setPrimaryButton:cr.setPrimaryButton.bind(cr),ready:async(t={})=>await cr.ready(t),close:cr.close.bind(cr),viewCast:cr.viewCast.bind(cr),viewProfile:cr.viewProfile.bind(cr),signIn:async t=>{let e=await cr.signIn(t);if(e.result)return e.result;throw e.error.type===\"rejected_by_user\"?new YO.RejectedByUser:new Error(\"Unreachable\")},openUrl:t=>{let e=typeof t==\"string\"?t:t.url;return cr.openUrl(e.trim())},addFrame:k9e,addMiniApp:k9e,composeCast(t={}){return cr.composeCast(t)},viewToken:cr.viewToken.bind(cr),sendToken:cr.sendToken.bind(cr),swapToken:cr.swapToken.bind(cr),quickAuth:S9e},experimental:{getSolanaProvider:wie,quickAuth:S9e},wallet:{ethProvider:KA,getEthereumProvider:b9e,getSolanaProvider:wie},haptics:{impactOccurred:cr.impactOccurred.bind(cr),notificationOccurred:cr.notificationOccurred.bind(cr),selectionChanged:cr.selectionChanged.bind(cr)}};typeof document<\"u\"&&document.addEventListener(\"FarcasterFrameEvent\",t=>{if(t instanceof MessageEvent){let e=t.data;e.event===\"primary_button_clicked\"?Ol.emit(\"primaryButtonClicked\"):e.event===\"frame_added\"?Ol.emit(\"frameAdded\",{notificationDetails:e.notificationDetails}):e.event===\"frame_add_rejected\"?Ol.emit(\"frameAddRejected\",{reason:e.reason}):e.event===\"frame_removed\"?Ol.emit(\"frameRemoved\"):e.event===\"notifications_enabled\"?Ol.emit(\"notificationsEnabled\",{notificationDetails:e.notificationDetails}):e.event===\"notifications_disabled\"?Ol.emit(\"notificationsDisabled\"):e.event===\"back_navigation_triggered\"&&Ol.emit(\"backNavigationTriggered\")}});typeof window<\"u\"&&window.addEventListener(\"message\",t=>{if(t instanceof MessageEvent&&t.data.type===\"frameEvent\"){let e=t.data.event;e.event===\"primary_button_clicked\"?Ol.emit(\"primaryButtonClicked\"):e.event===\"frame_added\"?Ol.emit(\"frameAdded\",{notificationDetails:e.notificationDetails}):e.event===\"frame_add_rejected\"?Ol.emit(\"frameAddRejected\",{reason:e.reason}):e.event===\"frame_removed\"?Ol.emit(\"frameRemoved\"):e.event===\"notifications_enabled\"?Ol.emit(\"notificationsEnabled\",{notificationDetails:e.notificationDetails}):e.event===\"notifications_disabled\"?Ol.emit(\"notificationsDisabled\"):e.event===\"back_navigation_triggered\"&&Ol.emit(\"backNavigationTriggered\")}});var GA=_9e;var xie=class{constructor(){this.clientMeta=null,this.initPromise=null}async init({isMiniKit:e}){if(this.isInitialized()){console.warn(\"ClientMetaManager already initialized\");return}this.initPromise=this.handleInit({isMiniKit:e})}isInitialized(){return!!this.initPromise}async getClientMeta(){if(!this.initPromise)throw new Error(\"ClientMetaManager not initialized\");return this.clientMeta?this.clientMeta:await this.initPromise}async handleInit({isMiniKit:e}){var n;let r=null;try{let o=await GA.context;r=((n=o?.client)==null?void 0:n.clientFid)||null}catch(o){console.error(\"Error getting client FID\",o)}return this.clientMeta={mode:e?\"minikit\":\"onchainkit\",clientFid:r},this.clientMeta}},lk=new xie;p();p();function Rmt(){return\"0.38.15\"}var C3=Rmt();var C9e=\"POST\",SW={\"Content-Type\":\"application/json\",\"OnchainKit-Version\":C3},Eie=\"OnchainKit-Context\",A9e=\"2.0\",no=(t=>(t.API=\"api\",t.Buy=\"buy\",t.Checkout=\"checkout\",t.Hook=\"hook\",t.NFT=\"nft\",t.Swap=\"swap\",t.Wallet=\"wallet\",t))(no||{});function Imt(t,e){return{apiKey:Jw(\"apiKey\")??\"undefined\",sessionId:Jw(\"sessionId\")??\"undefined\",timestamp:Date.now(),eventType:t,data:e,origin:window.location.origin}}async function Omt(t,e){var n;let r=Jw(\"config\");if(r?.analytics)try{let o=await lk.getClientMeta();await fetch(r?.analyticsUrl??k7e,{method:\"POST\",headers:{...SW,\"OnchainKit-App-Name\":document.title,\"OnchainKit-Client-Fid\":((n=o.clientFid)==null?void 0:n.toString())??\"\",\"OnchainKit-Mode\":o.mode},body:JSON.stringify(Imt(t,e))})}catch(o){console.error(\"Error sending analytics:\",o)}}var kW=(t,e)=>Omt(t,e);p();var N1=(t=>(t.ConnectError=\"walletConnectError\",t.ConnectInitiated=\"walletConnectInitiated\",t.ConnectSuccess=\"walletConnectSuccess\",t.Disconnect=\"walletDisconnect\",t.OptionSelected=\"walletOptionSelected\",t.ConnectCanceled=\"walletConnectCanceled\",t))(N1||{}),a2=(t=>(t.Buy=\"buy\",t.Explorer=\"explorer\",t.QR=\"qr\",t.Refresh=\"refresh\",t.Send=\"send\",t.Swap=\"swap\",t))(a2||{}),c2=(t=>(t.SlippageChanged=\"swapSlippageChanged\",t.TokenSelected=\"swapTokenSelected\",t.SwapSuccess=\"swapSuccess\",t.SwapInitiated=\"swapInitiated\",t.SwapFailure=\"swapFailure\",t.SwapCanceled=\"swapCanceled\",t))(c2||{});var ZA=(t=>(t.TransactionFailure=\"transactionFailure\",t.TransactionInitiated=\"transactionInitiated\",t.TransactionSuccess=\"transactionSuccess\",t.TransactionCanceled=\"transactionCanceled\",t))(ZA||{}),Pu=(t=>(t.FundAmountChanged=\"fundAmountChanged\",t.FundFailure=\"fundFailure\",t.FundInitiated=\"fundInitiated\",t.FundOptionSelected=\"fundOptionSelected\",t.FundSuccess=\"fundSuccess\",t.FundCanceled=\"fundCanceled\",t))(Pu||{});var Sie=(t=>(t.ComponentError=\"componentError\",t))(Sie||{});var _W=class extends T9e.Component{constructor(){super(...arguments),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,n){console.error(\"Uncaught error:\",e,n),kW(Sie.ComponentError,{component:\"OnchainKitProviderBoundary\",error:e.message,metadata:{message:e.message,stack:n.componentStack}})}render(){if(this.state.error){if(this.props.fallback){let e=this.props.fallback;return(0,kie.jsx)(e,{error:this.state.error})}return(0,kie.jsx)(\"h1\",{children:\"Sorry, we had an unhandled error\"})}return this.props.children}};p();var uk=(t=>(t.AtomicBatch=\"atomicBatch\",t.AuxiliaryFunds=\"auxiliaryFunds\",t.PaymasterService=\"paymasterService\",t))(uk||{}),R9e=\"https://base.org/privacy-policy\",I9e=\"https://base.org/terms-of-service\";p();Si();var YA={[xs.id]:\"0x6533C94869D28fAA8dF77cc63f9e2b2D6Cf77eBA\",[Yn.id]:\"0xC6d566A56A1aFf6508b41f6c90ff131615583BCD\"},Pmt=\\'<svg width=\"3000\" height=\"3000\" viewBox=\"0 0 3000 3000\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#clip0_5569_72801)\"><rect width=\"3000\" height=\"3000\" fill=\"#155DFD\"/><circle cx=\"1500\" cy=\"1500\" r=\"1500\" fill=\"#155DFD\"/><path d=\"M2596.93 1721.27C2605.58 1648.75 2610.21 1574.9 2610.21 1500C2610.21 1425.1 2605.58 1351.4 2596.93 1278.73C2770.3 1177.28 2815.96 914.534 2631.1 772.941C2553.96 713.858 2472.05 660.593 2385.96 614.042C2339.26 528.102 2286.14 446.041 2227.06 368.904C2085.47 184.192 1822.72 229.699 1721.27 403.071C1648.75 394.417 1574.9 389.792 1500 389.792C1425.1 389.792 1351.4 394.417 1278.73 403.071C1177.28 229.699 914.534 184.043 772.941 368.904C713.858 446.041 660.593 527.953 614.042 614.042C528.102 660.742 446.041 713.858 368.904 772.941C184.192 914.534 229.699 1177.28 403.071 1278.73C394.417 1351.25 389.792 1425.1 389.792 1500C389.792 1574.9 394.417 1648.6 403.071 1721.27C229.699 1822.72 184.043 2085.47 368.904 2227.06C446.041 2286.14 527.953 2339.41 614.042 2385.96C660.742 2471.9 713.858 2553.96 772.941 2631.1C914.534 2815.81 1177.28 2770.3 1278.73 2596.93C1351.25 2605.58 1425.1 2610.21 1500 2610.21C1574.9 2610.21 1648.6 2605.58 1721.27 2596.93C1822.72 2770.3 2085.47 2815.96 2227.06 2631.1C2286.14 2553.96 2339.41 2472.05 2385.96 2385.96C2471.9 2339.26 2553.96 2286.14 2631.1 2227.06C2815.81 2085.47 2770.3 1822.72 2596.93 1721.27Z\" fill=\"white\"/><path d=\"M1391.06 1500C1391.06 1647.89 1358.4 1781.62 1305.74 1878.28C1253.03 1975.05 1180.69 2034 1101.53 2034C1022.36 2034 950.031 1975.05 897.314 1878.28C844.66 1781.62 812 1647.89 812 1500C812 1352.11 844.66 1218.38 897.314 1121.72C950.031 1024.95 1022.36 966 1101.53 966C1180.69 966 1253.03 1024.95 1305.74 1121.72C1358.4 1218.38 1391.06 1352.11 1391.06 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"1102.57\" cy=\"1194.93\" rx=\"126.414\" ry=\"231.934\" fill=\"white\"/><path d=\"M2187.16 1500C2187.16 1647.89 2154.5 1781.62 2101.84 1878.28C2049.13 1975.05 1976.79 2034 1897.63 2034C1818.46 2034 1746.13 1975.05 1693.41 1878.28C1640.76 1781.62 1608.1 1647.89 1608.1 1500C1608.1 1352.11 1640.76 1218.38 1693.41 1121.72C1746.13 1024.95 1818.46 966 1897.63 966C1976.79 966 2049.13 1024.95 2101.84 1121.72C2154.5 1218.38 2187.16 1352.11 2187.16 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"1896.58\" cy=\"1194.93\" rx=\"126.414\" ry=\"231.934\" fill=\"white\"/></g><defs><clipPath id=\"clip0_5569_72801\"><rect width=\"3000\" height=\"3000\" fill=\"white\"/></clipPath></defs></svg>\\',Mmt=\\'<svg width=\"3000\" height=\"3000\" viewBox=\"0 0 3000 3000\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#clip0_5569_72809)\"><rect width=\"3000\" height=\"3000\" fill=\"#155DFD\"/><circle cx=\"1500\" cy=\"1500\" r=\"1500\" fill=\"#155DFD\"/><path d=\"M2188.12 1131.95C2691.11 591.187 2356.8 256.94 1815.91 759.826C1767.57 804.826 1737.56 866.494 1733.32 932.403C1733.32 933.767 1733.17 934.979 1733.02 936.343C1722.56 1094.68 1853.35 1225.44 2011.72 1214.98C2013.08 1214.98 2014.29 1214.83 2015.66 1214.68C2081.58 1210.44 2143.26 1180.44 2188.27 1132.1L2188.12 1131.95Z\" fill=\"white\"/><path d=\"M759.879 1816.05C256.885 2356.81 591.204 2691.06 1132.08 2188.17C1180.43 2143.17 1210.44 2081.51 1214.68 2015.6C1214.68 2014.23 1214.83 2013.02 1214.98 2011.66C1225.44 1853.32 1094.65 1722.56 936.283 1733.02C934.919 1733.02 933.706 1733.17 932.342 1733.32C866.418 1737.56 804.738 1767.56 759.727 1815.9L759.879 1816.05Z\" fill=\"white\"/><path d=\"M1131.96 759.922C591.247 256.826 256.881 591.264 759.869 1132.09C804.865 1180.43 866.527 1210.44 932.431 1214.68C933.794 1214.68 935.006 1214.83 936.37 1214.98C1094.69 1225.44 1225.44 1094.66 1214.98 936.309C1214.98 934.946 1214.83 933.733 1214.68 932.369C1210.44 866.452 1180.44 804.777 1132.11 759.771L1131.96 759.922Z\" fill=\"white\"/><path d=\"M1816.05 2188.12C2356.81 2691.11 2691.06 2356.8 2188.17 1815.91C2143.17 1767.57 2081.51 1737.56 2015.6 1733.32C2014.23 1733.32 2013.02 1733.17 2011.66 1733.02C1853.32 1722.56 1722.56 1853.35 1733.02 2011.72C1733.02 2013.08 1733.17 2014.29 1733.32 2015.66C1737.56 2081.58 1767.56 2143.26 1815.9 2188.27L1816.05 2188.12Z\" fill=\"white\"/><path d=\"M1737.18 727.02C1710.36 -10.3398 1237.66 -10.3398 1210.84 727.02C1208.42 792.869 1230.84 857.658 1274.48 907.31C1275.39 908.37 1276.14 909.278 1277.05 910.338C1381.59 1029.62 1566.43 1029.62 1670.97 910.338C1671.88 909.278 1672.63 908.37 1673.54 907.31C1717.18 857.81 1739.45 793.02 1737.18 727.02Z\" fill=\"white\"/><path d=\"M727.02 1210.82C-10.3398 1237.64 -10.3398 1710.34 727.02 1737.16C792.869 1739.58 857.658 1717.16 907.31 1673.52C908.218 1672.62 909.278 1671.86 910.338 1670.95C1029.62 1566.41 1029.62 1381.57 910.338 1277.03C909.278 1276.12 908.37 1275.37 907.31 1274.46C857.81 1230.82 793.02 1208.55 727.02 1210.82Z\" fill=\"white\"/><path d=\"M2040.69 1274.48C2039.63 1275.39 2038.72 1276.14 2037.66 1277.05C1918.38 1381.59 1918.38 1566.43 2037.66 1670.97C2038.72 1671.88 2039.63 1672.63 2040.69 1673.54C2090.19 1717.18 2154.98 1739.45 2220.98 1737.18C2958.34 1710.36 2958.34 1237.66 2220.98 1210.84C2155.13 1208.42 2090.34 1230.84 2040.69 1274.48Z\" fill=\"white\"/><path d=\"M1210.82 2220.98C1237.64 2958.34 1710.34 2958.34 1737.16 2220.98C1739.58 2155.13 1717.16 2090.34 1673.52 2040.69C1672.62 2039.63 1671.86 2038.72 1670.95 2037.66C1566.41 1918.38 1381.57 1918.38 1277.03 2037.66C1276.12 2038.72 1275.37 2039.63 1274.46 2040.69C1230.82 2090.19 1208.55 2154.98 1210.82 2220.98Z\" fill=\"white\"/><circle cx=\"1474.5\" cy=\"1474.5\" r=\"886.5\" fill=\"white\"/><path d=\"M1391.06 1500C1391.06 1352.11 1358.4 1218.38 1305.74 1121.72C1253.03 1024.95 1180.69 966 1101.53 966C1022.36 966 950.031 1024.95 897.314 1121.72C844.66 1218.38 812 1352.11 812 1500C812 1647.89 844.66 1781.62 897.314 1878.28C950.031 1975.05 1022.36 2034 1101.53 2034C1180.69 2034 1253.03 1975.05 1305.74 1878.28C1358.4 1781.62 1391.06 1647.89 1391.06 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"126.414\" cy=\"231.934\" rx=\"126.414\" ry=\"231.934\" transform=\"matrix(1 0 0 -1 976.16 2037)\" fill=\"white\"/><path d=\"M2187.16 1500C2187.16 1352.11 2154.5 1218.38 2101.84 1121.72C2049.12 1024.95 1976.79 966 1897.63 966C1818.46 966 1746.13 1024.95 1693.41 1121.72C1640.76 1218.38 1608.1 1352.11 1608.1 1500C1608.1 1647.89 1640.76 1781.62 1693.41 1878.28C1746.13 1975.05 1818.46 2034 1897.63 2034C1976.79 2034 2049.12 1975.05 2101.84 1878.28C2154.5 1781.62 2187.16 1647.89 2187.16 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"126.414\" cy=\"231.934\" rx=\"126.414\" ry=\"231.934\" transform=\"matrix(1 0 0 -1 1770.17 2037)\" fill=\"white\"/></g><defs><clipPath id=\"clip0_5569_72809\"><rect width=\"3000\" height=\"3000\" fill=\"white\"/></clipPath></defs></svg>\\',Nmt=\\'<svg width=\"3000\" height=\"3000\" viewBox=\"0 0 3000 3000\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#clip0_5569_72826)\"><rect width=\"3000\" height=\"3000\" fill=\"#155DFD\"/><circle cx=\"1500\" cy=\"1500\" r=\"1500\" fill=\"#155DFD\"/><path d=\"M587.596 2230.75C839.799 2148.27 1126.41 2048.74 1282.85 1934.35C1406.13 1849.79 1458.98 1757.13 1483.16 1651.34C1488.13 1629.73 1511.93 1629.73 1516.8 1651.34C1540.98 1757.01 1593.83 1849.67 1717.11 1934.35C1873.55 2048.74 2160.26 2148.28 2412.36 2230.75C2681.77 2308.44 2735.86 2334.34 2656.73 2207.31C2588.97 2088.63 2388.28 1817.51 2407.39 1489.82C2407.39 1489.21 2407.39 1488.59 2407.39 1487.86C2397.17 1162.25 2598.34 899.36 2662.18 786.079C2737.77 664.821 2675.65 693.54 2406.72 771.597C2154.43 854.195 1870.3 953.362 1715.2 1067.5C1593.25 1151.7 1540.79 1203.99 1516.8 1309.05C1511.83 1330.65 1488.03 1330.65 1483.16 1309.05C1459.17 1203.87 1406.71 1151.7 1284.76 1067.5C1129.66 953.362 845.533 854.195 593.234 771.597C324.307 693.54 262.284 664.821 337.782 786.079C401.621 899.36 602.791 1162.37 592.47 1488.1C592.47 1488.72 592.47 1489.33 592.47 1490.07C611.583 1817.76 410.891 2088.87 343.134 2207.55C264.004 2334.46 318.095 2308.68 587.5 2231L587.596 2230.75Z\" fill=\"white\"/><path d=\"M769.249 587.596C851.725 839.799 951.26 1126.41 1065.65 1282.85C1150.21 1406.13 1242.87 1458.98 1348.66 1483.16C1370.26 1488.13 1370.26 1511.93 1348.66 1516.8C1242.99 1540.98 1150.33 1593.83 1065.65 1717.11C951.26 1873.55 851.725 2160.26 769.249 2412.36C691.56 2681.77 665.664 2735.86 792.691 2656.73C911.372 2588.97 1182.49 2388.28 1510.18 2407.39C1510.79 2407.39 1511.41 2407.39 1512.14 2407.39C1837.75 2397.17 2100.64 2598.34 2213.92 2662.18C2335.18 2737.77 2306.46 2675.65 2228.4 2406.72C2145.8 2154.43 2046.64 1870.3 1932.5 1715.2C1848.3 1593.25 1796.01 1540.79 1690.95 1516.8C1669.35 1511.83 1669.35 1488.03 1690.95 1483.16C1796.13 1459.17 1848.3 1406.71 1932.5 1284.76C2046.64 1129.66 2145.8 845.533 2228.4 593.234C2306.46 324.307 2335.18 262.284 2213.92 337.782C2100.64 401.621 1837.63 602.791 1511.9 592.47C1511.28 592.47 1510.67 592.47 1509.93 592.47C1182.24 611.583 911.127 410.891 792.446 343.134C665.541 264.004 691.315 318.095 769.004 587.5L769.249 587.596Z\" fill=\"white\"/><path d=\"M1391.06 1500C1391.06 1352.11 1358.4 1218.38 1305.74 1121.72C1253.03 1024.95 1180.69 966 1101.53 966C1022.36 966 950.031 1024.95 897.314 1121.72C844.66 1218.38 812 1352.11 812 1500C812 1647.89 844.66 1781.62 897.314 1878.28C950.031 1975.05 1022.36 2034 1101.53 2034C1180.69 2034 1253.03 1975.05 1305.74 1878.28C1358.4 1781.62 1391.06 1647.89 1391.06 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"126.414\" cy=\"231.934\" rx=\"126.414\" ry=\"231.934\" transform=\"matrix(1 0 0 -1 976.159 2037)\" fill=\"white\"/><path d=\"M2187.16 1500C2187.16 1352.11 2154.5 1218.38 2101.84 1121.72C2049.12 1024.95 1976.79 966 1897.63 966C1818.46 966 1746.13 1024.95 1693.41 1121.72C1640.76 1218.38 1608.1 1352.11 1608.1 1500C1608.1 1647.89 1640.76 1781.62 1693.41 1878.28C1746.13 1975.05 1818.46 2034 1897.63 2034C1976.79 2034 2049.12 1975.05 2101.84 1878.28C2154.5 1781.62 2187.16 1647.89 2187.16 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"126.414\" cy=\"231.934\" rx=\"126.414\" ry=\"231.934\" transform=\"matrix(1 0 0 -1 1770.17 2037)\" fill=\"white\"/></g><defs><clipPath id=\"clip0_5569_72826\"><rect width=\"3000\" height=\"3000\" fill=\"white\"/></clipPath></defs></svg>\\',Lmt=\\'<svg width=\"3000\" height=\"3000\" viewBox=\"0 0 3000 3000\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#clip0_5569_72835)\"><rect width=\"3000\" height=\"3000\" fill=\"#155DFD\"/><circle cx=\"1500\" cy=\"1500\" r=\"1500\" fill=\"#155DFD\"/><path d=\"M2713.13 1500C2731.2 1680.92 2615.13 1818.15 2507.78 1924.42C2394.7 2032.13 2290.44 2108.88 2200.88 2200.61C2109.15 2290.16 2032.22 2394.61 1924.51 2507.68C1818.15 2615.04 1680.92 2731.11 1500 2713.13C1319.08 2731.2 1181.85 2615.13 1075.58 2507.78C967.866 2394.7 891.12 2290.44 799.389 2200.88C709.837 2109.15 605.39 2032.22 492.315 1924.51C384.962 1818.15 268.89 1680.92 286.873 1500C268.799 1319.08 384.871 1181.85 492.224 1075.58C605.299 967.866 709.564 891.12 799.116 799.389C890.848 709.837 967.775 605.39 1075.49 492.315C1181.85 384.871 1319.08 268.799 1500 286.873C1680.92 268.799 1818.15 384.871 1924.42 492.224C2032.13 605.299 2108.88 709.564 2200.61 799.116C2290.16 890.848 2394.61 967.775 2507.68 1075.49C2615.04 1181.85 2731.11 1319.08 2713.13 1500Z\" fill=\"white\"/><path d=\"M1391.06 1500C1391.06 1647.89 1358.4 1781.62 1305.74 1878.28C1253.03 1975.05 1180.69 2034 1101.53 2034C1022.36 2034 950.031 1975.05 897.314 1878.28C844.66 1781.62 812 1647.89 812 1500C812 1352.11 844.66 1218.38 897.314 1121.72C950.031 1024.95 1022.36 966 1101.53 966C1180.69 966 1253.03 1024.95 1305.74 1121.72C1358.4 1218.38 1391.06 1352.11 1391.06 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"1102.57\" cy=\"1194.93\" rx=\"126.414\" ry=\"231.934\" fill=\"white\"/><path d=\"M2187.16 1500C2187.16 1647.89 2154.5 1781.62 2101.84 1878.28C2049.12 1975.05 1976.79 2034 1897.63 2034C1818.46 2034 1746.13 1975.05 1693.41 1878.28C1640.76 1781.62 1608.1 1647.89 1608.1 1500C1608.1 1352.11 1640.76 1218.38 1693.41 1121.72C1746.13 1024.95 1818.46 966 1897.63 966C1976.79 966 2049.12 1024.95 2101.84 1121.72C2154.5 1218.38 2187.16 1352.11 2187.16 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"1896.58\" cy=\"1194.93\" rx=\"126.414\" ry=\"231.934\" fill=\"white\"/></g><defs><clipPath id=\"clip0_5569_72835\"><rect width=\"3000\" height=\"3000\" fill=\"white\"/></clipPath></defs></svg>\\',Bmt=\\'<svg width=\"3000\" height=\"3000\" viewBox=\"0 0 3000 3000\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#clip0_5569_72843)\"><rect width=\"3000\" height=\"3000\" fill=\"#155DFD\"/><circle cx=\"1500\" cy=\"1500\" r=\"1500\" fill=\"#155DFD\"/><path d=\"M2321.64 1500C3048.65 1727.51 2902.59 1900.1 2182.54 1787.44C2625.43 2169.27 2494.23 2265.93 1974.71 1974.53C2266.19 2493.97 2169.44 2625.34 1787.53 2182.54C1900.19 2902.68 1727.6 3048.65 1500 2321.64C1272.49 3048.65 1099.9 2902.59 1212.56 2182.54C830.733 2625.43 734.069 2494.23 1025.47 1974.71C506.03 2266.19 374.655 2169.44 817.464 1787.53C97.3173 1900.19 -48.6455 1727.6 678.356 1500C-48.6455 1272.49 97.4051 1099.9 817.464 1212.56C374.567 830.733 505.767 734.069 1025.29 1025.47C733.806 506.03 830.558 374.655 1212.47 817.464C1099.81 97.3173 1272.4 -48.6455 1500 678.356C1727.51 -48.6455 1900.1 97.4051 1787.44 817.464C2169.27 374.567 2265.93 505.767 1974.53 1025.29C2493.97 733.806 2625.34 830.558 2182.54 1212.47C2902.68 1099.81 3048.65 1272.4 2321.64 1500Z\" fill=\"white\"/><path d=\"M1402.29 1500.15C1402.29 1632.88 1372.98 1752.91 1325.73 1839.64C1278.42 1926.48 1213.56 1979.29 1142.65 1979.29C1071.73 1979.29 1006.87 1926.48 959.562 1839.64C912.315 1752.91 883 1632.88 883 1500.15C883 1367.41 912.315 1247.38 959.562 1160.65C1006.87 1073.81 1071.73 1021 1142.65 1021C1213.56 1021 1278.42 1073.81 1325.73 1160.65C1372.98 1247.38 1402.29 1367.41 1402.29 1500.15Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"998.466\" cy=\"1500.14\" rx=\"113.501\" ry=\"208.242\" fill=\"white\"/><path d=\"M2117.07 1500.15C2117.07 1632.88 2087.76 1752.91 2040.51 1839.64C1993.2 1926.48 1928.34 1979.29 1857.42 1979.29C1786.51 1979.29 1721.65 1926.48 1674.34 1839.64C1627.09 1752.91 1597.78 1632.88 1597.78 1500.15C1597.78 1367.41 1627.09 1247.38 1674.34 1160.65C1721.65 1073.81 1786.51 1021 1857.42 1021C1928.34 1021 1993.2 1073.81 2040.51 1160.65C2087.76 1247.38 2117.07 1367.41 2117.07 1500.15Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"1712.74\" cy=\"1498.06\" rx=\"113.501\" ry=\"208.242\" fill=\"white\"/></g><defs><clipPath id=\"clip0_5569_72843\"><rect width=\"3000\" height=\"3000\" fill=\"white\"/></clipPath></defs></svg>\\',Dmt=\\'<svg width=\"3000\" height=\"3000\" viewBox=\"0 0 3000 3000\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#clip0_5569_72851)\"><rect width=\"3000\" height=\"3000\" fill=\"#155DFD\"/><circle cx=\"1500\" cy=\"1500\" r=\"1500\" fill=\"#155DFD\"/><path d=\"M2538.7 1207.34C2483.17 1184.33 2431.23 1159.94 2382.18 1133.9C2398.44 1080.86 2417.87 1026.85 2440.88 971.324C2548.89 711.06 2287.94 450.106 2027.68 558.125C1972.15 581.134 1918.14 600.699 1865.1 616.819C1839.06 567.907 1814.67 515.827 1791.66 460.302C1684.05 199.899 1314.94 199.899 1207.34 460.302C1184.33 515.827 1159.94 567.769 1133.9 616.819C1080.86 600.561 1026.85 581.134 971.324 558.125C711.06 450.106 450.106 711.06 558.125 971.324C581.134 1026.85 600.699 1080.86 616.819 1133.9C567.907 1159.94 515.827 1184.33 460.302 1207.34C199.899 1314.94 199.899 1684.05 460.302 1791.66C515.827 1814.67 567.769 1839.06 616.819 1865.1C600.561 1918.14 581.134 1972.15 558.125 2027.68C450.106 2287.94 711.06 2548.89 971.324 2440.88C1026.85 2417.87 1080.86 2398.3 1133.9 2382.18C1159.94 2431.09 1184.33 2483.17 1207.34 2538.7C1314.94 2799.1 1684.05 2799.1 1791.66 2538.7C1814.67 2483.17 1839.06 2431.23 1865.1 2382.18C1918.14 2398.44 1972.15 2417.87 2027.68 2440.88C2287.94 2548.89 2548.89 2287.94 2440.88 2027.68C2417.87 1972.15 2398.3 1918.14 2382.18 1865.1C2431.09 1839.06 2483.17 1814.67 2538.7 1791.66C2799.1 1684.05 2799.1 1314.94 2538.7 1207.34ZM1735.31 1727.87C1732.83 1730.35 1730.35 1732.83 1727.87 1735.31C1697.42 1766.58 1662.15 1790.01 1624.53 1806.13C1587.47 1820.46 1547.24 1828.17 1504.94 1827.62C1501.36 1827.62 1497.92 1827.62 1494.33 1827.62C1452.04 1828.17 1411.67 1820.32 1374.74 1806.13C1337.13 1790.01 1301.86 1766.58 1271.41 1735.31C1268.93 1732.83 1266.45 1730.35 1263.97 1727.87C1232.69 1697.42 1209.27 1662.15 1193.15 1624.53C1178.82 1587.61 1171.1 1547.24 1171.65 1504.94C1171.65 1501.36 1171.65 1497.92 1171.65 1494.33C1171.1 1452.04 1178.96 1411.67 1193.15 1374.74C1209.27 1337.13 1232.69 1301.86 1263.97 1271.41C1266.45 1268.93 1268.93 1266.45 1271.41 1263.97C1301.86 1232.69 1337.13 1209.27 1374.74 1193.15C1411.67 1178.82 1452.04 1171.1 1494.33 1171.65C1497.92 1171.65 1501.36 1171.65 1504.94 1171.65C1547.24 1171.1 1587.61 1178.96 1624.53 1193.15C1662.15 1209.27 1697.42 1232.69 1727.87 1263.97C1730.35 1266.45 1732.83 1268.93 1735.31 1271.41C1766.58 1301.86 1790.01 1337.13 1806.13 1374.74C1820.46 1411.8 1828.17 1452.04 1827.62 1494.33C1827.62 1497.92 1827.62 1501.36 1827.62 1504.94C1828.17 1547.24 1820.32 1587.61 1806.13 1624.53C1790.01 1662.15 1766.58 1697.42 1735.31 1727.87Z\" fill=\"white\"/><circle cx=\"1476\" cy=\"1442\" r=\"443\" fill=\"white\"/><path d=\"M1400.59 1202.5C1400.59 1334.79 1371.37 1454.31 1324.38 1540.58C1277.28 1627.04 1213.04 1679 1143.3 1679C1073.56 1679 1009.31 1627.04 962.215 1540.58C915.221 1454.31 886 1334.79 886 1202.5C886 1070.21 915.221 950.688 962.215 864.42C1009.31 777.961 1073.56 726 1143.3 726C1213.04 726 1277.28 777.961 1324.38 864.42C1371.37 950.688 1400.59 1070.21 1400.59 1202.5Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"10\"/><ellipse cx=\"1141.26\" cy=\"931.03\" rx=\"113.349\" ry=\"207.963\" fill=\"white\"/><path d=\"M2114.41 1202.5C2114.41 1334.79 2085.19 1454.31 2038.19 1540.58C1991.1 1627.04 1926.85 1679 1857.11 1679C1787.37 1679 1723.13 1627.04 1676.03 1540.58C1629.04 1454.31 1599.82 1334.79 1599.82 1202.5C1599.82 1070.21 1629.04 950.688 1676.03 864.42C1723.13 777.961 1787.37 726 1857.11 726C1926.85 726 1991.1 777.961 2038.19 864.42C2085.19 950.688 2114.41 1070.21 2114.41 1202.5Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"10\"/><ellipse cx=\"1861.96\" cy=\"928.963\" rx=\"113.349\" ry=\"207.963\" fill=\"white\"/></g><defs><clipPath id=\"clip0_5569_72851\"><rect width=\"3000\" height=\"3000\" fill=\"white\"/></clipPath></defs></svg>\\',Fmt=\\'<svg width=\"3000\" height=\"3000\" viewBox=\"0 0 3000 3000\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#clip0_5569_72860)\"><rect width=\"3000\" height=\"3000\" fill=\"#155DFD\"/><circle cx=\"1500\" cy=\"1500\" r=\"1500\" fill=\"#155DFD\"/><path d=\"M1500.19 1499.87C1365.57 1351.79 1298.1 1205.48 1296.93 988.1C1296.16 779.052 1361.71 498.983 1502.29 274.909C1565.01 170.441 1645.1 119.866 1696.41 125.097C1750.22 129.37 1775.2 189.413 1785.5 284.511C1806.04 473.278 1775.29 803.798 1990.99 1009.07C2196.26 1224.77 2526.78 1194.09 2715.59 1214.68C2810.65 1224.78 2870.69 1249.84 2874.93 1303.61C2880.12 1354.96 2829.55 1435.05 2725.08 1497.77C2501.01 1638.35 2220.94 1703.91 2011.89 1703.13C1794.55 1702 1648.19 1634.49 1500.12 1499.87L1500.19 1499.87Z\" fill=\"white\"/><path d=\"M1499.98 1500.01C1634.61 1648.08 1702.07 1794.4 1703.24 2011.77C1704.02 2220.82 1638.47 2500.89 1497.89 2724.97C1435.16 2829.43 1355.07 2880.01 1303.77 2874.78C1249.96 2870.5 1224.97 2810.46 1214.68 2715.36C1194.13 2526.6 1224.89 2196.08 1009.18 1990.81C803.914 1775.1 473.394 1805.78 284.59 1785.2C189.528 1775.09 129.486 1750.03 125.249 1696.26C120.055 1644.91 170.63 1564.82 275.098 1502.1C499.172 1361.52 779.24 1295.97 988.289 1296.75C1205.63 1297.88 1351.98 1365.38 1500.06 1500.01L1499.98 1500.01Z\" fill=\"white\"/><path d=\"M1481.64 1518.29C1630.16 1383.18 1776.72 1315.24 1994.12 1313.37C2203.19 1311.92 2483.08 1376.57 2706.72 1516.45C2811 1578.84 2861.32 1658.78 2855.93 1710.11C2851.48 1763.93 2791.35 1789.12 2696.21 1799.72C2507.36 1820.87 2176.9 1791.18 1970.91 2007.57C1754.52 2213.55 1784.15 2544.01 1762.95 2732.9C1752.54 2828.01 1727.28 2888.14 1673.49 2892.55C1622.12 2897.91 1542.19 2847.58 1479.79 2743.31C1339.92 2519.66 1275.26 2239.77 1276.71 2030.7C1278.54 1813.33 1346.52 1666.75 1481.64 1518.22L1481.64 1518.29Z\" fill=\"white\"/><path d=\"M1481.81 1518.43C1333.29 1653.54 1186.74 1721.48 969.339 1723.34C760.267 1724.79 480.38 1660.13 256.734 1520.25C152.457 1457.85 102.133 1377.92 107.529 1326.59C111.975 1272.76 172.103 1247.58 267.243 1236.98C456.094 1215.83 786.549 1245.53 992.528 1029.15C1208.91 823.167 1179.28 492.713 1200.47 303.825C1210.92 208.685 1236.11 148.557 1289.93 144.111C1341.3 138.752 1421.23 189.076 1483.63 293.353C1623.51 516.999 1688.17 796.885 1686.72 1005.96C1684.9 1223.32 1616.92 1369.91 1481.81 1518.43Z\" fill=\"white\"/><path d=\"M1403.24 1500C1403.24 1630.77 1374.36 1749 1327.82 1834.44C1281.21 1919.99 1217.33 1972 1147.49 1972C1077.65 1972 1013.76 1919.99 967.153 1834.44C920.611 1749 891.731 1630.77 891.731 1500C891.731 1369.23 920.611 1251 967.153 1165.56C1013.76 1080.01 1077.65 1028 1147.49 1028C1217.33 1028 1281.21 1080.01 1327.82 1165.56C1374.36 1251 1403.24 1369.23 1403.24 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"1148.41\" cy=\"1230.16\" rx=\"111.819\" ry=\"205.156\" fill=\"white\"/><path d=\"M2107.42 1500C2107.42 1630.77 2078.55 1749 2032 1834.44C1985.4 1919.99 1921.51 1972 1851.67 1972C1781.83 1972 1717.94 1919.99 1671.34 1834.44C1624.79 1749 1595.92 1630.77 1595.92 1500C1595.92 1369.23 1624.79 1251 1671.34 1165.56C1717.94 1080.01 1781.83 1028 1851.67 1028C1921.51 1028 1985.4 1080.01 2032 1165.56C2078.55 1251 2107.42 1369.23 2107.42 1500Z\" fill=\"#155DFD\" stroke=\"white\" stroke-width=\"6\"/><ellipse cx=\"1850.75\" cy=\"1230.16\" rx=\"111.819\" ry=\"205.156\" fill=\"white\"/></g><defs><clipPath id=\"clip0_5569_72860\"><rect width=\"3000\" height=\"3000\" fill=\"white\"/></clipPath></defs></svg>\\',_ie=[Pmt,Mmt,Nmt,Lmt,Bmt,Dmt,Fmt],O9e=\"0xf8b05c79f090979bf4a80270aba232dff11a10d9ca55c4f88de95317970f0de9\";p();function P9e(t,e){return new RegExp(`^0x[a-fA-F0-9]{${e}}$`).test(t)}p();var Umt=t=>{let e=new Uint8Array(t);return crypto.getRandomValues(e),e},M9e=()=>{if(typeof crypto<\"u\"&&typeof crypto.randomUUID==\"function\")return crypto.randomUUID();let t=Umt(16);return t[0].toString(16).padStart(2,\"0\")+t[1].toString(16).padStart(2,\"0\")+t[2].toString(16).padStart(2,\"0\")+t[3].toString(16).padStart(2,\"0\")+\"-\"+t[4].toString(16).padStart(2,\"0\")+t[5].toString(16).padStart(2,\"0\")+\"-\"+(t[6]&15|64).toString(16).padStart(2,\"0\")+t[7].toString(16).padStart(2,\"0\")+\"-\"+(t[8]&63|128).toString(16).padStart(2,\"0\")+t[9].toString(16).padStart(2,\"0\")+\"-\"+t[10].toString(16).padStart(2,\"0\")+t[11].toString(16).padStart(2,\"0\")+t[12].toString(16).padStart(2,\"0\")+t[13].toString(16).padStart(2,\"0\")+t[14].toString(16).padStart(2,\"0\")+t[15].toString(16).padStart(2,\"0\")};p();p();bo();RP.type=\"farcasterFrame\";var QA,JA,XA;function RP(){return t=>({id:\"farcaster\",name:\"Farcaster\",rdns:\"xyz.farcaster.MiniAppWallet\",icon:\"https://imagedelivery.net/BXluQx4ige9GuW0Ia56BHw/055c25d6-7fe7-4a49-abf9-49772021cf00/original\",type:RP.type,async connect({chainId:e}={}){let n=await this.getProvider(),r=await n.request({method:\"eth_requestAccounts\"}),o=e;if(!o){let a=await t.storage?.getItem(\"state\")??{};t.chains.some(u=>u.id===a.chainId)?o=a.chainId:o=t.chains[0]?.id}if(!o)throw new Error(\"No chains found on connector.\");QA||(QA=this.onAccountsChanged.bind(this),n.on(\"accountsChanged\",QA)),JA||(JA=this.onChainChanged.bind(this),n.on(\"chainChanged\",JA)),XA||(XA=this.onDisconnect.bind(this),n.on(\"disconnect\",XA));let i=await this.getChainId();return o&&i!==o&&(i=(await this.switchChain({chainId:o})).id),{accounts:r.map(a=>Fr(a)),chainId:i}},async disconnect(){let e=await this.getProvider();QA&&(e.removeListener(\"accountsChanged\",QA),QA=void 0),JA&&(e.removeListener(\"chainChanged\",JA),JA=void 0),XA&&(e.removeListener(\"disconnect\",XA),XA=void 0)},async getAccounts(){return(await(await this.getProvider()).request({method:\"eth_accounts\"})).map(r=>Fr(r))},async getChainId(){let n=await(await this.getProvider()).request({method:\"eth_chainId\"});return tL(n,\"number\")},async isAuthorized(){try{return!!(await this.getAccounts()).length}catch{return!1}},async switchChain({chainId:e}){let n=await this.getProvider(),r=t.chains.find(o=>o.id===e);if(!r)throw new ha(new Lc);return await n.request({method:\"wallet_switchEthereumChain\",params:[{chainId:Ye(e)}]}),t.emitter.emit(\"change\",{chainId:e}),r},onAccountsChanged(e){e.length===0?this.onDisconnect():t.emitter.emit(\"change\",{accounts:e.map(n=>Fr(n))})},onChainChanged(e){let n=Number(e);t.emitter.emit(\"change\",{chainId:n})},async onDisconnect(){t.emitter.emit(\"disconnect\")},async getProvider(){return GA.wallet.ethProvider}})}p();var N9e=he(De(),1);var L9e=he(et(),1);p();var jmt={},zmt=(0,wg.createContext)(jmt);function Cie({address:t,analytics:e,apiKey:n,chain:r,children:o,config:i,projectId:a,rpcUrl:c,schemaId:u}){var d;if(u&&!P9e(u,64))throw Error(\\'EAS schemaId must be 64 characters prefixed with \"0x\"\\');let h=(0,wg.useMemo)(()=>M9e(),[]),m=!!((d=(0,wg.useContext)(zmt))!=null&&d.__isMiniKit);(0,wg.useEffect)(()=>{lk.isInitialized()||lk.init({isMiniKit:m})},[m]);let g=(0,wg.useMemo)(()=>{var b,E,C,T,R,L,D,G,W,J,ne,ie,Z,ae,V;let $=n?`https://api.developer.coinbase.com/rpc/v1/${r.name.replace(\" \",\"-\").toLowerCase()}/${n}`:null,F={address:t??null,apiKey:n??null,chain:r,config:{analytics:e??!0,analyticsUrl:i?.analyticsUrl??null,appearance:{name:((b=i?.appearance)==null?void 0:b.name)??\"Dapp\",logo:((E=i?.appearance)==null?void 0:E.logo)??\"\",mode:((C=i?.appearance)==null?void 0:C.mode)??\"auto\",theme:((T=i?.appearance)==null?void 0:T.theme)??\"default\"},paymaster:i?.paymaster||$,wallet:{display:((R=i?.wallet)==null?void 0:R.display)??\"classic\",preference:((L=i?.wallet)==null?void 0:L.preference)??\"all\",signUpEnabled:((D=i?.wallet)==null?void 0:D.signUpEnabled)??!0,termsUrl:((G=i?.wallet)==null?void 0:G.termsUrl)||I9e,privacyUrl:((W=i?.wallet)==null?void 0:W.privacyUrl)||R9e,supportedWallets:{rabby:((ne=(J=i?.wallet)==null?void 0:J.supportedWallets)==null?void 0:ne.rabby)??!1,trust:((Z=(ie=i?.wallet)==null?void 0:ie.supportedWallets)==null?void 0:Z.trust)??!1,frame:((V=(ae=i?.wallet)==null?void 0:ae.supportedWallets)==null?void 0:V.frame)??!1}}},projectId:a??null,rpcUrl:c??null,schemaId:u??O9e,sessionId:h};return hZ(F),F},[t,e,n,r,i,a,c,u,h]);return(0,CW.jsx)(hoe.Provider,{value:g,children:(0,CW.jsx)(S7e,{children:(0,CW.jsx)(_W,{children:o})})})}Si();p();var D9e=he(De());function B9e({children:t}){let{testnet:e,cdpClientKey:n,appName:r,appLogo:o}=window.x402;return(0,D9e.jsx)(Cie,{apiKey:n||void 0,chain:e?xs:Yn,config:{appearance:{mode:\"light\",theme:\"base\",name:r||void 0,logo:o||void 0},wallet:{display:\"modal\",supportedWallets:{rabby:!0,trust:!0,frame:!0}}},children:t})}p();p();p();var Ff=he(De(),1),u2=he(et(),1);p();p();var AW=he(et(),1);function F9e(){let[t,e]=(0,AW.useState)(\"light\");return(0,AW.useEffect)(()=>{let n=window.matchMedia(\"(prefers-color-scheme: dark)\");e(n.matches?\"dark\":\"light\");function r(o){e(o.matches?\"dark\":\"light\")}return n.addEventListener(\"change\",r),()=>n.removeEventListener(\"change\",r)},[]),t}function ji(){let t=F9e(),{config:{appearance:e}={}}=lo(),{theme:n=\"default\",mode:r=\"auto\"}=e||{};if(n===\"cyberpunk\"||n===\"hacker\")return n;switch(r){case\"auto\":return`${n}-${t}`;case\"dark\":return`${n}-dark`;case\"light\":return`${n}-light`;default:return`${n}-${t}`}}p();p();function U9e(t){var e,n,r=\"\";if(typeof t==\"string\"||typeof t==\"number\")r+=t;else if(typeof t==\"object\")if(Array.isArray(t)){var o=t.length;for(e=0;e<o;e++)t[e]&&(n=U9e(t[e]))&&(r&&(r+=\" \"),r+=n)}else for(n in t)t[n]&&(r&&(r+=\" \"),r+=n);return r}function j9e(){for(var t,e,n=0,r=\"\",o=arguments.length;n<o;n++)(t=arguments[n])&&(e=U9e(t))&&(r&&(r+=\" \"),r+=e);return r}p();var Rie=\"-\",Hmt=t=>{let e=Wmt(t),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=t;return{getClassGroupId:a=>{let c=a.split(Rie);return c[0]===\"\"&&c.length!==1&&c.shift(),q9e(c,e)||qmt(a)},getConflictingClassGroupIds:(a,c)=>{let u=n[a]||[];return c&&r[a]?[...u,...r[a]]:u}}},q9e=(t,e)=>{if(t.length===0)return e.classGroupId;let n=t[0],r=e.nextPart.get(n),o=r?q9e(t.slice(1),r):void 0;if(o)return o;if(e.validators.length===0)return;let i=t.join(Rie);return e.validators.find(({validator:a})=>a(i))?.classGroupId},z9e=/^\\\\[(.+)\\\\]$/,qmt=t=>{if(z9e.test(t)){let e=z9e.exec(t)[1],n=e?.substring(0,e.indexOf(\":\"));if(n)return\"arbitrary..\"+n}},Wmt=t=>{let{theme:e,prefix:n}=t,r={nextPart:new Map,validators:[]};return $mt(Object.entries(t.classGroups),n).forEach(([i,a])=>{Tie(a,r,i,e)}),r},Tie=(t,e,n,r)=>{t.forEach(o=>{if(typeof o==\"string\"){let i=o===\"\"?e:H9e(e,o);i.classGroupId=n;return}if(typeof o==\"function\"){if(Vmt(o)){Tie(o(r),e,n,r);return}e.validators.push({validator:o,classGroupId:n});return}Object.entries(o).forEach(([i,a])=>{Tie(a,H9e(e,i),n,r)})})},H9e=(t,e)=>{let n=t;return e.split(Rie).forEach(r=>{n.nextPart.has(r)||n.nextPart.set(r,{nextPart:new Map,validators:[]}),n=n.nextPart.get(r)}),n},Vmt=t=>t.isThemeGetter,$mt=(t,e)=>e?t.map(([n,r])=>{let o=r.map(i=>typeof i==\"string\"?e+i:typeof i==\"object\"?Object.fromEntries(Object.entries(i).map(([a,c])=>[e+a,c])):i);return[n,o]}):t,Kmt=t=>{if(t<1)return{get:()=>{},set:()=>{}};let e=0,n=new Map,r=new Map,o=(i,a)=>{n.set(i,a),e++,e>t&&(e=0,r=n,n=new Map)};return{get(i){let a=n.get(i);if(a!==void 0)return a;if((a=r.get(i))!==void 0)return o(i,a),a},set(i,a){n.has(i)?n.set(i,a):o(i,a)}}},W9e=\"!\",Gmt=t=>{let{separator:e,experimentalParseClassName:n}=t,r=e.length===1,o=e[0],i=e.length,a=c=>{let u=[],d=0,h=0,m;for(let T=0;T<c.length;T++){let R=c[T];if(d===0){if(R===o&&(r||c.slice(T,T+i)===e)){u.push(c.slice(h,T)),h=T+i;continue}if(R===\"/\"){m=T;continue}}R===\"[\"?d++:R===\"]\"&&d--}let g=u.length===0?c:c.substring(h),b=g.startsWith(W9e),E=b?g.substring(1):g,C=m&&m>h?m-h:void 0;return{modifiers:u,hasImportantModifier:b,baseClassName:E,maybePostfixModifierPosition:C}};return n?c=>n({className:c,parseClassName:a}):a},Zmt=t=>{if(t.length<=1)return t;let e=[],n=[];return t.forEach(r=>{r[0]===\"[\"?(e.push(...n.sort(),r),n=[]):n.push(r)}),e.push(...n.sort()),e},Ymt=t=>({cache:Kmt(t.cacheSize),parseClassName:Gmt(t),...Hmt(t)}),Qmt=/\\\\s+/,Jmt=(t,e)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:o}=e,i=[],a=t.trim().split(Qmt),c=\"\";for(let u=a.length-1;u>=0;u-=1){let d=a[u],{modifiers:h,hasImportantModifier:m,baseClassName:g,maybePostfixModifierPosition:b}=n(d),E=!!b,C=r(E?g.substring(0,b):g);if(!C){if(!E){c=d+(c.length>0?\" \"+c:c);continue}if(C=r(g),!C){c=d+(c.length>0?\" \"+c:c);continue}E=!1}let T=Zmt(h).join(\":\"),R=m?T+W9e:T,L=R+C;if(i.includes(L))continue;i.push(L);let D=o(C,E);for(let G=0;G<D.length;++G){let W=D[G];i.push(R+W)}c=d+(c.length>0?\" \"+c:c)}return c};function Xmt(){let t=0,e,n,r=\"\";for(;t<arguments.length;)(e=arguments[t++])&&(n=V9e(e))&&(r&&(r+=\" \"),r+=n);return r}var V9e=t=>{if(typeof t==\"string\")return t;let e,n=\"\";for(let r=0;r<t.length;r++)t[r]&&(e=V9e(t[r]))&&(n&&(n+=\" \"),n+=e);return n};function e0t(t,...e){let n,r,o,i=a;function a(u){let d=e.reduce((h,m)=>m(h),t());return n=Ymt(d),r=n.cache.get,o=n.cache.set,i=c,c(u)}function c(u){let d=r(u);if(d)return d;let h=Jmt(u,n);return o(u,h),h}return function(){return i(Xmt.apply(null,arguments))}}var es=t=>{let e=n=>n[t]||[];return e.isThemeGetter=!0,e},$9e=/^\\\\[(?:([a-z-]+):)?(.+)\\\\]$/i,t0t=/^\\\\d+\\\\/\\\\d+$/,n0t=new Set([\"px\",\"full\",\"screen\"]),r0t=/^(\\\\d+(\\\\.\\\\d+)?)?(xs|sm|md|lg|xl)$/,o0t=/\\\\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\\\\b(calc|min|max|clamp)\\\\(.+\\\\)|^0$/,i0t=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\\\\(.+\\\\)$/,s0t=/^(inset_)?-?((\\\\d+)?\\\\.?(\\\\d+)[a-z]+|0)_-?((\\\\d+)?\\\\.?(\\\\d+)[a-z]+|0)/,a0t=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\\\\(.+\\\\)$/,l2=t=>eT(t)||n0t.has(t)||t0t.test(t),A3=t=>tT(t,\"length\",m0t),eT=t=>!!t&&!Number.isNaN(Number(t)),Aie=t=>tT(t,\"number\",eT),IP=t=>!!t&&Number.isInteger(Number(t)),c0t=t=>t.endsWith(\"%\")&&eT(t.slice(0,-1)),lr=t=>$9e.test(t),T3=t=>r0t.test(t),l0t=new Set([\"length\",\"size\",\"percentage\"]),u0t=t=>tT(t,l0t,K9e),d0t=t=>tT(t,\"position\",K9e),f0t=new Set([\"image\",\"url\"]),h0t=t=>tT(t,f0t,y0t),p0t=t=>tT(t,\"\",g0t),OP=()=>!0,tT=(t,e,n)=>{let r=$9e.exec(t);return r?r[1]?typeof e==\"string\"?r[1]===e:e.has(r[1]):n(r[2]):!1},m0t=t=>o0t.test(t)&&!i0t.test(t),K9e=()=>!1,g0t=t=>s0t.test(t),y0t=t=>a0t.test(t);var b0t=()=>{let t=es(\"colors\"),e=es(\"spacing\"),n=es(\"blur\"),r=es(\"brightness\"),o=es(\"borderColor\"),i=es(\"borderRadius\"),a=es(\"borderSpacing\"),c=es(\"borderWidth\"),u=es(\"contrast\"),d=es(\"grayscale\"),h=es(\"hueRotate\"),m=es(\"invert\"),g=es(\"gap\"),b=es(\"gradientColorStops\"),E=es(\"gradientColorStopPositions\"),C=es(\"inset\"),T=es(\"margin\"),R=es(\"opacity\"),L=es(\"padding\"),D=es(\"saturate\"),G=es(\"scale\"),W=es(\"sepia\"),J=es(\"skew\"),ne=es(\"space\"),ie=es(\"translate\"),Z=()=>[\"auto\",\"contain\",\"none\"],ae=()=>[\"auto\",\"hidden\",\"clip\",\"visible\",\"scroll\"],V=()=>[\"auto\",lr,e],$=()=>[lr,e],F=()=>[\"\",l2,A3],_=()=>[\"auto\",eT,lr],O=()=>[\"bottom\",\"center\",\"left\",\"left-bottom\",\"left-top\",\"right\",\"right-bottom\",\"right-top\",\"top\"],z=()=>[\"solid\",\"dashed\",\"dotted\",\"double\",\"none\"],N=()=>[\"normal\",\"multiply\",\"screen\",\"overlay\",\"darken\",\"lighten\",\"color-dodge\",\"color-burn\",\"hard-light\",\"soft-light\",\"difference\",\"exclusion\",\"hue\",\"saturation\",\"color\",\"luminosity\"],B=()=>[\"start\",\"end\",\"center\",\"between\",\"around\",\"evenly\",\"stretch\"],j=()=>[\"\",\"0\",lr],q=()=>[\"auto\",\"avoid\",\"all\",\"avoid-page\",\"page\",\"left\",\"right\",\"column\"],H=()=>[eT,lr];return{cacheSize:500,separator:\":\",theme:{colors:[OP],spacing:[l2,A3],blur:[\"none\",\"\",T3,lr],brightness:H(),borderColor:[t],borderRadius:[\"none\",\"\",\"full\",T3,lr],borderSpacing:$(),borderWidth:F(),contrast:H(),grayscale:j(),hueRotate:H(),invert:j(),gap:$(),gradientColorStops:[t],gradientColorStopPositions:[c0t,A3],inset:V(),margin:V(),opacity:H(),padding:$(),saturate:H(),scale:H(),sepia:j(),skew:H(),space:$(),translate:$()},classGroups:{aspect:[{aspect:[\"auto\",\"square\",\"video\",lr]}],container:[\"container\"],columns:[{columns:[T3]}],\"break-after\":[{\"break-after\":q()}],\"break-before\":[{\"break-before\":q()}],\"break-inside\":[{\"break-inside\":[\"auto\",\"avoid\",\"avoid-page\",\"avoid-column\"]}],\"box-decoration\":[{\"box-decoration\":[\"slice\",\"clone\"]}],box:[{box:[\"border\",\"content\"]}],display:[\"block\",\"inline-block\",\"inline\",\"flex\",\"inline-flex\",\"table\",\"inline-table\",\"table-caption\",\"table-cell\",\"table-column\",\"table-column-group\",\"table-footer-group\",\"table-header-group\",\"table-row-group\",\"table-row\",\"flow-root\",\"grid\",\"inline-grid\",\"contents\",\"list-item\",\"hidden\"],float:[{float:[\"right\",\"left\",\"none\",\"start\",\"end\"]}],clear:[{clear:[\"left\",\"right\",\"both\",\"none\",\"start\",\"end\"]}],isolation:[\"isolate\",\"isolation-auto\"],\"object-fit\":[{object:[\"contain\",\"cover\",\"fill\",\"none\",\"scale-down\"]}],\"object-position\":[{object:[...O(),lr]}],overflow:[{overflow:ae()}],\"overflow-x\":[{\"overflow-x\":ae()}],\"overflow-y\":[{\"overflow-y\":ae()}],overscroll:[{overscroll:Z()}],\"overscroll-x\":[{\"overscroll-x\":Z()}],\"overscroll-y\":[{\"overscroll-y\":Z()}],position:[\"static\",\"fixed\",\"absolute\",\"relative\",\"sticky\"],inset:[{inset:[C]}],\"inset-x\":[{\"inset-x\":[C]}],\"inset-y\":[{\"inset-y\":[C]}],start:[{start:[C]}],end:[{end:[C]}],top:[{top:[C]}],right:[{right:[C]}],bottom:[{bottom:[C]}],left:[{left:[C]}],visibility:[\"visible\",\"invisible\",\"collapse\"],z:[{z:[\"auto\",IP,lr]}],basis:[{basis:V()}],\"flex-direction\":[{flex:[\"row\",\"row-reverse\",\"col\",\"col-reverse\"]}],\"flex-wrap\":[{flex:[\"wrap\",\"wrap-reverse\",\"nowrap\"]}],flex:[{flex:[\"1\",\"auto\",\"initial\",\"none\",lr]}],grow:[{grow:j()}],shrink:[{shrink:j()}],order:[{order:[\"first\",\"last\",\"none\",IP,lr]}],\"grid-cols\":[{\"grid-cols\":[OP]}],\"col-start-end\":[{col:[\"auto\",{span:[\"full\",IP,lr]},lr]}],\"col-start\":[{\"col-start\":_()}],\"col-end\":[{\"col-end\":_()}],\"grid-rows\":[{\"grid-rows\":[OP]}],\"row-start-end\":[{row:[\"auto\",{span:[IP,lr]},lr]}],\"row-start\":[{\"row-start\":_()}],\"row-end\":[{\"row-end\":_()}],\"grid-flow\":[{\"grid-flow\":[\"row\",\"col\",\"dense\",\"row-dense\",\"col-dense\"]}],\"auto-cols\":[{\"auto-cols\":[\"auto\",\"min\",\"max\",\"fr\",lr]}],\"auto-rows\":[{\"auto-rows\":[\"auto\",\"min\",\"max\",\"fr\",lr]}],gap:[{gap:[g]}],\"gap-x\":[{\"gap-x\":[g]}],\"gap-y\":[{\"gap-y\":[g]}],\"justify-content\":[{justify:[\"normal\",...B()]}],\"justify-items\":[{\"justify-items\":[\"start\",\"end\",\"center\",\"stretch\"]}],\"justify-self\":[{\"justify-self\":[\"auto\",\"start\",\"end\",\"center\",\"stretch\"]}],\"align-content\":[{content:[\"normal\",...B(),\"baseline\"]}],\"align-items\":[{items:[\"start\",\"end\",\"center\",\"baseline\",\"stretch\"]}],\"align-self\":[{self:[\"auto\",\"start\",\"end\",\"center\",\"stretch\",\"baseline\"]}],\"place-content\":[{\"place-content\":[...B(),\"baseline\"]}],\"place-items\":[{\"place-items\":[\"start\",\"end\",\"center\",\"baseline\",\"stretch\"]}],\"place-self\":[{\"place-self\":[\"auto\",\"start\",\"end\",\"center\",\"stretch\"]}],p:[{p:[L]}],px:[{px:[L]}],py:[{py:[L]}],ps:[{ps:[L]}],pe:[{pe:[L]}],pt:[{pt:[L]}],pr:[{pr:[L]}],pb:[{pb:[L]}],pl:[{pl:[L]}],m:[{m:[T]}],mx:[{mx:[T]}],my:[{my:[T]}],ms:[{ms:[T]}],me:[{me:[T]}],mt:[{mt:[T]}],mr:[{mr:[T]}],mb:[{mb:[T]}],ml:[{ml:[T]}],\"space-x\":[{\"space-x\":[ne]}],\"space-x-reverse\":[\"space-x-reverse\"],\"space-y\":[{\"space-y\":[ne]}],\"space-y-reverse\":[\"space-y-reverse\"],w:[{w:[\"auto\",\"min\",\"max\",\"fit\",\"svw\",\"lvw\",\"dvw\",lr,e]}],\"min-w\":[{\"min-w\":[lr,e,\"min\",\"max\",\"fit\"]}],\"max-w\":[{\"max-w\":[lr,e,\"none\",\"full\",\"min\",\"max\",\"fit\",\"prose\",{screen:[T3]},T3]}],h:[{h:[lr,e,\"auto\",\"min\",\"max\",\"fit\",\"svh\",\"lvh\",\"dvh\"]}],\"min-h\":[{\"min-h\":[lr,e,\"min\",\"max\",\"fit\",\"svh\",\"lvh\",\"dvh\"]}],\"max-h\":[{\"max-h\":[lr,e,\"min\",\"max\",\"fit\",\"svh\",\"lvh\",\"dvh\"]}],size:[{size:[lr,e,\"auto\",\"min\",\"max\",\"fit\"]}],\"font-size\":[{text:[\"base\",T3,A3]}],\"font-smoothing\":[\"antialiased\",\"subpixel-antialiased\"],\"font-style\":[\"italic\",\"not-italic\"],\"font-weight\":[{font:[\"thin\",\"extralight\",\"light\",\"normal\",\"medium\",\"semibold\",\"bold\",\"extrabold\",\"black\",Aie]}],\"font-family\":[{font:[OP]}],\"fvn-normal\":[\"normal-nums\"],\"fvn-ordinal\":[\"ordinal\"],\"fvn-slashed-zero\":[\"slashed-zero\"],\"fvn-figure\":[\"lining-nums\",\"oldstyle-nums\"],\"fvn-spacing\":[\"proportional-nums\",\"tabular-nums\"],\"fvn-fraction\":[\"diagonal-fractions\",\"stacked-fractions\"],tracking:[{tracking:[\"tighter\",\"tight\",\"normal\",\"wide\",\"wider\",\"widest\",lr]}],\"line-clamp\":[{\"line-clamp\":[\"none\",eT,Aie]}],leading:[{leading:[\"none\",\"tight\",\"snug\",\"normal\",\"relaxed\",\"loose\",l2,lr]}],\"list-image\":[{\"list-image\":[\"none\",lr]}],\"list-style-type\":[{list:[\"none\",\"disc\",\"decimal\",lr]}],\"list-style-position\":[{list:[\"inside\",\"outside\"]}],\"placeholder-color\":[{placeholder:[t]}],\"placeholder-opacity\":[{\"placeholder-opacity\":[R]}],\"text-alignment\":[{text:[\"left\",\"center\",\"right\",\"justify\",\"start\",\"end\"]}],\"text-color\":[{text:[t]}],\"text-opacity\":[{\"text-opacity\":[R]}],\"text-decoration\":[\"underline\",\"overline\",\"line-through\",\"no-underline\"],\"text-decoration-style\":[{decoration:[...z(),\"wavy\"]}],\"text-decoration-thickness\":[{decoration:[\"auto\",\"from-font\",l2,A3]}],\"underline-offset\":[{\"underline-offset\":[\"auto\",l2,lr]}],\"text-decoration-color\":[{decoration:[t]}],\"text-transform\":[\"uppercase\",\"lowercase\",\"capitalize\",\"normal-case\"],\"text-overflow\":[\"truncate\",\"text-ellipsis\",\"text-clip\"],\"text-wrap\":[{text:[\"wrap\",\"nowrap\",\"balance\",\"pretty\"]}],indent:[{indent:$()}],\"vertical-align\":[{align:[\"baseline\",\"top\",\"middle\",\"bottom\",\"text-top\",\"text-bottom\",\"sub\",\"super\",lr]}],whitespace:[{whitespace:[\"normal\",\"nowrap\",\"pre\",\"pre-line\",\"pre-wrap\",\"break-spaces\"]}],break:[{break:[\"normal\",\"words\",\"all\",\"keep\"]}],hyphens:[{hyphens:[\"none\",\"manual\",\"auto\"]}],content:[{content:[\"none\",lr]}],\"bg-attachment\":[{bg:[\"fixed\",\"local\",\"scroll\"]}],\"bg-clip\":[{\"bg-clip\":[\"border\",\"padding\",\"content\",\"text\"]}],\"bg-opacity\":[{\"bg-opacity\":[R]}],\"bg-origin\":[{\"bg-origin\":[\"border\",\"padding\",\"content\"]}],\"bg-position\":[{bg:[...O(),d0t]}],\"bg-repeat\":[{bg:[\"no-repeat\",{repeat:[\"\",\"x\",\"y\",\"round\",\"space\"]}]}],\"bg-size\":[{bg:[\"auto\",\"cover\",\"contain\",u0t]}],\"bg-image\":[{bg:[\"none\",{\"gradient-to\":[\"t\",\"tr\",\"r\",\"br\",\"b\",\"bl\",\"l\",\"tl\"]},h0t]}],\"bg-color\":[{bg:[t]}],\"gradient-from-pos\":[{from:[E]}],\"gradient-via-pos\":[{via:[E]}],\"gradient-to-pos\":[{to:[E]}],\"gradient-from\":[{from:[b]}],\"gradient-via\":[{via:[b]}],\"gradient-to\":[{to:[b]}],rounded:[{rounded:[i]}],\"rounded-s\":[{\"rounded-s\":[i]}],\"rounded-e\":[{\"rounded-e\":[i]}],\"rounded-t\":[{\"rounded-t\":[i]}],\"rounded-r\":[{\"rounded-r\":[i]}],\"rounded-b\":[{\"rounded-b\":[i]}],\"rounded-l\":[{\"rounded-l\":[i]}],\"rounded-ss\":[{\"rounded-ss\":[i]}],\"rounded-se\":[{\"rounded-se\":[i]}],\"rounded-ee\":[{\"rounded-ee\":[i]}],\"rounded-es\":[{\"rounded-es\":[i]}],\"rounded-tl\":[{\"rounded-tl\":[i]}],\"rounded-tr\":[{\"rounded-tr\":[i]}],\"rounded-br\":[{\"rounded-br\":[i]}],\"rounded-bl\":[{\"rounded-bl\":[i]}],\"border-w\":[{border:[c]}],\"border-w-x\":[{\"border-x\":[c]}],\"border-w-y\":[{\"border-y\":[c]}],\"border-w-s\":[{\"border-s\":[c]}],\"border-w-e\":[{\"border-e\":[c]}],\"border-w-t\":[{\"border-t\":[c]}],\"border-w-r\":[{\"border-r\":[c]}],\"border-w-b\":[{\"border-b\":[c]}],\"border-w-l\":[{\"border-l\":[c]}],\"border-opacity\":[{\"border-opacity\":[R]}],\"border-style\":[{border:[...z(),\"hidden\"]}],\"divide-x\":[{\"divide-x\":[c]}],\"divide-x-reverse\":[\"divide-x-reverse\"],\"divide-y\":[{\"divide-y\":[c]}],\"divide-y-reverse\":[\"divide-y-reverse\"],\"divide-opacity\":[{\"divide-opacity\":[R]}],\"divide-style\":[{divide:z()}],\"border-color\":[{border:[o]}],\"border-color-x\":[{\"border-x\":[o]}],\"border-color-y\":[{\"border-y\":[o]}],\"border-color-s\":[{\"border-s\":[o]}],\"border-color-e\":[{\"border-e\":[o]}],\"border-color-t\":[{\"border-t\":[o]}],\"border-color-r\":[{\"border-r\":[o]}],\"border-color-b\":[{\"border-b\":[o]}],\"border-color-l\":[{\"border-l\":[o]}],\"divide-color\":[{divide:[o]}],\"outline-style\":[{outline:[\"\",...z()]}],\"outline-offset\":[{\"outline-offset\":[l2,lr]}],\"outline-w\":[{outline:[l2,A3]}],\"outline-color\":[{outline:[t]}],\"ring-w\":[{ring:F()}],\"ring-w-inset\":[\"ring-inset\"],\"ring-color\":[{ring:[t]}],\"ring-opacity\":[{\"ring-opacity\":[R]}],\"ring-offset-w\":[{\"ring-offset\":[l2,A3]}],\"ring-offset-color\":[{\"ring-offset\":[t]}],shadow:[{shadow:[\"\",\"inner\",\"none\",T3,p0t]}],\"shadow-color\":[{shadow:[OP]}],opacity:[{opacity:[R]}],\"mix-blend\":[{\"mix-blend\":[...N(),\"plus-lighter\",\"plus-darker\"]}],\"bg-blend\":[{\"bg-blend\":N()}],filter:[{filter:[\"\",\"none\"]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[u]}],\"drop-shadow\":[{\"drop-shadow\":[\"\",\"none\",T3,lr]}],grayscale:[{grayscale:[d]}],\"hue-rotate\":[{\"hue-rotate\":[h]}],invert:[{invert:[m]}],saturate:[{saturate:[D]}],sepia:[{sepia:[W]}],\"backdrop-filter\":[{\"backdrop-filter\":[\"\",\"none\"]}],\"backdrop-blur\":[{\"backdrop-blur\":[n]}],\"backdrop-brightness\":[{\"backdrop-brightness\":[r]}],\"backdrop-contrast\":[{\"backdrop-contrast\":[u]}],\"backdrop-grayscale\":[{\"backdrop-grayscale\":[d]}],\"backdrop-hue-rotate\":[{\"backdrop-hue-rotate\":[h]}],\"backdrop-invert\":[{\"backdrop-invert\":[m]}],\"backdrop-opacity\":[{\"backdrop-opacity\":[R]}],\"backdrop-saturate\":[{\"backdrop-saturate\":[D]}],\"backdrop-sepia\":[{\"backdrop-sepia\":[W]}],\"border-collapse\":[{border:[\"collapse\",\"separate\"]}],\"border-spacing\":[{\"border-spacing\":[a]}],\"border-spacing-x\":[{\"border-spacing-x\":[a]}],\"border-spacing-y\":[{\"border-spacing-y\":[a]}],\"table-layout\":[{table:[\"auto\",\"fixed\"]}],caption:[{caption:[\"top\",\"bottom\"]}],transition:[{transition:[\"none\",\"all\",\"\",\"colors\",\"opacity\",\"shadow\",\"transform\",lr]}],duration:[{duration:H()}],ease:[{ease:[\"linear\",\"in\",\"out\",\"in-out\",lr]}],delay:[{delay:H()}],animate:[{animate:[\"none\",\"spin\",\"ping\",\"pulse\",\"bounce\",lr]}],transform:[{transform:[\"\",\"gpu\",\"none\"]}],scale:[{scale:[G]}],\"scale-x\":[{\"scale-x\":[G]}],\"scale-y\":[{\"scale-y\":[G]}],rotate:[{rotate:[IP,lr]}],\"translate-x\":[{\"translate-x\":[ie]}],\"translate-y\":[{\"translate-y\":[ie]}],\"skew-x\":[{\"skew-x\":[J]}],\"skew-y\":[{\"skew-y\":[J]}],\"transform-origin\":[{origin:[\"center\",\"top\",\"top-right\",\"right\",\"bottom-right\",\"bottom\",\"bottom-left\",\"left\",\"top-left\",lr]}],accent:[{accent:[\"auto\",t]}],appearance:[{appearance:[\"none\",\"auto\"]}],cursor:[{cursor:[\"auto\",\"default\",\"pointer\",\"wait\",\"text\",\"move\",\"help\",\"not-allowed\",\"none\",\"context-menu\",\"progress\",\"cell\",\"crosshair\",\"vertical-text\",\"alias\",\"copy\",\"no-drop\",\"grab\",\"grabbing\",\"all-scroll\",\"col-resize\",\"row-resize\",\"n-resize\",\"e-resize\",\"s-resize\",\"w-resize\",\"ne-resize\",\"nw-resize\",\"se-resize\",\"sw-resize\",\"ew-resize\",\"ns-resize\",\"nesw-resize\",\"nwse-resize\",\"zoom-in\",\"zoom-out\",lr]}],\"caret-color\":[{caret:[t]}],\"pointer-events\":[{\"pointer-events\":[\"none\",\"auto\"]}],resize:[{resize:[\"none\",\"y\",\"x\",\"\"]}],\"scroll-behavior\":[{scroll:[\"auto\",\"smooth\"]}],\"scroll-m\":[{\"scroll-m\":$()}],\"scroll-mx\":[{\"scroll-mx\":$()}],\"scroll-my\":[{\"scroll-my\":$()}],\"scroll-ms\":[{\"scroll-ms\":$()}],\"scroll-me\":[{\"scroll-me\":$()}],\"scroll-mt\":[{\"scroll-mt\":$()}],\"scroll-mr\":[{\"scroll-mr\":$()}],\"scroll-mb\":[{\"scroll-mb\":$()}],\"scroll-ml\":[{\"scroll-ml\":$()}],\"scroll-p\":[{\"scroll-p\":$()}],\"scroll-px\":[{\"scroll-px\":$()}],\"scroll-py\":[{\"scroll-py\":$()}],\"scroll-ps\":[{\"scroll-ps\":$()}],\"scroll-pe\":[{\"scroll-pe\":$()}],\"scroll-pt\":[{\"scroll-pt\":$()}],\"scroll-pr\":[{\"scroll-pr\":$()}],\"scroll-pb\":[{\"scroll-pb\":$()}],\"scroll-pl\":[{\"scroll-pl\":$()}],\"snap-align\":[{snap:[\"start\",\"end\",\"center\",\"align-none\"]}],\"snap-stop\":[{snap:[\"normal\",\"always\"]}],\"snap-type\":[{snap:[\"none\",\"x\",\"y\",\"both\"]}],\"snap-strictness\":[{snap:[\"mandatory\",\"proximity\"]}],touch:[{touch:[\"auto\",\"none\",\"manipulation\"]}],\"touch-x\":[{\"touch-pan\":[\"x\",\"left\",\"right\"]}],\"touch-y\":[{\"touch-pan\":[\"y\",\"up\",\"down\"]}],\"touch-pz\":[\"touch-pinch-zoom\"],select:[{select:[\"none\",\"text\",\"all\",\"auto\"]}],\"will-change\":[{\"will-change\":[\"auto\",\"scroll\",\"contents\",\"transform\",lr]}],fill:[{fill:[t,\"none\"]}],\"stroke-w\":[{stroke:[l2,A3,Aie]}],stroke:[{stroke:[t,\"none\"]}],sr:[\"sr-only\",\"not-sr-only\"],\"forced-color-adjust\":[{\"forced-color-adjust\":[\"auto\",\"none\"]}]},conflictingClassGroups:{overflow:[\"overflow-x\",\"overflow-y\"],overscroll:[\"overscroll-x\",\"overscroll-y\"],inset:[\"inset-x\",\"inset-y\",\"start\",\"end\",\"top\",\"right\",\"bottom\",\"left\"],\"inset-x\":[\"right\",\"left\"],\"inset-y\":[\"top\",\"bottom\"],flex:[\"basis\",\"grow\",\"shrink\"],gap:[\"gap-x\",\"gap-y\"],p:[\"px\",\"py\",\"ps\",\"pe\",\"pt\",\"pr\",\"pb\",\"pl\"],px:[\"pr\",\"pl\"],py:[\"pt\",\"pb\"],m:[\"mx\",\"my\",\"ms\",\"me\",\"mt\",\"mr\",\"mb\",\"ml\"],mx:[\"mr\",\"ml\"],my:[\"mt\",\"mb\"],size:[\"w\",\"h\"],\"font-size\":[\"leading\"],\"fvn-normal\":[\"fvn-ordinal\",\"fvn-slashed-zero\",\"fvn-figure\",\"fvn-spacing\",\"fvn-fraction\"],\"fvn-ordinal\":[\"fvn-normal\"],\"fvn-slashed-zero\":[\"fvn-normal\"],\"fvn-figure\":[\"fvn-normal\"],\"fvn-spacing\":[\"fvn-normal\"],\"fvn-fraction\":[\"fvn-normal\"],\"line-clamp\":[\"display\",\"overflow\"],rounded:[\"rounded-s\",\"rounded-e\",\"rounded-t\",\"rounded-r\",\"rounded-b\",\"rounded-l\",\"rounded-ss\",\"rounded-se\",\"rounded-ee\",\"rounded-es\",\"rounded-tl\",\"rounded-tr\",\"rounded-br\",\"rounded-bl\"],\"rounded-s\":[\"rounded-ss\",\"rounded-es\"],\"rounded-e\":[\"rounded-se\",\"rounded-ee\"],\"rounded-t\":[\"rounded-tl\",\"rounded-tr\"],\"rounded-r\":[\"rounded-tr\",\"rounded-br\"],\"rounded-b\":[\"rounded-br\",\"rounded-bl\"],\"rounded-l\":[\"rounded-tl\",\"rounded-bl\"],\"border-spacing\":[\"border-spacing-x\",\"border-spacing-y\"],\"border-w\":[\"border-w-s\",\"border-w-e\",\"border-w-t\",\"border-w-r\",\"border-w-b\",\"border-w-l\"],\"border-w-x\":[\"border-w-r\",\"border-w-l\"],\"border-w-y\":[\"border-w-t\",\"border-w-b\"],\"border-color\":[\"border-color-s\",\"border-color-e\",\"border-color-t\",\"border-color-r\",\"border-color-b\",\"border-color-l\"],\"border-color-x\":[\"border-color-r\",\"border-color-l\"],\"border-color-y\":[\"border-color-t\",\"border-color-b\"],\"scroll-m\":[\"scroll-mx\",\"scroll-my\",\"scroll-ms\",\"scroll-me\",\"scroll-mt\",\"scroll-mr\",\"scroll-mb\",\"scroll-ml\"],\"scroll-mx\":[\"scroll-mr\",\"scroll-ml\"],\"scroll-my\":[\"scroll-mt\",\"scroll-mb\"],\"scroll-p\":[\"scroll-px\",\"scroll-py\",\"scroll-ps\",\"scroll-pe\",\"scroll-pt\",\"scroll-pr\",\"scroll-pb\",\"scroll-pl\"],\"scroll-px\":[\"scroll-pr\",\"scroll-pl\"],\"scroll-py\":[\"scroll-pt\",\"scroll-pb\"],touch:[\"touch-x\",\"touch-y\",\"touch-pz\"],\"touch-x\":[\"touch\"],\"touch-y\":[\"touch\"],\"touch-pz\":[\"touch\"]},conflictingClassGroupModifiers:{\"font-size\":[\"leading\"]}}};var G9e=e0t(b0t);function ge(...t){return G9e(j9e(t))}var Xe={base:\"ock-font-family\",body:\"ock-font-family font-normal text-base\",caption:\"ock-font-family font-semibold text-xs\",headline:\"ock-font-family font-semibold\",label1:\"ock-font-family font-semibold text-sm\",label2:\"ock-font-family text-sm\",legal:\"ock-font-family text-xs\",title1:\"ock-font-family font-semibold text-2xl\",title3:\"ock-font-family font-semibold text-xl\"},Ht={default:\"cursor-pointer ock-bg-default active:bg-[var(--ock-bg-default-active)] hover:bg-[var(--ock-bg-default-hover)]\",alternate:\"cursor-pointer ock-bg-alternate active:bg-[var(--ock-bg-alternate-active)] hover:bg-[var(--ock-bg-alternate-hover)]\",inverse:\"cursor-pointer ock-bg-inverse active:bg-[var(--ock-bg-inverse-active)] hover:bg-[var(--ock-bg-inverse-hover)]\",primary:\"cursor-pointer ock-bg-primary active:bg-[var(--ock-bg-primary-active)] hover:bg-[var(--ock-bg-primary-hover)]\",secondary:\"cursor-pointer ock-bg-secondary active:bg-[var(--ock-bg-secondary-active)] hover:bg-[var(--ock-bg-secondary-hover)]\",coinbaseBranding:\"cursor-pointer bg-[#0052FF] hover:bg-[#0045D8]\",shadow:\"ock-shadow-default\",disabled:\"opacity-[0.38] pointer-events-none\"},dn={default:\"ock-bg-default\",alternate:\"ock-bg-alternate\",inverse:\"ock-bg-inverse\",primary:\"ock-bg-primary\",secondary:\"ock-bg-secondary\",error:\"ock-bg-error\",warning:\"ock-bg-warning\",success:\"ock-bg-success\",washed:\"ock-bg-primary-washed\",disabled:\"ock-bg-primary-disabled\",reverse:\"ock-bg-default-reverse\"},it={inverse:\"ock-text-inverse\",foreground:\"ock-text-foreground\",foregroundMuted:\"ock-text-foreground-muted\",error:\"ock-text-error\",primary:\"ock-text-primary\",success:\"ock-text-success\",warning:\"ock-text-warning\",disabled:\"ock-text-disabled\"};var mt={default:\"ock-border-default\",defaultActive:\"ock-border-default-active\",linePrimary:\"ock-border-line-primary border\",lineDefault:\"ock-border-line-default border\",lineHeavy:\"ock-border-line-heavy border\",lineInverse:\"ock-border-line-inverse border\",radius:\"ock-border-radius\",radiusInner:\"ock-border-radius-inner\"};var Kt={primary:\"ock-icon-color-primary\",foreground:\"ock-icon-color-foreground\",foregroundMuted:\"ock-icon-color-foreground-muted\",inverse:\"ock-icon-color-inverse\",error:\"ock-icon-color-error\",success:\"ock-icon-color-success\",warning:\"ock-icon-color-warning\"};p();var dk=he(et(),1),Z9e=t=>{let e=(0,dk.useRef)(null),n=(0,dk.useCallback)(o=>{e.current&&clearInterval(e.current),e.current=window.setInterval(()=>{o.closed&&(e.current&&(clearInterval(e.current),e.current=null),t?.())},500)},[t]),r=(0,dk.useCallback)(()=>{e.current&&(clearInterval(e.current),e.current=null)},[]);return(0,dk.useEffect)(()=>()=>r(),[r]),{startPopupMonitor:n,stopPopupMonitor:r}};p();var PP=he(De(),1),TW=({fill:t=\"#E11D48\"})=>(0,PP.jsxs)(\"svg\",{\"aria-label\":\"ock-errorSvg\",width:\"16\",height:\"16\",viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",\"data-testid\":\"ock-errorSvg\",children:[(0,PP.jsx)(\"title\",{children:\"Error\"}),(0,PP.jsx)(\"path\",{d:\"M8 16C12.4183 16 16 12.4183 16 8C16 3.58171 12.4183 0 8 0C3.58172 0 0 3.58171 0 8C0 12.4183 3.58172 16 8 16ZM11.7576 5.0909L8.84853 8L11.7576 10.9091L10.9091 11.7576L8 8.84851L5.09093 11.7576L4.2424 10.9091L7.15147 8L4.2424 5.0909L5.09093 4.24239L8 7.15145L10.9091 4.24239L11.7576 5.0909Z\",fill:t})]});p();function Iie({url:t,target:e,height:n,width:r}){let o=Math.round((window.screen.width-r)/2),i=Math.round((window.screen.height-n)/2),a=`width=${r},height=${n},resizable,scrollbars=yes,status=1,left=${o},top=${i}`;return window.open(t,e,a)}p();var zi=()=>({sendAnalytics:kW});p();var Oie=he(De(),1);function jh({className:t}){return(0,Oie.jsx)(\"div\",{className:\"flex h-full items-center justify-center\",\"data-testid\":\"ockSpinner\",children:(0,Oie.jsx)(\"div\",{className:ge(\"animate-spin border-2 border-gray-200 border-t-3\",\"rounded-full border-t-gray-400 px-2.5 py-2.5\",t)})})}p();var MP=he(De(),1);var Y9e=({className:t=ge(Kt.inverse)})=>(0,MP.jsxs)(\"svg\",{\"data-testid\":\"ock-addSvg\",role:\"img\",\"aria-label\":\"ock-addSvg\",width:\"13\",height:\"12\",viewBox:\"0 0 13 12\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,MP.jsx)(\"title\",{children:\"Add\"}),(0,MP.jsx)(\"path\",{d:\"M7.125 0H5.875V5.37501L0.5 5.37501L0.5 6.62501H5.875V12H7.125V6.62501H12.5V5.37501H7.125V0Z\",className:t})]});p();var NP=he(De(),1),nT=({fill:t=\"#65A30D\"})=>(0,NP.jsxs)(\"svg\",{\"aria-label\":\"ock-successSvg\",width:\"16\",height:\"16\",viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",\"data-testid\":\"ock-successSvg\",children:[(0,NP.jsx)(\"title\",{children:\"Success SVG\"}),(0,NP.jsx)(\"path\",{d:\"M8 0C3.58 0 0 3.58 0 8C0 12.42 3.58 16 8 16C12.42 16 16 12.42 16 8C16 3.58 12.42 0 8 0ZM6.72667 11.5333L3.73333 8.54L4.67333 7.6L6.72667 9.65333L11.44 4.94L12.38 5.88L6.72667 11.5333Z\",fill:t})]});p();var Pl=he(De(),1),Ks=he(et(),1);p();var J9e=he(De(),1);p();var Q9e=he(et(),1);function Vc(t){return(0,Q9e.useMemo)(()=>t,[t])}var RW=he(et(),1),v0t={},X9e=(0,RW.createContext)(v0t);function Lf(){return(0,RW.useContext)(X9e)}function IW(t){let{chain:e}=lo(),n=t.chain??e,r=Vc({address:t.address||\"\",chain:n,schemaId:t.schemaId});return(0,J9e.jsx)(X9e.Provider,{value:r,children:t.children})}p();var L1=he(De(),1);p();p();p();bo();Si();function Bf(t){let e=Jw(\"apiKey\");return M9({chain:t,transport:(t===Yn||t===xs)&&!!e?Eh(`${t===Yn?\"https://api.developer.coinbase.com/rpc/v1/base\":\"https://api.developer.coinbase.com/rpc/v1/base-sepolia\"}/${e}`):Eh()})}Si();p();p();p();p();var w0t=\"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\",eIe=new Map([[8217,\"apostrophe\"],[8260,\"fraction slash\"],[12539,\"middle dot\"]]),tIe=4;function x0t(t){let e=0;function n(){return t[e++]<<8|t[e++]}let r=n(),o=1,i=[0,1];for(let W=1;W<r;W++)i.push(o+=n());let a=n(),c=e;e+=a;let u=0,d=0;function h(){return u==0&&(d=d<<8|t[e++],u=8),d>>--u&1}let m=31,g=2**m,b=g>>>1,E=b>>1,C=g-1,T=0;for(let W=0;W<m;W++)T=T<<1|h();let R=[],L=0,D=g;for(;;){let W=Math.floor(((T-L+1)*o-1)/D),J=0,ne=r;for(;ne-J>1;){let ae=J+ne>>>1;W<i[ae]?ne=ae:J=ae}if(J==0)break;R.push(J);let ie=L+Math.floor(D*i[J]/o),Z=L+Math.floor(D*i[J+1]/o)-1;for(;((ie^Z)&b)==0;)T=T<<1&C|h(),ie=ie<<1&C,Z=Z<<1&C|1;for(;ie&~Z&E;)T=T&b|T<<1&C>>>1|h(),ie=ie<<1^b,Z=(Z^b)<<1|b|1;L=ie,D=1+Z-ie}let G=r-4;return R.map(W=>{switch(W-G){case 3:return G+65792+(t[c++]<<16|t[c++]<<8|t[c++]);case 2:return G+256+(t[c++]<<8|t[c++]);case 1:return G+t[c++];default:return W-1}})}function E0t(t){let e=0;return()=>t[e++]}function iIe(t){return E0t(x0t(S0t(t)))}function S0t(t){let e=[];[...\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\"].forEach((o,i)=>e[o.charCodeAt(0)]=i);let n=t.length,r=new Uint8Array(6*n>>3);for(let o=0,i=0,a=0,c=0;o<n;o++)c=c<<6|e[t.charCodeAt(o)],a+=6,a>=8&&(r[i++]=c>>(a-=8));return r}function k0t(t){return t&1?~t>>1:t>>1}function _0t(t,e){let n=Array(t);for(let r=0,o=0;r<t;r++)n[r]=o+=k0t(e());return n}function DP(t,e=0){let n=[];for(;;){let r=t(),o=t();if(!o)break;e+=r;for(let i=0;i<o;i++)n.push(e+i);e+=o+1}return n}function sIe(t){return FP(()=>{let e=DP(t);if(e.length)return e})}function aIe(t){let e=[];for(;;){let n=t();if(n==0)break;e.push(C0t(n,t))}for(;;){let n=t()-1;if(n<0)break;e.push(A0t(n,t))}return e.flat()}function FP(t){let e=[];for(;;){let n=t(e.length);if(!n)break;e.push(n)}return e}function cIe(t,e,n){let r=Array(t).fill().map(()=>[]);for(let o=0;o<e;o++)_0t(t,n).forEach((i,a)=>r[a].push(i));return r}function C0t(t,e){let n=1+e(),r=e(),o=FP(e);return cIe(o.length,1+t,e).flatMap((a,c)=>{let[u,...d]=a;return Array(o[c]).fill().map((h,m)=>{let g=m*r;return[u+m*n,d.map(b=>b+g)]})})}function A0t(t,e){let n=1+e();return cIe(n,1+t,e).map(o=>[o[0],o.slice(1)])}function T0t(t){let e=[],n=DP(t);return o(r([]),[]),e;function r(i){let a=t(),c=FP(()=>{let u=DP(t).map(d=>n[d]);if(u.length)return r(u)});return{S:a,B:c,Q:i}}function o({S:i,B:a},c,u){if(!(i&4&&u===c[c.length-1])){i&2&&(u=c[c.length-1]),i&1&&e.push(c);for(let d of a)for(let h of d.Q)o(d,[...c,h],u)}}}function R0t(t){return t.toString(16).toUpperCase().padStart(2,\"0\")}function lIe(t){return`{${R0t(t)}}`}function I0t(t){let e=[];for(let n=0,r=t.length;n<r;){let o=t.codePointAt(n);n+=o<65536?1:2,e.push(o)}return e}function iT(t){let n=t.length;if(n<4096)return String.fromCodePoint(...t);let r=[];for(let o=0;o<n;)r.push(String.fromCodePoint(...t.slice(o,o+=4096)));return r.join(\"\")}function O0t(t,e){let n=t.length,r=n-e.length;for(let o=0;r==0&&o<n;o++)r=t[o]-e[o];return r}var P0t=\"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\",UP=44032,PW=4352,MW=4449,NW=4519,uIe=19,dIe=21,sT=28,LW=dIe*sT,M0t=uIe*LW,N0t=UP+M0t,L0t=PW+uIe,B0t=MW+dIe,D0t=NW+sT;function LP(t){return t>>24&255}function fIe(t){return t&16777215}var Mie,nIe,Nie,OW;function F0t(){let t=iIe(P0t);Mie=new Map(sIe(t).flatMap((e,n)=>e.map(r=>[r,n+1<<24]))),nIe=new Set(DP(t)),Nie=new Map,OW=new Map;for(let[e,n]of aIe(t)){if(!nIe.has(e)&&n.length==2){let[r,o]=n,i=OW.get(r);i||(i=new Map,OW.set(r,i)),i.set(o,e)}Nie.set(e,n.reverse())}}function hIe(t){return t>=UP&&t<N0t}function U0t(t,e){if(t>=PW&&t<L0t&&e>=MW&&e<B0t)return UP+(t-PW)*LW+(e-MW)*sT;if(hIe(t)&&e>NW&&e<D0t&&(t-UP)%sT==0)return t+(e-NW);{let n=OW.get(t);return n&&(n=n.get(e),n)?n:-1}}function pIe(t){Mie||F0t();let e=[],n=[],r=!1;function o(i){let a=Mie.get(i);a&&(r=!0,i|=a),e.push(i)}for(let i of t)for(;;){if(i<128)e.push(i);else if(hIe(i)){let a=i-UP,c=a/LW|0,u=a%LW/sT|0,d=a%sT;o(PW+c),o(MW+u),d>0&&o(NW+d)}else{let a=Nie.get(i);a?n.push(...a):o(i)}if(!n.length)break;i=n.pop()}if(r&&e.length>1){let i=LP(e[0]);for(let a=1;a<e.length;a++){let c=LP(e[a]);if(c==0||i<=c){i=c;continue}let u=a-1;for(;;){let d=e[u+1];if(e[u+1]=e[u],e[u]=d,!u||(i=LP(e[--u]),i<=c))break}i=LP(e[a])}}return e}function j0t(t){let e=[],n=[],r=-1,o=0;for(let i of t){let a=LP(i),c=fIe(i);if(r==-1)a==0?r=c:e.push(c);else if(o>0&&o>=a)a==0?(e.push(r,...n),n.length=0,r=c):n.push(c),o=a;else{let u=U0t(r,c);u>=0?r=u:o==0&&a==0?(e.push(r),r=c):(n.push(c),o=a)}}return r>=0&&e.push(r,...n),e}function mIe(t){return pIe(t).map(fIe)}function z0t(t){return j0t(pIe(t))}var rIe=45;var gIe=\".\",yIe=65039,bIe=1,BW=t=>Array.from(t);function jP(t,e){return t.P.has(e)||t.Q.has(e)}var Lie=class extends Array{get is_emoji(){return!0}},Bie,vIe,hk,DW,wIe,H0t,oT,Pie,rT,fk,oIe,Die;function Fie(){if(Bie)return;let t=iIe(w0t),e=()=>DP(t),n=()=>new Set(e()),r=(h,m)=>m.forEach(g=>h.add(g));Bie=new Map(aIe(t)),vIe=n(),hk=e(),DW=new Set(e().map(h=>hk[h])),hk=new Set(hk),wIe=n(),H0t=n();let o=sIe(t),i=t(),a=()=>{let h=new Set;return e().forEach(m=>r(h,o[m])),r(h,e()),h};oT=FP(h=>{let m=FP(t).map(g=>g+96);if(m.length){let g=h>=i;m[0]-=32,m=iT(m),g&&(m=`Restricted[${m}]`);let b=a(),E=a(),C=!t();return{N:m,P:b,Q:E,M:C,R:g}}}),Pie=n(),rT=new Map;let c=e().concat(BW(Pie)).sort((h,m)=>h-m);c.forEach((h,m)=>{let g=t(),b=c[m]=g?c[m-g]:{V:[],M:new Map};b.V.push(h),Pie.has(h)||rT.set(h,b)});for(let{V:h,M:m}of new Set(rT.values())){let g=[];for(let E of h){let C=oT.filter(R=>jP(R,E)),T=g.find(({G:R})=>C.some(L=>R.has(L)));T||(T={G:new Set,V:[]},g.push(T)),T.V.push(E),r(T.G,C)}let b=g.flatMap(E=>BW(E.G));for(let{G:E,V:C}of g){let T=new Set(b.filter(R=>!E.has(R)));for(let R of C)m.set(R,T)}}fk=new Set;let u=new Set,d=h=>fk.has(h)?u.add(h):fk.add(h);for(let h of oT){for(let m of h.P)d(m);for(let m of h.Q)d(m)}for(let h of fk)!rT.has(h)&&!u.has(h)&&rT.set(h,bIe);r(fk,mIe(fk)),oIe=T0t(t).map(h=>Lie.from(h)).sort(O0t),Die=new Map;for(let h of oIe){let m=[Die];for(let g of h){let b=m.map(E=>{let C=E.get(g);return C||(C=new Map,E.set(g,C)),C});g===yIe?m.push(...b):m=b}for(let g of m)g.V=h}}function Uie(t){return(xIe(t)?\"\":`${jie(FW([t]))} `)+lIe(t)}function jie(t){return`\"${t}\"\\\\u200E`}function q0t(t){if(t.length>=4&&t[2]==rIe&&t[3]==rIe)throw new Error(`invalid label extension: \"${iT(t.slice(0,4))}\"`)}function W0t(t){for(let n=t.lastIndexOf(95);n>0;)if(t[--n]!==95)throw new Error(\"underscore allowed only at start\")}function V0t(t){let e=t[0],n=eIe.get(e);if(n)throw BP(`leading ${n}`);let r=t.length,o=-1;for(let i=1;i<r;i++){e=t[i];let a=eIe.get(e);if(a){if(o==i)throw BP(`${n} + ${a}`);o=i+1,n=a}}if(o==r)throw BP(`trailing ${n}`)}function FW(t,e=1/0,n=lIe){let r=[];$0t(t[0])&&r.push(\"\\\\u25CC\"),t.length>e&&(e>>=1,t=[...t.slice(0,e),8230,...t.slice(-e)]);let o=0,i=t.length;for(let a=0;a<i;a++){let c=t[a];xIe(c)&&(r.push(iT(t.slice(o,a))),r.push(n(c)),o=a+1)}return r.push(iT(t.slice(o,i))),r.join(\"\")}function $0t(t,e){return Fie(),e?DW.has(t):hk.has(t)}function xIe(t){return Fie(),wIe.has(t)}function EIe(t){return Y0t(K0t(t,z0t,X0t))}function K0t(t,e,n){if(!t)return[];Fie();let r=0;return t.split(gIe).map(o=>{let i=I0t(o),a={input:i,offset:r};r+=i.length+1;try{let c=a.tokens=J0t(i,e,n),u=c.length,d;if(!u)throw new Error(\"empty label\");let h=a.output=c.flat();if(W0t(h),!(a.emoji=u>1||c[0].is_emoji)&&h.every(g=>g<128))q0t(h),d=\"ASCII\";else{let g=c.flatMap(b=>b.is_emoji?[]:b);if(!g.length)d=\"Emoji\";else{if(hk.has(h[0]))throw BP(\"leading combining mark\");for(let C=1;C<u;C++){let T=c[C];if(!T.is_emoji&&hk.has(T[0]))throw BP(`emoji + combining mark: \"${iT(c[C-1])} + ${FW([T[0]])}\"`)}V0t(h);let b=BW(new Set(g)),[E]=Z0t(b);Q0t(E,g),G0t(E,b),d=E.N}}a.type=d}catch(c){a.error=c}return a})}function G0t(t,e){let n,r=[];for(let o of e){let i=rT.get(o);if(i===bIe)return;if(i){let a=i.M.get(o);if(n=n?n.filter(c=>a.has(c)):BW(a),!n.length)return}else r.push(o)}if(n){for(let o of n)if(r.every(i=>jP(o,i)))throw new Error(`whole-script confusable: ${t.N}/${o.N}`)}}function Z0t(t){let e=oT;for(let n of t){let r=e.filter(o=>jP(o,n));if(!r.length)throw oT.some(o=>jP(o,n))?kIe(e[0],n):SIe(n);if(e=r,r.length==1)break}return e}function Y0t(t){return t.map(({input:e,error:n,output:r})=>{if(n){let o=n.message;throw new Error(t.length==1?o:`Invalid label ${jie(FW(e,63))}: ${o}`)}return iT(r)}).join(gIe)}function SIe(t){return new Error(`disallowed character: ${Uie(t)}`)}function kIe(t,e){let n=Uie(e),r=oT.find(o=>o.P.has(e));return r&&(n=`${r.N} ${n}`),new Error(`illegal mixture: ${t.N} + ${n}`)}function BP(t){return new Error(`illegal placement: ${t}`)}function Q0t(t,e){for(let n of e)if(!jP(t,n))throw kIe(t,n);if(t.M){let n=mIe(e);for(let r=1,o=n.length;r<o;r++)if(DW.has(n[r])){let i=r+1;for(let a;i<o&&DW.has(a=n[i]);i++)for(let c=r;c<i;c++)if(n[c]==a)throw new Error(`duplicate non-spacing marks: ${Uie(a)}`);if(i-r>tIe)throw new Error(`excessive non-spacing marks: ${jie(FW(n.slice(r-1,i)))} (${i-r}/${tIe})`);r=i}}}function J0t(t,e,n){let r=[],o=[];for(t=t.slice().reverse();t.length;){let i=egt(t);if(i)o.length&&(r.push(e(o)),o=[]),r.push(n(i));else{let a=t.pop();if(fk.has(a))o.push(a);else{let c=Bie.get(a);if(c)o.push(...c);else if(!vIe.has(a))throw SIe(a)}}}return o.length&&r.push(e(o)),r}function X0t(t){return t.filter(e=>e!=yIe)}function egt(t,e){let n=Die,r,o=t.length;for(;o&&(n=n.get(t[--o]),!!n);){let{V:i}=n;i&&(r=i,e&&e.push(...t.slice(o).reverse()),t.length=o)}return r}function _Ie(t){return EIe(t)}function aT(t){return _Ie(t)}p();p();bo();var CIe=(t,e)=>{let n=Uint8Array.from(t.split(\"\").map(c=>c.charCodeAt(0))),r=cR(n);return Number.parseInt(r,16)%e};var zie=t=>{let e=CIe(t,_ie.length),n=_ie[e];return`data:image/svg+xml;base64,${btoa(n)}`};p();var pk=t=>!!(t.endsWith(\".base.eth\")||t.endsWith(\".basetest.eth\"));var Hie=async({ensName:t,chain:e=li})=>{let n=e6({chainId:e.id}),o=t6({chainId:e.id})||n,i=pk(t);if(!o)return Promise.reject(\"ChainId not supported, avatar resolution is only supported on Ethereum and Base.\");let a=Bf(e),c=null;if(n)try{if(c=await a.getEnsAvatar({name:aT(t),universalResolverAddress:YA[e.id]}),c)return c}catch{}a=Bf(li);let u=await a.getEnsAvatar({name:aT(t)});return u||(i?zie(t):null)};p();var Mu={gcTime:18e5,staleTime:3e5,refetchOnWindowFocus:!1};Si();var qie=({ensName:t,chain:e=li},n)=>{let r=[\"useAvatar\",t,e.id];return pd({queryKey:r,queryFn:()=>Hie({ensName:t,chain:e}),enabled:!!t,...Mu,gcTime:n?.cacheTime,...n})};p();p();Si();p();var Wie=[{inputs:[{internalType:\"contract ENS\",name:\"ens_\",type:\"address\"},{internalType:\"address\",name:\"registrarController_\",type:\"address\"},{internalType:\"address\",name:\"reverseRegistrar_\",type:\"address\"},{internalType:\"address\",name:\"owner_\",type:\"address\"}],stateMutability:\"nonpayable\",type:\"constructor\"},{inputs:[],name:\"AlreadyInitialized\",type:\"error\"},{inputs:[],name:\"CantSetSelfAsDelegate\",type:\"error\"},{inputs:[],name:\"CantSetSelfAsOperator\",type:\"error\"},{inputs:[],name:\"NewOwnerIsZeroAddress\",type:\"error\"},{inputs:[],name:\"NoHandoverRequest\",type:\"error\"},{inputs:[],name:\"Unauthorized\",type:\"error\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!0,internalType:\"uint256\",name:\"contentType\",type:\"uint256\"}],name:\"ABIChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"address\",name:\"a\",type:\"address\"}],name:\"AddrChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"uint256\",name:\"coinType\",type:\"uint256\"},{indexed:!1,internalType:\"bytes\",name:\"newAddress\",type:\"bytes\"}],name:\"AddressChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"owner\",type:\"address\"},{indexed:!0,internalType:\"address\",name:\"operator\",type:\"address\"},{indexed:!1,internalType:\"bool\",name:\"approved\",type:\"bool\"}],name:\"ApprovalForAll\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!1,internalType:\"address\",name:\"owner\",type:\"address\"},{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!0,internalType:\"address\",name:\"delegate\",type:\"address\"},{indexed:!0,internalType:\"bool\",name:\"approved\",type:\"bool\"}],name:\"Approved\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"bytes\",name:\"hash\",type:\"bytes\"}],name:\"ContenthashChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"bytes\",name:\"name\",type:\"bytes\"},{indexed:!1,internalType:\"uint16\",name:\"resource\",type:\"uint16\"},{indexed:!1,internalType:\"bytes\",name:\"record\",type:\"bytes\"}],name:\"DNSRecordChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"bytes\",name:\"name\",type:\"bytes\"},{indexed:!1,internalType:\"uint16\",name:\"resource\",type:\"uint16\"}],name:\"DNSRecordDeleted\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"bytes\",name:\"lastzonehash\",type:\"bytes\"},{indexed:!1,internalType:\"bytes\",name:\"zonehash\",type:\"bytes\"}],name:\"DNSZonehashChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!0,internalType:\"bytes4\",name:\"interfaceID\",type:\"bytes4\"},{indexed:!1,internalType:\"address\",name:\"implementer\",type:\"address\"}],name:\"InterfaceChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"string\",name:\"name\",type:\"string\"}],name:\"NameChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"pendingOwner\",type:\"address\"}],name:\"OwnershipHandoverCanceled\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"pendingOwner\",type:\"address\"}],name:\"OwnershipHandoverRequested\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"oldOwner\",type:\"address\"},{indexed:!0,internalType:\"address\",name:\"newOwner\",type:\"address\"}],name:\"OwnershipTransferred\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"bytes32\",name:\"x\",type:\"bytes32\"},{indexed:!1,internalType:\"bytes32\",name:\"y\",type:\"bytes32\"}],name:\"PubkeyChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"newRegistrarController\",type:\"address\"}],name:\"RegistrarControllerUpdated\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"newReverseRegistrar\",type:\"address\"}],name:\"ReverseRegistrarUpdated\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!0,internalType:\"string\",name:\"indexedKey\",type:\"string\"},{indexed:!1,internalType:\"string\",name:\"key\",type:\"string\"},{indexed:!1,internalType:\"string\",name:\"value\",type:\"string\"}],name:\"TextChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{indexed:!1,internalType:\"uint64\",name:\"newVersion\",type:\"uint64\"}],name:\"VersionChanged\",type:\"event\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"uint256\",name:\"contentTypes\",type:\"uint256\"}],name:\"ABI\",outputs:[{internalType:\"uint256\",name:\"\",type:\"uint256\"},{internalType:\"bytes\",name:\"\",type:\"bytes\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"}],name:\"addr\",outputs:[{internalType:\"address payable\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"uint256\",name:\"coinType\",type:\"uint256\"}],name:\"addr\",outputs:[{internalType:\"bytes\",name:\"\",type:\"bytes\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"address\",name:\"delegate\",type:\"address\"},{internalType:\"bool\",name:\"approved\",type:\"bool\"}],name:\"approve\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[],name:\"cancelOwnershipHandover\",outputs:[],stateMutability:\"payable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"}],name:\"clearRecords\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"pendingOwner\",type:\"address\"}],name:\"completeOwnershipHandover\",outputs:[],stateMutability:\"payable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"}],name:\"contenthash\",outputs:[{internalType:\"bytes\",name:\"\",type:\"bytes\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"name\",type:\"bytes32\"},{internalType:\"uint16\",name:\"resource\",type:\"uint16\"}],name:\"dnsRecord\",outputs:[{internalType:\"bytes\",name:\"\",type:\"bytes\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"ens\",outputs:[{internalType:\"contract ENS\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"name\",type:\"bytes32\"}],name:\"hasDNSRecords\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"bytes4\",name:\"interfaceID\",type:\"bytes4\"}],name:\"interfaceImplementer\",outputs:[{internalType:\"address\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"owner\",type:\"address\"},{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"address\",name:\"delegate\",type:\"address\"}],name:\"isApprovedFor\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"account\",type:\"address\"},{internalType:\"address\",name:\"operator\",type:\"address\"}],name:\"isApprovedForAll\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes[]\",name:\"data\",type:\"bytes[]\"}],name:\"multicall\",outputs:[{internalType:\"bytes[]\",name:\"results\",type:\"bytes[]\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"nodehash\",type:\"bytes32\"},{internalType:\"bytes[]\",name:\"data\",type:\"bytes[]\"}],name:\"multicallWithNodeCheck\",outputs:[{internalType:\"bytes[]\",name:\"results\",type:\"bytes[]\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"}],name:\"name\",outputs:[{internalType:\"string\",name:\"\",type:\"string\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"owner\",outputs:[{internalType:\"address\",name:\"result\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"pendingOwner\",type:\"address\"}],name:\"ownershipHandoverExpiresAt\",outputs:[{internalType:\"uint256\",name:\"result\",type:\"uint256\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"}],name:\"pubkey\",outputs:[{internalType:\"bytes32\",name:\"x\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"y\",type:\"bytes32\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"\",type:\"bytes32\"}],name:\"recordVersions\",outputs:[{internalType:\"uint64\",name:\"\",type:\"uint64\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"registrarController\",outputs:[{internalType:\"address\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"renounceOwnership\",outputs:[],stateMutability:\"payable\",type:\"function\"},{inputs:[],name:\"requestOwnershipHandover\",outputs:[],stateMutability:\"payable\",type:\"function\"},{inputs:[{internalType:\"bytes\",name:\"\",type:\"bytes\"},{internalType:\"bytes\",name:\"data\",type:\"bytes\"}],name:\"resolve\",outputs:[{internalType:\"bytes\",name:\"\",type:\"bytes\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"reverseRegistrar\",outputs:[{internalType:\"address\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"uint256\",name:\"contentType\",type:\"uint256\"},{internalType:\"bytes\",name:\"data\",type:\"bytes\"}],name:\"setABI\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"uint256\",name:\"coinType\",type:\"uint256\"},{internalType:\"bytes\",name:\"a\",type:\"bytes\"}],name:\"setAddr\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"address\",name:\"a\",type:\"address\"}],name:\"setAddr\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"operator\",type:\"address\"},{internalType:\"bool\",name:\"approved\",type:\"bool\"}],name:\"setApprovalForAll\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"bytes\",name:\"hash\",type:\"bytes\"}],name:\"setContenthash\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"bytes\",name:\"data\",type:\"bytes\"}],name:\"setDNSRecords\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"bytes4\",name:\"interfaceID\",type:\"bytes4\"},{internalType:\"address\",name:\"implementer\",type:\"address\"}],name:\"setInterface\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"string\",name:\"newName\",type:\"string\"}],name:\"setName\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"x\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"y\",type:\"bytes32\"}],name:\"setPubkey\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"registrarController_\",type:\"address\"}],name:\"setRegistrarController\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"reverseRegistrar_\",type:\"address\"}],name:\"setReverseRegistrar\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"string\",name:\"key\",type:\"string\"},{internalType:\"string\",name:\"value\",type:\"string\"}],name:\"setText\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"bytes\",name:\"hash\",type:\"bytes\"}],name:\"setZonehash\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"bytes4\",name:\"interfaceID\",type:\"bytes4\"}],name:\"supportsInterface\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"},{internalType:\"string\",name:\"key\",type:\"string\"}],name:\"text\",outputs:[{internalType:\"string\",name:\"\",type:\"string\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"newOwner\",type:\"address\"}],name:\"transferOwnership\",outputs:[],stateMutability:\"payable\",type:\"function\"},{inputs:[{internalType:\"bytes32\",name:\"node\",type:\"bytes32\"}],name:\"zonehash\",outputs:[{internalType:\"bytes\",name:\"\",type:\"bytes\"}],stateMutability:\"view\",type:\"function\"}];p();bo();p();Si();var AIe=t=>t===li.id?\"addr\":((2147483648|t)>>>0).toString(16).toLocaleUpperCase();var Vie=(t,e)=>{let n=t.toLocaleLowerCase(),r=Po(n.substring(2)),o=AIe(e),i=vv(`${o.toLocaleUpperCase()}.reverse`);return Po(eQ([\"bytes32\",\"bytes32\"],[i,r]))};p();Si();var ngt=Bf(li),mk=async({name:t})=>await ngt.getEnsAddress({name:t})??null;var zP=async({address:t,chain:e=li})=>{let n=e6({chainId:e.id});if(!(t6({chainId:e.id})||n))return Promise.reject(\"ChainId not supported, name resolution is only supported on Ethereum and Base.\");let i=Bf(e);if(n){let c=Vie(t,Yn.id);try{let u=await i.readContract({abi:Wie,address:YA[e.id],functionName:\"name\",args:[c]});if(u)try{let d=await mk({name:u});if(d&&d.toLowerCase()===t.toLowerCase())return u}catch(d){console.error(\"Error during basename forward resolution verification:\",d)}}catch{}}let a=Bf(li);try{let c=await a.getEnsName({address:t});if(c)try{let u=await mk({name:c});if(u&&u.toLowerCase()===t.toLowerCase())return c}catch(u){console.error(\"Error during ENS forward resolution verification:\",u)}}catch{}return null};Si();var R3=({address:t,chain:e=li},n)=>{let r=[\"useName\",t,e.id];return pd({queryKey:r,queryFn:()=>zP({address:t,chain:e}),enabled:!!t,...Mu,gcTime:n?.cacheTime,...n})};p();var TIe=he(et(),1);function Nd(t){return e=>{let n=e?.type;return n&&typeof n==\"object\"&&\"_payload\"in n?n._payload.value[2]===t.name:(0,TIe.isValidElement)(e)&&e.type===t}}var rV=he(et(),1);p();var $ie=he(De(),1);var UW=(0,$ie.jsx)(\"svg\",{\"data-testid\":\"ock-defaultAvatarSVG\",role:\"img\",\"aria-label\":\"ock-defaultAvatarSVG\",width:\"100%\",height:\"100%\",viewBox:\"0 0 40 40\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",className:\"h-full w-full\",children:(0,$ie.jsx)(\"path\",{d:\"M20 40C8.9543 40 0 31.0457 0 20C0 8.9543 8.9543 0 20 0C31.0457 0 40 8.9543 40 20C40 31.0457 31.0457 40 20 40ZM25.6641 13.9974C25.6641 10.8692 23.1282 8.33333 20.0001 8.33333C16.8719 8.33333 14.336 10.8692 14.336 13.9974C14.336 17.1256 16.8719 19.6615 20.0001 19.6615C23.1282 19.6615 25.6641 17.1256 25.6641 13.9974ZM11.3453 23.362L9.53476 28.1875C12.2141 30.8475 15.9019 32.493 19.974 32.5H20.026C24.0981 32.493 27.7859 30.8475 30.4653 28.1874L28.6547 23.362C28.0052 21.625 26.3589 20.4771 24.5162 20.4318C24.4557 20.4771 22.462 21.9271 20 21.9271C17.538 21.9271 15.5443 20.4771 15.4839 20.4318C13.6412 20.462 11.9948 21.625 11.3453 23.362Z\",className:Kt.foreground})});p();var jW=he(De(),1),RIe=(0,jW.jsx)(\"svg\",{\"data-testid\":\"ock-defaultLoadingSVG\",role:\"img\",\"aria-label\":\"ock-defaultLoadingSVG\",width:\"100%\",height:\"100%\",viewBox:\"0 0 100 100\",xmlns:\"http://www.w3.org/2000/svg\",children:(0,jW.jsx)(\"circle\",{cx:\"50\",cy:\"50\",r:\"45\",stroke:\"#333\",fill:\"none\",strokeWidth:\"10\",strokeLinecap:\"round\",children:(0,jW.jsx)(\"animateTransform\",{attributeName:\"transform\",type:\"rotate\",from:\"0 50 50\",to:\"360 50 50\",dur:\"1s\",repeatCount:\"indefinite\"})})});p();var yT=he(De(),1);p();p();p();p();p();var zW=JSON;p();var IIe=t=>t.toUpperCase(),OIe=t=>{let e={};return t.forEach((n,r)=>{e[r]=n}),e};p();var PIe=(t,e,n)=>t.document?t:{document:t,variables:e,requestHeaders:n,signal:void 0},MIe=(t,e,n)=>t.query?t:{query:t,variables:e,requestHeaders:n,signal:void 0},NIe=(t,e)=>t.documents?t:{documents:t,requestHeaders:e,signal:void 0};p();p();p();function cT(t,e){if(!!!t)throw new Error(e)}p();p();p();p();function LIe(t){return typeof t==\"object\"&&t!==null}p();p();function BIe(t,e){if(!!!t)throw new Error(e??\"Unexpected invariant triggered.\")}var rgt=/\\\\r\\\\n|[\\\\n\\\\r]/g;function lT(t,e){let n=0,r=1;for(let o of t.body.matchAll(rgt)){if(typeof o.index==\"number\"||BIe(!1),o.index>=e)break;n=o.index+o[0].length,r+=1}return{line:r,column:e+1-n}}p();function Kie(t){return HW(t.source,lT(t.source,t.start))}function HW(t,e){let n=t.locationOffset.column-1,r=\"\".padStart(n)+t.body,o=e.line-1,i=t.locationOffset.line-1,a=e.line+i,c=e.line===1?n:0,u=e.column+c,d=`${t.name}:${a}:${u}\\n`,h=r.split(/\\\\r\\\\n|[\\\\n\\\\r]/g),m=h[o];if(m.length>120){let g=Math.floor(u/80),b=u%80,E=[];for(let C=0;C<m.length;C+=80)E.push(m.slice(C,C+80));return d+DIe([[`${a} |`,E[0]],...E.slice(1,g+1).map(C=>[\"|\",C]),[\"|\",\"^\".padStart(b)],[\"|\",E[g+1]]])}return d+DIe([[`${a-1} |`,h[o-1]],[`${a} |`,m],[\"|\",\"^\".padStart(u)],[`${a+1} |`,h[o+1]]])}function DIe(t){let e=t.filter(([r,o])=>o!==void 0),n=Math.max(...e.map(([r])=>r.length));return e.map(([r,o])=>r.padStart(n)+(o?\" \"+o:\"\")).join(`\\n`)}function ogt(t){let e=t[0];return e==null||\"kind\"in e||\"length\"in e?{nodes:e,source:t[1],positions:t[2],path:t[3],originalError:t[4],extensions:t[5]}:e}var qW=class t extends Error{constructor(e,...n){var r,o,i;let{nodes:a,source:c,positions:u,path:d,originalError:h,extensions:m}=ogt(n);super(e),this.name=\"GraphQLError\",this.path=d??void 0,this.originalError=h??void 0,this.nodes=FIe(Array.isArray(a)?a:a?[a]:void 0);let g=FIe((r=this.nodes)===null||r===void 0?void 0:r.map(E=>E.loc).filter(E=>E!=null));this.source=c??(g==null||(o=g[0])===null||o===void 0?void 0:o.source),this.positions=u??g?.map(E=>E.start),this.locations=u&&c?u.map(E=>lT(c,E)):g?.map(E=>lT(E.source,E.start));let b=LIe(h?.extensions)?h?.extensions:void 0;this.extensions=(i=m??b)!==null&&i!==void 0?i:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),h!=null&&h.stack?Object.defineProperty(this,\"stack\",{value:h.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,t):Object.defineProperty(this,\"stack\",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return\"GraphQLError\"}toString(){let e=this.message;if(this.nodes)for(let n of this.nodes)n.loc&&(e+=`\\n\\n`+Kie(n.loc));else if(this.source&&this.locations)for(let n of this.locations)e+=`\\n\\n`+HW(this.source,n);return e}toJSON(){let e={message:this.message};return this.locations!=null&&(e.locations=this.locations),this.path!=null&&(e.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(e.extensions=this.extensions),e}};function FIe(t){return t===void 0||t.length===0?void 0:t}function $a(t,e,n){return new qW(`Syntax Error: ${n}`,{source:t,positions:[e]})}p();var HP=class{constructor(e,n,r){this.start=e.start,this.end=n.end,this.startToken=e,this.endToken=n,this.source=r}get[Symbol.toStringTag](){return\"Location\"}toJSON(){return{start:this.start,end:this.end}}},uT=class{constructor(e,n,r,o,i,a){this.kind=e,this.start=n,this.end=r,this.line=o,this.column=i,this.value=a,this.prev=null,this.next=null}get[Symbol.toStringTag](){return\"Token\"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}},Gie={Name:[],Document:[\"definitions\"],OperationDefinition:[\"name\",\"variableDefinitions\",\"directives\",\"selectionSet\"],VariableDefinition:[\"variable\",\"type\",\"defaultValue\",\"directives\"],Variable:[\"name\"],SelectionSet:[\"selections\"],Field:[\"alias\",\"name\",\"arguments\",\"directives\",\"selectionSet\"],Argument:[\"name\",\"value\"],FragmentSpread:[\"name\",\"directives\"],InlineFragment:[\"typeCondition\",\"directives\",\"selectionSet\"],FragmentDefinition:[\"name\",\"variableDefinitions\",\"typeCondition\",\"directives\",\"selectionSet\"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:[\"values\"],ObjectValue:[\"fields\"],ObjectField:[\"name\",\"value\"],Directive:[\"name\",\"arguments\"],NamedType:[\"name\"],ListType:[\"type\"],NonNullType:[\"type\"],SchemaDefinition:[\"description\",\"directives\",\"operationTypes\"],OperationTypeDefinition:[\"type\"],ScalarTypeDefinition:[\"description\",\"name\",\"directives\"],ObjectTypeDefinition:[\"description\",\"name\",\"interfaces\",\"directives\",\"fields\"],FieldDefinition:[\"description\",\"name\",\"arguments\",\"type\",\"directives\"],InputValueDefinition:[\"description\",\"name\",\"type\",\"defaultValue\",\"directives\"],InterfaceTypeDefinition:[\"description\",\"name\",\"interfaces\",\"directives\",\"fields\"],UnionTypeDefinition:[\"description\",\"name\",\"directives\",\"types\"],EnumTypeDefinition:[\"description\",\"name\",\"directives\",\"values\"],EnumValueDefinition:[\"description\",\"name\",\"directives\"],InputObjectTypeDefinition:[\"description\",\"name\",\"directives\",\"fields\"],DirectiveDefinition:[\"description\",\"name\",\"arguments\",\"locations\"],SchemaExtension:[\"directives\",\"operationTypes\"],ScalarTypeExtension:[\"name\",\"directives\"],ObjectTypeExtension:[\"name\",\"interfaces\",\"directives\",\"fields\"],InterfaceTypeExtension:[\"name\",\"interfaces\",\"directives\",\"fields\"],UnionTypeExtension:[\"name\",\"directives\",\"types\"],EnumTypeExtension:[\"name\",\"directives\",\"values\"],InputObjectTypeExtension:[\"name\",\"directives\",\"fields\"]},igt=new Set(Object.keys(Gie));function Zie(t){let e=t?.kind;return typeof e==\"string\"&&igt.has(e)}var I3;(function(t){t.QUERY=\"query\",t.MUTATION=\"mutation\",t.SUBSCRIPTION=\"subscription\"})(I3||(I3={}));p();var qP;(function(t){t.QUERY=\"QUERY\",t.MUTATION=\"MUTATION\",t.SUBSCRIPTION=\"SUBSCRIPTION\",t.FIELD=\"FIELD\",t.FRAGMENT_DEFINITION=\"FRAGMENT_DEFINITION\",t.FRAGMENT_SPREAD=\"FRAGMENT_SPREAD\",t.INLINE_FRAGMENT=\"INLINE_FRAGMENT\",t.VARIABLE_DEFINITION=\"VARIABLE_DEFINITION\",t.SCHEMA=\"SCHEMA\",t.SCALAR=\"SCALAR\",t.OBJECT=\"OBJECT\",t.FIELD_DEFINITION=\"FIELD_DEFINITION\",t.ARGUMENT_DEFINITION=\"ARGUMENT_DEFINITION\",t.INTERFACE=\"INTERFACE\",t.UNION=\"UNION\",t.ENUM=\"ENUM\",t.ENUM_VALUE=\"ENUM_VALUE\",t.INPUT_OBJECT=\"INPUT_OBJECT\",t.INPUT_FIELD_DEFINITION=\"INPUT_FIELD_DEFINITION\"})(qP||(qP={}));p();var xn;(function(t){t.NAME=\"Name\",t.DOCUMENT=\"Document\",t.OPERATION_DEFINITION=\"OperationDefinition\",t.VARIABLE_DEFINITION=\"VariableDefinition\",t.SELECTION_SET=\"SelectionSet\",t.FIELD=\"Field\",t.ARGUMENT=\"Argument\",t.FRAGMENT_SPREAD=\"FragmentSpread\",t.INLINE_FRAGMENT=\"InlineFragment\",t.FRAGMENT_DEFINITION=\"FragmentDefinition\",t.VARIABLE=\"Variable\",t.INT=\"IntValue\",t.FLOAT=\"FloatValue\",t.STRING=\"StringValue\",t.BOOLEAN=\"BooleanValue\",t.NULL=\"NullValue\",t.ENUM=\"EnumValue\",t.LIST=\"ListValue\",t.OBJECT=\"ObjectValue\",t.OBJECT_FIELD=\"ObjectField\",t.DIRECTIVE=\"Directive\",t.NAMED_TYPE=\"NamedType\",t.LIST_TYPE=\"ListType\",t.NON_NULL_TYPE=\"NonNullType\",t.SCHEMA_DEFINITION=\"SchemaDefinition\",t.OPERATION_TYPE_DEFINITION=\"OperationTypeDefinition\",t.SCALAR_TYPE_DEFINITION=\"ScalarTypeDefinition\",t.OBJECT_TYPE_DEFINITION=\"ObjectTypeDefinition\",t.FIELD_DEFINITION=\"FieldDefinition\",t.INPUT_VALUE_DEFINITION=\"InputValueDefinition\",t.INTERFACE_TYPE_DEFINITION=\"InterfaceTypeDefinition\",t.UNION_TYPE_DEFINITION=\"UnionTypeDefinition\",t.ENUM_TYPE_DEFINITION=\"EnumTypeDefinition\",t.ENUM_VALUE_DEFINITION=\"EnumValueDefinition\",t.INPUT_OBJECT_TYPE_DEFINITION=\"InputObjectTypeDefinition\",t.DIRECTIVE_DEFINITION=\"DirectiveDefinition\",t.SCHEMA_EXTENSION=\"SchemaExtension\",t.SCALAR_TYPE_EXTENSION=\"ScalarTypeExtension\",t.OBJECT_TYPE_EXTENSION=\"ObjectTypeExtension\",t.INTERFACE_TYPE_EXTENSION=\"InterfaceTypeExtension\",t.UNION_TYPE_EXTENSION=\"UnionTypeExtension\",t.ENUM_TYPE_EXTENSION=\"EnumTypeExtension\",t.INPUT_OBJECT_TYPE_EXTENSION=\"InputObjectTypeExtension\"})(xn||(xn={}));p();p();p();function WW(t){return t===9||t===32}function dT(t){return t>=48&&t<=57}function UIe(t){return t>=97&&t<=122||t>=65&&t<=90}function Yie(t){return UIe(t)||t===95}function jIe(t){return UIe(t)||dT(t)||t===95}function zIe(t){var e;let n=Number.MAX_SAFE_INTEGER,r=null,o=-1;for(let a=0;a<t.length;++a){var i;let c=t[a],u=sgt(c);u!==c.length&&(r=(i=r)!==null&&i!==void 0?i:a,o=a,a!==0&&u<n&&(n=u))}return t.map((a,c)=>c===0?a:a.slice(n)).slice((e=r)!==null&&e!==void 0?e:0,o+1)}function sgt(t){let e=0;for(;e<t.length&&WW(t.charCodeAt(e));)++e;return e}function HIe(t,e){let n=t.replace(/\"\"\"/g,\\'\\\\\\\\\"\"\"\\'),r=n.split(/\\\\r\\\\n|[\\\\n\\\\r]/g),o=r.length===1,i=r.length>1&&r.slice(1).every(b=>b.length===0||WW(b.charCodeAt(0))),a=n.endsWith(\\'\\\\\\\\\"\"\"\\'),c=t.endsWith(\\'\"\\')&&!a,u=t.endsWith(\"\\\\\\\\\"),d=c||u,h=!(e!=null&&e.minimize)&&(!o||t.length>70||d||i||a),m=\"\",g=o&&WW(t.charCodeAt(0));return(h&&!g||i)&&(m+=`\\n`),m+=n,(h||d)&&(m+=`\\n`),\\'\"\"\"\\'+m+\\'\"\"\"\\'}p();var ft;(function(t){t.SOF=\"<SOF>\",t.EOF=\"<EOF>\",t.BANG=\"!\",t.DOLLAR=\"$\",t.AMP=\"&\",t.PAREN_L=\"(\",t.PAREN_R=\")\",t.SPREAD=\"...\",t.COLON=\":\",t.EQUALS=\"=\",t.AT=\"@\",t.BRACKET_L=\"[\",t.BRACKET_R=\"]\",t.BRACE_L=\"{\",t.PIPE=\"|\",t.BRACE_R=\"}\",t.NAME=\"Name\",t.INT=\"Int\",t.FLOAT=\"Float\",t.STRING=\"String\",t.BLOCK_STRING=\"BlockString\",t.COMMENT=\"Comment\"})(ft||(ft={}));var VP=class{constructor(e){let n=new uT(ft.SOF,0,0,0,0);this.source=e,this.lastToken=n,this.token=n,this.line=1,this.lineStart=0}get[Symbol.toStringTag](){return\"Lexer\"}advance(){return this.lastToken=this.token,this.token=this.lookahead()}lookahead(){let e=this.token;if(e.kind!==ft.EOF)do if(e.next)e=e.next;else{let n=agt(this,e.end);e.next=n,n.prev=e,e=n}while(e.kind===ft.COMMENT);return e}};function WIe(t){return t===ft.BANG||t===ft.DOLLAR||t===ft.AMP||t===ft.PAREN_L||t===ft.PAREN_R||t===ft.SPREAD||t===ft.COLON||t===ft.EQUALS||t===ft.AT||t===ft.BRACKET_L||t===ft.BRACKET_R||t===ft.BRACE_L||t===ft.PIPE||t===ft.BRACE_R}function fT(t){return t>=0&&t<=55295||t>=57344&&t<=1114111}function VW(t,e){return VIe(t.charCodeAt(e))&&$Ie(t.charCodeAt(e+1))}function VIe(t){return t>=55296&&t<=56319}function $Ie(t){return t>=56320&&t<=57343}function gk(t,e){let n=t.source.body.codePointAt(e);if(n===void 0)return ft.EOF;if(n>=32&&n<=126){let r=String.fromCodePoint(n);return r===\\'\"\\'?`\\'\"\\'`:`\"${r}\"`}return\"U+\"+n.toString(16).toUpperCase().padStart(4,\"0\")}function Ka(t,e,n,r,o){let i=t.line,a=1+n-t.lineStart;return new uT(e,n,r,i,a,o)}function agt(t,e){let n=t.source.body,r=n.length,o=e;for(;o<r;){let i=n.charCodeAt(o);switch(i){case 65279:case 9:case 32:case 44:++o;continue;case 10:++o,++t.line,t.lineStart=o;continue;case 13:n.charCodeAt(o+1)===10?o+=2:++o,++t.line,t.lineStart=o;continue;case 35:return cgt(t,o);case 33:return Ka(t,ft.BANG,o,o+1);case 36:return Ka(t,ft.DOLLAR,o,o+1);case 38:return Ka(t,ft.AMP,o,o+1);case 40:return Ka(t,ft.PAREN_L,o,o+1);case 41:return Ka(t,ft.PAREN_R,o,o+1);case 46:if(n.charCodeAt(o+1)===46&&n.charCodeAt(o+2)===46)return Ka(t,ft.SPREAD,o,o+3);break;case 58:return Ka(t,ft.COLON,o,o+1);case 61:return Ka(t,ft.EQUALS,o,o+1);case 64:return Ka(t,ft.AT,o,o+1);case 91:return Ka(t,ft.BRACKET_L,o,o+1);case 93:return Ka(t,ft.BRACKET_R,o,o+1);case 123:return Ka(t,ft.BRACE_L,o,o+1);case 124:return Ka(t,ft.PIPE,o,o+1);case 125:return Ka(t,ft.BRACE_R,o,o+1);case 34:return n.charCodeAt(o+1)===34&&n.charCodeAt(o+2)===34?pgt(t,o):ugt(t,o)}if(dT(i)||i===45)return lgt(t,o,i);if(Yie(i))return mgt(t,o);throw $a(t.source,o,i===39?`Unexpected single quote character (\\'), did you mean to use a double quote (\")?`:fT(i)||VW(n,o)?`Unexpected character: ${gk(t,o)}.`:`Invalid character: ${gk(t,o)}.`)}return Ka(t,ft.EOF,r,r)}function cgt(t,e){let n=t.source.body,r=n.length,o=e+1;for(;o<r;){let i=n.charCodeAt(o);if(i===10||i===13)break;if(fT(i))++o;else if(VW(n,o))o+=2;else break}return Ka(t,ft.COMMENT,e,o,n.slice(e+1,o))}function lgt(t,e,n){let r=t.source.body,o=e,i=n,a=!1;if(i===45&&(i=r.charCodeAt(++o)),i===48){if(i=r.charCodeAt(++o),dT(i))throw $a(t.source,o,`Invalid number, unexpected digit after 0: ${gk(t,o)}.`)}else o=Qie(t,o,i),i=r.charCodeAt(o);if(i===46&&(a=!0,i=r.charCodeAt(++o),o=Qie(t,o,i),i=r.charCodeAt(o)),(i===69||i===101)&&(a=!0,i=r.charCodeAt(++o),(i===43||i===45)&&(i=r.charCodeAt(++o)),o=Qie(t,o,i),i=r.charCodeAt(o)),i===46||Yie(i))throw $a(t.source,o,`Invalid number, expected digit but got: ${gk(t,o)}.`);return Ka(t,a?ft.FLOAT:ft.INT,e,o,r.slice(e,o))}function Qie(t,e,n){if(!dT(n))throw $a(t.source,e,`Invalid number, expected digit but got: ${gk(t,e)}.`);let r=t.source.body,o=e+1;for(;dT(r.charCodeAt(o));)++o;return o}function ugt(t,e){let n=t.source.body,r=n.length,o=e+1,i=o,a=\"\";for(;o<r;){let c=n.charCodeAt(o);if(c===34)return a+=n.slice(i,o),Ka(t,ft.STRING,e,o+1,a);if(c===92){a+=n.slice(i,o);let u=n.charCodeAt(o+1)===117?n.charCodeAt(o+2)===123?dgt(t,o):fgt(t,o):hgt(t,o);a+=u.value,o+=u.size,i=o;continue}if(c===10||c===13)break;if(fT(c))++o;else if(VW(n,o))o+=2;else throw $a(t.source,o,`Invalid character within String: ${gk(t,o)}.`)}throw $a(t.source,o,\"Unterminated string.\")}function dgt(t,e){let n=t.source.body,r=0,o=3;for(;o<12;){let i=n.charCodeAt(e+o++);if(i===125){if(o<5||!fT(r))break;return{value:String.fromCodePoint(r),size:o}}if(r=r<<4|WP(i),r<0)break}throw $a(t.source,e,`Invalid Unicode escape sequence: \"${n.slice(e,e+o)}\".`)}function fgt(t,e){let n=t.source.body,r=qIe(n,e+2);if(fT(r))return{value:String.fromCodePoint(r),size:6};if(VIe(r)&&n.charCodeAt(e+6)===92&&n.charCodeAt(e+7)===117){let o=qIe(n,e+8);if($Ie(o))return{value:String.fromCodePoint(r,o),size:12}}throw $a(t.source,e,`Invalid Unicode escape sequence: \"${n.slice(e,e+6)}\".`)}function qIe(t,e){return WP(t.charCodeAt(e))<<12|WP(t.charCodeAt(e+1))<<8|WP(t.charCodeAt(e+2))<<4|WP(t.charCodeAt(e+3))}function WP(t){return t>=48&&t<=57?t-48:t>=65&&t<=70?t-55:t>=97&&t<=102?t-87:-1}function hgt(t,e){let n=t.source.body;switch(n.charCodeAt(e+1)){case 34:return{value:\\'\"\\',size:2};case 92:return{value:\"\\\\\\\\\",size:2};case 47:return{value:\"/\",size:2};case 98:return{value:\"\\\\b\",size:2};case 102:return{value:\"\\\\f\",size:2};case 110:return{value:`\\n`,size:2};case 114:return{value:\"\\\\r\",size:2};case 116:return{value:\"\\t\",size:2}}throw $a(t.source,e,`Invalid character escape sequence: \"${n.slice(e,e+2)}\".`)}function pgt(t,e){let n=t.source.body,r=n.length,o=t.lineStart,i=e+3,a=i,c=\"\",u=[];for(;i<r;){let d=n.charCodeAt(i);if(d===34&&n.charCodeAt(i+1)===34&&n.charCodeAt(i+2)===34){c+=n.slice(a,i),u.push(c);let h=Ka(t,ft.BLOCK_STRING,e,i+3,zIe(u).join(`\\n`));return t.line+=u.length-1,t.lineStart=o,h}if(d===92&&n.charCodeAt(i+1)===34&&n.charCodeAt(i+2)===34&&n.charCodeAt(i+3)===34){c+=n.slice(a,i),a=i+1,i+=4;continue}if(d===10||d===13){c+=n.slice(a,i),u.push(c),d===13&&n.charCodeAt(i+1)===10?i+=2:++i,c=\"\",a=i,o=i;continue}if(fT(d))++i;else if(VW(n,i))i+=2;else throw $a(t.source,i,`Invalid character within String: ${gk(t,i)}.`)}throw $a(t.source,i,\"Unterminated string.\")}function mgt(t,e){let n=t.source.body,r=n.length,o=e+1;for(;o<r;){let i=n.charCodeAt(o);if(jIe(i))++o;else break}return Ka(t,ft.NAME,e,o,n.slice(e,o))}p();p();function hT(t){return $W(t,[])}function $W(t,e){switch(typeof t){case\"string\":return JSON.stringify(t);case\"function\":return t.name?`[function ${t.name}]`:\"[function]\";case\"object\":return ggt(t,e);default:return String(t)}}function ggt(t,e){if(t===null)return\"null\";if(e.includes(t))return\"[Circular]\";let n=[...e,t];if(ygt(t)){let r=t.toJSON();if(r!==t)return typeof r==\"string\"?r:$W(r,n)}else if(Array.isArray(t))return vgt(t,n);return bgt(t,n)}function ygt(t){return typeof t.toJSON==\"function\"}function bgt(t,e){let n=Object.entries(t);return n.length===0?\"{}\":e.length>2?\"[\"+wgt(t)+\"]\":\"{ \"+n.map(([o,i])=>o+\": \"+$W(i,e)).join(\", \")+\" }\"}function vgt(t,e){if(t.length===0)return\"[]\";if(e.length>2)return\"[Array]\";let n=Math.min(10,t.length),r=t.length-n,o=[];for(let i=0;i<n;++i)o.push($W(t[i],e));return r===1?o.push(\"... 1 more item\"):r>1&&o.push(`... ${r} more items`),\"[\"+o.join(\", \")+\"]\"}function wgt(t){let e=Object.prototype.toString.call(t).replace(/^\\\\[object /,\"\").replace(/]$/,\"\");if(e===\"Object\"&&typeof t.constructor==\"function\"){let n=t.constructor.name;if(typeof n==\"string\"&&n!==\"\")return n}return e}p();var xgt=globalThis.process&&!1,KIe=xgt?function(e,n){return e instanceof n}:function(e,n){if(e instanceof n)return!0;if(typeof e==\"object\"&&e!==null){var r;let o=n.prototype[Symbol.toStringTag],i=Symbol.toStringTag in e?e[Symbol.toStringTag]:(r=e.constructor)===null||r===void 0?void 0:r.name;if(o===i){let a=hT(e);throw new Error(`Cannot use ${o} \"${a}\" from another module or realm.\\n\\nEnsure that there is only one instance of \"graphql\" in the node_modules\\ndirectory. If different versions of \"graphql\" are the dependencies of other\\nrelied on modules, use \"resolutions\" to ensure only one version is installed.\\n\\nhttps://yarnpkg.com/en/docs/selective-version-resolutions\\n\\nDuplicate \"graphql\" modules cannot be used at the same time since different\\nversions may have different capabilities and behavior. The data from one\\nversion used in the function from another could produce confusing and\\nspurious results.`)}}return!1};var pT=class{constructor(e,n=\"GraphQL request\",r={line:1,column:1}){typeof e==\"string\"||cT(!1,`Body must be a string. Received: ${hT(e)}.`),this.body=e,this.name=n,this.locationOffset=r,this.locationOffset.line>0||cT(!1,\"line in locationOffset is 1-indexed and must be positive.\"),this.locationOffset.column>0||cT(!1,\"column in locationOffset is 1-indexed and must be positive.\")}get[Symbol.toStringTag](){return\"Source\"}};function GIe(t){return KIe(t,pT)}function GW(t,e){let n=new Jie(t,e),r=n.parseDocument();return Object.defineProperty(r,\"tokenCount\",{enumerable:!1,value:n.tokenCount}),r}var Jie=class{constructor(e,n={}){let r=GIe(e)?e:new pT(e);this._lexer=new VP(r),this._options=n,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(ft.NAME);return this.node(e,{kind:xn.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:xn.DOCUMENT,definitions:this.many(ft.SOF,this.parseDefinition,ft.EOF)})}parseDefinition(){if(this.peek(ft.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),n=e?this._lexer.lookahead():this._lexer.token;if(n.kind===ft.NAME){switch(n.value){case\"schema\":return this.parseSchemaDefinition();case\"scalar\":return this.parseScalarTypeDefinition();case\"type\":return this.parseObjectTypeDefinition();case\"interface\":return this.parseInterfaceTypeDefinition();case\"union\":return this.parseUnionTypeDefinition();case\"enum\":return this.parseEnumTypeDefinition();case\"input\":return this.parseInputObjectTypeDefinition();case\"directive\":return this.parseDirectiveDefinition()}if(e)throw $a(this._lexer.source,this._lexer.token.start,\"Unexpected description, descriptions are supported only on type definitions.\");switch(n.value){case\"query\":case\"mutation\":case\"subscription\":return this.parseOperationDefinition();case\"fragment\":return this.parseFragmentDefinition();case\"extend\":return this.parseTypeSystemExtension()}}throw this.unexpected(n)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(ft.BRACE_L))return this.node(e,{kind:xn.OPERATION_DEFINITION,operation:I3.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});let n=this.parseOperationType(),r;return this.peek(ft.NAME)&&(r=this.parseName()),this.node(e,{kind:xn.OPERATION_DEFINITION,operation:n,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(ft.NAME);switch(e.value){case\"query\":return I3.QUERY;case\"mutation\":return I3.MUTATION;case\"subscription\":return I3.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(ft.PAREN_L,this.parseVariableDefinition,ft.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:xn.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(ft.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(ft.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(ft.DOLLAR),this.node(e,{kind:xn.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:xn.SELECTION_SET,selections:this.many(ft.BRACE_L,this.parseSelection,ft.BRACE_R)})}parseSelection(){return this.peek(ft.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,n=this.parseName(),r,o;return this.expectOptionalToken(ft.COLON)?(r=n,o=this.parseName()):o=n,this.node(e,{kind:xn.FIELD,alias:r,name:o,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(ft.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let n=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(ft.PAREN_L,n,ft.PAREN_R)}parseArgument(e=!1){let n=this._lexer.token,r=this.parseName();return this.expectToken(ft.COLON),this.node(n,{kind:xn.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){let e=this._lexer.token;this.expectToken(ft.SPREAD);let n=this.expectOptionalKeyword(\"on\");return!n&&this.peek(ft.NAME)?this.node(e,{kind:xn.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:xn.INLINE_FRAGMENT,typeCondition:n?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token;return this.expectKeyword(\"fragment\"),this._options.allowLegacyFragmentVariables===!0?this.node(e,{kind:xn.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword(\"on\"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:xn.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword(\"on\"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value===\"on\")throw this.unexpected();return this.parseName()}parseValueLiteral(e){let n=this._lexer.token;switch(n.kind){case ft.BRACKET_L:return this.parseList(e);case ft.BRACE_L:return this.parseObject(e);case ft.INT:return this.advanceLexer(),this.node(n,{kind:xn.INT,value:n.value});case ft.FLOAT:return this.advanceLexer(),this.node(n,{kind:xn.FLOAT,value:n.value});case ft.STRING:case ft.BLOCK_STRING:return this.parseStringLiteral();case ft.NAME:switch(this.advanceLexer(),n.value){case\"true\":return this.node(n,{kind:xn.BOOLEAN,value:!0});case\"false\":return this.node(n,{kind:xn.BOOLEAN,value:!1});case\"null\":return this.node(n,{kind:xn.NULL});default:return this.node(n,{kind:xn.ENUM,value:n.value})}case ft.DOLLAR:if(e)if(this.expectToken(ft.DOLLAR),this._lexer.token.kind===ft.NAME){let r=this._lexer.token.value;throw $a(this._lexer.source,n.start,`Unexpected variable \"$${r}\" in constant value.`)}else throw this.unexpected(n);return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:xn.STRING,value:e.value,block:e.kind===ft.BLOCK_STRING})}parseList(e){let n=()=>this.parseValueLiteral(e);return this.node(this._lexer.token,{kind:xn.LIST,values:this.any(ft.BRACKET_L,n,ft.BRACKET_R)})}parseObject(e){let n=()=>this.parseObjectField(e);return this.node(this._lexer.token,{kind:xn.OBJECT,fields:this.any(ft.BRACE_L,n,ft.BRACE_R)})}parseObjectField(e){let n=this._lexer.token,r=this.parseName();return this.expectToken(ft.COLON),this.node(n,{kind:xn.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){let n=[];for(;this.peek(ft.AT);)n.push(this.parseDirective(e));return n}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let n=this._lexer.token;return this.expectToken(ft.AT),this.node(n,{kind:xn.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,n;if(this.expectOptionalToken(ft.BRACKET_L)){let r=this.parseTypeReference();this.expectToken(ft.BRACKET_R),n=this.node(e,{kind:xn.LIST_TYPE,type:r})}else n=this.parseNamedType();return this.expectOptionalToken(ft.BANG)?this.node(e,{kind:xn.NON_NULL_TYPE,type:n}):n}parseNamedType(){return this.node(this._lexer.token,{kind:xn.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(ft.STRING)||this.peek(ft.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,n=this.parseDescription();this.expectKeyword(\"schema\");let r=this.parseConstDirectives(),o=this.many(ft.BRACE_L,this.parseOperationTypeDefinition,ft.BRACE_R);return this.node(e,{kind:xn.SCHEMA_DEFINITION,description:n,directives:r,operationTypes:o})}parseOperationTypeDefinition(){let e=this._lexer.token,n=this.parseOperationType();this.expectToken(ft.COLON);let r=this.parseNamedType();return this.node(e,{kind:xn.OPERATION_TYPE_DEFINITION,operation:n,type:r})}parseScalarTypeDefinition(){let e=this._lexer.token,n=this.parseDescription();this.expectKeyword(\"scalar\");let r=this.parseName(),o=this.parseConstDirectives();return this.node(e,{kind:xn.SCALAR_TYPE_DEFINITION,description:n,name:r,directives:o})}parseObjectTypeDefinition(){let e=this._lexer.token,n=this.parseDescription();this.expectKeyword(\"type\");let r=this.parseName(),o=this.parseImplementsInterfaces(),i=this.parseConstDirectives(),a=this.parseFieldsDefinition();return this.node(e,{kind:xn.OBJECT_TYPE_DEFINITION,description:n,name:r,interfaces:o,directives:i,fields:a})}parseImplementsInterfaces(){return this.expectOptionalKeyword(\"implements\")?this.delimitedMany(ft.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(ft.BRACE_L,this.parseFieldDefinition,ft.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,n=this.parseDescription(),r=this.parseName(),o=this.parseArgumentDefs();this.expectToken(ft.COLON);let i=this.parseTypeReference(),a=this.parseConstDirectives();return this.node(e,{kind:xn.FIELD_DEFINITION,description:n,name:r,arguments:o,type:i,directives:a})}parseArgumentDefs(){return this.optionalMany(ft.PAREN_L,this.parseInputValueDef,ft.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,n=this.parseDescription(),r=this.parseName();this.expectToken(ft.COLON);let o=this.parseTypeReference(),i;this.expectOptionalToken(ft.EQUALS)&&(i=this.parseConstValueLiteral());let a=this.parseConstDirectives();return this.node(e,{kind:xn.INPUT_VALUE_DEFINITION,description:n,name:r,type:o,defaultValue:i,directives:a})}parseInterfaceTypeDefinition(){let e=this._lexer.token,n=this.parseDescription();this.expectKeyword(\"interface\");let r=this.parseName(),o=this.parseImplementsInterfaces(),i=this.parseConstDirectives(),a=this.parseFieldsDefinition();return this.node(e,{kind:xn.INTERFACE_TYPE_DEFINITION,description:n,name:r,interfaces:o,directives:i,fields:a})}parseUnionTypeDefinition(){let e=this._lexer.token,n=this.parseDescription();this.expectKeyword(\"union\");let r=this.parseName(),o=this.parseConstDirectives(),i=this.parseUnionMemberTypes();return this.node(e,{kind:xn.UNION_TYPE_DEFINITION,description:n,name:r,directives:o,types:i})}parseUnionMemberTypes(){return this.expectOptionalToken(ft.EQUALS)?this.delimitedMany(ft.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){let e=this._lexer.token,n=this.parseDescription();this.expectKeyword(\"enum\");let r=this.parseName(),o=this.parseConstDirectives(),i=this.parseEnumValuesDefinition();return this.node(e,{kind:xn.ENUM_TYPE_DEFINITION,description:n,name:r,directives:o,values:i})}parseEnumValuesDefinition(){return this.optionalMany(ft.BRACE_L,this.parseEnumValueDefinition,ft.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,n=this.parseDescription(),r=this.parseEnumValueName(),o=this.parseConstDirectives();return this.node(e,{kind:xn.ENUM_VALUE_DEFINITION,description:n,name:r,directives:o})}parseEnumValueName(){if(this._lexer.token.value===\"true\"||this._lexer.token.value===\"false\"||this._lexer.token.value===\"null\")throw $a(this._lexer.source,this._lexer.token.start,`${KW(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,n=this.parseDescription();this.expectKeyword(\"input\");let r=this.parseName(),o=this.parseConstDirectives(),i=this.parseInputFieldsDefinition();return this.node(e,{kind:xn.INPUT_OBJECT_TYPE_DEFINITION,description:n,name:r,directives:o,fields:i})}parseInputFieldsDefinition(){return this.optionalMany(ft.BRACE_L,this.parseInputValueDef,ft.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===ft.NAME)switch(e.value){case\"schema\":return this.parseSchemaExtension();case\"scalar\":return this.parseScalarTypeExtension();case\"type\":return this.parseObjectTypeExtension();case\"interface\":return this.parseInterfaceTypeExtension();case\"union\":return this.parseUnionTypeExtension();case\"enum\":return this.parseEnumTypeExtension();case\"input\":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword(\"extend\"),this.expectKeyword(\"schema\");let n=this.parseConstDirectives(),r=this.optionalMany(ft.BRACE_L,this.parseOperationTypeDefinition,ft.BRACE_R);if(n.length===0&&r.length===0)throw this.unexpected();return this.node(e,{kind:xn.SCHEMA_EXTENSION,directives:n,operationTypes:r})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword(\"extend\"),this.expectKeyword(\"scalar\");let n=this.parseName(),r=this.parseConstDirectives();if(r.length===0)throw this.unexpected();return this.node(e,{kind:xn.SCALAR_TYPE_EXTENSION,name:n,directives:r})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword(\"extend\"),this.expectKeyword(\"type\");let n=this.parseName(),r=this.parseImplementsInterfaces(),o=this.parseConstDirectives(),i=this.parseFieldsDefinition();if(r.length===0&&o.length===0&&i.length===0)throw this.unexpected();return this.node(e,{kind:xn.OBJECT_TYPE_EXTENSION,name:n,interfaces:r,directives:o,fields:i})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword(\"extend\"),this.expectKeyword(\"interface\");let n=this.parseName(),r=this.parseImplementsInterfaces(),o=this.parseConstDirectives(),i=this.parseFieldsDefinition();if(r.length===0&&o.length===0&&i.length===0)throw this.unexpected();return this.node(e,{kind:xn.INTERFACE_TYPE_EXTENSION,name:n,interfaces:r,directives:o,fields:i})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword(\"extend\"),this.expectKeyword(\"union\");let n=this.parseName(),r=this.parseConstDirectives(),o=this.parseUnionMemberTypes();if(r.length===0&&o.length===0)throw this.unexpected();return this.node(e,{kind:xn.UNION_TYPE_EXTENSION,name:n,directives:r,types:o})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword(\"extend\"),this.expectKeyword(\"enum\");let n=this.parseName(),r=this.parseConstDirectives(),o=this.parseEnumValuesDefinition();if(r.length===0&&o.length===0)throw this.unexpected();return this.node(e,{kind:xn.ENUM_TYPE_EXTENSION,name:n,directives:r,values:o})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword(\"extend\"),this.expectKeyword(\"input\");let n=this.parseName(),r=this.parseConstDirectives(),o=this.parseInputFieldsDefinition();if(r.length===0&&o.length===0)throw this.unexpected();return this.node(e,{kind:xn.INPUT_OBJECT_TYPE_EXTENSION,name:n,directives:r,fields:o})}parseDirectiveDefinition(){let e=this._lexer.token,n=this.parseDescription();this.expectKeyword(\"directive\"),this.expectToken(ft.AT);let r=this.parseName(),o=this.parseArgumentDefs(),i=this.expectOptionalKeyword(\"repeatable\");this.expectKeyword(\"on\");let a=this.parseDirectiveLocations();return this.node(e,{kind:xn.DIRECTIVE_DEFINITION,description:n,name:r,arguments:o,repeatable:i,locations:a})}parseDirectiveLocations(){return this.delimitedMany(ft.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,n=this.parseName();if(Object.prototype.hasOwnProperty.call(qP,n.value))return n;throw this.unexpected(e)}node(e,n){return this._options.noLocation!==!0&&(n.loc=new HP(e,this._lexer.lastToken,this._lexer.source)),n}peek(e){return this._lexer.token.kind===e}expectToken(e){let n=this._lexer.token;if(n.kind===e)return this.advanceLexer(),n;throw $a(this._lexer.source,n.start,`Expected ${ZIe(e)}, found ${KW(n)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e?(this.advanceLexer(),!0):!1}expectKeyword(e){let n=this._lexer.token;if(n.kind===ft.NAME&&n.value===e)this.advanceLexer();else throw $a(this._lexer.source,n.start,`Expected \"${e}\", found ${KW(n)}.`)}expectOptionalKeyword(e){let n=this._lexer.token;return n.kind===ft.NAME&&n.value===e?(this.advanceLexer(),!0):!1}unexpected(e){let n=e??this._lexer.token;return $a(this._lexer.source,n.start,`Unexpected ${KW(n)}.`)}any(e,n,r){this.expectToken(e);let o=[];for(;!this.expectOptionalToken(r);)o.push(n.call(this));return o}optionalMany(e,n,r){if(this.expectOptionalToken(e)){let o=[];do o.push(n.call(this));while(!this.expectOptionalToken(r));return o}return[]}many(e,n,r){this.expectToken(e);let o=[];do o.push(n.call(this));while(!this.expectOptionalToken(r));return o}delimitedMany(e,n){this.expectOptionalToken(e);let r=[];do r.push(n.call(this));while(this.expectOptionalToken(e));return r}advanceLexer(){let{maxTokens:e}=this._options,n=this._lexer.advance();if(n.kind!==ft.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw $a(this._lexer.source,n.start,`Document contains more that ${e} tokens. Parsing aborted.`)}};function KW(t){let e=t.value;return ZIe(t.kind)+(e!=null?` \"${e}\"`:\"\")}function ZIe(t){return WIe(t)?`\"${t}\"`:t}p();p();function YIe(t){return`\"${t.replace(Egt,Sgt)}\"`}var Egt=/[\\\\x00-\\\\x1f\\\\x22\\\\x5c\\\\x7f-\\\\x9f]/g;function Sgt(t){return kgt[t.charCodeAt(0)]}var kgt=[\"\\\\\\\\u0000\",\"\\\\\\\\u0001\",\"\\\\\\\\u0002\",\"\\\\\\\\u0003\",\"\\\\\\\\u0004\",\"\\\\\\\\u0005\",\"\\\\\\\\u0006\",\"\\\\\\\\u0007\",\"\\\\\\\\b\",\"\\\\\\\\t\",\"\\\\\\\\n\",\"\\\\\\\\u000B\",\"\\\\\\\\f\",\"\\\\\\\\r\",\"\\\\\\\\u000E\",\"\\\\\\\\u000F\",\"\\\\\\\\u0010\",\"\\\\\\\\u0011\",\"\\\\\\\\u0012\",\"\\\\\\\\u0013\",\"\\\\\\\\u0014\",\"\\\\\\\\u0015\",\"\\\\\\\\u0016\",\"\\\\\\\\u0017\",\"\\\\\\\\u0018\",\"\\\\\\\\u0019\",\"\\\\\\\\u001A\",\"\\\\\\\\u001B\",\"\\\\\\\\u001C\",\"\\\\\\\\u001D\",\"\\\\\\\\u001E\",\"\\\\\\\\u001F\",\"\",\"\",\\'\\\\\\\\\"\\',\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\\\\\\\\\\\\\\\\\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\\\\\\\\u007F\",\"\\\\\\\\u0080\",\"\\\\\\\\u0081\",\"\\\\\\\\u0082\",\"\\\\\\\\u0083\",\"\\\\\\\\u0084\",\"\\\\\\\\u0085\",\"\\\\\\\\u0086\",\"\\\\\\\\u0087\",\"\\\\\\\\u0088\",\"\\\\\\\\u0089\",\"\\\\\\\\u008A\",\"\\\\\\\\u008B\",\"\\\\\\\\u008C\",\"\\\\\\\\u008D\",\"\\\\\\\\u008E\",\"\\\\\\\\u008F\",\"\\\\\\\\u0090\",\"\\\\\\\\u0091\",\"\\\\\\\\u0092\",\"\\\\\\\\u0093\",\"\\\\\\\\u0094\",\"\\\\\\\\u0095\",\"\\\\\\\\u0096\",\"\\\\\\\\u0097\",\"\\\\\\\\u0098\",\"\\\\\\\\u0099\",\"\\\\\\\\u009A\",\"\\\\\\\\u009B\",\"\\\\\\\\u009C\",\"\\\\\\\\u009D\",\"\\\\\\\\u009E\",\"\\\\\\\\u009F\"];p();var QIe=Object.freeze({});function Xie(t,e,n=Gie){let r=new Map;for(let R of Object.values(xn))r.set(R,JIe(e,R));let o,i=Array.isArray(t),a=[t],c=-1,u=[],d=t,h,m,g=[],b=[];do{c++;let R=c===a.length,L=R&&u.length!==0;if(R){if(h=b.length===0?void 0:g[g.length-1],d=m,m=b.pop(),L)if(i){d=d.slice();let G=0;for(let[W,J]of u){let ne=W-G;J===null?(d.splice(ne,1),G++):d[ne]=J}}else{d={...d};for(let[G,W]of u)d[G]=W}c=o.index,a=o.keys,u=o.edits,i=o.inArray,o=o.prev}else if(m){if(h=i?c:a[c],d=m[h],d==null)continue;g.push(h)}let D;if(!Array.isArray(d)){var E,C;Zie(d)||cT(!1,`Invalid AST Node: ${hT(d)}.`);let G=R?(E=r.get(d.kind))===null||E===void 0?void 0:E.leave:(C=r.get(d.kind))===null||C===void 0?void 0:C.enter;if(D=G?.call(e,d,h,m,g,b),D===QIe)break;if(D===!1){if(!R){g.pop();continue}}else if(D!==void 0&&(u.push([h,D]),!R))if(Zie(D))d=D;else{g.pop();continue}}if(D===void 0&&L&&u.push([h,d]),R)g.pop();else{var T;o={inArray:i,index:c,keys:a,edits:u,prev:o},i=Array.isArray(d),a=i?d:(T=n[d.kind])!==null&&T!==void 0?T:[],c=-1,u=[],m&&b.push(m),m=d}}while(o!==void 0);return u.length!==0?u[u.length-1][1]:t}function JIe(t,e){let n=t[e];return typeof n==\"object\"?n:typeof n==\"function\"?{enter:n,leave:void 0}:{enter:t.enter,leave:t.leave}}function YW(t){return Xie(t,Cgt)}var _gt=80,Cgt={Name:{leave:t=>t.value},Variable:{leave:t=>\"$\"+t.name},Document:{leave:t=>on(t.definitions,`\\n\\n`)},OperationDefinition:{leave(t){let e=$r(\"(\",on(t.variableDefinitions,\", \"),\")\"),n=on([t.operation,on([t.name,e]),on(t.directives,\" \")],\" \");return(n===\"query\"?\"\":n+\" \")+t.selectionSet}},VariableDefinition:{leave:({variable:t,type:e,defaultValue:n,directives:r})=>t+\": \"+e+$r(\" = \",n)+$r(\" \",on(r,\" \"))},SelectionSet:{leave:({selections:t})=>xg(t)},Field:{leave({alias:t,name:e,arguments:n,directives:r,selectionSet:o}){let i=$r(\"\",t,\": \")+e,a=i+$r(\"(\",on(n,\", \"),\")\");return a.length>_gt&&(a=i+$r(`(\\n`,ZW(on(n,`\\n`)),`\\n)`)),on([a,on(r,\" \"),o],\" \")}},Argument:{leave:({name:t,value:e})=>t+\": \"+e},FragmentSpread:{leave:({name:t,directives:e})=>\"...\"+t+$r(\" \",on(e,\" \"))},InlineFragment:{leave:({typeCondition:t,directives:e,selectionSet:n})=>on([\"...\",$r(\"on \",t),on(e,\" \"),n],\" \")},FragmentDefinition:{leave:({name:t,typeCondition:e,variableDefinitions:n,directives:r,selectionSet:o})=>`fragment ${t}${$r(\"(\",on(n,\", \"),\")\")} on ${e} ${$r(\"\",on(r,\" \"),\" \")}`+o},IntValue:{leave:({value:t})=>t},FloatValue:{leave:({value:t})=>t},StringValue:{leave:({value:t,block:e})=>e?HIe(t):YIe(t)},BooleanValue:{leave:({value:t})=>t?\"true\":\"false\"},NullValue:{leave:()=>\"null\"},EnumValue:{leave:({value:t})=>t},ListValue:{leave:({values:t})=>\"[\"+on(t,\", \")+\"]\"},ObjectValue:{leave:({fields:t})=>\"{\"+on(t,\", \")+\"}\"},ObjectField:{leave:({name:t,value:e})=>t+\": \"+e},Directive:{leave:({name:t,arguments:e})=>\"@\"+t+$r(\"(\",on(e,\", \"),\")\")},NamedType:{leave:({name:t})=>t},ListType:{leave:({type:t})=>\"[\"+t+\"]\"},NonNullType:{leave:({type:t})=>t+\"!\"},SchemaDefinition:{leave:({description:t,directives:e,operationTypes:n})=>$r(\"\",t,`\\n`)+on([\"schema\",on(e,\" \"),xg(n)],\" \")},OperationTypeDefinition:{leave:({operation:t,type:e})=>t+\": \"+e},ScalarTypeDefinition:{leave:({description:t,name:e,directives:n})=>$r(\"\",t,`\\n`)+on([\"scalar\",e,on(n,\" \")],\" \")},ObjectTypeDefinition:{leave:({description:t,name:e,interfaces:n,directives:r,fields:o})=>$r(\"\",t,`\\n`)+on([\"type\",e,$r(\"implements \",on(n,\" & \")),on(r,\" \"),xg(o)],\" \")},FieldDefinition:{leave:({description:t,name:e,arguments:n,type:r,directives:o})=>$r(\"\",t,`\\n`)+e+(XIe(n)?$r(`(\\n`,ZW(on(n,`\\n`)),`\\n)`):$r(\"(\",on(n,\", \"),\")\"))+\": \"+r+$r(\" \",on(o,\" \"))},InputValueDefinition:{leave:({description:t,name:e,type:n,defaultValue:r,directives:o})=>$r(\"\",t,`\\n`)+on([e+\": \"+n,$r(\"= \",r),on(o,\" \")],\" \")},InterfaceTypeDefinition:{leave:({description:t,name:e,interfaces:n,directives:r,fields:o})=>$r(\"\",t,`\\n`)+on([\"interface\",e,$r(\"implements \",on(n,\" & \")),on(r,\" \"),xg(o)],\" \")},UnionTypeDefinition:{leave:({description:t,name:e,directives:n,types:r})=>$r(\"\",t,`\\n`)+on([\"union\",e,on(n,\" \"),$r(\"= \",on(r,\" | \"))],\" \")},EnumTypeDefinition:{leave:({description:t,name:e,directives:n,values:r})=>$r(\"\",t,`\\n`)+on([\"enum\",e,on(n,\" \"),xg(r)],\" \")},EnumValueDefinition:{leave:({description:t,name:e,directives:n})=>$r(\"\",t,`\\n`)+on([e,on(n,\" \")],\" \")},InputObjectTypeDefinition:{leave:({description:t,name:e,directives:n,fields:r})=>$r(\"\",t,`\\n`)+on([\"input\",e,on(n,\" \"),xg(r)],\" \")},DirectiveDefinition:{leave:({description:t,name:e,arguments:n,repeatable:r,locations:o})=>$r(\"\",t,`\\n`)+\"directive @\"+e+(XIe(n)?$r(`(\\n`,ZW(on(n,`\\n`)),`\\n)`):$r(\"(\",on(n,\", \"),\")\"))+(r?\" repeatable\":\"\")+\" on \"+on(o,\" | \")},SchemaExtension:{leave:({directives:t,operationTypes:e})=>on([\"extend schema\",on(t,\" \"),xg(e)],\" \")},ScalarTypeExtension:{leave:({name:t,directives:e})=>on([\"extend scalar\",t,on(e,\" \")],\" \")},ObjectTypeExtension:{leave:({name:t,interfaces:e,directives:n,fields:r})=>on([\"extend type\",t,$r(\"implements \",on(e,\" & \")),on(n,\" \"),xg(r)],\" \")},InterfaceTypeExtension:{leave:({name:t,interfaces:e,directives:n,fields:r})=>on([\"extend interface\",t,$r(\"implements \",on(e,\" & \")),on(n,\" \"),xg(r)],\" \")},UnionTypeExtension:{leave:({name:t,directives:e,types:n})=>on([\"extend union\",t,on(e,\" \"),$r(\"= \",on(n,\" | \"))],\" \")},EnumTypeExtension:{leave:({name:t,directives:e,values:n})=>on([\"extend enum\",t,on(e,\" \"),xg(n)],\" \")},InputObjectTypeExtension:{leave:({name:t,directives:e,fields:n})=>on([\"extend input\",t,on(e,\" \"),xg(n)],\" \")}};function on(t,e=\"\"){var n;return(n=t?.filter(r=>r).join(e))!==null&&n!==void 0?n:\"\"}function xg(t){return $r(`{\\n`,ZW(on(t,`\\n`)),`\\n}`)}function $r(t,e,n=\"\"){return e!=null&&e!==\"\"?t+e+n:\"\"}function ZW(t){return $r(\"  \",t.replace(/\\\\n/g,`\\n  `))}function XIe(t){var e;return(e=t?.some(n=>n.includes(`\\n`)))!==null&&e!==void 0?e:!1}p();var eOe=t=>{let e,n=t.definitions.filter(r=>r.kind===\"OperationDefinition\");return n.length===1&&(e=n[0]?.name?.value),e},yk=t=>{if(typeof t==\"string\"){let n;try{let r=GW(t);n=eOe(r)}catch{}return{query:t,operationName:n}}let e=eOe(t);return{query:YW(t),operationName:e}};p();var bk=class t extends Error{constructor(e,n){let r=`${t.extractMessage(e)}: ${JSON.stringify({response:e,request:n})}`;super(r),Object.setPrototypeOf(this,t.prototype),this.response=e,this.request=n,typeof Error.captureStackTrace==\"function\"&&Error.captureStackTrace(this,t)}static extractMessage(e){return e.errors?.[0]?.message??`GraphQL Error (Code: ${e.status})`}};var M3=he(nOe(),1);p();var Igt=\"connection_init\",Ogt=\"connection_ack\",oOe=\"ping\",iOe=\"pong\",Pgt=\"subscribe\",Mgt=\"next\",Ngt=\"error\",sOe=\"complete\",P3=class t{get type(){return this._type}get id(){return this._id}get payload(){return this._payload}constructor(e,n,r){this._type=e,this._payload=n,this._id=r}get text(){let e={type:this.type};return this.id!=null&&this.id!=null&&(e.id=this.id),this.payload!=null&&this.payload!=null&&(e.payload=this.payload),JSON.stringify(e)}static parse(e,n){let{type:r,payload:o,id:i}=JSON.parse(e);return new t(r,n(o),i)}},XW=class{constructor(e,{onInit:n,onAcknowledged:r,onPing:o,onPong:i}){this.socketState={acknowledged:!1,lastRequestId:0,subscriptions:{}},this.socket=e,e.addEventListener(\"open\",async a=>{this.socketState.acknowledged=!1,this.socketState.subscriptions={},e.send(Bgt(n?await n():null).text)}),e.addEventListener(\"close\",a=>{this.socketState.acknowledged=!1,this.socketState.subscriptions={}}),e.addEventListener(\"error\",a=>{console.error(a)}),e.addEventListener(\"message\",a=>{try{let c=Lgt(a.data);switch(c.type){case Ogt:{this.socketState.acknowledged?console.warn(\"Duplicate CONNECTION_ACK message ignored\"):(this.socketState.acknowledged=!0,r&&r(c.payload));return}case oOe:{o?o(c.payload).then(m=>e.send(rOe(m).text)):e.send(rOe(null).text);return}case iOe:{i&&i(c.payload);return}}if(!this.socketState.acknowledged||c.id===void 0||c.id===null||!this.socketState.subscriptions[c.id])return;let{query:u,variables:d,subscriber:h}=this.socketState.subscriptions[c.id];switch(c.type){case Mgt:{!c.payload.errors&&c.payload.data&&h.next&&h.next(c.payload.data),c.payload.errors&&h.error&&h.error(new bk({...c.payload,status:200},{query:u,variables:d}));return}case Ngt:{h.error&&h.error(new bk({errors:c.payload,status:200},{query:u,variables:d}));return}case sOe:{h.complete&&h.complete(),delete this.socketState.subscriptions[c.id];return}}}catch(c){console.error(c),e.close(1006)}e.close(4400,\"Unknown graphql-ws message.\")})}makeSubscribe(e,n,r,o){let i=(this.socketState.lastRequestId++).toString();return this.socketState.subscriptions[i]={query:e,variables:o,subscriber:r},this.socket.send(Fgt(i,{query:e,operationName:n,variables:o}).text),()=>{this.socket.send(Ugt(i).text),delete this.socketState.subscriptions[i]}}rawRequest(e,n){return new Promise((r,o)=>{let i;this.rawSubscribe(e,{next:(a,c)=>i={data:a,extensions:c},error:o,complete:()=>r(i)},n)})}request(e,n){return new Promise((r,o)=>{let i;this.subscribe(e,{next:a=>i=a,error:o,complete:()=>r(i)},n)})}subscribe(e,n,r){let{query:o,operationName:i}=yk(e);return this.makeSubscribe(o,i,n,r)}rawSubscribe(e,n,r){return this.makeSubscribe(e,void 0,n,r)}ping(e){this.socket.send(Dgt(e).text)}close(){this.socket.close(1e3)}};XW.PROTOCOL=\"graphql-transport-ws\";function Lgt(t,e=n=>n){return P3.parse(t,e)}function Bgt(t){return new P3(Igt,t)}function Dgt(t){return new P3(oOe,t,void 0)}function rOe(t){return new P3(iOe,t,void 0)}function Fgt(t,e){return new P3(Pgt,e,t)}function Ugt(t){return new P3(sOe,void 0,t)}var gT=t=>{let e={};return t&&(typeof Headers<\"u\"&&t instanceof Headers||M3&&M3.Headers&&t instanceof M3.Headers?e=OIe(t):Array.isArray(t)?t.forEach(([n,r])=>{n&&r!==void 0&&(e[n]=r)}):e=t),e},aOe=t=>t.replace(/([\\\\s,]|#[^\\\\n\\\\r]+)+/g,\" \").trim(),jgt=t=>{if(!Array.isArray(t.query)){let r=t,o=[`query=${encodeURIComponent(aOe(r.query))}`];return t.variables&&o.push(`variables=${encodeURIComponent(r.jsonSerializer.stringify(r.variables))}`),r.operationName&&o.push(`operationName=${encodeURIComponent(r.operationName)}`),o.join(\"&\")}if(typeof t.variables<\"u\"&&!Array.isArray(t.variables))throw new Error(\"Cannot create query with given variable type, array expected\");let e=t,n=t.query.reduce((r,o,i)=>(r.push({query:aOe(o),variables:e.variables?e.jsonSerializer.stringify(e.variables[i]):void 0}),r),[]);return`query=${encodeURIComponent(e.jsonSerializer.stringify(n))}`},zgt=t=>async e=>{let{url:n,query:r,variables:o,operationName:i,fetch:a,fetchOptions:c,middleware:u}=e,d={...e.headers},h=\"\",m;t===\"POST\"?(m=Hgt(r,o,i,c.jsonSerializer),typeof m==\"string\"&&(d[\"Content-Type\"]=\"application/json\")):h=jgt({query:r,variables:o,operationName:i,jsonSerializer:c.jsonSerializer??zW});let g={method:t,headers:d,body:m,...c},b=n,E=g;if(u){let C=await Promise.resolve(u({...g,url:n,operationName:i,variables:o})),{url:T,...R}=C;b=T,E=R}return h&&(b=`${b}?${h}`),await a(b,E)},eV=class{constructor(e,n={}){this.url=e,this.requestConfig=n,this.rawRequest=async(...r)=>{let[o,i,a]=r,c=MIe(o,i,a),{headers:u,fetch:d=M3.default,method:h=\"POST\",requestMiddleware:m,responseMiddleware:g,...b}=this.requestConfig,{url:E}=this;c.signal!==void 0&&(b.signal=c.signal);let{operationName:C}=yk(c.query);return ese({url:E,query:c.query,variables:c.variables,headers:{...gT(tse(u)),...gT(c.requestHeaders)},operationName:C,fetch:d,method:h,fetchOptions:b,middleware:m}).then(T=>(g&&g(T),T)).catch(T=>{throw g&&g(T),T})}}async request(e,...n){let[r,o]=n,i=PIe(e,r,o),{headers:a,fetch:c=M3.default,method:u=\"POST\",requestMiddleware:d,responseMiddleware:h,...m}=this.requestConfig,{url:g}=this;i.signal!==void 0&&(m.signal=i.signal);let{query:b,operationName:E}=yk(i.document);return ese({url:g,query:b,variables:i.variables,headers:{...gT(tse(a)),...gT(i.requestHeaders)},operationName:E,fetch:c,method:u,fetchOptions:m,middleware:d}).then(C=>(h&&h(C),C.data)).catch(C=>{throw h&&h(C),C})}batchRequests(e,n){let r=NIe(e,n),{headers:o,...i}=this.requestConfig;r.signal!==void 0&&(i.signal=r.signal);let a=r.documents.map(({document:u})=>yk(u).query),c=r.documents.map(({variables:u})=>u);return ese({url:this.url,query:a,variables:c,headers:{...gT(tse(o)),...gT(r.requestHeaders)},operationName:void 0,fetch:this.requestConfig.fetch??M3.default,method:this.requestConfig.method||\"POST\",fetchOptions:i,middleware:this.requestConfig.requestMiddleware}).then(u=>(this.requestConfig.responseMiddleware&&this.requestConfig.responseMiddleware(u),u.data)).catch(u=>{throw this.requestConfig.responseMiddleware&&this.requestConfig.responseMiddleware(u),u})}setHeaders(e){return this.requestConfig.headers=e,this}setHeader(e,n){let{headers:r}=this.requestConfig;return r?r[e]=n:this.requestConfig.headers={[e]:n},this}setEndpoint(e){return this.url=e,this}},ese=async t=>{let{query:e,variables:n,fetchOptions:r}=t,o=zgt(IIe(t.method??\"post\")),i=Array.isArray(t.query),a=await o(t),c=await qgt(a,r.jsonSerializer??zW),u=Array.isArray(c)?!c.some(({data:h})=>!h):!!c.data,d=Array.isArray(c)||!c.errors||Array.isArray(c.errors)&&!c.errors.length||r.errorPolicy===\"all\"||r.errorPolicy===\"ignore\";if(a.ok&&d&&u){let{errors:h,...m}=(Array.isArray(c),c),g=r.errorPolicy===\"ignore\"?m:c;return{...i?{data:g}:g,headers:a.headers,status:a.status}}else{let h=typeof c==\"string\"?{error:c}:c;throw new bk({...h,status:a.status,headers:a.headers},{query:e,variables:n})}};var Hgt=(t,e,n,r)=>{let o=r??zW;if(!Array.isArray(t))return o.stringify({query:t,variables:e,operationName:n});if(typeof e<\"u\"&&!Array.isArray(e))throw new Error(\"Cannot create request body with given variable type, array expected\");let i=t.reduce((a,c,u)=>(a.push({query:c,variables:e?e[u]:void 0}),a),[]);return o.stringify(i)},qgt=async(t,e)=>{let n;return t.headers.forEach((r,o)=>{o.toLowerCase()===\"content-type\"&&(n=r)}),n&&(n.toLowerCase().startsWith(\"application/json\")||n.toLowerCase().startsWith(\"application/graphql+json\")||n.toLowerCase().startsWith(\"application/graphql-response+json\"))?e.parse(await t.text()):t.text()},tse=t=>typeof t==\"function\"?t():t,cOe=(t,...e)=>t.reduce((n,r,o)=>`${n}${r}${o in e?String(e[o]):\"\"}`,\"\");bo();p();p();p();Si();var nse={id:Yn.id,easGraphqlAPI:\"https://base.easscan.org/graphql\",schemaUids:[\"0x1801901fabd0e6189356b4fb52bb0ab855276d84f7ec140839fbd1f6801ca065\",\"0xf8b05c79f090979bf4a80270aba232dff11a10d9ca55c4f88de95317970f0de9\"]};p();Si();var rse={id:xs.id,easGraphqlAPI:\"https://base-sepolia.easscan.org/graphql\",schemaUids:[\"0xef54ae90f47a187acc050ce631c55584fd4273c0ca9456ab21750921c3a84028\",\"0x2f34a2ffe5f87b2f45fbc7c784896b768d77261e2f24f77341ae43751c765a69\"]};p();Si();var ose={id:KR.id,easGraphqlAPI:\"https://optimism.easscan.org/graphql\",schemaUids:[\"0xac4c92fc5c7babed88f78a917cdbcdc1c496a8f4ab2d5b2ec29402736b2cf929\",\"0x6ab5d34260fca0cfcf0e76e96d439cace6aa7c3c019d7c4580ed52c6845e9c89\",\"0x401a80196f3805c57b00482ae2b575a9f270562b6b6de7711af9837f08fa0faf\"]};var lOe={[nse.id]:nse,[rse.id]:rse,[ose.id]:ose};function uOe(t){return t.id in lOe}function dOe(t){var e;return((e=lOe[t.id])==null?void 0:e.easGraphqlAPI)??\"\"}function fOe(t){let e=dOe(t);return new eV(e)}var Wgt=cOe`\\n  query AttestationsForUsers(\\n    $where: AttestationWhereInput\\n    $distinct: [AttestationScalarFieldEnum!]\\n    $take: Int\\n  ) {\\n    attestations(where: $where, distinct: $distinct, take: $take) {\\n      id\\n      txid\\n      schemaId\\n      attester\\n      recipient\\n      revoked\\n      revocationTime\\n      expirationTime\\n      time\\n      timeCreated\\n      decodedDataJson\\n    }\\n  }\\n`;function Vgt(t,e){let r={recipient:{equals:Fr(t)},revoked:{equals:e.revoked}};return typeof e.expirationTime==\"number\"&&(r.OR=[{expirationTime:{equals:0}},{expirationTime:{gt:e.expirationTime}}]),e?.schemas&&e.schemas.length>0&&(r.schemaId={in:e.schemas}),{where:{AND:[r]},distinct:[\"schemaId\"],take:e.limit}}async function hOe(t,e,n){let r=fOe(e),o=Vgt(t,n),{attestations:i}=await r.request(Wgt,o);return i}async function ise(t,e,n){if(!t)return console.log(\"Error in getAttestation: Address is not provided\"),[];if(!uOe(e))return console.log(\"Error in getAttestation: Chain is not supported\"),[];try{let o={...{revoked:!1,expirationTime:Math.round(Date.now()/1e3),limit:10},...n};return await hOe(t,e,o)}catch(r){return console.log(`Error in getAttestation: ${r.message}`),[]}}function $P({address:t,chain:e,schemaId:n},r){return pd({queryKey:[\"useAttestations\",t,e?.id,n],queryFn:async()=>ise(t,e,{schemas:[n]}),enabled:!!t&&!!n,...Mu,gcTime:r?.cacheTime,...r}).data||[]}p();var sse=he(De(),1);var pOe=(0,sse.jsx)(\"svg\",{role:\"img\",\"aria-label\":\"ock-badgeSvg\",width:\"12\",height:\"12\",viewBox:\"0 0 12 12\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",className:\"h-full w-full\",children:(0,sse.jsx)(\"path\",{d:\"M8.12957 3.73002L5.11957 6.74002L3.77957 5.40002C3.49957 5.12002 3.04957 5.12002 2.76957 5.40002C2.48957 5.68002 2.48957 6.13002 2.76957 6.41002L4.10957 7.75002L4.59957 8.24002C4.90957 8.55002 5.41957 8.55002 5.72957 8.24002L9.17957 4.79002C9.45957 4.51002 9.45957 4.06002 9.17957 3.78002L9.12957 3.73002C8.84957 3.45002 8.39957 3.45002 8.11957 3.73002H8.12957Z\",\"data-testid\":\"ock-badgeSvg\",className:Kt.inverse})});p();var Nu={base:\"z-0\",navigation:\"z-1\",dropdown:\"z-10\",tooltip:\"z-20\",modal:\"z-40\",notification:\"z-50\"};var tV=he(et(),1);function bT({className:t,tooltip:e=!1}){let[n,r]=(0,tV.useState)(!1),{address:o,schemaId:i}=Lf(),{chain:a,schemaId:c}=lo(),u=$P({address:o,chain:a,schemaId:e?i??c:null}),d=(0,tV.useMemo)(()=>e?typeof e==\"string\"?e:$gt(u[0]):null,[e,u]),h=\"12px\";return(0,yT.jsxs)(\"div\",{className:\"relative inline-flex\",\"data-testid\":\"ockBadgeContainer\",children:[(0,yT.jsx)(\"span\",{className:ge(dn.primary,mt.default,mt.radius,e&&\"cursor-pointer\",t),style:{height:h,width:h,maxHeight:h,maxWidth:h},\"data-testid\":\"ockBadge\",...e&&{onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1)},children:pOe}),n&&e&&(0,yT.jsxs)(\"div\",{className:ge(mt.radius,mt.default,Ht.alternate,Xe.legal,it.foreground,Nu.tooltip,\"-translate-x-1/2 absolute bottom-full left-1/2 mb-1 transform\",\"whitespace-nowrap px-1.5 py-0.5\"),\"data-testid\":\"ockBadgeTooltip\",children:[d,(0,yT.jsx)(\"div\",{className:ge(\"-translate-x-1/2 absolute top-full left-1/2 transform\")})]})]})}function $gt(t){var e;if(!t?.decodedDataJson)return\"Verified\";try{let n=JSON.parse(t.decodedDataJson);if(Array.isArray(n)&&((e=n[0])!=null&&e.name))return n[0].name;let r=Object.values(n)[0];if(typeof r==\"string\")return r;if(r&&typeof r==\"object\"&&\"value\"in r&&typeof r.value==\"string\")return r.value}catch{}return\"Verified\"}p();function nV({children:t,address:e}){let{chain:n,schemaId:r}=lo(),{schemaId:o,address:i}=Lf();if(!o&&!r)throw new Error(\"Name: a SchemaId must be provided to the OnchainKitProvider or Identity component.\");return $P({address:e??i,chain:n,schemaId:o??r}).length===0?null:t}function Ld({address:t=null,chain:e,className:n,defaultComponent:r,loadingComponent:o,children:i,...a}){let{address:c,chain:u}=Lf(),d=t??c,h=e??u;if(!d)return console.error(\"Avatar: an Ethereum address must be provided to the Identity or Avatar component.\"),null;let{data:m,isLoading:g}=R3({address:d,chain:h}),{data:b,isLoading:E}=qie({ensName:m??\"\",chain:h},{enabled:!!m}),C=(0,rV.useMemo)(()=>rV.Children.toArray(i).find(Nd(bT)),[i]),T=r||UW,R=o||RIe;if(g||E)return(0,L1.jsx)(\"div\",{className:ge(\"h-8 w-8 overflow-hidden rounded-full\",n),children:R});let L=m&&b;return(0,L1.jsxs)(\"div\",{className:\"relative\",children:[(0,L1.jsx)(\"div\",{\"data-testid\":\"ockAvatar_ImageContainer\",className:ge(\"h-10 w-10 overflow-hidden rounded-full\",n),children:L?(0,L1.jsx)(\"img\",{className:\"min-h-full min-w-full object-cover\",\"data-testid\":\"ockAvatar_Image\",loading:\"lazy\",width:\"100%\",height:\"100%\",decoding:\"async\",src:b,alt:m,...a}):(0,L1.jsx)(\"div\",{className:ge(mt.default,\"h-full w-full border\"),children:T})}),C&&(0,L1.jsx)(nV,{address:d,children:(0,L1.jsx)(\"div\",{\"data-testid\":\"ockAvatar_BadgeContainer\",className:\"-bottom-0.5 -right-0.5 absolute flex h-[15px] w-[15px] items-center justify-center rounded-full bg-transparent\",children:(0,L1.jsx)(\"div\",{className:\"flex h-3 w-3 items-center justify-center\",children:C})})})]})}p();var vT=he(De(),1);p();var vk=t=>`${t.slice(0,6)}...${t.slice(-4)}`;var oV=he(et(),1);function Df({address:t=null,className:e,children:n,chain:r,...o}){let{address:i,chain:a}=Lf();if(!i&&!t)return console.error(\"Name: an Ethereum address must be provided to the Identity or Name component.\"),null;let c=t??i,u=r??a,{data:d,isLoading:h}=R3({address:c,chain:u}),m=(0,oV.useMemo)(()=>oV.Children.toArray(n).find(Nd(bT)),[n]);return h?(0,vT.jsx)(\"span\",{className:e}):(0,vT.jsxs)(\"div\",{className:\"flex items-center gap-1\",children:[(0,vT.jsx)(\"span\",{\"data-testid\":\"ockIdentity_Text\",className:ge(Xe.headline,it.foreground,e),...o,children:d||vk(c)}),m&&(0,vT.jsx)(nV,{address:c,children:m})]})}p();var ase=he(De(),1);var mOe=(0,ase.jsx)(\"svg\",{\"data-testid\":\"ock-githubSvg\",role:\"img\",\"aria-label\":\"ock-githubSvg\",width:\"100%\",height:\"100%\",viewBox:\"0 0 24 24\",xmlns:\"http://www.w3.org/2000/svg\",fill:\"none\",className:\"h-full w-full\",children:(0,ase.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z\",className:Kt.foreground})});p();var N3=he(De(),1);var gOe=(0,N3.jsxs)(\"svg\",{\"data-testid\":\"ock-twitterSvg\",role:\"img\",\"aria-label\":\"ock-twitterSvg\",width:\"100%\",height:\"100%\",viewBox:\"-1 -1 14 14\",xmlns:\"http://www.w3.org/2000/svg\",fill:\"none\",className:\"h-full w-full\",children:[(0,N3.jsx)(\"g\",{clipPath:\"url(#clip0_6998_47)\",children:(0,N3.jsx)(\"path\",{d:\"M7.14163 5.07857L11.6089 0H10.5503L6.67137 4.40965L3.57328 0H0L4.68492 6.66817L0 11.9938H1.05866L5.15491 7.33709L8.42672 11.9938H12L7.14137 5.07857H7.14163ZM5.69165 6.72692L5.21697 6.06292L1.44011 0.779407H3.06615L6.11412 5.04337L6.5888 5.70737L10.5508 11.2499H8.92476L5.69165 6.72718V6.72692Z\",className:Kt.foreground})}),(0,N3.jsx)(\"defs\",{children:(0,N3.jsx)(\"clipPath\",{id:\"clip0_6998_47\",children:(0,N3.jsx)(\"rect\",{width:\"12\",height:\"12\",fill:\"white\"})})})]});p();var wT=he(De(),1);var yOe=(0,wT.jsxs)(\"svg\",{\"data-testid\":\"ock-warpcastSvg\",role:\"img\",\"aria-label\":\"ock-warpcastSvg\",width:\"100%\",height:\"100%\",viewBox:\"0 0 13 12\",xmlns:\"http://www.w3.org/2000/svg\",className:`h-full w-full ${Kt.foreground}`,children:[(0,wT.jsx)(\"path\",{d:\"M2.23071 0H10.6153V12H9.38451V6.50322H9.37245C9.23641 4.98404 7.96783 3.79353 6.42299 3.79353C4.87815 3.79353 3.60957 4.98404 3.47354 6.50322H3.46147V12H2.23071V0Z\",className:Kt.foreground}),(0,wT.jsx)(\"path\",{d:\"M0 1.70312L0.499999 3.40635H0.923066V10.2967C0.71065 10.2967 0.538456 10.47 0.538456 10.6838V11.1483H0.461541C0.249125 11.1483 0.0769147 11.3216 0.0769147 11.5354V11.9999H4.38458V11.5354C4.38458 11.3216 4.21239 11.1483 3.99998 11.1483H3.92306V10.6838C3.92306 10.47 3.75085 10.2967 3.53843 10.2967H3.07691V1.70312H0Z\",className:Kt.foreground}),(0,wT.jsx)(\"path\",{d:\"M9.46163 10.2967C9.24921 10.2967 9.077 10.47 9.077 10.6838V11.1483H9.00009C8.78767 11.1483 8.61548 11.3216 8.61548 11.5354V11.9999H12.9231V11.5354C12.9231 11.3216 12.7509 11.1483 12.5385 11.1483H12.4616V10.6838C12.4616 10.47 12.2894 10.2967 12.077 10.2967V3.40635H12.5001L13.0001 1.70312H9.92315V10.2967H9.46163Z\",className:Kt.foreground})]});p();var cse=he(De(),1);var bOe=(0,cse.jsx)(\"svg\",{\"data-testid\":\"ock-websiteSvg\",role:\"img\",\"aria-label\":\"ock-websiteSvg\",width:\"100%\",height:\"100%\",viewBox:\"0 0 12 12\",xmlns:\"http://www.w3.org/2000/svg\",fill:\"none\",className:`h-full w-full ${Kt.foreground}`,children:(0,cse.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M6 0C9.31356 0 12 2.68644 12 6C12 9.31356 9.31356 12 6 12C2.69689 12 0.0245556 9.35356 0 6C0.0244789 2.64689 2.69689 0 6 0ZM9.34844 9.97867C9.15053 9.88544 8.9422 9.80002 8.72553 9.72346C8.56251 10.0854 8.36772 10.4313 8.13856 10.7412C8.57762 10.5427 8.98439 10.2854 9.34844 9.97867ZM7.95156 9.49742C7.46353 9.38284 6.9427 9.30992 6.4 9.28597V11.1381C7.04791 10.9365 7.58233 10.2766 7.95156 9.49742ZM5.6 9.28597C5.05729 9.30993 4.53646 9.38284 4.04844 9.49742C4.41771 10.2766 4.95209 10.936 5.6 11.1375V9.28597ZM3.27456 9.72347C3.05737 9.80003 2.84956 9.88544 2.65164 9.97868C3.01571 10.2854 3.42248 10.5427 3.86153 10.7412C3.63237 10.4313 3.43758 10.0854 3.27456 9.72347ZM2.05267 9.38492C2.34486 9.2318 2.65736 9.09534 2.98809 8.97763C2.73913 8.21044 2.58288 7.33386 2.54799 6.40008H0.815211C0.901669 7.53597 1.35323 8.5703 2.05277 9.38497L2.05267 9.38492ZM3.75156 8.74742C4.33229 8.60263 4.95367 8.512 5.6 8.48545V6.4H3.34844C3.3823 7.25677 3.52553 8.05522 3.75157 8.74733L3.75156 8.74742ZM6.4 8.48545C7.04636 8.51201 7.66767 8.60263 8.24844 8.74794C8.47449 8.05523 8.61771 7.25728 8.65157 6.40061L6.40001 6.40009L6.4 8.48545ZM9.012 8.97763C9.34273 9.09534 9.65576 9.2318 9.94742 9.38492C10.6469 8.56982 11.0984 7.53603 11.185 6.40003H9.4522C9.4173 7.33389 9.26106 8.21048 9.0121 8.97759L9.012 8.97763ZM9.94742 2.61508C9.65523 2.7682 9.34273 2.90466 9.012 3.02237C9.26096 3.78956 9.41721 4.66614 9.4521 5.59992H11.1849C11.0984 4.46403 10.6469 3.4297 9.94732 2.61503L9.94742 2.61508ZM8.24853 3.25258C7.6678 3.39737 7.04642 3.488 6.40009 3.51456V5.6H8.65164C8.61779 4.74323 8.47456 3.94478 8.24852 3.25267L8.24853 3.25258ZM5.60009 3.51456C4.95373 3.48799 4.33242 3.39737 3.75164 3.25206C3.5256 3.94477 3.38238 4.74328 3.34852 5.59994H5.60008L5.60009 3.51456ZM2.98809 3.02237C2.65736 2.90466 2.34433 2.7682 2.05267 2.61508C1.35319 3.43018 0.901667 4.46397 0.815111 5.59997H2.54789C2.58278 4.66611 2.73903 3.78952 2.98799 3.02241L2.98809 3.02237ZM2.65163 2.02132C2.84954 2.11455 3.05788 2.19997 3.27454 2.27653C3.43757 1.91456 3.63236 1.56872 3.86152 1.25882C3.42246 1.45726 3.01569 1.71456 2.65163 2.02132ZM4.04852 2.50257C4.53654 2.61714 5.05738 2.69007 5.60008 2.71402V0.861911C4.95217 1.06348 4.41774 1.72337 4.04852 2.50258V2.50257ZM6.40008 2.71402C6.94279 2.69006 7.46362 2.61715 7.95163 2.50257C7.58237 1.7234 7.04747 1.06346 6.40008 0.8619V2.71402ZM8.72552 2.27652C8.94271 2.19996 9.15052 2.11454 9.34843 2.02131C8.98437 1.71454 8.5776 1.45724 8.13855 1.25881C8.36771 1.56923 8.5625 1.91454 8.72552 2.27652Z\"})});p();Si();var t6n=Bf(li);p();var lse=he(De(),1);function vOe({className:t,connectWalletText:e,onClick:n,text:r}){return(0,lse.jsx)(\"button\",{type:\"button\",\"data-testid\":\"ockConnectButton\",className:ge(Ht.primary,mt.radius,Xe.headline,it.inverse,\"inline-flex min-w-[153px] items-center justify-center px-4 py-3\",t),onClick:n,children:e||(0,lse.jsx)(\"span\",{className:ge(it.inverse),children:r})})}p();var wOe=he(De(),1);function iV({children:t,className:e}){return(0,wOe.jsx)(\"span\",{className:ge(Xe.headline,it.inverse,e),children:t})}p();var Hi=he(De(),1);p();var GP=he(De(),1);var kOe=he(et(),1),_Oe=he(I0(),1);p();var xOe=he(De(),1),sV=he(et(),1);function B1({children:t,disableEscapeKey:e=!1,disableOutsideClick:n=!1,onDismiss:r,triggerRef:o,preventTriggerEvents:i=!1}){let a=(0,sV.useRef)(null);return(0,sV.useEffect)(()=>{if(n&&e)return;let c=m=>{i&&(m.preventDefault(),m.stopPropagation())},u=m=>{var g;return(g=a.current)==null?void 0:g.contains(m)},d=m=>{var g;if(n||!(m.target instanceof Node))return;let b=m.target;if((g=o?.current)!=null&&g.contains(b)){c(m);return}u(b)||r?.()},h=m=>{!e&&m.key===\"Escape\"&&r?.()};return document.addEventListener(\"pointerdown\",d,!0),document.addEventListener(\"keydown\",h),()=>{document.removeEventListener(\"pointerdown\",d,!0),document.removeEventListener(\"keydown\",h)}},[n,e,r,o,i]),(0,xOe.jsx)(\"div\",{\"data-testid\":\"ockDismissableLayer\",ref:a,children:t})}p();var SOe=he(De(),1),KP=he(et(),1),EOe=\\'button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])\\';function D1({active:t=!0,children:e}){let n=(0,KP.useRef)(null),r=(0,KP.useRef)(null);(0,KP.useEffect)(()=>{if(t){if(r.current=document.activeElement,n.current){let c=n.current.querySelector(EOe);c?.focus()}return()=>{var c;(c=r.current)==null||c.focus()}}},[t]);let o=()=>{var c;return(c=n.current)==null?void 0:c.querySelectorAll(EOe)},i=(c,u)=>{let d=u[0],h=u[u.length-1],m=document.activeElement===d,g=document.activeElement===h;c.shiftKey&&m?(c.preventDefault(),h.focus()):!c.shiftKey&&g&&(c.preventDefault(),d.focus())};return(0,SOe.jsx)(\"div\",{\"data-testid\":\"ockFocusTrap\",onKeyDown:c=>{if(!t||c.key!==\"Tab\")return;let u=o();u?.length&&i(c,u)},ref:n,children:e})}function COe({children:t,isOpen:e,modal:n=!0,onClose:r,\"aria-label\":o,\"aria-labelledby\":i,\"aria-describedby\":a}){let c=ji(),u=(0,kOe.useRef)(null);if(!e)return null;let d=(0,GP.jsx)(\"div\",{className:ge(c,Nu.modal,\"fixed inset-0 flex items-center justify-center\",\"bg-black/50 transition-opacity duration-200\",\"fade-in animate-in duration-200\"),\"data-portal-origin\":\"true\",children:(0,GP.jsx)(D1,{active:e,children:(0,GP.jsx)(B1,{onDismiss:r,children:(0,GP.jsx)(\"div\",{\"aria-describedby\":a,\"aria-label\":o,\"aria-labelledby\":i,\"aria-modal\":n,className:\"zoom-in-95 animate-in duration-200\",\"data-testid\":\"ockDialog\",onClick:h=>h.stopPropagation(),onKeyDown:h=>{(h.key===\"Enter\"||h.key===\" \")&&h.stopPropagation()},ref:u,role:\"dialog\",children:t})})})});return(0,_Oe.createPortal)(d,document.body)}p();var ZP=he(De(),1);function xT({className:t=Kt.foreground}){return(0,ZP.jsxs)(\"svg\",{\"aria-label\":\"ock-closeSvg\",width:\"12\",height:\"12\",viewBox:\"0 0 16 16\",fill:\"currentColor\",xmlns:\"http://www.w3.org/2000/svg\",className:t,children:[(0,ZP.jsx)(\"title\",{children:\"Close\"}),(0,ZP.jsx)(\"path\",{d:\"M2.14921 1L1 2.1492L6.8508 8L1 13.8508L2.1492 15L8 9.1492L13.8508 15L15 13.8508L9.14921 8L15 2.1492L13.8508 1L8 6.8508L2.14921 1Z\"})]})}p();var ET=he(De(),1),aV=(0,ET.jsxs)(\"svg\",{width:\"100%\",height:\"100%\",viewBox:\"0 0 146 146\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",role:\"img\",\"aria-label\":\"Coinbase Wallet Logo\",children:[(0,ET.jsx)(\"title\",{children:\"Coinbase Wallet Logo\"}),(0,ET.jsx)(\"rect\",{width:\"146\",height:\"146\",fill:\"#0052FF\"}),(0,ET.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M21.9 73C21.9 102.053 45.1466 125.3 74.2 125.3C103.253 125.3 126.5 102.053 126.5 73C126.5 43.9466 103.253 20.7 74.2 20.7C45.1466 20.7 21.9 43.9466 21.9 73ZM60.5 54.75C58.5673 54.75 57 56.3173 57 58.25V87.75C57 89.6827 58.5673 91.25 60.5 91.25H87.9C89.8327 91.25 91.4 89.6827 91.4 87.75V58.25C91.4 56.3173 89.8327 54.75 87.9 54.75H60.5Z\",fill:\"white\"})]});p();var ST=he(De(),1),AOe=(0,ST.jsxs)(\"svg\",{width:\"100%\",height:\"100%\",viewBox:\"0 0 307.5 306\",xmlns:\"http://www.w3.org/2000/svg\",role:\"img\",\"aria-labelledby\":\"frameWallet\",children:[(0,ST.jsx)(\"title\",{id:\"frameWalletTitle\",children:\"Frame Wallet Logo\"}),(0,ST.jsx)(\"rect\",{width:\"100%\",height:\"100%\",fill:\"#28272a\"}),(0,ST.jsx)(\"path\",{fill:\"#00d2be\",transform:\"translate(77, 76.5)\",d:\"M145.1,75.6V17.6c0-5.1-4.2-9.3-9.3-9.3h-58.1c-.6,0-1.1-.2-1.6-.6l-7-7c-.4-.4-1-.7-1.6-.7H9.3C4.2,0,0,4.1,0,9.3h0v58c0,.6.2,1.1.6,1.6l7,7c.4.4.7,1,.7,1.6v58c0,5.1,4.2,9.3,9.3,9.3h58.2c.6,0,1.1.2,1.6.6l7,7c.4.4,1,.6,1.6.6h58.2c5.1,0,9.3-4.1,9.3-9.3h0v-58c0-.6-.2-1.1-.6-1.6l-7-7c-.5-.4-.8-.9-.8-1.5ZM105.6,106.6h-57.7c-.7,0-1.3-.6-1.3-1.3v-57.6c0-.7.6-1.3,1.3-1.3h57.7c.7,0,1.3.6,1.3,1.3v57.6c.1.7-.5,1.3-1.3,1.3Z\"})]});p();var $c=he(De(),1),TOe=(0,$c.jsxs)(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",xmlSpace:\"preserve\",viewBox:\"0 0 204.8 192.4\",width:\"100%\",height:\"100%\",role:\"img\",\"aria-hidden\":\"true\",children:[(0,$c.jsx)(\"title\",{children:\"MetaMask Logo\"}),(0,$c.jsx)(\"style\",{children:\".st1{fill:#f5841f}.st2{fill:#e27625}.st3{fill:#d7c1b3}.st4{fill:#2f343b}.st5{fill:#cc6228}.st7{fill:#763e1a}\"}),(0,$c.jsx)(\"path\",{id:\"MM_Head_background__x28_Do_not_edit_x29_\",d:\"m167.4 96.1 6.9-8.1-3-2.2 4.8-4.4-3.7-2.8 4.8-3.6-3.1-2.4 5-24.4-7.6-22.6m0 0-48.8 18.1H82L33.2 25.6l.3.2-.3-.2-7.6 22.6 5.1 24.4-3.2 2.4 4.9 3.6-3.7 2.8 4.8 4.4-3 2.2 6.9 8.1-10.5 32.4 9.7 33.1 34.1-9.4v-.1.1l6.6 5.4 13.5 9.2h23.1l13.5-9.2 6.6-5.4 34.2 9.4 9.8-33.1-10.6-32.4m-96.7 56\",className:\"st1\"}),(0,$c.jsxs)(\"g\",{id:\"Logos\",children:[(0,$c.jsx)(\"path\",{d:\"m171.5 25.6-59.9 44.1 11.1-26zM33.2 25.6l59.4 44.5L82 43.7zM150 127.9l-16 24.2 34.2 9.4 9.8-33.1zM26.9 128.4l9.7 33.1 34.1-9.4-15.9-24.2z\",className:\"st2\"}),(0,$c.jsx)(\"path\",{d:\"m68.9 86.9-9.5 14.3 33.8 1.5-1.1-36.2zM135.9 86.9l-23.6-20.8-.7 36.6 33.8-1.5zM70.7 152.1l20.5-9.8-17.7-13.6zM113.6 142.3l20.4 9.8-2.8-23.4z\",className:\"st2\"}),(0,$c.jsx)(\"path\",{d:\"m134 152.1-20.4-9.8 1.7 13.2-.2 5.6zM70.7 152.1l19 9-.1-5.6 1.6-13.2z\",className:\"st3\"}),(0,$c.jsx)(\"path\",{d:\"M90 119.9 73.1 115l12-5.5zM114.7 119.9l5-10.4 12 5.5z\",className:\"st4\"}),(0,$c.jsx)(\"path\",{d:\"m70.7 152.1 3-24.2-18.9.5zM131.1 127.9l2.9 24.2 16-23.7zM145.4 101.2l-33.8 1.5 3.1 17.2 5-10.4 12 5.5zM73.1 115l12-5.5 4.9 10.4 3.2-17.2-33.8-1.5z\",className:\"st5\"}),(0,$c.jsx)(\"path\",{d:\"m59.4 101.2 14.1 27.5-.4-13.7zM131.7 115l-.5 13.7 14.2-27.5zM93.2 102.7 90 119.9l4 20.4.9-26.8zM111.6 102.7l-1.7 10.7.8 26.9 4-20.4z\",className:\"st2\"}),(0,$c.jsx)(\"path\",{d:\"m114.7 119.9-4 20.4 2.9 2 17.6-13.6.5-13.7zM73.1 115l.4 13.7 17.7 13.6 2.8-2-4-20.4z\",className:\"st1\"}),(0,$c.jsx)(\"path\",{d:\"m115.1 161.1.2-5.6-1.6-1.3H91l-1.4 1.3.1 5.6-19-9 6.6 5.4 13.5 9.3h23.1l13.5-9.3 6.6-5.4z\",style:{fill:\"#c0ad9e\"}}),(0,$c.jsx)(\"path\",{d:\"m113.6 142.3-2.9-2H94l-2.8 2-1.6 13.2 1.4-1.3h22.7l1.6 1.3z\",className:\"st4\"}),(0,$c.jsx)(\"path\",{d:\"m174.1 72.6 5-24.4-7.6-22.6-57.9 42.6 22.3 18.7 31.5 9.2 6.9-8.1-3-2.2 4.8-4.3-3.7-2.9 4.8-3.6zM25.6 48.2l5.1 24.4-3.2 2.4 4.8 3.7-3.7 2.8 4.8 4.3-3 2.2 7 8.1 31.5-9.2 22.3-18.7-58-42.6z\",className:\"st7\"}),(0,$c.jsx)(\"path\",{d:\"m167.4 96.1-31.5-9.2 9.5 14.3-14.2 27.5 18.8-.3h28zM68.9 86.9l-31.5 9.2-10.5 32.3h27.9l18.7.3-14.1-27.5zM111.6 102.7l2-34.5 9.1-24.5H82l9.2 24.5 2 34.5.8 10.8v26.8h16.7l.1-26.8z\",className:\"st1\"})]})]});p();var F1=he(De(),1),ROe=(0,F1.jsxs)(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 146 146\",width:\"100%\",height:\"100%\",role:\"img\",\"aria-label\":\"Phantom Logo\",children:[(0,F1.jsx)(\"title\",{children:\"Phantom Logo\"}),(0,F1.jsxs)(\"g\",{clipPath:\"url(#clip0_phantom)\",children:[(0,F1.jsx)(\"rect\",{width:\"146\",height:\"146\",rx:\"31.3\",fill:\"#AB9FF2\"}),(0,F1.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M62.92 94.85C57.19 103.66 47.58 114.75 34.79 114.75C28.76 114.75 22.95 112.28 22.95 101.45C22.95 73.97 60.51 31.37 95.38 31.37C115.19 31.37 123.11 45.13 123.11 60.77C123.11 80.81 110.11 103.74 97.15 103.74C93.05 103.74 91.06 101.45 91.06 97.91C91.06 96.98 91.21 95.98 91.52 94.85C87.11 102.41 78.57 109.41 70.6 109.41C64.75 109.41 61.83 105.85 61.83 100.63C61.83 98.77 62.22 96.82 62.92 94.85ZM110.03 60.23C110.03 64.75 107.36 67.03 104.37 67.03C101.31 67.03 98.65 64.75 98.65 60.23C98.65 55.66 101.31 53.38 104.37 53.38C107.36 53.38 110.03 55.66 110.03 60.23ZM92.96 60.23C92.96 64.75 90.29 67.03 87.3 67.03C84.24 67.03 81.58 64.75 81.58 60.23C81.58 55.66 84.24 53.38 87.3 53.38C90.29 53.38 92.96 55.66 92.96 60.23Z\",fill:\"#FFFDF8\"})]}),(0,F1.jsx)(\"defs\",{children:(0,F1.jsx)(\"clipPath\",{id:\"clip0_phantom\",children:(0,F1.jsx)(\"rect\",{width:\"146\",height:\"146\",fill:\"white\"})})})]});p();var U1=he(De(),1),IOe=(0,U1.jsxs)(\"svg\",{width:\"100%\",height:\"100%\",viewBox:\"0 0 12 12\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",role:\"img\",\"aria-label\":\"Rabby Wallet Logo\",children:[(0,U1.jsx)(\"title\",{children:\"Rabby Wallet Logo\"}),(0,U1.jsx)(\"rect\",{width:\"12\",height:\"12\",rx:\"3\",fill:\"#EBEDFB\"}),(0,U1.jsxs)(\"g\",{transform:\"translate(0, 0.5) scale(1.1)\",children:[(0,U1.jsx)(\"path\",{d:\"M9.5721 5.7499C9.8866 5.0840 8.1892 3.2154 6.6954 2.3823C5.7598 1.7563 4.7717 1.8401 4.5853 2.1245C4.1549 2.7226 6.0967 3.2520 7.3950 3.8558C7.1472 3.9764 6.8946 4.1838 6.7517 4.4371C6.2874 3.9280 5.2613 3.5014 4.1590 3.8558C3.4854 4.1008 2.7626 4.6852 2.5094 5.5135C2.4467 5.4869 2.3767 5.4710 2.2998 5.4710C2.0064 5.4710 1.7717 5.7096 1.7717 6.0073C1.7717 6.3050 2.0064 6.5436 2.2998 6.5436C2.3507 6.5436 2.5170 6.5076 2.5170 6.5076L4.7717 6.5245C3.9726 8.2040 3.2103 8.4080 3.2103 8.6630C3.2103 8.9180 3.9180 8.8361 4.2186 8.7263C5.7352 8.2146 7.0660 6.6879 7.2942 6.2246C8.3475 6.3688 9.2166 6.3847 9.5721 5.7499Z\",fill:\"#8697FF\"}),(0,U1.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M7.3944 3.8557C7.3945 3.8557 7.3946 3.8558 7.3947 3.8558C7.4548 3.8352 7.4461 3.7506 7.4322 3.6805C7.3994 3.5201 6.7746 2.9261 6.2170 2.6612C5.5215 2.2965 4.9374 2.3152 4.8514 2.4833C4.9937 2.8066 5.7640 3.1063 6.5395 3.4180C6.8882 3.5549 7.2351 3.6939 7.3944 3.8557C7.3944 3.8558 7.3944 3.8558 7.3944 3.8557Z\",fill:\"#8697FF\"}),(0,U1.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M6.2552 7.0712C6.0818 7.0112 5.8933 6.9557 5.6818 6.9061C5.9029 6.5393 5.9510 5.9690 5.7525 5.6028C5.4532 5.1042 5.0556 4.8282 4.2115 4.8282C3.7200 4.8282 2.4599 4.9821 2.4356 6.0102C2.4331 6.1179 2.4356 6.2153 2.4439 6.3080L4.7714 6.5241C4.4672 6.7734 4.1652 7.1284 3.9000 7.4078C4.2305 7.4836 4.4899 7.5487 4.6998 7.6068C4.8768 7.6612 5.0481 7.7126 5.2313 7.7649C5.5162 7.5397 5.8350 7.3024 6.2552 7.0712Z\",fill:\"#465EED\"}),(0,U1.jsx)(\"path\",{d:\"M2.3571 6.1987C2.4479 6.9744 2.9092 7.2696 3.8618 7.3599C4.8144 7.4503 5.3088 7.3884 5.9936 7.4515C6.5898 7.5047 7.0868 7.7870 7.2760 7.6875C7.4406 7.5982 7.3425 7.2733 7.1116 7.0716C6.8062 6.7917 6.4008 6.6022 5.6997 6.5353C5.8437 6.1454 5.8044 5.5937 5.6040 5.2915C5.3096 4.8564 4.7516 4.6586 3.9000 4.7439C3.2649 4.8316 2.6828 5.2346 2.3571 6.1987Z\",fill:\"#6277F1\"})]})]});p();var YP=he(De(),1);var OOe=(0,YP.jsxs)(\"svg\",{width:\"100%\",height:\"100%\",viewBox:\"0 0 2500 2500\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",className:ge(\"text-foreground\"),\"aria-labelledby\":\"trustWallet\",children:[(0,YP.jsx)(\"title\",{id:\"trustWalletTitle\",children:\"Trust Wallet Logo\"}),(0,YP.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M84.1,426.3C-1,593.5-1,812.7-1,1250c0,438.4,0,656.5,85.1,823.7c75.1,147.1,195.2,266.2,341.3,341.3   C592.5,2500,811.7,2500,1249,2500c438.4,0,656.5,0,823.7-85.1c147.1-75.1,266.2-195.2,341.3-341.3   c85.1-167.1,85.1-386.3,85.1-823.7c0-438.4,0-656.5-85.1-823.7c-75.1-147.1-195.2-266.2-341.3-341.3C1905.5,0,1686.3,0,1249,0   C810.6,0,592.5,0,425.3,85.1C278.2,160.1,159.1,280.2,84.1,426.3z M1874.5,674.5c22,0,43,9,58,24c15,16,24,37,23,58   c-4,233.2-13,411.3-30,552.4c-16,141.1-41,246.2-78.1,330.3c-25,57-56,104.1-92.1,143.1c-49,53-105.1,91.1-166.1,127.1   c-26,16-53,31-82.1,47c-61,34-127.1,72.1-203.2,123.1c-27,18-63.1,18-90.1,0c-77.1-51-144.1-89.1-205.2-124.1c-14-8-27-15-40-23   c-71.1-41-136.1-81.1-192.2-138.1c-38-38-70.1-83.1-96.1-138.1c-35-73.1-59-161.1-77.1-274.2c-23-152.1-35-351.3-39-627.5   c0-21,8-43,23-58s36-24,58-24h34c104.1,0,332.3-10,530.4-164.1c29-23,70.1-23,100.1,0c198.2,154.1,426.3,164.1,530.4,164.1h34   V674.5z M1692.4,1588.3c25-52,47-125.1,63.1-229.2c19-124.1,31-293.2,36-523.4c-122.1-4-331.3-27-531.4-161.1   c-200.2,134.1-409.3,157.1-530.4,161.1c4,190.2,13,338.3,27,454.4c16,132.1,38,221.2,66.1,284.2c18,42,39,72.1,63.1,98.1   c32,36,73.1,65.1,129.1,98.1c23,14,49,28,77.1,44c50,28,106.1,60,170.1,100.1c62-40,118.1-71.1,167.1-99.1c15-8,29-16,42-24   c69.1-39,120.1-72.1,157.1-111.1c25-26,46-55,65.1-94.1L1692.4,1588.3z\",fill:\"#3375BB\"})]});var wk=he(et(),1);p();function Kgt(t){var e,n,r,o;if(typeof window>\"u\")return!1;if(!window.ethereum)return t===\"phantom\"?!!((n=(e=window.phantom)==null?void 0:e.ethereum)!=null&&n.isPhantom):!1;switch(t){case\"phantom\":return!!((o=(r=window.phantom)==null?void 0:r.ethereum)!=null&&o.isPhantom)||!!window.ethereum.isPhantom;case\"rabby\":return!!window.ethereum.isRabby;case\"trust\":return!!window.ethereum.isTrust||!!window.ethereum.isTrustWallet;case\"frame\":return!!window.ethereum.isFrame;default:return!1}}var Ggt={phantom:\"https://phantom.app/download\",rabby:\"https://rabby.io\",trust:\"https://trustwallet.com/download\",frame:\"https://frame.sh\"};function Zgt(t){let e=Ggt[t];return e?(window.open(e,\"_blank\",\"noopener,noreferrer\"),!0):!1}function cV(t){let e=Kgt(t);return e||Zgt(t),e}function use({className:t,isOpen:e,onClose:n,onError:r}){var o,i,a,c,u,d;let{connect:h}=U9(),{config:m}=lo(),g=((o=m?.appearance)==null?void 0:o.logo)??void 0,b=((i=m?.appearance)==null?void 0:i.name)??void 0,E=((a=m?.wallet)==null?void 0:a.privacyUrl)??void 0,C=((c=m?.wallet)==null?void 0:c.termsUrl)??void 0,T=((u=m?.wallet)==null?void 0:u.supportedWallets)??{rabby:!1,trust:!1,frame:!1},R=((d=m?.wallet)==null?void 0:d.signUpEnabled)??!0,L=(0,wk.useCallback)(()=>{try{let Z=f1({preference:\"all\",appName:b,appLogoUrl:g});h({connector:Z}),n()}catch(Z){console.error(\"Coinbase Wallet connection error:\",Z),r&&r(Z instanceof Error?Z:new Error(\"Failed to connect wallet\"))}},[b,g,h,n,r]),D=(0,wk.useCallback)(()=>{try{let Z=KO({dappMetadata:{name:b||\"OnchainKit App\",url:window.location.origin,iconUrl:g}});h({connector:Z}),n()}catch(Z){console.error(\"MetaMask connection error:\",Z),r?.(Z instanceof Error?Z:new Error(\"Failed to connect wallet\"))}},[h,n,r,b,g]),G=(0,wk.useCallback)(()=>{try{if(!cV(\"phantom\")){n();return}let Z=em({target:\"phantom\"});h({connector:Z}),n()}catch(Z){console.error(\"Phantom connection error:\",Z),r?.(Z instanceof Error?Z:new Error(\"Failed to connect wallet\"))}},[h,n,r]),W=(0,wk.useCallback)(()=>{try{if(!cV(\"rabby\")){n();return}let Z=em({target:\"rabby\"});h({connector:Z}),n()}catch(Z){console.error(\"Rabby connection error:\",Z),r?.(Z instanceof Error?Z:new Error(\"Failed to connect wallet\"))}},[h,n,r]),J=(0,wk.useCallback)(()=>{try{if(!cV(\"trust\")){n();return}let Z=em({target:\"trust\"});h({connector:Z}),n()}catch(Z){console.error(\"Trust Wallet connection error:\",Z),r?.(Z instanceof Error?Z:new Error(\"Failed to connect wallet\")),n()}},[h,n,r]),ne=(0,wk.useCallback)(()=>{var Z;try{if(!((Z=window.ethereum)!=null&&Z.isFrame)){window.open(\"https://frame.sh/download\",\"_blank\"),n();return}let ae=em();h({connector:ae}),n()}catch(ae){console.error(\"Frame Wallet connection error:\",ae),r?.(ae instanceof Error?ae:new Error(\"Failed to connect wallet\")),n()}},[h,n,r]),ie=[{id:\"coinbase\",name:\"Coinbase Wallet\",icon:aV,connector:L,enabled:!0},{id:\"metamask\",name:\"MetaMask\",icon:TOe,connector:D,enabled:!0},{id:\"phantom\",name:\"Phantom\",icon:ROe,connector:G,enabled:!0},{id:\"rabby\",name:\"Rabby\",icon:IOe,connector:W,enabled:T.rabby===!0},{id:\"trust\",name:\"Trust Wallet\",icon:OOe,connector:J,enabled:T.trust===!0},{id:\"frame\",name:\"Frame\",icon:AOe,connector:ne,enabled:T.frame===!0}].filter(Z=>Z.enabled);return(0,Hi.jsx)(COe,{isOpen:e,onClose:n,\"aria-label\":\"Connect Wallet\",children:(0,Hi.jsxs)(\"div\",{\"data-testid\":\"ockModalOverlay\",className:ge(mt.lineDefault,mt.radius,dn.default,\"w-[22rem] p-6 pb-4\",\"relative flex flex-col items-center gap-4\",t),children:[(0,Hi.jsx)(\"button\",{type:\"button\",onClick:n,className:ge(Ht.default,mt.radius,mt.default,\"absolute top-4 right-4\",\"flex items-center justify-center p-1\",\"transition-colors duration-200\"),\"aria-label\":\"Close modal\",children:(0,Hi.jsx)(\"div\",{className:ge(\"flex h-4 w-4 items-center justify-center\"),children:(0,Hi.jsx)(xT,{})})}),(g||b)&&(0,Hi.jsxs)(\"div\",{className:\"flex w-full flex-col items-center gap-2 py-3\",children:[g&&(0,Hi.jsx)(\"div\",{className:ge(mt.radius,\"h-14 w-14 overflow-hidden\"),children:(0,Hi.jsx)(\"img\",{src:g,alt:`${b||\"App\"} icon`,className:\"h-full w-full object-cover\"})}),b&&(0,Hi.jsx)(\"h2\",{className:ge(Xe.headline,it.foreground,\"text-center\"),children:b})]}),(0,Hi.jsxs)(\"div\",{className:\"flex w-full flex-col gap-3\",children:[R&&(0,Hi.jsxs)(\"button\",{type:\"button\",onClick:L,className:ge(mt.radius,Xe.body,Ht.alternate,it.foreground,\"flex items-center justify-between px-4 py-3 text-left\"),children:[\"Sign up\",(0,Hi.jsx)(\"div\",{className:\"h-4 w-4\",children:UW})]}),(0,Hi.jsxs)(\"div\",{className:\"relative\",children:[R&&(0,Hi.jsx)(\"div\",{className:\"absolute inset-0 flex items-center\",children:(0,Hi.jsx)(\"div\",{className:ge(mt.lineDefault,\"w-full border-[0.5px]\")})}),(0,Hi.jsx)(\"div\",{className:\"relative flex justify-center\",children:(0,Hi.jsx)(\"span\",{className:ge(dn.default,it.foregroundMuted,Xe.legal,\"px-2\"),children:R?\"or continue with an existing wallet\":\"Connect your wallet\"})})]}),ie.map(Z=>(0,Hi.jsxs)(\"button\",{type:\"button\",onClick:Z.connector,className:ge(mt.radius,dn.default,Xe.body,Ht.alternate,it.foreground,\"flex items-center justify-between px-4 py-3 text-left\"),children:[Z.name,(0,Hi.jsx)(\"div\",{className:\"-mr-0.5 flex h-4 w-4 items-center justify-center\",children:Z.icon})]},Z.id))]}),(0,Hi.jsxs)(\"div\",{className:ge(it.foregroundMuted,Xe.legal,\"flex flex-col items-center justify-center gap-1 px-4\",\"mt-4 text-center\"),children:[(0,Hi.jsx)(\"span\",{className:\"font-normal text-[10px] leading-[13px]\",children:\"By connecting a wallet, you agree to our\"}),(0,Hi.jsxs)(\"span\",{className:\"font-normal text-[10px] leading-[13px]\",children:[C&&(0,Hi.jsx)(\"a\",{href:C,className:ge(it.primary,\"hover:underline\"),target:\"_blank\",rel:\"noopener noreferrer\",tabIndex:0,children:\"Terms of Service\"}),\" \",C&&E&&\"and\",\" \",E&&(0,Hi.jsx)(\"a\",{href:E,className:ge(it.primary,\"hover:underline\"),target:\"_blank\",rel:\"noopener noreferrer\",tabIndex:0,children:\"Privacy Policy\"}),\".\"]})]})]})})}p();var UOe=he(De(),1);p();var lV=he(et(),1),Ygt={sm:\"(max-width: 640px)\",md:\"(min-width: 641px) and (max-width: 768px)\",lg:\"(min-width: 769px) and (max-width: 1023px)\",xl:\"(min-width: 1024px) and (max-width: 1279px)\",\"2xl\":\"(min-width: 1280px)\"};function uV(){let[t,e]=(0,lV.useState)(void 0);return(0,lV.useEffect)(()=>{let n=()=>{let o=Object.entries(Ygt);for(let[i,a]of o)if(window.matchMedia(a).matches)return i;return\"md\"};e(n());let r=()=>{e(n())};return window.addEventListener(\"resize\",r),()=>window.removeEventListener(\"resize\",r)},[]),t}var ma=he(et(),1);p();function POe(t,e){return t?{container:e?\"fade-out slide-out-to-bottom-1.5 animate-out fill-mode-forwards ease-in-out\":\"fade-out slide-out-to-top-1.5 animate-out fill-mode-forwards ease-in-out\",content:\"\"}:{container:e?\"fade-in slide-in-from-bottom-1.5 animate-in duration-300 ease-out\":\"fade-in slide-in-from-top-1.5 animate-in duration-300 ease-out\",content:e?\"fade-in slide-in-from-bottom-2.5 animate-in fill-mode-forwards duration-300 ease-out\":\"fade-in slide-in-from-top-2.5 animate-in fill-mode-forwards duration-300 ease-out\"}}p();p();p();Si();var MOe={name:\"ETH\",address:\"\",symbol:\"ETH\",decimals:18,image:\"https://wallet-api-production.s3.amazonaws.com/uploads/tokens/eth_288.png\",chainId:Yn.id},sSn={name:\"ETH\",address:\"\",symbol:\"ETH\",decimals:18,image:\"https://wallet-api-production.s3.amazonaws.com/uploads/tokens/eth_288.png\",chainId:xs.id},NOe={name:\"USDC\",address:\"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\",symbol:\"USDC\",decimals:6,image:\"https://d3r81g40ycuhqg.cloudfront.net/wallet/wais/44/2b/442b80bd16af0c0d9b22e03a16753823fe826e5bfd457292b55fa0ba8c1ba213-ZWUzYjJmZGUtMDYxNy00NDcyLTg0NjQtMWI4OGEwYjBiODE2\",chainId:Yn.id},aSn={name:\"USDC\",address:\"0x036CbD53842c5426634e7929541eC2318f3dCF7e\",symbol:\"USDC\",decimals:6,image:\"https://d3r81g40ycuhqg.cloudfront.net/wallet/wais/44/2b/442b80bd16af0c0d9b22e03a16753823fe826e5bfd457292b55fa0ba8c1ba213-ZWUzYjJmZGUtMDYxNy00NDcyLTg0NjQtMWI4OGEwYjBiODE2\",chainId:xs.id},cSn={name:\"DEGEN\",address:\"0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed\",symbol:\"DEGEN\",decimals:18,image:\"https://d3r81g40ycuhqg.cloudfront.net/wallet/wais/3b/bf/3bbf118b5e6dc2f9e7fc607a6e7526647b4ba8f0bea87125f971446d57b296d2-MDNmNjY0MmEtNGFiZi00N2I0LWIwMTItMDUyMzg2ZDZhMWNm\",chainId:Yn.id},lSn={name:\"DAI\",address:\"0x50c5725949A6F0c72E6C4a641F24049A917DB0Cb\",symbol:\"DAI\",decimals:18,image:\"https://d3r81g40ycuhqg.cloudfront.net/wallet/wais/92/13/9213e31b84c98a693f4c624580fdbe6e4c1cb550efbba15aa9ea68fd25ffb90c-ZTE1NmNjMGUtZGVkYi00ZDliLWI2N2QtNTY2ZWRjMmYwZmMw\",chainId:Yn.id},uSn={name:\"WETH\",address:\"0x4200000000000000000000000000000000000006\",symbol:\"WETH\",decimals:18,image:\"https://d3r81g40ycuhqg.cloudfront.net/wallet/wais/47/bc/47bc3593c2dec7c846b66b7ba5f6fa6bd69ec34f8ebb931f2a43072e5aaac7a8-YmUwNmRjZDUtMjczYy00NDFiLWJhZDUtMzgwNjFmYWM0Njkx\",chainId:Yn.id},dSn={name:\"LBTC\",address:\"0xecAc9C5F704e954931349Da37F60E39f515c11c1\",symbol:\"LBTC\",decimals:8,image:\"https://d3r81g40ycuhqg.cloudfront.net/wallet/wais/a3/40/a340085995bc54eddbcb66bab87833a7089edd1513847c39fc1799cab9207db4-Zjk2YzQ2MmQtMTY2OS00YWQyLWFkMGQtMjQ3OGYzNzljMWY2\",chainId:Yn.id},fSn={name:\"cbBTC\",address:\"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf\",symbol:\"cbBTC\",decimals:8,image:\"https://go.wallet.coinbase.com/static/CBBTCMedium.png\",chainId:Yn.id},hSn={name:\"eUSD\",address:\"0xCfA3Ef56d303AE4fAabA0592388F19d7C3399FB4\",symbol:\"eUSD\",decimals:18,image:\"https://d3r81g40ycuhqg.cloudfront.net/wallet/wais/bf/a4/bfa445583916854508ae5d88f9cca19cd5a0910d8c4d7cd9385eb40a597017d7-MDFhM2E0YmQtZGU3NS00Yzk3LWFlMzAtMzA1Y2UyYzU2ZGEy\",chainId:Yn.id},pSn={name:\"EURC\",address:\"0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42\",symbol:\"EURC\",decimals:6,image:\"https://d3r81g40ycuhqg.cloudfront.net/wallet/wais/54/f4/54f4216472dd25b1ffb5caf32cc0d81f645c84be166cd713f759a80f05a1418f-M2YxNTczYTItNjk3YS00N2FiLThkZjktYzBiYzExZTk1ZTFj\",chainId:Yn.id};var LOe=400,BOe=352,DOe=[MOe,NOe];function FOe(t){if(typeof window>\"u\")return{showAbove:!1,alignRight:!1};let e=window.innerHeight-t.bottom,n=window.innerWidth-t.left;return{showAbove:e<LOe,alignRight:n<BOe}}var Qgt={},jOe=(0,ma.createContext)(Qgt);function dse({children:t,isSponsored:e}){let{chain:n}=lo(),[r,o]=(0,ma.useState)(!1),[i,a]=(0,ma.useState)(!1),[c,u]=(0,ma.useState)(!1),[d,h]=(0,ma.useState)(!1),[m,g]=(0,ma.useState)(!1),b=(0,ma.useRef)(null),{address:E}=Jn(),C=uV(),[T,R]=(0,ma.useState)(null),[L,D]=(0,ma.useState)(!1),G=(0,ma.useMemo)(()=>POe(c,d),[c,d]),W=(0,ma.useCallback)(()=>{i&&u(!0)},[i]);(0,ma.useEffect)(()=>{if(i&&b?.current){let ne=b.current.getBoundingClientRect(),ie=FOe(ne);h(ie.showAbove),g(ie.alignRight)}},[i]);let J=(0,ma.useMemo)(()=>({address:E,chain:n,breakpoint:C,isConnectModalOpen:r,setIsConnectModalOpen:o,isSubComponentOpen:i,setIsSubComponentOpen:a,isSubComponentClosing:c,setIsSubComponentClosing:u,handleClose:W,connectRef:b,showSubComponentAbove:d,alignSubComponentRight:m,activeFeature:T,setActiveFeature:R,isActiveFeatureClosing:L,setIsActiveFeatureClosing:D,animations:G,isSponsored:e}),[E,n,C,r,i,c,W,d,m,T,L,G,e]);return(0,UOe.jsx)(jOe.Provider,{value:J,children:t})}function Ko(){return(0,ma.useContext)(jOe)}var Jgt=(0,Pl.jsxs)(Pl.Fragment,{children:[(0,Pl.jsx)(Ld,{className:\"h-6 w-6\"}),(0,Pl.jsx)(Df,{})]});function Eg({children:t,className:e,text:n=\"Connect Wallet\",onConnect:r,disconnectedLabel:o}){var i,a;let{config:c={wallet:{display:void 0}}}=lo(),{setIsConnectModalOpen:u,isSubComponentOpen:d,setIsSubComponentOpen:h,handleClose:m}=Ko(),{address:g,status:b,connector:E}=Jn(),{connectors:C,connect:T,status:R}=U9(),{sendAnalytics:L}=zi(),[D,G]=(0,Ks.useState)(!1),[W,J]=(0,Ks.useState)(!1),{connectWalletText:ne}=(0,Ks.useMemo)(()=>({connectWalletText:Ks.Children.toArray(t).find(Nd(iV))}),[t]),ie=(0,Ks.useMemo)(()=>Ks.Children.map(t,B=>(0,Ks.isValidElement)(B)&&B.type===iV?null:B),[t]),Z=E||C[0],ae=R===\"pending\"||b===\"connecting\",V=(0,Ks.useCallback)(()=>{d?m?.():h(!0)},[d,m,h]),$=(0,Ks.useCallback)(()=>{J(!1),u?.(!1)},[u]),F=(0,Ks.useCallback)(()=>{J(!0),u?.(!0),G(!0)},[u]),_=(0,Ks.useCallback)(B=>{L(N1.ConnectInitiated,{component:B})},[L]),O=(0,Ks.useCallback)(B=>{let j=Z?.name;L(N1.ConnectSuccess,{address:B??\"\",walletProvider:j})},[L,Z]),z=(0,Ks.useCallback)((B,j)=>{let q=Z?.name;L(N1.ConnectError,{error:B,metadata:{connector:q,component:j}})},[L,Z]);(0,Ks.useEffect)(()=>{D&&b===\"connected\"&&r&&(r(),G(!1))},[b,D,r]),(0,Ks.useEffect)(()=>{b===\"connected\"&&g&&Z&&O(g)},[b,g,Z,O]);let N=(0,Ks.useCallback)(()=>{var B;if(((B=c?.wallet)==null?void 0:B.display)===\"modal\"){F(),G(!0),_(\"WalletModal\");return}_(\"ConnectWallet\"),T({connector:Z},{onSuccess:()=>{r?.(),O(g)},onError:j=>{z(j.message,\"ConnectWallet\")}})},[(i=c?.wallet)==null?void 0:i.display,g,T,Z,z,_,O,F,r]);return b===\"disconnected\"?(0,Pl.jsxs)(\"div\",{className:\"flex\",\"data-testid\":\"ockConnectWallet_Container\",children:[(0,Pl.jsx)(vOe,{className:e,connectWalletText:ne||o,onClick:N,text:n}),((a=c?.wallet)==null?void 0:a.display)===\"modal\"&&(0,Pl.jsx)(use,{isOpen:W,onClose:$})]}):ae?(0,Pl.jsx)(\"div\",{className:\"flex\",\"data-testid\":\"ockConnectWallet_Container\",children:(0,Pl.jsx)(\"button\",{type:\"button\",\"data-testid\":\"ockConnectAccountButtonInner\",className:ge(Ht.primary,Xe.headline,it.inverse,\"inline-flex min-w-[153px] items-center justify-center rounded-xl px-4 py-3\",Ht.disabled,e),disabled:!0,children:(0,Pl.jsx)(jh,{})})}):(0,Pl.jsx)(IW,{address:g,children:(0,Pl.jsx)(\"div\",{className:\"flex gap-4\",\"data-testid\":\"ockConnectWallet_Container\",children:(0,Pl.jsx)(\"button\",{type:\"button\",\"data-testid\":\"ockConnectWallet_Connected\",className:ge(Ht.secondary,mt.radius,it.foreground,\"px-4 py-3\",d&&\"ock-bg-secondary-active hover:ock-bg-secondary-active\",e),onClick:V,children:(0,Pl.jsx)(\"div\",{className:\"flex items-center justify-center gap-2\",children:ie||Jgt})})})})}p();var VOe=he(et(),1);p();p();var zOe=he(et(),1);p();function kT({chainId:t}){let{isConnected:e}=Jn(),{data:n,error:r}=eJ({query:{enabled:e}});return(0,zOe.useMemo)(()=>r||!n||!n[t]?{}:n[t],[n,t,r])}var Xgt=\"coinbaseWalletSDK\";function HOe(){var t;let{chain:e}=lo(),{connector:n}=Jn(),r=kT({chainId:e.id});return n?.id===Xgt&&((t=r.atomicBatch)==null?void 0:t.supported)===!0}p();var eyt=\"https://keys.coinbase.com/fund\";function fse(){let t=window.location.href,e=document.title;return`${eyt}?dappName=${encodeURIComponent(e)}&dappUrl=${encodeURIComponent(t)}&version=${encodeURIComponent(C3)}&source=onchainkit`}p();p();var QP=\"https://pay.coinbase.com\",dV=`${QP}/buy`,qOe=720,WOe=460,_T=\"https://api.developer.coinbase.com/onramp/v1\",hse=3e3;function xk({projectId:t,originComponentName:e,...n}){let r=new URL(dV);t!==void 0&&r.searchParams.append(\"appId\",t);for(let o of Object.keys(n)){let i=n[o];i!==void 0&&([\"string\",\"number\",\"boolean\"].includes(typeof i)?r.searchParams.append(o,i.toString()):r.searchParams.append(o,JSON.stringify(i)))}return e?r.searchParams.append(\"sdkVersion\",`onchainkit@${C3}:${e}`):r.searchParams.append(\"sdkVersion\",`onchainkit@${C3}`),r.searchParams.sort(),r.toString()}function pse({fiatCurrency:t,originComponentName:e}){let{projectId:n,chain:r}=lo(),{address:o,chain:i}=Jn(),a=HOe(),c=i||r;return(0,VOe.useMemo)(()=>{if(a)return fse();if(!(n===null||o===void 0))return xk({projectId:n,addresses:{[o]:[c.name.toLowerCase()]},fiatCurrency:t,originComponentName:e})},[a,n,o,c,t,e])}p();p();var tyt={sm:{width:\"24.67vw\",height:\"30.83vw\"},md:{width:\"29vw\",height:\"36.25vw\"},lg:{width:\"35vw\",height:\"43.75vw\"}},$Oe=t=>{let{width:e,height:n}=tyt[t],r=280,o=350,i=g=>g/100*window.innerWidth,a=Math.max(r,Math.round(i(Number.parseFloat(e)))),c=Math.max(o,Math.round(i(Number.parseFloat(n)))),u=Math.round(window.innerWidth*.9),d=Math.round(window.innerHeight*.9),h=Math.min(a,u),m=Math.min(c,d);return{width:h,height:m}};function mse(t,e){return e?.includes(dV)?{height:qOe,width:WOe}:$Oe(t)}function JP({className:t,disabled:e=!1,fundingUrl:n,hideIcon:r=!1,hideText:o=!1,openIn:i=\"popup\",popupSize:a=\"md\",rel:c,target:u,text:d=\"Fund\",successText:h=\"Success\",errorText:m=\"Something went wrong\",state:g=\"default\",fiatCurrency:b=\"USD\",onPopupClose:E,onClick:C}){let T=ji(),R=pse({fiatCurrency:b,originComponentName:\"FundButton\"}),{address:L}=Jn(),D=n??R,G=e||!D,W=!L,{startPopupMonitor:J}=Z9e(E),{sendAnalytics:ne}=zi(),ie=(0,u2.useCallback)(()=>{ne(Pu.FundInitiated,{currency:b})},[ne,b]),Z=(0,u2.useCallback)(z=>{ne(Pu.FundFailure,{error:z,metadata:{currency:b}})},[ne,b]),ae=(0,u2.useCallback)(z=>{if(z.preventDefault(),D){ie(),C?.();let{height:N,width:B}=mse(a,D),j=Iie({url:D,height:N,width:B,target:u});j?J(j):Z(\"Failed to open funding popup\")}},[D,a,u,C,J,ie,Z]),V=(0,u2.useMemo)(()=>g===\"error\"?dn.error:Ht.primary,[g]),$=ge(T,V,\"px-4 py-3 inline-flex items-center justify-center space-x-2\",{[Ht.disabled]:G},Xe.headline,mt.radius,it.inverse,t),F=(0,u2.useMemo)(()=>{if(r)return null;switch(g){case\"loading\":return\"\";case\"success\":return(0,Ff.jsx)(nT,{fill:\"#F9FAFB\"});case\"error\":return(0,Ff.jsx)(TW,{fill:\"#F9FAFB\"});default:return(0,Ff.jsx)(Y9e,{})}},[g,r]),_=(0,u2.useMemo)(()=>{switch(g){case\"loading\":return\"\";case\"success\":return h;case\"error\":return m;default:return d}},[g,h,m,d]),O=(0,u2.useMemo)(()=>g===\"loading\"?(0,Ff.jsx)(jh,{}):(0,Ff.jsxs)(Ff.Fragment,{children:[F&&(0,Ff.jsx)(\"span\",{\"data-testid\":\"ockFundButtonIcon\",className:\"flex h-6 items-center\",children:F}),o||(0,Ff.jsx)(\"span\",{\"data-testid\":\"ockFundButtonTextContent\",children:_})]}),[g,F,_,o]);return i===\"tab\"?(0,Ff.jsx)(\"a\",{className:$,href:D,target:u??\"_blank\",rel:c,children:O}):W?(0,Ff.jsx)(Eg,{className:ge(\"w-full\",t)}):(0,Ff.jsx)(\"button\",{className:$,onClick:ae,type:\"button\",disabled:G,\"data-testid\":\"ockFundButton\",children:O})}p();var Bu=he(De(),1);p();var TT=he(et(),1);p();var YOe=he(De(),1),Gs=he(et(),1);p();p();var fV=he(et(),1);function CT(t){let[e,n]=(0,fV.useState)(t),r=(0,fV.useCallback)(o=>{n(i=>{let a=i.statusName===\"error\"?(({error:c,code:u,message:d,...h})=>h)(i.statusData):i.statusData;return{statusName:o.statusName,statusData:{...a,...o.statusData}}})},[]);return[e,r]}var hV=he(et(),1),KOe=({onError:t,onSuccess:e,onStatus:n})=>{let[r,o]=CT({statusName:\"init\",statusData:null});return(0,hV.useEffect)(()=>{r.statusName===\"error\"&&t?.(r.statusData),r.statusName===\"transactionSuccess\"&&e?.(r.statusData),n?.(r)},[t,n,e,r,r.statusData,r.statusName]),(0,hV.useMemo)(()=>({lifecycleStatus:r,updateLifecycleStatus:o}),[r,o])};p();var pV=he(et(),1);p();p();function L3(t){return typeof t==\"string\"?t:Array.isArray(t)?t.map(e=>L3(e)):t&&t.constructor===Object?Object.keys(t).reduce((e,n)=>{let r=nyt(n);return e[r]=L3(t[n]),e},{}):t}function nyt(t){return t.replace(/_([a-z])/g,(e,n)=>n.toUpperCase())}p();var AT=()=>{if(!bh.apiKey)throw new Error(\"API Key Unset: Please set the API Key by providing it in the `OnchainKitProvider` or by manually calling `setOnchainKitConfig`. For more information, visit: https://portal.cdp.coinbase.com/products/onchainkit\");return bh.apiKey};async function gse({purchaseCurrency:t,purchaseNetwork:e,paymentCurrency:n,paymentMethod:r,paymentAmount:o,country:i,subdivision:a,apiKey:c}){let u=c||AT(),h=await(await fetch(`${_T}/buy/quote`,{method:\"POST\",body:JSON.stringify({purchase_currency:t,purchase_network:e,payment_currency:n,payment_method:r,payment_amount:o,country:i,subdivision:a}),headers:{Authorization:`Bearer ${u}`}})).json();return L3(h)}var mV=({asset:t,currency:e,country:n,subdivision:r,setExchangeRate:o,onError:i})=>{let a=(0,pV.useCallback)(async()=>{try{let c=await gse({purchaseCurrency:t,paymentCurrency:e,paymentAmount:\"100\",paymentMethod:\"CARD\",country:n,subdivision:r});o(Number(c.purchaseAmount.value)/Number(c.paymentSubtotal.value))}catch(c){c instanceof Error?(console.error(\"Error fetching exchange rate:\",c),i?.({errorType:\"handled_error\",code:\"EXCHANGE_RATE_ERROR\",debugMessage:c.message})):(console.error(\"Unknown error fetching exchange rate:\",c),i?.({errorType:\"unknown_error\",code:\"EXCHANGE_RATE_ERROR\",debugMessage:JSON.stringify(c)}))}},[t,n,r,e,i,o]);return(0,pV.useMemo)(()=>({fetchExchangeRate:a}),[a])};p();var gV=he(et(),1);p();var ryt=t=>[t.some(n=>n.id===\"ACH_BANK_ACCOUNT\")&&\"ACH\",t.some(n=>n.id===\"CARD\")&&\"debit\",\"cash\",\"crypto balance\"].filter(Boolean).join(\", \"),oyt=({limits:t})=>({id:\"\",name:\"Coinbase\",description:ryt(t),icon:\"coinbaseLogo\",minAmount:Math.min(...t.map(e=>Number(e.min))),maxAmount:Math.max(...t.map(e=>Number(e.max)))}),iyt=t=>[{id:\"APPLE_PAY\",name:\"Apple Pay\",icon:\"apple\"},{id:\"CARD\",name:\"Debit card\",icon:\"creditCard\"}].map(n=>{let r=t.limits.find(o=>o.id===n.id);return{...n,description:\"Up to $500/week. No sign up required.\",minAmount:Number(r?.min)||2,maxAmount:Number(r?.max)||500}}),GOe=(t,e,n)=>{let r=t.paymentCurrencies.find(a=>a.id===e);if(!r)return[];let o=oyt(r),i=[];return n===\"US\"&&e===\"USD\"&&(i=iyt(r)),[o,...i]};p();async function yse({country:t,subdivision:e,apiKey:n}){let r=n||AT(),o=`?country=${t}`;e&&(o=`${o}&subdivision=${e}`);let a=await(await fetch(`${_T}/buy/options${o}`,{method:\"GET\",headers:{Authorization:`Bearer ${r}`}})).json();return L3(a)}var ZOe=({country:t,subdivision:e,currency:n,setPaymentMethods:r,setIsPaymentMethodsLoading:o,onError:i})=>{let a=(0,gV.useCallback)(async()=>{o(!0);try{let c=await yse({country:t,subdivision:e}),u=GOe(c,n,t);u.length===0&&(console.error(\"No payment methods found for the selected country and currency. See docs for more information: https://docs.cdp.coinbase.com/onramp/docs/api-configurations\"),i?.({errorType:\"handled_error\",code:\"NO_PAYMENT_METHODS\",debugMessage:\"No payment methods found for the selected country and currency. See docs for more information: https://docs.cdp.coinbase.com/onramp/docs/api-configurations\"})),r(u)}catch(c){c instanceof Error&&(console.error(\"Error fetching payment options:\",c),i?.({errorType:\"handled_error\",code:\"PAYMENT_METHODS_ERROR\",debugMessage:c.message}))}finally{o(!1)}},[t,e,n,r,o,i]);(0,gV.useEffect)(()=>{a()},[])};var QOe=(0,Gs.createContext)(void 0);function bse({children:t,asset:e,currency:n=\"USD\",headerText:r=`Buy ${e.toUpperCase()}`,buttonText:o,country:i,subdivision:a,inputType:c,onError:u,onStatus:d,onSuccess:h,presetAmountInputs:m}){let[g,b]=(0,Gs.useState)(),[E,C]=(0,Gs.useState)(c||\"fiat\"),[T,R]=(0,Gs.useState)(\"\"),[L,D]=(0,Gs.useState)(\"\"),[G,W]=(0,Gs.useState)(0),[J,ne]=(0,Gs.useState)(!0),[ie,Z]=(0,Gs.useState)(\"default\"),[ae,V]=(0,Gs.useState)([]),[$,F]=(0,Gs.useState)(!0),{lifecycleStatus:_,updateLifecycleStatus:O}=KOe({onError:u,onSuccess:h,onStatus:d}),{fetchExchangeRate:z}=mV({asset:e,currency:n,country:i,subdivision:a,setExchangeRate:W,onError:u}),{sendAnalytics:N}=zi(),B=(0,Gs.useCallback)((X,ee)=>{N(Pu.FundAmountChanged,{amount:X,currency:ee})},[N]),j=(0,Gs.useCallback)(X=>{N(Pu.FundOptionSelected,{option:X})},[N]),q=(0,Gs.useCallback)(X=>{let ee=Number.parseFloat(X);Number.isNaN(ee)||B(ee,n),R(X)},[n,B]),H=(0,Gs.useCallback)(X=>{j(X.id),b(X)},[j]),I=(0,Gs.useCallback)(async()=>{ne(!0),await z(),ne(!1)},[z]);(0,Gs.useEffect)(()=>{I()},[]),ZOe({country:i,subdivision:a,currency:n,setPaymentMethods:V,setIsPaymentMethodsLoading:F,onError:u});let U=Vc({asset:e,currency:n,selectedPaymentMethod:g,setSelectedPaymentMethod:H,fundAmountFiat:T,setFundAmountFiat:q,fundAmountCrypto:L,setFundAmountCrypto:D,selectedInputType:E,setSelectedInputType:C,exchangeRate:G,setExchangeRate:W,exchangeRateLoading:J,setExchangeRateLoading:ne,submitButtonState:ie,setSubmitButtonState:Z,paymentMethods:ae,setPaymentMethods:V,isPaymentMethodsLoading:$,setIsPaymentMethodsLoading:F,headerText:r,buttonText:o,country:i,subdivision:a,lifecycleStatus:_,updateLifecycleStatus:O,presetAmountInputs:m,onError:u});return(0,YOe.jsx)(QOe.Provider,{value:U,children:t})}function Ml(){let t=(0,Gs.useContext)(QOe);if(!t)throw new Error(\"useFundContext must be used within a FundCardProvider\");return t}p();p();function JOe({onMessage:t,allowedOrigin:e=QP,onValidateOrigin:n=()=>Promise.resolve(!0)}){let r=o=>{if(!syt({event:o,allowedOrigin:e}))return;let{eventName:i,data:a}=JSON.parse(o.data);i===\"event\"&&(async()=>await n(o.origin)&&t(a))()};return window.addEventListener(\"message\",r),()=>{window.removeEventListener(\"message\",r)}}function syt({event:t,allowedOrigin:e}){return!e||t.origin===e}function vse({onEvent:t,onExit:e,onSuccess:n,host:r=QP}){return JOe({allowedOrigin:r,onMessage:i=>{let a=i;a.eventName===\"success\"&&n?.(a.data),a.eventName===\"exit\"&&e?.(a.error),t?.(a)}})}var XOe=()=>{let{setSubmitButtonState:t,updateLifecycleStatus:e}=Ml(),n=(0,TT.useCallback)(i=>{i.eventName===\"transition_view\"?e({statusName:\"transactionPending\",statusData:void 0}):i.eventName===\"error\"&&(e({statusName:\"error\",statusData:i.error}),t(\"error\"),setTimeout(()=>{t(\"default\")},hse))},[e,t]),r=(0,TT.useCallback)(i=>{e({statusName:\"transactionSuccess\",statusData:i}),t(\"success\"),setTimeout(()=>{t(\"default\")},hse)},[e,t]),o=(0,TT.useCallback)(()=>{t(\"default\"),e({statusName:\"exit\",statusData:void 0})},[e,t]);(0,TT.useEffect)(()=>{let i=vse({onEvent:n,onExit:o,onSuccess:r});return()=>{i()}},[])};p();var sPe=he(De(),1);p();var j1=he(De(),1);p();var yV=he(et(),1),ayt={baseFontSize:3.75,minScale:.01};function ePe(t,e,n,r,o,i={}){let{baseFontSize:a,minScale:c}={...ayt,...i},u=(0,yV.useCallback)(()=>{let d=t.current,h=e.current,m=n.current,g=r.current,b=o.current;if(!d||!h||!m||!g||!b)return;g.style.fontSize=`${a}rem`,m.style.fontSize=`${a}rem`;let E=g.clientWidth,C=d.clientWidth-b.clientWidth;if(m.style.width=`${E}px`,E>C){let T=C/E,R=Math.max(T,c);h.style.transform=`scale(${R})`,h.style.transformOrigin=\"left center\"}else h.style.transform=\"scale(1)\"},[a,c,t,e,n,r,o]);return(0,yV.useEffect)(()=>{let d=t.current;if(!d)return;let h=new ResizeObserver(u);return h.observe(d),()=>{h.disconnect()}},[t,u]),u}var Om=he(et(),1);p();p();var Sg=(t,e)=>{let n=String(t),r=n.indexOf(\".\"),o=n;return r!==-1&&n.length-r-1>e&&(o=n.substring(0,r+e+1)),o};var RT=he(et(),1),bV=({setFiatAmount:t,setCryptoAmount:e,selectedInputType:n,exchangeRate:r})=>{let o=(0,RT.useCallback)(c=>{let u=Sg(c,2);t(u);let d=String(Number(u)*Number(r)),h=Sg(d,8);e(d===\"0\"?\"\":h)},[r,t,e]),i=(0,RT.useCallback)(c=>{let u=Sg(c,8);e(u);let d=String(Number(u)/Number(r)),h=Sg(d,2);t(h===\"0\"?\"\":h)},[r,t,e]),a=(0,RT.useCallback)((c,u)=>{n===\"fiat\"?o(c):i(c),u?.(c)},[o,i,n]);return(0,RT.useMemo)(()=>({handleChange:a,handleFiatChange:o,handleCryptoChange:i}),[a,o,i])};p();function vV(t){return t===\"\"?!0:/^[0-9]*\\\\.?[0-9]*$/.test(t)}p();var nPe=he(De(),1),wV=he(et(),1);p();var IT=he(et(),1),tPe=(t,e)=>{let n=(0,IT.useRef)(t);return(0,IT.useLayoutEffect)(()=>{n.current=t}),(0,IT.useMemo)(()=>{let r,o=(i,a,...c)=>{clearTimeout(r),r=setTimeout(()=>{i(...c)},a)};return(...i)=>o(n.current,e,...i)},[e])};var Ek=(0,wV.forwardRef)(({\"aria-label\":t,className:e,delayMs:n=0,disabled:r=!1,onBlur:o,onChange:i,onFocus:a,placeholder:c,setValue:u,inputMode:d,value:h,inputValidator:m=()=>!0},g)=>{let b=tPe(C=>{i(C)},n),E=(0,wV.useCallback)(C=>{let T=C.target.value;m(T)&&(u?.(T),n>0?b(T):i(T))},[i,b,n,u,m]);return(0,nPe.jsx)(\"input\",{\"aria-label\":t,\"data-testid\":\"ockTextInput_Input\",ref:g,type:\"text\",className:e,inputMode:d,placeholder:c,value:h,onBlur:o,onChange:E,onFocus:a,disabled:r,autoComplete:\"off\",\"data-1p-ignore\":!0})});Ek.displayName=\"TextInput\";p();var rPe=he(De(),1);var oPe=he(et(),1),wse=(0,oPe.forwardRef)(({label:t,className:e},n)=>(0,rPe.jsx)(\"span\",{ref:n,className:ge(Xe.body,it.disabled,\"flex items-center justify-center bg-transparent\",\"text-6xl leading-none outline-none\",e),\"data-testid\":\"ockCurrencySpan\",children:t}));wse.displayName=\"CurrencyLabel\";function xV({fiatAmount:t,cryptoAmount:e,asset:n,selectedInputType:r,currency:o,setFiatAmount:i,setCryptoAmount:a,exchangeRate:c,delayMs:u,className:d,textClassName:h}){let m=(0,Om.useRef)(null),g=(0,Om.useRef)(null),b=(0,Om.useRef)(null),E=(0,Om.useRef)(null),C=(0,Om.useRef)(null),T=r===\"fiat\"?o:n,R=r===\"fiat\"?t:e,L=ePe(m,g,b,E,C),{handleChange:D}=bV({setFiatAmount:i,setCryptoAmount:a,selectedInputType:r,exchangeRate:c}),G=(0,Om.useCallback)(ne=>{D(ne,()=>{b.current&&b.current.focus()})},[D]);(0,Om.useEffect)(()=>{L()},[R,L]);let W=(0,Om.useRef)(r);(0,Om.useEffect)(()=>{W.current!==r&&(W.current=r,J())},[r]);let J=()=>{b.current&&b.current.focus()};return(0,j1.jsxs)(\"div\",{ref:m,\"data-testid\":\"ockAmountInputContainer\",className:ge(\"relative h-24 cursor-text\",d),children:[(0,j1.jsx)(\"div\",{className:\"absolute inset-x-0 top-6 bottom-4\",children:(0,j1.jsx)(\"div\",{className:\"relative flex h-14\",children:(0,j1.jsxs)(\"div\",{ref:g,className:\"flex flex-shrink-0 items-center\",children:[(0,j1.jsx)(Ek,{className:ge(Xe.body,\"border-none bg-transparent\",\"text-6xl leading-none outline-none\",\"[appearance:textfield]\",\"[&::-webkit-inner-spin-button]:m-0 [&::-webkit-inner-spin-button]:appearance-none\",\"[&::-webkit-outer-spin-button]:m-0 [&::-webkit-outer-spin-button]:appearance-none\",h),value:R,onChange:G,delayMs:u,inputValidator:vV,ref:b,inputMode:\"decimal\",placeholder:\"0\"}),(0,j1.jsx)(\"div\",{className:\"ml-1\",children:(0,j1.jsx)(wse,{ref:C,label:T,className:h})})]})})}),(0,j1.jsx)(\"span\",{\"data-testid\":\"ockHiddenSpan\",ref:E,className:ge(Xe.body,\"border-none bg-transparent\",\"text-6xl leading-none outline-none\",\"pointer-events-none absolute whitespace-nowrap opacity-0\",\"left-[-99999px]\"),children:R?`${R}.`:\"0.\"})]})}p();var d2=he(et(),1),iPe=(t,e)=>{let n=(0,d2.useRef)(0),r=(0,d2.useRef)(),o=(0,d2.useRef)(),i=(0,d2.useRef)(t);return i.current=t,(0,d2.useEffect)(()=>()=>{r.current&&clearTimeout(r.current)},[]),(0,d2.useCallback)((...a)=>{let c=Date.now(),u=c-n.current;u>=e?(i.current(...a),n.current=c):r.current?o.current=a:r.current||(o.current=a,r.current=setTimeout(()=>{o.current&&(i.current(...o.current),n.current=Date.now()),r.current=void 0},e-u))},[e])};var aPe=he(et(),1);var cyt=5e3,XP=({className:t})=>{let{fundAmountFiat:e,fundAmountCrypto:n,asset:r,selectedInputType:o,currency:i,exchangeRate:a,setFundAmountFiat:c,setFundAmountCrypto:u,country:d,subdivision:h,setExchangeRate:m,onError:g}=Ml(),{fetchExchangeRate:b}=mV({asset:r,currency:i,country:d,subdivision:h,setExchangeRate:m,onError:g}),E=iPe(b,cyt),{sendAnalytics:C}=zi(),T=(0,aPe.useCallback)(R=>{c(R),E(),C(Pu.FundAmountChanged,{amount:Number(R),currency:i})},[i,C,c,E]);return(0,sPe.jsx)(xV,{fiatAmount:e,cryptoAmount:n,asset:r,selectedInputType:o,currency:i,className:t,setFiatAmount:T,setCryptoAmount:u,exchangeRate:String(a)})};p();var yPe=he(De(),1);p();var D3=he(De(),1);var tM=he(et(),1);p();p();var f2=he(De(),1),cPe=(0,f2.jsxs)(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 -29.75 165.5 165.5\",preserveAspectRatio:\"xMidYMid meet\",id:\"Artwork\",\"data-testid\":\"ock-applePaySvg\",width:\"24\",height:\"24\",children:[(0,f2.jsx)(\"title\",{children:\"Apple Pay\"}),(0,f2.jsx)(\"path\",{id:\"XMLID_4_\",d:\"M150.7 0h-139c-1 0-2.1.1-3.1.3-1 .2-2 .5-3 1-.9.4-1.8 1.1-2.5 1.8S1.7 4.7 1.3 5.6c-.5.9-.8 1.9-1 3-.2 1-.2 2.1-.3 3.1v82.5c0 1 .1 2.1.3 3.1.2 1 .5 2 1 3 .5.9 1.1 1.8 1.8 2.5s1.6 1.4 2.5 1.8c.9.5 1.9.8 3 1 1 .2 2.1.2 3.1.3h142.1c1 0 2.1-.1 3.1-.3 1-.2 2-.5 3-1 .9-.5 1.8-1.1 2.5-1.8s1.4-1.6 1.8-2.5c.5-.9.8-1.9 1-3 .2-1 .2-2.1.3-3.1v-1.4-78-1.7-1.4c0-1-.1-2.1-.3-3.1-.2-1-.5-2-1-3-.5-.9-1.1-1.8-1.8-2.5s-1.6-1.4-2.5-1.8c-.9-.5-1.9-.8-3-1-1-.2-2.1-.2-3.1-.3H150.7z\"}),(0,f2.jsx)(\"path\",{id:\"XMLID_3_\",fill:\"#fff\",d:\"M150.7 3.5H153.8c.8 0 1.7.1 2.6.2.8.1 1.4.3 2 .6.6.3 1.1.7 1.6 1.2s.9 1 1.2 1.6c.3.6.5 1.2.6 2 .2.9.2 1.8.2 2.6v82.5c0 .8-.1 1.7-.2 2.6-.1.7-.3 1.4-.6 2-.3.6-.7 1.1-1.2 1.6s-1 .9-1.6 1.2c-.6.3-1.2.5-2 .6-.9.2-1.8.2-2.6.2H11.7c-.7 0-1.7-.1-2.6-.2-.7-.1-1.4-.3-2-.7-.6-.3-1.1-.7-1.6-1.2s-.9-1-1.2-1.6c-.3-.6-.5-1.2-.6-2-.2-.9-.2-1.8-.2-2.6v-81-1.4c0-.8.1-1.7.2-2.6.1-.7.3-1.4.6-2 .3-.6.7-1.1 1.2-1.6s1-.9 1.6-1.2c.6-.3 1.2-.5 2-.6.9-.2 1.8-.2 2.6-.2h139\"}),(0,f2.jsx)(\"path\",{d:\"M45.2 35.6c1.4-1.8 2.4-4.2 2.1-6.6-2.1.1-4.6 1.4-6.1 3.1-1.3 1.5-2.5 4-2.2 6.3 2.4.3 4.7-1 6.2-2.8M47.3 39c-3.4-.2-6.3 1.9-7.9 1.9-1.6 0-4.1-1.8-6.8-1.8-3.5.1-6.7 2-8.5 5.2-3.6 6.3-1 15.6 2.6 20.7 1.7 2.5 3.8 5.3 6.5 5.2 2.6-.1 3.6-1.7 6.7-1.7s4 1.7 6.8 1.6c2.8-.1 4.6-2.5 6.3-5.1 2-2.9 2.8-5.7 2.8-5.8-.1-.1-5.5-2.1-5.5-8.3-.1-5.2 4.2-7.7 4.4-7.8-2.3-3.6-6.1-4-7.4-4.1\"}),(0,f2.jsx)(\"g\",{children:(0,f2.jsx)(\"path\",{d:\"M76.7 31.9c7.4 0 12.5 5.1 12.5 12.4 0 7.4-5.2 12.5-12.7 12.5h-8.1v12.9h-5.9V31.9h14.2zm-8.3 20h6.7c5.1 0 8-2.8 8-7.5 0-4.8-2.9-7.5-8-7.5h-6.8v15zM90.7 62c0-4.8 3.7-7.8 10.3-8.2l7.6-.4v-2.1c0-3.1-2.1-4.9-5.5-4.9-3.3 0-5.3 1.6-5.8 4h-5.4c.3-5 4.6-8.7 11.4-8.7 6.7 0 11 3.5 11 9.1v19h-5.4v-4.5h-.1c-1.6 3.1-5.1 5-8.7 5-5.6 0-9.4-3.4-9.4-8.3zm17.9-2.5v-2.2l-6.8.4c-3.4.2-5.3 1.7-5.3 4.1 0 2.4 2 4 5 4 4 0 7.1-2.7 7.1-6.3zM119.3 80v-4.6c.4.1 1.4.1 1.8.1 2.6 0 4-1.1 4.9-3.9 0-.1.5-1.7.5-1.7l-10-27.6h6.1l7 22.5h.1l7-22.5h6l-10.3 29.1c-2.4 6.7-5.1 8.8-10.8 8.8-.4-.1-1.8-.1-2.3-.2z\"})})]});var EV=he(et(),1);p();var OT=he(De(),1);var lPe=(0,OT.jsxs)(\"svg\",{\"data-testid\":\"ock-appleSvg\",role:\"img\",\"aria-label\":\"ock-appleSvg\",width:\"14\",height:\"16\",viewBox:\"0 0 14 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,OT.jsx)(\"title\",{children:\"Apple\"}),(0,OT.jsx)(\"path\",{d:\"M10.0788 0C10.1161 0 10.1533 0 10.1926 0C10.284 1.12836 9.85329 1.97146 9.32986 2.58201C8.81627 3.18834 8.11298 3.77641 6.97549 3.68718C6.89961 2.57498 7.331 1.79441 7.85373 1.18527C8.33851 0.617575 9.22729 0.112414 10.0788 0Z\",className:Kt.foreground}),(0,OT.jsx)(\"path\",{d:\"M13.5228 11.7446C13.5228 11.7558 13.5228 11.7657 13.5228 11.7762C13.2031 12.7444 12.7471 13.5741 12.1907 14.3442C11.6827 15.0432 11.0602 15.984 9.9487 15.984C8.98826 15.984 8.35031 15.3664 7.36598 15.3496C6.32475 15.3327 5.75214 15.866 4.80013 16.0002C4.69123 16.0002 4.58233 16.0002 4.47554 16.0002C3.77646 15.899 3.21228 15.3454 2.80127 14.8465C1.58931 13.3725 0.652757 11.4685 0.478516 9.0319C0.478516 8.79302 0.478516 8.55485 0.478516 8.31597C0.552287 6.57215 1.39961 5.15432 2.52586 4.46719C3.12025 4.10185 3.93735 3.7906 4.84721 3.92971C5.23714 3.99014 5.63551 4.12363 5.98469 4.25571C6.31561 4.38288 6.72944 4.60841 7.12148 4.59647C7.38706 4.58874 7.65123 4.45033 7.91892 4.35267C8.70301 4.06953 9.47164 3.74493 10.4848 3.89739C11.7024 4.08147 12.5665 4.62246 13.1005 5.45714C12.0705 6.11265 11.2562 7.10049 11.3953 8.7874C11.519 10.3197 12.4099 11.2162 13.5228 11.7446Z\",className:Kt.foreground})]});p();var eM=he(De(),1);var uPe=(0,eM.jsxs)(\"svg\",{width:\"24\",height:\"24\",viewBox:\"0 0 16 17\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",className:ge(Kt.foreground),\"data-testid\":\"coinbaseLogoSvg\",children:[(0,eM.jsx)(\"title\",{children:\"Coinbase Pay Onramp\"}),(0,eM.jsx)(\"path\",{d:\"M7.93154 12.5C5.74045 12.5 3.96577 10.6354 3.96577 8.33333C3.96577 6.03125 5.74045 4.16667 7.93154 4.16667C9.8946 4.16667 11.5239 5.67014 11.8378 7.63889H15.8333C15.4962 3.36111 12.089 0 7.93154 0C3.55267 0 0 3.73264 0 8.33333C0 12.934 3.55267 16.6667 7.93154 16.6667C12.089 16.6667 15.4962 13.3056 15.8333 9.02778H11.8378C11.5239 10.9965 9.8946 12.5 7.93154 12.5Z\",fill:\"#0052FF\"})]});p();var xse=he(De(),1),dPe=(0,xse.jsx)(\"svg\",{role:\"img\",\"aria-label\":\"ock-coinbasePaySvg\",width:\"100%\",height:\"100%\",viewBox:\"0 0 20 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:(0,xse.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M10.0145 14.1666C7.82346 14.1666 6.04878 12.302 6.04878 9.99996C6.04878 7.69788 7.82346 5.83329 10.0145 5.83329C11.9776 5.83329 13.6069 7.33677 13.9208 9.30552H17.9163C17.5793 5.02774 14.172 1.66663 10.0145 1.66663C5.63568 1.66663 2.08301 5.39926 2.08301 9.99996C2.08301 14.6007 5.63568 18.3333 10.0145 18.3333C14.172 18.3333 17.5793 14.9722 17.9163 10.6944H13.9208C13.6069 12.6632 11.9776 14.1666 10.0145 14.1666Z\",fill:\"#f9fafb\"})});p();var PT=he(De(),1);var fPe=(0,PT.jsxs)(\"svg\",{\"data-testid\":\"ock-creditCardSvg\",role:\"img\",\"aria-label\":\"ock-creditCardSvg\",width:\"14\",height:\"16\",viewBox:\"0 0 14 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,PT.jsx)(\"title\",{children:\"Credit Card\"}),(0,PT.jsx)(\"path\",{d:\"M0.478516 2.33325V12.9999H13.5228V2.33325H0.478516ZM12.164 3.99992V5.33325H1.83729V3.99992H12.164ZM1.83729 11.3333V7.66659H12.164V11.3333H1.83729Z\",className:Kt.foreground}),(0,PT.jsx)(\"path\",{d:\"M2.65256 8.66659H7.00064V9.66659H2.65256V8.66659Z\",className:Kt.foreground})]});p();var Ese=he(De(),1);var hPe=(0,Ese.jsx)(\"svg\",{role:\"img\",\"aria-label\":\"ock-fundWalletSvg\",width:\"18\",height:\"18\",viewBox:\"0 0 18 18\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:(0,Ese.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M13.5 4.5C13.5 6.15685 14.8431 7.5 16.5 7.5V10.5C14.8431 10.5 13.5 11.8431 13.5 13.5H4.5C4.5 11.8431 3.15685 10.5 1.5 10.5L1.5 13.5V7.5C3.15685 7.5 4.5 6.15685 4.5 4.5H13.5ZM0 3V15H18V3H0ZM11.25 9C11.25 7.75736 10.2426 6.75 9 6.75C7.75736 6.75 6.75 7.75736 6.75 9C6.75 10.2426 7.75736 11.25 9 11.25C10.2426 11.25 11.25 10.2426 11.25 9Z\",fill:\"#0A0B0D\",className:Kt.foreground})});p();var Sse=he(De(),1);var pPe=(0,Sse.jsx)(\"svg\",{role:\"img\",\"aria-label\":\"ock-swapSettingsSvg\",width:\"100%\",height:\"100%\",viewBox:\"0 0 19 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:(0,Sse.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M8.92071 5.89742e-08C8.00371 5.89742e-08 7.22171 0.663 7.07071 1.567L6.89271 2.639C6.87271 2.759 6.77771 2.899 6.59571 2.987C6.25306 3.15171 5.92344 3.34226 5.60971 3.557C5.44371 3.672 5.27571 3.683 5.15971 3.64L4.14271 3.258C3.72695 3.10224 3.26941 3.09906 2.85152 3.24904C2.43364 3.39901 2.08254 3.69241 1.86071 4.077L0.938708 5.674C0.716797 6.05836 0.638423 6.50897 0.717525 6.94569C0.796628 7.3824 1.02808 7.7769 1.37071 8.059L2.21071 8.751C2.30571 8.829 2.38071 8.98 2.36471 9.181C2.33621 9.56013 2.33621 9.94087 2.36471 10.32C2.37971 10.52 2.30571 10.672 2.21171 10.75L1.37071 11.442C1.02808 11.7241 0.796628 12.1186 0.717525 12.5553C0.638423 12.992 0.716797 13.4426 0.938708 13.827L1.86071 15.424C2.08269 15.8084 2.43387 16.1016 2.85173 16.2514C3.2696 16.4012 3.72706 16.3978 4.14271 16.242L5.16171 15.86C5.27671 15.817 5.44471 15.829 5.61171 15.942C5.92371 16.156 6.25271 16.347 6.59671 16.512C6.77871 16.6 6.87371 16.74 6.89371 16.862L7.07171 17.933C7.22271 18.837 8.00471 19.5 8.92171 19.5H10.7657C11.6817 19.5 12.4647 18.837 12.6157 17.933L12.7937 16.861C12.8137 16.741 12.9077 16.601 13.0907 16.512C13.4347 16.347 13.7637 16.156 14.0757 15.942C14.2427 15.828 14.4107 15.817 14.5257 15.86L15.5457 16.242C15.9612 16.3972 16.4183 16.4001 16.8357 16.2502C17.2532 16.1002 17.6039 15.8071 17.8257 15.423L18.7487 13.826C18.9706 13.4416 19.049 12.991 18.9699 12.5543C18.8908 12.1176 18.6593 11.7231 18.3167 11.441L17.4767 10.749C17.3817 10.671 17.3067 10.52 17.3227 10.319C17.3511 9.93987 17.3511 9.55913 17.3227 9.18C17.3067 8.98 17.3817 8.828 17.4757 8.75L18.3157 8.058C19.0237 7.476 19.2067 6.468 18.7487 5.673L17.8267 4.076C17.6047 3.69159 17.2535 3.3984 16.8357 3.24861C16.4178 3.09883 15.9604 3.10215 15.5447 3.258L14.5247 3.64C14.4107 3.683 14.2427 3.671 14.0757 3.557C13.7623 3.3423 13.433 3.15175 13.0907 2.987C12.9077 2.9 12.8137 2.76 12.7937 2.639L12.6147 1.567C12.5418 1.12906 12.3158 0.731216 11.977 0.444267C11.6383 0.157318 11.2087 -0.00011124 10.7647 5.89742e-08H8.92171H8.92071ZM9.84271 13.5C10.8373 13.5 11.7911 13.1049 12.4944 12.4017C13.1976 11.6984 13.5927 10.7446 13.5927 9.75C13.5927 8.75544 13.1976 7.80161 12.4944 7.09835C11.7911 6.39509 10.8373 6 9.84271 6C8.84815 6 7.89432 6.39509 7.19106 7.09835C6.4878 7.80161 6.09271 8.75544 6.09271 9.75C6.09271 10.7446 6.4878 11.6984 7.19106 12.4017C7.89432 13.1049 8.84815 13.5 9.84271 13.5Z\",fill:\"#6B7280\",className:Kt.foreground})});p();var B3=he(De(),1);var MT=(0,B3.jsxs)(\"svg\",{role:\"img\",\"aria-label\":\"ock-toggleSvg\",width:\"16\",height:\"17\",viewBox:\"0 0 16 17\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",\"data-testid\":\"ock-toggleSvg\",children:[(0,B3.jsx)(\"g\",{clipPath:\"url(#clip0_2077_4627)\",children:(0,B3.jsx)(\"path\",{d:\"M14.5659 4.93434L13.4345 6.06571L11.8002 4.43139L11.8002 10.75L10.2002 10.75L10.2002 4.43139L8.56592 6.06571L7.43455 4.93434L11.0002 1.36865L14.5659 4.93434ZM8.56592 12.0657L5.00023 15.6314L1.43455 12.0657L2.56592 10.9343L4.20023 12.5687L4.20023 6.25002L5.80023 6.25002L5.80023 12.5687L7.43455 10.9343L8.56592 12.0657Z\",className:Kt.foreground})}),(0,B3.jsx)(\"defs\",{children:(0,B3.jsx)(\"clipPath\",{id:\"clip0_2077_4627\",children:(0,B3.jsx)(\"rect\",{width:\"16\",height:\"16\",fill:\"white\",transform:\"translate(0 0.5)\"})})})]});p();var kse=he(De(),1);var mPe=(0,kse.jsx)(\"svg\",{role:\"img\",\"aria-label\":\"ock-walletSvg\",width:\"100%\",height:\"100%\",viewBox:\"0 0 20 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:(0,kse.jsx)(\"path\",{fillRule:\"evenodd\",clipRule:\"evenodd\",d:\"M0 10C0 15.5222 4.47778 20 10 20C15.5222 20 20 15.5222 20 10C20 4.47778 15.5222 0 10 0C4.47778 0 0 4.47778 0 10ZM7.44444 6.77778C7.075 6.77778 6.77778 7.075 6.77778 7.44444V12.5556C6.77778 12.925 7.075 13.2222 7.44444 13.2222H12.5556C12.925 13.2222 13.2222 12.925 13.2222 12.5556V7.44444C13.2222 7.075 12.925 6.77778 12.5556 6.77778H7.44444Z\",className:Kt.foreground})});var h2=({icon:t})=>(0,EV.useMemo)(()=>{if(t===void 0)return null;switch(t){case\"coinbasePay\":return dPe;case\"coinbaseLogo\":return uPe;case\"fundWallet\":return hPe;case\"swapSettings\":return pPe;case\"wallet\":return mPe;case\"toggle\":return MT;case\"applePay\":return cPe;case\"apple\":return lPe;case\"creditCard\":return fPe}if((0,EV.isValidElement)(t))return t},[t]);p();var p2=({amount:t,currency:e=\"USD\",locale:n,minimumFractionDigits:r=2,maximumFractionDigits:o=2})=>{let i=Number(t);return Number.isNaN(i)&&(i=0),new Intl.NumberFormat(n,{style:\"currency\",currency:e,minimumFractionDigits:r,maximumFractionDigits:o}).format(i)};p();var gPe=he(De(),1);function z1({className:t}){return(0,gPe.jsx)(\"div\",{className:ge(\"animate-pulse bg-opacity-50\",dn.alternate,mt.radius,t),\"data-testid\":\"ockSkeleton\"})}function SV({selectedInputType:t,setSelectedInputType:e,asset:n,fiatAmount:r,cryptoAmount:o,exchangeRate:i,exchangeRateLoading:a,currency:c,loadingDisplay:u=(0,D3.jsx)(z1,{className:\"h-[1.625rem]\"}),className:d}){let h=h2({icon:\"toggle\"}),m=(0,tM.useCallback)(()=>{e(t===\"fiat\"?\"crypto\":\"fiat\")},[t,e]),g=(0,tM.useCallback)(E=>`${Sg(E||\"0\",8)} ${n}`,[n]),b=(0,tM.useMemo)(()=>(0,D3.jsx)(\"span\",{\"data-testid\":\"ockAmountLine\",className:ge(Xe.label1),children:t===\"fiat\"?g(o):p2({amount:r,currency:c,minimumFractionDigits:0})}),[o,r,t,g,c]);return a||!i?u:(0,D3.jsxs)(\"div\",{className:ge(\"flex items-center\",d),children:[(0,D3.jsx)(\"button\",{type:\"button\",\"aria-label\":\"amount type switch\",className:ge(Ht.default,\"mr-1 rounded-full p-1 opacity-50 transition-opacity hover:opacity-100\"),\"data-testid\":\"ockAmountTypeSwitch\",onClick:m,children:(0,D3.jsx)(\"div\",{className:\"h-[1.125rem] w-[1.125rem]\",children:h})}),(0,D3.jsx)(\"div\",{className:\"w-full truncate\",children:b})]})}var nM=({className:t})=>{let{selectedInputType:e,setSelectedInputType:n,asset:r,fundAmountFiat:o,fundAmountCrypto:i,exchangeRate:a,exchangeRateLoading:c,currency:u}=Ml();return(0,yPe.jsx)(SV,{selectedInputType:e,setSelectedInputType:n,asset:r,fiatAmount:o,cryptoAmount:i,exchangeRate:a,exchangeRateLoading:c,currency:u,className:t})};p();var bPe=he(De(),1);function _se({className:t}){let{headerText:e}=Ml();return(0,bPe.jsx)(\"div\",{className:ge(Xe.headline,t),\"data-testid\":\"ockFundCardHeader\",children:e})}p();var U3=he(De(),1);p();function vPe(){return/iPhone|iPad|iPod/.test(navigator.userAgent)||/Safari/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/Edg/.test(navigator.userAgent)}p();var kV=he(et(),1);function _V(t,e){let n=(0,kV.useCallback)(r=>{var o;if(!t.current)return;let i=!t.current.contains(r.target),a=(o=r.composedPath)==null?void 0:o.call(r);!a?.some(u=>u instanceof HTMLElement&&u.hasAttribute(\"data-portal-origin\"))&&i&&e()},[e,t]);(0,kV.useEffect)(()=>(document.addEventListener(\"click\",n,{capture:!0}),()=>{document.removeEventListener(\"click\",n,{capture:!0})}),[n])}var Lu=he(et(),1);p();var F3=he(De(),1),AV=he(et(),1);p();var wPe=he(De(),1);function CV({className:t,paymentMethod:e}){let{icon:n}=e,r=h2({icon:n});return(0,wPe.jsx)(\"div\",{\"data-testid\":\"ockFundCardPaymentMethodImage__iconContainer\",className:ge(\"flex items-center justify-center overflow-hidden rounded-[50%]\",t),children:r})}var Cse=(0,AV.memo)(({paymentMethod:t,onClick:e,hideImage:n,hideDescription:r,disabled:o,disabledReason:i,testId:a})=>{let{sendAnalytics:c}=zi(),u=(0,AV.useCallback)(()=>{o||(e?.(t),c(Pu.FundOptionSelected,{option:t.id}))},[o,e,t,c]);return(0,F3.jsx)(\"button\",{\"data-testid\":a,type:\"button\",className:ge(Ht.default,mt.radius,dn.default,\"flex w-full items-center justify-between px-4 py-2\",{[Ht.disabled]:o}),onClick:u,disabled:o,title:i,children:(0,F3.jsxs)(\"span\",{className:\"flex items-center gap-3\",children:[!n&&(0,F3.jsx)(CV,{paymentMethod:t,className:ge(\"h-4 w-4\",{[Ht.disabled]:o})}),(0,F3.jsxs)(\"span\",{className:\"flex flex-col items-start\",children:[(0,F3.jsx)(\"span\",{className:ge(Xe.headline),children:t.name}),!r&&(0,F3.jsx)(\"span\",{className:ge(Xe.label2,it.foregroundMuted,\"font-normal\"),children:i||t.description})]})]})})});Cse.displayName=\"FundCardPaymentMethodSelectRow\";p();var Sk=he(De(),1),xPe=he(et(),1);p();var Ase=he(De(),1);var TV=(0,Ase.jsx)(\"svg\",{\"data-testid\":\"ock-caretUpSvg\",role:\"img\",\"aria-label\":\"ock-caretUpSvg\",width:\"16\",height:\"16\",viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:(0,Ase.jsx)(\"path\",{d:\"M3.05329 10.9866L7.99996 6.03997L12.9466 10.9866L14.1266 9.80663L7.99996 3.67997L1.87329 9.80663L3.05329 10.9866Z\",className:Kt.foreground})});var Tse=(0,xPe.forwardRef)(({onClick:t,paymentMethod:e,isOpen:n,className:r},o)=>(0,Sk.jsxs)(\"button\",{type:\"button\",className:ge(Ht.default,mt.radius,mt.lineDefault,\"flex h-12 w-full items-center gap-2 px-3 py-1\",r),onClick:t,ref:o,\"data-testid\":\"ockFundCardPaymentMethodSelectorToggle\",children:[(0,Sk.jsx)(\"div\",{className:\"w-4\",children:(0,Sk.jsx)(CV,{paymentMethod:e,className:\"h-4 w-4\"})}),(0,Sk.jsx)(\"span\",{className:ge(Xe.headline,it.foreground,\"flex w-full\"),\"data-testid\":\"ockFundCardPaymentMethodSelectorToggle__paymentMethodName\",children:e.name}),(0,Sk.jsx)(\"span\",{className:ge(\"rotate-90 transition-transform duration-200\",n&&\"rotate-180\"),children:TV})]}));Tse.displayName=\"FundCardPaymentMethodSelectorToggle\";function rM({className:t}){let[e,n]=(0,Lu.useState)(!1),{selectedPaymentMethod:r,setSelectedPaymentMethod:o,paymentMethods:i,fundAmountFiat:a,isPaymentMethodsLoading:c,currency:u}=Ml(),{sendAnalytics:d}=zi(),h=(0,Lu.useMemo)(()=>i.filter(G=>G.id!==\"APPLE_PAY\"||vPe()),[i]),m=(0,Lu.useCallback)(G=>{let W=Number(a);if(G.minAmount&&W<G.minAmount)return`Minimum amount of ${p2({amount:G.minAmount,currency:u,minimumFractionDigits:0})} required`;if(G.maxAmount&&W>G.maxAmount)return`Maximum amount allowed is ${p2({amount:G.maxAmount,currency:u,minimumFractionDigits:0})}`},[a,u]),g=(0,Lu.useCallback)(G=>a?!!m(G):!1,[a,m]);(0,Lu.useEffect)(()=>{if(r&&g(r)){let G=i.find(W=>W.id===\"\");G&&o(G)}},[r,i,o,g]);let b=(0,Lu.useCallback)(G=>{g(G)||(d(Pu.FundOptionSelected,{option:G.id}),o(G),n(!1))},[o,g,d]),E=(0,Lu.useCallback)(()=>{n(!e)},[e]),C=(0,Lu.useRef)(null),T=(0,Lu.useRef)(null),R=(0,Lu.useRef)(null);_V(T,()=>{e&&n(!1)});let L=(0,Lu.useCallback)(G=>{G.key===\"Escape\"&&n(!1)},[]),D=r||h[0];return(0,U3.jsxs)(\"div\",{className:ge(\"relative py-4\",t),ref:T,\"data-testid\":\"ockFundCardPaymentMethodDropdownContainer\",onKeyUp:L,children:[c||!D?(0,U3.jsx)(z1,{className:\"h-12 w-full\"}):(0,U3.jsx)(Tse,{ref:R,onClick:E,isOpen:e,paymentMethod:D}),e&&(0,U3.jsx)(\"div\",{ref:C,\"data-testid\":\"ockFundCardPaymentMethodDropdown\",className:ge(mt.radius,mt.lineDefault,\"ock-scrollbar absolute z-10 mt-2 flex w-full flex-col overflow-y-hidden\"),children:(0,U3.jsx)(\"div\",{className:ge(dn.default,\"overflow-y-auto p-2\"),children:h.map(G=>{let W=g(G);return(0,U3.jsx)(Cse,{testId:`ockFundCardPaymentMethodSelectRow__${G.id}`,paymentMethod:G,onClick:b,disabled:W,disabledReason:m(G)},G.name)})})})]})}p();var Rse=he(De(),1);p();var EPe=he(De(),1);var oM=he(et(),1);function SPe({presetAmountInput:t,currency:e,onClick:n}){let{sendAnalytics:r}=zi(),o=(0,oM.useMemo)(()=>p2({amount:t,currency:e,minimumFractionDigits:0}),[t,e]),i=(0,oM.useCallback)(()=>{r(Pu.FundAmountChanged,{amount:Number(t),currency:e}),n(t)},[t,e,n,r]),a=(0,oM.useCallback)(c=>{(c.key===\"Enter\"||c.key===\" \")&&(c.preventDefault(),r(Pu.FundAmountChanged,{amount:Number(t),currency:e}),n(t))},[t,e,n,r]);return t?(0,EPe.jsx)(\"button\",{type:\"button\",\"data-testid\":\"ockPresetAmountInput\",className:ge(Xe.body,it.foreground,mt.radius,mt.lineDefault,\"flex-1\",\"p-1\",\"overflow-hidden\",\"whitespace-nowrap\",\"text-ellipsis\",\"hover:bg-[var(--ock-bg-default-hover)]\",\"focus:outline-none focus:ring-2\"),title:o,onClick:i,onKeyDown:a,children:o}):null}function iM(){let{presetAmountInputs:t,currency:e,selectedInputType:n,exchangeRate:r,setFundAmountFiat:o,setFundAmountCrypto:i}=Ml(),{handleFiatChange:a}=bV({setFiatAmount:o,setCryptoAmount:i,selectedInputType:n,exchangeRate:String(r)});return t?(0,Rse.jsx)(\"div\",{\"data-testid\":\"ockPresetAmountInputList\",className:\"flex w-full flex-wrap items-center justify-between gap-2 pt-8\",children:t.map((c,u)=>(0,Rse.jsx)(SPe,{presetAmountInput:c,onClick:a,currency:e},u))}):null}p();var CPe=he(De(),1),sM=he(et(),1);p();var kPe=he(et(),1);var _Pe=()=>{let{projectId:t,chain:e}=lo(),{address:n,chain:r}=Jn(),{selectedPaymentMethod:o,selectedInputType:i,fundAmountFiat:a,fundAmountCrypto:c,asset:u,currency:d}=Ml(),h=r||e;return(0,kPe.useMemo)(()=>{if(t===null||n===void 0)return;let m=i===\"fiat\"?a:c;return xk({projectId:t,assets:[u],presetFiatAmount:i===\"fiat\"?Number(m):void 0,presetCryptoAmount:i===\"crypto\"?Number(m):void 0,defaultPaymentMethod:o?.id,addresses:{[n]:[h.name.toLowerCase()]},fiatCurrency:d,originComponentName:\"FundCard\"})},[u,a,c,o,i,t,n,h,d])};function aM(){let{fundAmountFiat:t,fundAmountCrypto:e,submitButtonState:n,setSubmitButtonState:r,buttonText:o,currency:i,updateLifecycleStatus:a}=Ml(),c=_Pe(),u=(0,sM.useCallback)(()=>r(\"loading\"),[r]),d=(0,sM.useCallback)(()=>{a({statusName:\"exit\",statusData:void 0}),r(\"default\")},[a,r]),h=(0,sM.useMemo)(()=>(!t||Number(e)===0)&&(!e||Number(t)===0),[e,t]);return(0,CPe.jsx)(JP,{disabled:h,hideIcon:n===\"default\",text:o,className:\"w-full\",fundingUrl:c,state:n,onClick:u,onPopupClose:d,fiatCurrency:i})}function Ise({assetSymbol:t,buttonText:e=\"Buy\",headerText:n,country:r=\"US\",subdivision:o,currency:i=\"USD\",presetAmountInputs:a,children:c=(0,Bu.jsx)(uyt,{}),className:u,onError:d,onStatus:h,onSuccess:m}){let g=ji();return(0,Bu.jsx)(bse,{asset:t,headerText:n,buttonText:e,country:r,subdivision:o,currency:i,onError:d,onStatus:h,onSuccess:m,presetAmountInputs:a,children:(0,Bu.jsx)(\"div\",{className:ge(g,dn.default,it.foreground,\"flex w-full flex-col p-6\",Xe.headline,mt.radius,mt.lineDefault,u),children:(0,Bu.jsx)(lyt,{children:c})})})}function lyt({children:t}){return XOe(),(0,Bu.jsx)(\"form\",{className:\"w-full\",\"data-testid\":\"ockFundCardForm\",children:t})}function uyt(){return(0,Bu.jsxs)(Bu.Fragment,{children:[(0,Bu.jsx)(_se,{}),(0,Bu.jsx)(XP,{}),(0,Bu.jsx)(nM,{}),(0,Bu.jsx)(iM,{}),(0,Bu.jsx)(rM,{}),(0,Bu.jsx)(aM,{})]})}p();p();p();p();var cM=he(De(),1);p();async function RV({copyValue:t,onSuccess:e,onError:n}){try{await navigator.clipboard.writeText(t),e?.()}catch(r){n?.(r)}}var APe=he(et(),1);function j3({address:t=null,className:e,isSliced:n=!0,hasCopyAddressOnClick:r=!0}){let[o,i]=(0,APe.useState)(\"Copy\"),{address:a}=Lf(),c=t??a;if(!c)return console.error(\"Address: an Ethereum address must be provided to the Identity or Address component.\"),null;let u=n?vk(c):c;if(!r)return(0,cM.jsx)(\"span\",{\"data-testid\":\"ockAddress\",className:ge(it.foregroundMuted,Xe.label2,e),children:u});let d=async()=>{await RV({copyValue:c,onSuccess:()=>{i(\"Copied\"),setTimeout(()=>i(\"Copy\"),2e3)},onError:m=>{console.error(\"Failed to copy address:\",m),i(\"Failed to copy\"),setTimeout(()=>i(\"Copy\"),2e3)}})},h=m=>{(m.key===\"Enter\"||m.key===\" \")&&(m.preventDefault(),d())};return(0,cM.jsxs)(\"span\",{\"data-testid\":\"ockAddress\",className:ge(it.foregroundMuted,Xe.label2,e,\"group relative cursor-pointer\"),onClick:d,onKeyDown:h,tabIndex:0,role:\"button\",\"aria-label\":`Copy address ${c}`,children:[u,(0,cM.jsx)(\"button\",{type:\"button\",className:ge(Ht.alternate,Xe.legal,it.foreground,mt.default,mt.radius,\"absolute top-full left-[0%] z-10 mt-0.5 px-1.5 py-0.5 opacity-0 transition-opacity group-hover:opacity-100\"),\"aria-live\":\"polite\",children:o})]})}p();var DPe=he(De(),1);p();function m2(t,e){var n;if(t===\"0\")return t;let r=Number.parseFloat(t),o=(n=Number(r))==null?void 0:n.toFixed(e).replace(/0+$/,\"\");return r>0&&Number.parseFloat(o)===0?\"0\":o}p();var BPe=he(et(),1);bo();p();p();var TPe=\"SWAP_ERROR\",RPe=\"SWAP_QUOTE_ERROR\",IPe=\"SWAP_BALANCE_ERROR\",IV=\"SWAP_QUOTE_LOW_LIQUIDITY_ERROR\",OPe=\"0x000000000022D473030F116dDEE9F6B43aC78BA3\",OV=\"TOO_MANY_REQUESTS_ERROR\",PPe=\"UNCAUGHT_SWAP_QUOTE_ERROR\",MPe=\"UNCAUGHT_SWAP_ERROR\",NPe=\"0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD\",LPe=\"USER_REJECTED\",PV=\"UNSUPPORTED_AMOUNT_REFERENCE_ERROR\",Kc=(t=>(t.BALANCE_ERROR=\"Error fetching token balance\",t.CONFIRM_IN_WALLET=\"Confirm in wallet\",t.FETCHING_QUOTE=\"Fetching quote...\",t.FETCHING_BALANCE=\"Fetching balance...\",t.INCOMPLETE_FIELD=\"Complete the fields to continue\",t.INSUFFICIENT_BALANCE=\"Insufficient balance\",t.LOW_LIQUIDITY=\"Insufficient liquidity for this trade.\",t.SWAP_IN_PROGRESS=\"Swap in progress...\",t.TOO_MANY_REQUESTS=\"Too many requests. Please try again later.\",t.USER_REJECTED=\"User rejected the transaction\",t.UNSUPPORTED_AMOUNT_REFERENCE=\"useAggregator does not support amountReference: to, please use useAggregator: false\",t))(Kc||{});function H1(t,e){return e===-32001?OV:e===-32602?IV:t===\"uncaught-swap\"?MPe:t===\"uncaught-quote\"?PPe:t===\"quote\"?RPe:t===\"balance\"?IPe:TPe}var dyt=18;function MV(t){let e=XQ({address:t,query:{...Mu}});return(0,BPe.useMemo)(()=>{var n,r,o,i;let a;if(e?.error&&(a={code:H1(\"balance\"),error:(n=e?.error)==null?void 0:n.message,message:\"\"}),!((r=e?.data)!=null&&r.value)&&((o=e?.data)==null?void 0:o.value)!==0n)return{convertedBalance:\"\",roundedBalance:\"\",error:a,response:e};let c=vs((i=e?.data)==null?void 0:i.value,dyt),u=m2(c,8);return{convertedBalance:c,error:a,response:e,roundedBalance:u}},[e])}function lM({address:t,className:e}){let{address:n}=Lf();if(!n&&!t)return console.error(\"Address: an Ethereum address must be provided to the Identity or EthBalance component.\"),null;let{convertedBalance:r,error:o}=MV(t??n);return!r||o?null:(0,DPe.jsxs)(\"span\",{\"data-testid\":\"ockEthBalance\",className:ge(Xe.label2,it.foregroundMuted,e),children:[m2(r,4),\" ETH\"]})}p();var Ose=he(De(),1);p();var z3=he(De(),1);var NT=he(et(),1);p();var dM=he(De(),1);p();p();Si();var FPe=async({ensName:t})=>{let e=Bf(li),n=aT(t),r=async u=>{try{return await e.getEnsText({name:n,key:u})||null}catch(d){return console.warn(`Failed to fetch ENS text record for ${u}:`,d),null}},[o,i,a,c]=await Promise.all([r(\"com.twitter\"),r(\"com.github\"),r(\"xyz.farcaster\"),r(\"url\")]);return{twitter:o,github:i,farcaster:a,website:c}};Si();var UPe=({ensName:t,chain:e=li},n)=>{let r=[\"useSocials\",t,e.id];return pd({queryKey:r,queryFn:()=>FPe({ensName:t}),...Mu,gcTime:n?.cacheTime,...n})};p();var uM=he(De(),1);var fyt={twitter:{href:t=>`https://x.com/${t}`,icon:gOe},github:{href:t=>`https://github.com/${t}`,icon:mOe},farcaster:{href:t=>`https://warpcast.com/${t.split(\"/\").pop()}`,icon:yOe},website:{href:t=>t,icon:bOe}};function jPe({platform:t,value:e}){let n=fyt[t];return(0,uM.jsxs)(\"a\",{href:n.href(e),target:\"_blank\",rel:\"noopener noreferrer\",className:ge(Ht.default,mt.radius,mt.default,\"flex items-center justify-center p-2\"),\"data-testid\":`ockSocials_${t.charAt(0).toUpperCase()+t.slice(1)}`,children:[(0,uM.jsx)(\"span\",{className:\"sr-only\",children:t}),(0,uM.jsx)(\"div\",{className:ge(\"flex h-4 w-4 items-center justify-center\"),children:n.icon})]})}function NV({address:t,chain:e,className:n}){let{address:r,chain:o}=Lf(),i=t??r,a=e??o;if(!i)return console.error(\"Socials: an Ethereum address must be provided to the Socials component.\"),null;let{data:c,isLoading:u}=R3({address:i,chain:a}),{data:d,isLoading:h}=UPe({ensName:c??\"\",chain:a},{enabled:!!c});return u||h?(0,dM.jsx)(\"span\",{className:n}):!d||Object.values(d).every(m=>!m)?null:(0,dM.jsx)(\"div\",{className:ge(mt.default,\"mt-2 w-full pl-1\",n),children:(0,dM.jsx)(\"div\",{className:\"left-4 flex space-x-2\",children:Object.entries(d).map(([m,g])=>g&&(0,dM.jsx)(jPe,{platform:m,value:g},m))})})}function zPe({children:t,className:e,hasCopyAddressOnClick:n}){let r=ji(),{avatar:o,name:i,address:a,ethBalance:c,socials:u}=(0,NT.useMemo)(()=>{let d=NT.Children.toArray(t),h=d.find(Nd(j3));return{avatar:d.find(Nd(Ld)),name:d.find(Nd(Df)),address:h?(0,NT.cloneElement)(h,{hasCopyAddressOnClick:n}):void 0,ethBalance:d.find(Nd(lM)),socials:d.find(Nd(NV))}},[t,n]);return(0,z3.jsxs)(\"div\",{className:ge(r,dn.default,\"flex flex-col px-4 py-1\",e),\"data-testid\":\"ockIdentityLayout_container\",children:[(0,z3.jsxs)(\"div\",{className:\"flex items-center space-x-3\",children:[(0,z3.jsx)(\"div\",{className:\"flex-shrink-0\",children:o}),(0,z3.jsxs)(\"div\",{className:\"flex flex-col\",children:[i,a&&!c&&a,!a&&c&&c,a&&c&&(0,z3.jsxs)(\"div\",{className:\"flex items-center gap-1\",children:[a,(0,z3.jsx)(\"span\",{className:it.foregroundMuted,children:\"\\\\xB7\"}),c]})]})]}),u]})}function LV({address:t,chain:e,children:n,className:r,hasCopyAddressOnClick:o,schemaId:i}){let{chain:a}=lo(),c=e??a,{address:u}=Jn();return!u&&!t?null:(0,Ose.jsx)(IW,{address:t||u,schemaId:i,chain:c,children:(0,Ose.jsx)(zPe,{className:r,hasCopyAddressOnClick:o,children:n})})}p();var HPe=he(De(),1);p();p();p();p();p();p();p();p();var qf=he(De(),1);p();var $Pe=he(De(),1);var Pm=he(et(),1);p();function WPe({draggableRef:t,position:e,minGapToEdge:n=10}){var r;let o=(r=t.current)==null?void 0:r.getBoundingClientRect();if(!o||typeof window>\"u\")return e;let i=window.innerWidth,a=window.innerHeight,c=Math.min(Math.max(n,e.x),i-o.width-n),u=Math.min(Math.max(n,e.y),a-o.height-n);return{x:c,y:u}}p();var LT=he(et(),1);function VPe(t,e,n){let r=(0,LT.useCallback)(a=>a.right<=window.innerWidth&&a.bottom<=window.innerHeight&&a.left>=0&&a.top>=0,[]),o=(0,LT.useCallback)((a,c)=>{let u=window.innerWidth,d=window.innerHeight,h,m;return a.right>u?h=u-a.width-10:a.left<0?h=10:h=c.x,a.bottom>d?m=d-a.height-10:a.top<0?m=10:m=c.y,{x:h,y:m}},[]),i=(0,LT.useCallback)(()=>{if(!t.current)return;let c=t.current.getBoundingClientRect(),u=o(c,e);n(d=>r(c)?d:u)},[t,e,o,n,r]);(0,LT.useEffect)(()=>(window.addEventListener(\"resize\",i),()=>window.removeEventListener(\"resize\",i)),[i])}function KPe({children:t,gridSize:e=1,startingPosition:n={x:20,y:20},snapToGrid:r=!1,disabled:o=!1}){let[i,a]=(0,Pm.useState)(n),[c,u]=(0,Pm.useState)({x:0,y:0}),[d,h]=(0,Pm.useState)({x:0,y:0}),[m,g]=(0,Pm.useState)(!1),b=(0,Pm.useRef)(null),E=(0,Pm.useCallback)(T=>Math.round(T/e)*e,[e]),C=(0,Pm.useCallback)(T=>{o||(g(!0),h({x:T.clientX,y:T.clientY}),u({x:T.clientX-i.x,y:T.clientY-i.y}))},[i,o]);return(0,Pm.useEffect)(()=>{if(!m)return;let T=L=>{let D=WPe({draggableRef:b,position:{x:L.clientX-c.x,y:L.clientY-c.y}});a(D)},R=L=>{if(Math.hypot(L.clientX-d.x,L.clientY-d.y)>2){L.preventDefault(),L.stopPropagation();let G=W=>{W.preventDefault(),W.stopPropagation(),document.removeEventListener(\"click\",G,!0)};document.addEventListener(\"click\",G,!0)}a(G=>({x:r?E(G.x):G.x,y:r?E(G.y):G.y})),g(!1)};return document.addEventListener(\"pointermove\",T),document.addEventListener(\"pointerup\",R),()=>{document.removeEventListener(\"pointermove\",T),document.removeEventListener(\"pointerup\",R)}},[m,c,r,E,d]),VPe(b,i,a),(0,$Pe.jsx)(\"div\",{ref:b,\"data-testid\":\"ockDraggable\",className:ge(\"fixed touch-none select-none\",\"cursor-grab active:cursor-grabbing\"),style:{left:`${i.x}px`,top:`${i.y}px`},onPointerDown:C,children:t})}p();var BV=he(et(),1);function BT(){let[t,e]=(0,BV.useState)(!1);return(0,BV.useEffect)(()=>{e(!0)},[]),t}var J1=he(et(),1);p();p();function Pse(){return typeof window>\"u\"?{x:100,y:100}:{x:window.innerWidth-56-16,y:window.innerHeight-56-16}}function GPe({draggable:t,draggableStartingPosition:e}){return t?{draggable:t,draggableStartingPosition:e??Pse()}:{draggable:t}}p();var _g=he(De(),1);p();var zh=he(De(),1),DV=he(et(),1);p();p();p();var ZPe=\"cdp_getTokensForAddresses\",YPe=\"cdp_getPriceQuote\";p();p();var QPe=()=>{if(!bh.rpcUrl&&!bh.apiKey)throw new Error(\"API Key Unset: You can use the Coinbase Developer Platform RPC by providing an API key in `OnchainKitProvider` or by manually calling `setOnchainKitConfig`: https://portal.cdp.coinbase.com/products/onchainkit\");return bh.rpcUrl||`https://api.developer.coinbase.com/rpc/v1/${bh.chain.name.replace(\" \",\"-\").toLowerCase()}/${bh.apiKey}`};function myt(t,e){return{id:1,jsonrpc:A9e,method:t,params:e}}async function gyt(t){var e;let n={...SW},r=await lk.getClientMeta().catch(()=>null);return r&&(n[\"OnchainKit-Client-Fid\"]=((e=r.clientFid)==null?void 0:e.toString())??\"\",n[\"OnchainKit-Mode\"]=r.mode),t?Object.values(no).includes(t)?{...n,[Eie]:t}:{...n,[Eie]:no.API}:n}async function H3(t,e,n){try{let r=myt(t,e),o=QPe();return await(await fetch(o,{body:JSON.stringify(r),headers:await gyt(n),method:C9e})).json()}catch(r){throw console.log(`sendRequest: error sending request: ${r.message}`),r}}async function JPe(t,e=no.API){let{addresses:n}=t;try{let r=await H3(ZPe,[{addresses:n}],e);return r.error?{code:`${r.error.code}`,error:\"Error fetching portfolio token balances\",message:r.error.message}:r.result}catch(r){return{code:\"uncaught-portfolio\",error:\"Something went wrong\",message:`Error fetching portfolio token balances: ${r}`}}}p();function q3(t){return t!==null&&typeof t==\"object\"&&\"error\"in t}function Bd({address:t,enabled:e=!0},n=no.Hook){return pd({queryKey:[\"usePortfolio\",t],queryFn:async()=>{let r=await JPe({addresses:[t]},n);if(q3(r))throw new Error(r.message);return r.portfolios.length===0?{address:t,portfolioBalanceUsd:0,tokenBalances:[]}:r.portfolios[0]},retry:!1,enabled:!!t&&e,refetchOnWindowFocus:!0,staleTime:1e3*60*5,refetchOnMount:!0,refetchInterval:1e3*60*15,refetchIntervalInBackground:!0})}function fM({classNames:t}){let{address:e,chain:n,animations:r}=Ko(),[o,i]=(0,DV.useState)(\"Copy\"),a=(0,DV.useCallback)(async()=>{try{await navigator.clipboard.writeText(String(e)),i(\"Copied\"),setTimeout(()=>i(\"Copy\"),2e3)}catch(c){console.error(\"Failed to copy address:\",c),i(\"Failed to copy\"),setTimeout(()=>i(\"Copy\"),2e3)}},[e]);return!e||!n?(0,zh.jsx)(\"div\",{className:\"mt-1 h-28 w-10 px-4 py-3\"}):(0,zh.jsxs)(\"div\",{\"data-testid\":\"ockWalletAdvanced_AddressDetails\",className:ge(\"mt-2 flex w-88 flex-col items-center justify-center px-4 py-3\",it.foreground,Xe.body,r.content,t?.container),children:[(0,zh.jsx)(Ld,{address:e,chain:n,className:ge(\"pointer-events-none h-10 w-10\",t?.avatar)}),(0,zh.jsxs)(\"div\",{className:\"group relative mt-2 text-base\",children:[(0,zh.jsx)(\"button\",{type:\"button\",onClick:a,\"data-testid\":\"ockWalletAdvanced_NameButton\",children:(0,zh.jsx)(Df,{address:e,chain:n,className:ge(\"hover:text-[var(--ock-text-foreground-muted)] active:text-[var(--ock-text-primary)]\",t?.nameButton)})}),(0,zh.jsx)(\"button\",{type:\"button\",onClick:a,className:ge(Ht.alternate,Xe.legal,it.foreground,mt.default,mt.radius,Nu.tooltip,\"absolute top-full right-0 mt-0.5 px-1.5 py-0.5 opacity-0 transition-opacity group-hover:opacity-100\"),\"aria-live\":\"polite\",\"data-testid\":\"ockWalletAdvanced_NameTooltip\",children:o})]}),(0,zh.jsx)(yyt,{className:t?.fiatBalance})]})}function yyt({className:t}){let{address:e}=Jn(),{data:n,isFetching:r}=Bd({address:e},no.Wallet),o=n?.portfolioBalanceInUsd,i=new Intl.NumberFormat(\"en-US\",{style:\"currency\",currency:\"USD\"}).format(Number(o));return r?(0,zh.jsx)(\"div\",{className:\"mt-1 h-8 w-full\",children:(0,zh.jsx)(jh,{})}):o==null?null:(0,zh.jsx)(\"div\",{className:ge(Xe.title1,\"mt-1 font-normal\",t),\"data-testid\":\"ockWalletAdvanced_AddressBalance\",children:i})}p();var Nm=he(De(),1);var U9n=he(et(),1);p();var FV=he(De(),1),eMe=he(et(),1);p();function byt(t){let e=0;for(let n=0;n<t.length;n++)e=t.charCodeAt(n)+((e<<5)-e);return e}function vyt(t){let e=Math.abs(t)%360,n=Math.abs(t>>8)%31+50,r=Math.abs(t>>16)%21+40;return`hsl(${e}, ${n}%, ${r}%)`}function XPe(t){let e=byt(`${t}`);return vyt(e)}function q1({className:t,size:e=24,token:n}){let{image:r,name:o}=n,i=(0,eMe.useMemo)(()=>({image:{width:`${e}px`,height:`${e}px`,minWidth:`${e}px`,minHeight:`${e}px`},placeholderImage:{background:XPe(o),width:`${e}px`,height:`${e}px`,minWidth:`${e}px`,minHeight:`${e}px`}}),[e,o]);return r?(0,FV.jsx)(\"img\",{className:ge(\"overflow-hidden rounded-[50%]\",t),alt:\"token-image\",\"data-testid\":\"ockTokenImage_Image\",style:i.image,src:r}):(0,FV.jsx)(\"div\",{className:ge(\"overflow-hidden rounded-full\",t),\"data-testid\":\"ockTokenImage_NoImage\",style:i.image,children:(0,FV.jsx)(\"div\",{style:i.placeholderImage})})}p();var g2=he(De(),1),nMe=he(et(),1);p();function tMe(t,e={}){if(t===void 0)return\"\";let{locale:n,minimumFractionDigits:r,maximumFractionDigits:o}=e;return Number(t).toLocaleString(n,{minimumFractionDigits:r,maximumFractionDigits:o})}var rMe=(0,nMe.memo)(function({className:e,token:n,amount:r,onClick:o,hideImage:i,hideSymbol:a}){let c=ji();return(0,g2.jsxs)(\"button\",{\"data-testid\":\"ockTokenRow_Container\",type:\"button\",className:ge(c,Ht.default,\"flex w-full items-center justify-between px-2 py-1\",e),onClick:()=>o?.(n),children:[(0,g2.jsxs)(\"span\",{className:\"flex max-w-full items-center gap-3\",children:[!i&&(0,g2.jsx)(q1,{token:n,size:28}),(0,g2.jsxs)(\"span\",{className:\"flex min-w-0 flex-col items-start\",children:[(0,g2.jsx)(\"span\",{className:ge(Xe.headline,\"max-w-full overflow-hidden text-ellipsis whitespace-nowrap text-left\"),children:n.name.trim()}),!a&&(0,g2.jsx)(\"span\",{className:ge(Xe.body,it.foregroundMuted),children:n.symbol})]})]}),(0,g2.jsx)(\"span\",{\"data-testid\":\"ockTokenRow_Amount\",className:ge(Xe.body,it.foregroundMuted),children:tMe(r,{minimumFractionDigits:2,maximumFractionDigits:Number(r)<1?5:2})})]})});p();var Mse=he(De(),1);var _9n=(0,Mse.jsx)(\"svg\",{role:\"img\",\"aria-label\":\"ock-searchIconSvg\",width:\"16\",height:\"16\",viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:(0,Mse.jsx)(\"path\",{d:\"M16 14.23L11.89 10.12C12.59 9.09 13 7.84 13 6.5C13 2.91 10.09 0 6.5 0C2.91 0 0 2.91 0 6.5C0 10.09 2.91 13 6.5 13C7.84 13 9.09 12.59 10.13 11.89L14.23 16L16 14.23ZM6.5 10.5C4.29 10.5 2.5 8.71 2.5 6.5C2.5 4.29 4.29 2.5 6.5 2.5C8.71 2.5 10.5 4.29 10.5 6.5C10.5 8.71 8.71 10.5 6.5 10.5Z\",className:Kt.foreground})});var W9n=he(I0(),1);p();var Mm=he(De(),1),iMe=he(et(),1);p();var Nse=he(De(),1);var oMe=(0,Nse.jsx)(\"svg\",{\"data-testid\":\"ock-caretDownSvg\",role:\"img\",\"aria-label\":\"ock-caretDownSvg\",width:\"16\",height:\"17\",viewBox:\"0 0 16 17\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:(0,Nse.jsx)(\"path\",{d:\"M12.95 4.85999L8.00001 9.80999L3.05001 4.85999L1.64001 6.27999L8.00001 12.64L14.36 6.27999L12.95 4.85999Z\",className:Kt.foreground})});var sMe=(0,iMe.forwardRef)(function({onClick:e,token:n,isOpen:r,className:o},i){return(0,Mm.jsxs)(\"button\",{type:\"button\",\"data-testid\":\"ockTokenSelectButton_Button\",className:ge(Ht.default,Ht.shadow,mt.radius,mt.lineDefault,\"flex w-fit items-center gap-2 px-3 py-1\",o),onClick:e,ref:i,children:[n?(0,Mm.jsxs)(Mm.Fragment,{children:[(0,Mm.jsx)(\"div\",{className:\"w-4\",children:(0,Mm.jsx)(q1,{token:n,size:16})}),(0,Mm.jsx)(\"span\",{className:ge(Xe.headline,it.foreground),\"data-testid\":\"ockTokenSelectButton_Symbol\",children:n.symbol})]}):(0,Mm.jsx)(\"span\",{className:Xe.headline,children:\"Select token\"}),(0,Mm.jsxs)(\"div\",{className:\"relative flex items-center justify-center\",children:[(0,Mm.jsx)(\"div\",{className:\"absolute top-0 left-0 h-4 w-4\"}),r?TV:oMe]})]})});bo();function hM({classNames:t}){let{address:e}=Jn(),{animations:n}=Ko(),{data:r,isFetching:o}=Bd({address:e},no.Wallet),i=r?.tokenBalances;return o||!i||i.length===0?(0,Nm.jsx)(\"div\",{\"data-testid\":\"ockWalletAdvanced_LoadingPlaceholder\",className:\"mx-auto my-2 h-44 w-80 px-4 py-3\"}):(0,Nm.jsx)(\"div\",{className:ge(\"flex flex-col items-center gap-4\",\"my-2 h-44 max-h-44\",\"scrollbar-hidden w-88 overflow-y-auto px-4 py-3\",n.content,t?.container),\"data-testid\":\"ockWalletAdvanced_TokenHoldings\",children:i.map((a,c)=>(0,Nm.jsx)(wyt,{token:{address:a.address,chainId:a.chainId,decimals:a.decimals,image:a.image,name:a.name,symbol:a.symbol},balance:Number(vs(BigInt(a.cryptoBalance),a.decimals)),valueInFiat:Number(a.fiatBalance),classNames:t?.tokenDetails},`${a.address}-${c}`))})}function wyt({token:t,balance:e,valueInFiat:n,classNames:r,tokenImageSize:o=32}){var i;let a=new Intl.NumberFormat(\"en-US\",{minimumFractionDigits:2,maximumFractionDigits:5}).format(e),c=new Intl.NumberFormat(\"en-US\",{style:\"currency\",currency:\"USD\"}).format(n);return(0,Nm.jsxs)(\"div\",{className:ge(\"flex w-full flex-row items-center justify-between\",r?.container),children:[(0,Nm.jsxs)(\"div\",{\"data-testid\":\"ockWalletAdvanced_TokenDetails_TokenImage\",className:ge(\"flex flex-row items-center gap-2\",r?.tokenImage),children:[(0,Nm.jsx)(q1,{token:t,size:o}),(0,Nm.jsxs)(\"div\",{className:\"flex flex-col\",children:[(0,Nm.jsx)(\"span\",{className:ge(Xe.label1,it.foreground,\"max-w-52 overflow-hidden text-ellipsis whitespace-nowrap text-left\",r?.tokenName),children:(i=t.name)==null?void 0:i.trim()}),(0,Nm.jsx)(\"span\",{className:ge(Xe.legal,it.foregroundMuted,r?.tokenBalance),children:`${a} ${t.symbol}`})]})]}),(0,Nm.jsx)(\"span\",{className:ge(Xe.label2,it.foregroundMuted,r?.fiatValue),children:c})]})}p();var W1=he(De(),1);p();var pM=he(De(),1);var aMe=(0,pM.jsxs)(\"svg\",{\"data-testid\":\"ock-addSvg\",role:\"img\",\"aria-label\":\"ock-addSvg\",width:\"13\",height:\"12\",viewBox:\"0 0 13 12\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,pM.jsx)(\"title\",{children:\"Add\"}),(0,pM.jsx)(\"path\",{d:\"M7.125 0H5.875V5.37501L0.5 5.37501L0.5 6.62501H5.875V12H7.125V6.62501H12.5V5.37501H7.125V0Z\",className:Kt.foreground})]});p();var mM=he(De(),1);var cMe=(0,mM.jsxs)(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 12 12\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,mM.jsx)(\"title\",{children:\"Arrow Up Right\"}),(0,mM.jsx)(\"path\",{d:\"M2.44196 2.25H8.93304L1 10.183L1.88388 11.0669L9.81695 3.13386V9.625H11.067V1H2.44196V2.25Z\",className:Kt.foreground})]});var gM=he(et(),1);function yM({classNames:t}){let{address:e,chain:n,setActiveFeature:r,animations:o}=Ko(),{projectId:i}=lo(),{sendAnalytics:a}=zi(),{isFetching:c}=Bd({address:e},no.Wallet),u=(0,gM.useCallback)(g=>{a(N1.OptionSelected,{option:g})},[a]),d=(0,gM.useCallback)(()=>{if(u(a2.Buy),!i||!e||!n?.name)return;let g=new URL(\"https://pay.coinbase.com/buy/select-asset\"),b=new URLSearchParams({appId:i,destinationWallets:JSON.stringify([{address:e,blockchains:[n.name.toLowerCase()]}]),defaultAsset:\"USDC\",defaultPaymentMethod:\"CRYPTO_ACCOUNT\",presetFiatAmount:\"25\"});window.open(`${g}?${b}`,\"popup\",\"width=400,height=600,scrollbars=yes\")},[e,n?.name,i,u]),h=(0,gM.useCallback)(()=>{u(a2.Send),r(\"send\")},[u,r]),m=(0,gM.useCallback)(()=>{u(a2.Swap),r(\"swap\")},[r,u]);return c?(0,W1.jsx)(z1,{className:\"mx-auto my-3 h-16 w-80 px-4 py-3\"}):(0,W1.jsxs)(\"div\",{\"data-testid\":\"ockWalletAdvanced_TransactionActions\",className:ge(\"my-3 flex w-88 flex-row justify-between gap-2 px-4 py-3\",o.content,t?.container),children:[(0,W1.jsx)(Lse,{icon:aMe,label:\"Buy\",action:d,classNames:t?.leftAction}),(0,W1.jsx)(Lse,{icon:cMe,label:\"Send\",action:h,classNames:t?.middleAction}),(0,W1.jsx)(Lse,{icon:MT,label:\"Swap\",action:m,classNames:t?.rightAction})]})}function Lse({icon:t,label:e,action:n,classNames:r}){return(0,W1.jsxs)(\"button\",{type:\"button\",className:ge(\"flex flex-col items-center justify-center gap-2 pt-2.5 pb-2\",\"h-16 flex-1\",mt.radius,Ht.alternate,r?.container),onClick:n,\"aria-label\":e,children:[(0,W1.jsx)(\"span\",{className:ge(\"flex h-4 w-4 flex-col items-center justify-center\",r?.icon),children:t}),(0,W1.jsx)(\"span\",{className:ge(Xe.label2,it.foreground,\"flex flex-col justify-center\",r?.label),children:e})]})}p();var Hh=he(De(),1);p();var lMe=he(De(),1);function Lm({children:t,className:e,onClick:n,ariaLabel:r}){return(0,lMe.jsx)(\"button\",{type:\"button\",onClick:n,\"data-testid\":\"ockPressableIconButton\",\"aria-label\":r,className:ge(Ht.default,mt.radiusInner,mt.default,\"flex items-center justify-center\",e),children:t})}p();var Uf=he(De(),1);var uMe=(0,Uf.jsxs)(\"svg\",{width:\"100%\",height:\"100%\",viewBox:\"0 0 155 155\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",className:Kt.foreground,children:[(0,Uf.jsx)(\"title\",{children:\"BaseScan\"}),(0,Uf.jsxs)(\"g\",{clipPath:\"url(#clip0_13027_2497)\",children:[(0,Uf.jsx)(\"mask\",{id:\"mask0_13027_2497\",maskUnits:\"userSpaceOnUse\",x:\"0\",y:\"0\",width:\"155\",height:\"155\",children:(0,Uf.jsx)(\"path\",{d:\"M155 0H0V155H155V0Z\",fill:\"white\"})}),(0,Uf.jsxs)(\"g\",{mask:\"url(#mask0_13027_2497)\",children:[(0,Uf.jsx)(\"path\",{d:\"M32.6921 73.9892C32.6923 73.1255 32.8626 72.2709 33.1934 71.4736C33.5243 70.6763 34.009 69.9526 34.6198 69.344C35.2306 68.7349 35.9555 68.2524 36.7528 67.9249C37.5501 67.5974 38.4041 67.4309 39.2658 67.4352L50.165 67.4708C51.9029 67.4708 53.5694 68.1625 54.7982 69.3935C56.0269 70.6244 56.7173 72.2938 56.7173 74.035V115.321C57.9442 114.956 59.5201 114.567 61.2447 114.161C62.4425 113.879 63.51 113.2 64.2735 112.234C65.0377 111.268 65.4532 110.071 65.4532 108.838V57.6245C65.4532 55.8834 66.1432 54.2137 67.3723 52.9825C68.6009 51.7513 70.2673 51.0594 72.0054 51.059H82.926C84.6642 51.0594 86.3306 51.7513 87.5591 52.9825C88.7883 54.2137 89.4782 55.8834 89.4782 57.6245V105.156C89.4782 105.156 92.2127 104.048 94.8761 102.921C95.8652 102.502 96.7096 101.801 97.3036 100.904C97.8977 100.007 98.2143 98.955 98.2155 97.8785V41.2141C98.2155 39.4734 98.9055 37.804 100.134 36.573C101.363 35.342 103.029 34.6503 104.767 34.65H115.687C117.425 34.65 119.092 35.3415 120.32 36.5726C121.549 37.8036 122.239 39.4732 122.239 41.2141V87.8759C131.708 81.0016 141.303 72.7341 148.917 62.793C150.021 61.3498 150.752 59.6554 151.044 57.8606C151.336 56.0659 151.18 54.2266 150.59 52.5069C147.066 42.3477 141.463 33.0375 134.141 25.172C126.819 17.3065 117.938 11.059 108.067 6.82926C98.1968 2.59956 87.5531 0.480761 76.8183 0.608476C66.0835 0.736197 55.4931 3.10763 45.7254 7.57097C35.9578 12.0344 27.2278 18.4914 20.0941 26.5289C12.9603 34.5663 7.58002 44.0072 4.29747 54.2474C1.01488 64.4878 -0.0977017 75.3016 1.03092 85.9972C2.15954 96.6928 5.50451 107.035 10.8518 116.361C11.7833 117.97 13.1537 119.279 14.8021 120.135C16.4504 120.99 18.3083 121.356 20.1573 121.191C22.223 121.01 24.7949 120.752 27.8528 120.391C29.1839 120.24 30.4129 119.604 31.3056 118.603C32.1982 117.602 32.6923 116.307 32.6933 114.965V73.9892\",fill:\"white\"}),(0,Uf.jsx)(\"path\",{d:\"M32.6921 73.9892C32.6923 73.1255 32.8626 72.2709 33.1934 71.4736C33.5243 70.6763 34.009 69.9526 34.6198 69.344C35.2306 68.7349 35.9555 68.2524 36.7528 67.9249C37.5501 67.5974 38.4041 67.4309 39.2658 67.4352L50.165 67.4708C51.9029 67.4708 53.5694 68.1625 54.7982 69.3935C56.0269 70.6244 56.7173 72.2938 56.7173 74.035V115.321C57.9442 114.956 59.5201 114.567 61.2447 114.161C62.4425 113.879 63.51 113.2 64.2735 112.234C65.0377 111.268 65.4532 110.071 65.4532 108.838V57.6245C65.4532 55.8834 66.1432 54.2137 67.3723 52.9825C68.6009 51.7513 70.2673 51.0594 72.0054 51.059H82.926C84.6642 51.0594 86.3306 51.7513 87.5591 52.9825C88.7883 54.2137 89.4782 55.8834 89.4782 57.6245V105.156C89.4782 105.156 92.2127 104.048 94.8761 102.921C95.8652 102.502 96.7096 101.801 97.3036 100.904C97.8977 100.007 98.2143 98.955 98.2155 97.8785V41.2141C98.2155 39.4734 98.9055 37.804 100.134 36.573C101.363 35.342 103.029 34.6503 104.767 34.65H115.687C117.425 34.65 119.092 35.3415 120.32 36.5726C121.549 37.8036 122.239 39.4732 122.239 41.2141V87.8759C131.708 81.0016 141.303 72.7341 148.917 62.793C150.021 61.3498 150.752 59.6554 151.044 57.8606C151.336 56.0659 151.18 54.2266 150.59 52.5069C147.066 42.3477 141.463 33.0375 134.141 25.172C126.819 17.3065 117.938 11.059 108.067 6.82926C98.1968 2.59956 87.5531 0.480761 76.8183 0.608476C66.0835 0.736197 55.4931 3.10763 45.7254 7.57097C35.9578 12.0344 27.2278 18.4914 20.0941 26.5289C12.9603 34.5663 7.58002 44.0072 4.29747 54.2474C1.01488 64.4878 -0.0977017 75.3016 1.03092 85.9972C2.15954 96.6928 5.50451 107.035 10.8518 116.361C11.7833 117.97 13.1537 119.279 14.8021 120.135C16.4504 120.99 18.3083 121.356 20.1573 121.191C22.223 121.01 24.7949 120.752 27.8528 120.391C29.1839 120.24 30.4129 119.604 31.3056 118.603C32.1982 117.602 32.6923 116.307 32.6933 114.965V73.9892\",stroke:\"white\"}),(0,Uf.jsx)(\"path\",{d:\"M32.4531 140.209C43.9644 148.599 57.5682 153.635 71.7594 154.759C85.9501 155.884 100.175 153.054 112.86 146.581C125.545 140.109 136.195 130.248 143.632 118.088C151.07 105.927 155.004 91.9428 155 77.6816C155 75.9024 154.918 74.1419 154.8 72.3911C126.608 114.514 74.5543 134.207 32.4557 140.203\",fill:\"#C0D0DB\"})]})]}),(0,Uf.jsx)(\"defs\",{children:(0,Uf.jsx)(\"clipPath\",{id:\"clip0_13027_2497\",children:(0,Uf.jsx)(\"rect\",{width:\"155\",height:\"155\",fill:\"white\"})})})]});p();var DT=he(De(),1);var UV=(0,DT.jsxs)(\"svg\",{role:\"img\",\"aria-label\":\"ock-disconnect-svg\",width:\"100%\",height:\"100%\",viewBox:\"0 0 16 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,DT.jsx)(\"title\",{children:\"Disconnect\"}),(0,DT.jsx)(\"path\",{d:\"M11.0668 0.91803L11.0668 2.93852L2.02049 2.93852L2.02049 15.0615L11.0668 15.0615L11.0668 17.082L-7.06549e-07 17.082L0 0.918029L11.0668 0.91803Z\",className:Kt.foreground}),(0,DT.jsx)(\"path\",{d:\"M12.3273 12.8963L16.0002 9.02606L12.346 4.95902L10.843 6.30941L12.3623 8.00032L5.53321 8.00032L5.53321 10.0208L12.2706 10.0208L10.8617 11.5054L12.3273 12.8963Z\",className:Kt.foreground})]});p();var jf=he(De(),1);var dMe=(0,jf.jsxs)(\"svg\",{width:\"100%\",height:\"100%\",viewBox:\"0 0 28 28\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,jf.jsx)(\"title\",{children:\"QR Code\"}),(0,jf.jsx)(\"rect\",{width:\"28\",height:\"28\",rx:\"8\",className:dn.default}),(0,jf.jsx)(\"path\",{d:\"M10 10H11.5V11.5H10V10Z\",className:Kt.foreground}),(0,jf.jsx)(\"path\",{d:\"M8 13.5H13.5V8H8V13.5ZM9.25 9.25H12.25V12.25H9.25V9.25Z\",className:Kt.foreground}),(0,jf.jsx)(\"path\",{d:\"M18 10H16.5V11.5H18V10Z\",className:Kt.foreground}),(0,jf.jsx)(\"path\",{d:\"M14.5 8V13.5H20V8H14.5ZM18.75 12.25H15.75V9.25H18.75V12.25Z\",className:Kt.foreground}),(0,jf.jsx)(\"path\",{d:\"M10 16.5H11.5V18H10V16.5Z\",className:Kt.foreground}),(0,jf.jsx)(\"path\",{d:\"M8 20H13.5V14.5H8V20ZM9.25 15.75H12.25V18.75H9.25V15.75Z\",className:Kt.foreground}),(0,jf.jsx)(\"path\",{d:\"M18 16.75H18.75V14.5H20V18H16.75V15.75H15.75V20H14.5V14.5H18V16.75Z\",className:Kt.foreground}),(0,jf.jsx)(\"path\",{d:\"M18 18.75H16.75V20H18V18.75Z\",className:Kt.foreground}),(0,jf.jsx)(\"path\",{d:\"M18.75 18.75H20V20H18.75V18.75Z\",className:Kt.foreground})]});p();var bM=he(De(),1);var fMe=(0,bM.jsxs)(\"svg\",{width:\"100%\",height:\"100%\",viewBox:\"0 0 32 32\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,bM.jsx)(\"title\",{children:\"Refresh\"}),(0,bM.jsx)(\"path\",{d:\"M15.9852 5.32694C10.0942 5.32694 5.31852 10.1026 5.31852 15.9936C5.31852 21.8846 10.0942 26.6603 15.9852 26.6603C21.4247 26.6603 25.9132 22.5887 26.5693 17.3269H29.2527C28.5837 24.0647 22.899 29.3269 15.9852 29.3269C8.62139 29.3269 2.65186 23.3574 2.65186 15.9936C2.65186 8.62982 8.62139 2.66028 15.9852 2.66028C20.3471 2.66028 24.2197 4.7548 26.6523 7.99294L29.3184 5.3269V13.3269H21.3184L24.7428 9.90246C22.8156 7.13675 19.6117 5.32694 15.9852 5.32694Z\",className:Kt.foreground})]});var kk=he(et(),1);function vM({classNames:t}){let{address:e}=Jn(),{handleClose:n,setActiveFeature:r,animations:o}=Ko(),{disconnect:i,connectors:a}=j9(),{sendAnalytics:c}=zi(),{refetch:u}=Bd({address:e},no.Wallet),d=(0,kk.useCallback)(C=>{c(N1.OptionSelected,{option:C})},[c]),h=(0,kk.useCallback)(C=>{c(N1.Disconnect,{component:\"WalletAdvanced\",walletProvider:C})},[c]),m=(0,kk.useCallback)(()=>{d(a2.Explorer),window.open(`https://basescan.org/address/${e}`,\"_blank\")},[e,d]),g=(0,kk.useCallback)(()=>{var C;let T=((C=a[0])==null?void 0:C.name)||\"unknown\";h(T),n();for(let R of a)i({connector:R})},[i,a,n,h]),b=(0,kk.useCallback)(()=>{d(a2.QR),r(\"qr\")},[r,d]),E=(0,kk.useCallback)(async()=>{d(a2.Refresh),await u()},[u,d]);return(0,Hh.jsxs)(\"div\",{\"data-testid\":\"ockWalletAdvanced_WalletActions\",className:ge(\"flex w-88 items-center justify-between px-4 py-3\",o.content,t?.container),children:[(0,Hh.jsxs)(\"div\",{className:\"flex items-center\",children:[(0,Hh.jsx)(Lm,{ariaLabel:\"Open transaction history\",onClick:m,children:(0,Hh.jsx)(\"div\",{\"data-testid\":\"ockWalletAdvanced_TransactionsButton\",className:ge(\"h-7 w-7 scale-110 p-2\",t?.baseScanIcon),children:uMe})}),(0,Hh.jsx)(Lm,{ariaLabel:\"Show QR code\",onClick:b,children:(0,Hh.jsx)(\"div\",{\"data-testid\":\"ockWalletAdvanced_QrButton\",className:ge(\"h-7 w-7 scale-110\",t?.qrIcon),children:dMe})})]}),(0,Hh.jsxs)(\"div\",{className:\"flex items-center\",children:[(0,Hh.jsx)(Lm,{ariaLabel:\"Disconnect wallet\",onClick:g,children:(0,Hh.jsx)(\"div\",{\"data-testid\":\"ockWalletAdvanced_DisconnectButton\",className:ge(\"h-7 w-7 scale-110 p-2\",t?.disconnectIcon),children:UV})}),(0,Hh.jsx)(Lm,{ariaLabel:\"Refresh portfolio data\",onClick:E,children:(0,Hh.jsx)(\"div\",{\"data-testid\":\"ockWalletAdvanced_RefreshButton\",className:ge(\"h-7 w-7 scale-110 p-2\",t?.refreshIcon),children:fMe})})]})]})}p();var Wh=he(De(),1);p();var wM=he(De(),1);var hMe=he(I0(),1);function pMe({children:t,className:e,isOpen:n,onClose:r,triggerRef:o,\"aria-label\":i,\"aria-labelledby\":a,\"aria-describedby\":c}){let u=ji();if(!n)return null;let d=(0,wM.jsx)(\"div\",{\"data-portal-origin\":\"true\",children:(0,wM.jsx)(D1,{active:n,children:(0,wM.jsx)(B1,{onDismiss:r,triggerRef:o,preventTriggerEvents:!!o,children:(0,wM.jsx)(\"div\",{\"aria-describedby\":c,\"aria-label\":i,\"aria-labelledby\":a,\"data-testid\":\"ockBottomSheet\",role:\"dialog\",className:ge(u,dn.default,Nu.modal,\"fixed right-0 bottom-0 left-0\",\"transform rounded-t-3xl p-2 transition-transform\",\"fade-in slide-in-from-bottom-1/2 animate-in\",e),children:t})})})});return(0,hMe.createPortal)(d,document.body)}var UM=he(et(),1);p();var Dm=he(De(),1);p();var mMe=he(De(),1);var gMe=he(et(),1);function jV({label:t,copyValue:e,onSuccess:n,onError:r,className:o,\"aria-label\":i}){let a=(0,gMe.useCallback)(()=>RV({copyValue:e,onSuccess:n,onError:r}),[e,n,r]);return(0,mMe.jsx)(\"button\",{type:\"button\",\"data-testid\":\"ockCopyButton\",className:o,onClick:a,onKeyDown:a,\"aria-label\":i,children:t})}p();var zf=he(De(),1),o$=he(et(),1);p();var yMe=\"#ffffff\",bMe={x:0,y:0},vMe={x:1,y:0};var Bse={default:\"blue\",base:\"baseBlue\",cyberpunk:\"pink\",hacker:\"black\"},Dse={default:\"default\",base:\"blue\",cyberpunk:\"magenta\",hacker:\"black\"},Fse={blue:{startColor:\"#266EFF\",endColor:\"#45E1E5\"},pink:{startColor:\"#EE5A67\",endColor:\"#CE46BD\"},black:{startColor:\"#a1a1aa\",endColor:\"#27272a\"},baseBlue:{startColor:\"#0052ff\",endColor:\"#b2cbff\"}},wMe={default:[[\"#0F27FF\",\"39.06%\"],[\"#6100FF\",\"76.56%\"],[\"#201F1D\",\"100%\"]],blue:[[\"#0F6FFF\",\"39.06%\"],[\"#0F27FF\",\"76.56%\"],[\"#201F1D\",\"100%\"]],magenta:[[\"#CF00F1\",\"36.46%\"],[\"#7900F1\",\"68.58%\"],[\"#201F1D\",\"100%\"]],black:[[\"#d4d4d8\",\"36.46%\"],[\"#201F1D\",\"68.58%\"],[\"#201F1D\",\"100%\"]]};p();var y2=he(De(),1),SMe=he(et(),1);p();var xMe=he(et(),1),Use=[[1,1,1,1,1,1,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,1,1,1,1,1,1]],jse=[[0,0,0,0,0,0,0],[0,0,0,0,0,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]];function xyt(t,e,n,r){return Math.sqrt((r-e)**2+(n-t)**2)}function Eyt(t,e,n){var r,o,i,a,c,u;return!!((r=Use[t])!=null&&r[e]||(o=Use[t-n+FT])!=null&&o[e]||(i=Use[t])!=null&&i[e-n+FT]||(a=jse[t])!=null&&a[e]||(c=jse[t-n+FT])!=null&&c[e]||(u=jse[t])!=null&&u[e-n+FT])}function Syt(t,e,{hasLogo:n,logoSize:r,logoMargin:o,logoBorderRadius:i,matrixLength:a,dotSize:c}){if(!n)return!1;let d=(r+o*2)/c,h=Math.floor(a/2);if(i>=r/2){let b=d/2;return xyt(e,t,h,h)-.5<=b}let g=Math.ceil(d/2);return t<=h+g&&t>=h-g&&e<=h+g&&e>=h-g}function kyt(t,e,n){return`\\n    M ${t-n} ${e}\\n    A ${n} ${n} 0 1 1 ${t+n} ${e}\\n    A ${n} ${n} 0 1 1 ${t-n} ${e}`}var FT=7;function EMe({matrix:t,size:e,logoSize:n,logoMargin:r,logoBorderRadius:o,hasLogo:i}){return(0,xMe.useMemo)(()=>{let c=e/t.length,u=\"\",d=t.length,h=e/d;return t.forEach((m,g)=>{m.forEach((b,E)=>{if(!(Eyt(g,E,d)||Syt(g,E,{hasLogo:i,logoSize:n,logoMargin:r,logoBorderRadius:o,matrixLength:d,dotSize:h}))&&b){let C=c*E+c/2,T=c*g+c/2;u+=kyt(C,T,c/2)}})}),u},[i,o,r,n,t,e])}function kMe(t,e,n,r,o){let i=t/e,a=i*FT,c=i*2,u=i+1;return(0,SMe.useMemo)(()=>(0,y2.jsxs)(\"g\",{children:[(0,y2.jsx)(\"rect\",{x:0,y:0,rx:9.5,ry:9.5,width:a,height:a,fill:r,id:`Corner-top-left-${o}`}),(0,y2.jsx)(\"rect\",{x:0,y:t-a,rx:9.5,ry:9.5,width:a,height:a,fill:r,id:`Corner-bottom-left-${o}`}),(0,y2.jsx)(\"rect\",{x:t-a,y:0,rx:9.5,ry:9.5,width:a,height:a,fill:r,id:`Corner-top-right-${o}`}),(0,y2.jsx)(\"circle\",{cx:a/2,cy:a/2,r:c,stroke:n,strokeWidth:u,fill:\"none\"}),(0,y2.jsx)(\"circle\",{cx:a/2,cy:t-a/2,r:c,stroke:n,strokeWidth:u,fill:\"none\"}),(0,y2.jsx)(\"circle\",{cx:t-a/2,cy:a/2,r:c,stroke:n,strokeWidth:u,fill:\"none\"})]}),[n,c,u,r,a,t,o])}p();var V1=he(De(),1),VV=he(et(),1),zse=he(AMe(),1);var _yt=zse.default.renderToString(aV),Cyt=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(_yt)}`;function TMe({size:t,logo:e=Cyt,logoSize:n,logoBackgroundColor:r,logoMargin:o,logoBorderRadius:i}){return(0,VV.useMemo)(()=>{let c=VV.default.isValidElement(e)?`data:image/svg+xml;charset=utf-8,${encodeURIComponent(zse.default.renderToString(e))}`:e,u=(t-n-o*2)/2,d=n+o*2;return(0,V1.jsxs)(\"g\",{transform:`translate(${u}, ${u})`,children:[(0,V1.jsx)(\"defs\",{children:(0,V1.jsx)(\"clipPath\",{id:\"clip-logo\",children:(0,V1.jsx)(\"rect\",{width:n,height:n,rx:i,ry:i})})}),(0,V1.jsx)(\"g\",{children:(0,V1.jsx)(\"rect\",{width:d,height:d,rx:i,ry:i,fill:r})}),(0,V1.jsx)(\"g\",{transform:`translate(${o}, ${o})`,children:(0,V1.jsx)(\"image\",{\"data-testid\":\"qr-code-logo\",width:n,height:n,preserveAspectRatio:\"xMidYMid slice\",href:String(c),clipPath:\"url(#clip-logo)\"})})]})},[e,r,i,o,n,t])}p();var RNe=he(TNe(),1),INe=he(et(),1);function ONe(t,e){return(0,INe.useMemo)(()=>{if(!e)return[];let r=`ethereum:${e}`,o=Array.from(RNe.default.create(r,{errorCorrectionLevel:t}).modules.data),i=Math.sqrt(o.length);return o.reduce((a,c,u)=>(u%i===0?a.push([c]):a[a.length-1].push(c),a),[])},[t,e])}function r$(t){return`${t*100}%`}function PNe({value:t,size:e=237,backgroundColor:n=\"#ffffff\",logo:r,logoSize:o=50,logoBackgroundColor:i=yMe,logoMargin:a=5,logoBorderRadius:c=10,quietZone:u=12,quietZoneBorderRadius:d=10,ecl:h=\"Q\",gradientType:m=\"radial\"}){let g=e*.55,b=e/2,E=(0,o$.useId)(),T=ji().split(\"-\")[0],R=m===\"radial\",L=R?`url(#radialGrad-${E})`:\"#000000\",D=R?n:`url(#linearGrad-${E})`,G=Bse[T]??Bse.default,W=[Fse[G].startColor,Fse[G].endColor],J=Dse[T]??Dse.default,ne=wMe[J],ie=ONe(h,t),Z=kMe(e,ie.length,D,L,E),{x:ae,y:V}=bMe,{x:$,y:F}=vMe,_=(0,o$.useMemo)(()=>[-u,-u,e+u*2,e+u*2].join(\" \"),[u,e]),O=TMe({size:e,logo:r,logoSize:o,logoBackgroundColor:i,logoMargin:a,logoBorderRadius:c}),z=EMe({matrix:ie,size:e,logoSize:o,logoMargin:a,logoBorderRadius:c,hasLogo:!!r});return!z||!t?null:(0,zf.jsxs)(\"svg\",{viewBox:_,width:e,height:e,children:[(0,zf.jsx)(\"title\",{children:\"QR Code\"}),(0,zf.jsx)(\"defs\",{children:R?(0,zf.jsx)(\"radialGradient\",{id:`radialGrad-${E}`,\"data-testid\":\"radialGrad\",rx:g,ry:g,cx:b,cy:b,gradientUnits:\"userSpaceOnUse\",children:ne.map(([N,B])=>(0,zf.jsx)(\"stop\",{offset:B,stopColor:N,stopOpacity:1},`${N}${B}`))}):(0,zf.jsxs)(\"linearGradient\",{id:`linearGrad-${E}`,\"data-testid\":\"linearGrad\",x1:r$(ae),y1:r$(V),x2:r$($),y2:r$(F),gradientUnits:\"userSpaceOnUse\",children:[(0,zf.jsx)(\"stop\",{offset:\"0\",stopColor:W[0]}),(0,zf.jsx)(\"stop\",{offset:\"1\",stopColor:W[1]})]})}),(0,zf.jsx)(\"g\",{children:(0,zf.jsx)(\"rect\",{rx:d,ry:d,x:-u,y:-u,width:e+u*2,height:e+u*2,fill:n,stroke:D,strokeWidth:2})}),(0,zf.jsxs)(\"g\",{children:[(0,zf.jsx)(\"path\",{d:z,fill:L,strokeLinecap:\"butt\",stroke:L,strokeWidth:0,opacity:.6}),Z,O]})]})}p();var RM=he(De(),1);var VT=(0,RM.jsxs)(\"svg\",{width:\"12\",height:\"13\",viewBox:\"0 0 12 13\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,RM.jsx)(\"title\",{children:\"Back Arrow\"}),(0,RM.jsx)(\"path\",{d:\"M5.54479 12.077L6.46623 11.2323L2.42062 6.81894H11.9999V5.56894H2.50874L6.88374 1.19394L5.99985 0.310059L0.134766 6.17515L5.54479 12.077Z\",className:Kt.foreground})]});p();var $T=he(De(),1);var MNe=(0,$T.jsxs)(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 12 12\",xmlns:\"http://www.w3.org/2000/svg\",children:[(0,$T.jsx)(\"title\",{children:\"Copy\"}),(0,$T.jsx)(\"path\",{d:\"M0.666016 0H9.33268V9.33333H0.666016V0ZM1.99935 1.33333V8H7.99935V1.33333H1.99935Z\",className:Kt.foreground}),(0,$T.jsx)(\"path\",{d:\"M10.666 3.33333H11.9993V12H4.66602V10.6667H10.666V3.33333Z\",className:Kt.foreground})]});var kg=he(et(),1);function dae({classNames:t}){let{address:e,setActiveFeature:n,isActiveFeatureClosing:r,setIsActiveFeatureClosing:o}=Ko(),[i,a]=(0,kg.useState)(\"Copy\"),[c,u]=(0,kg.useState)(\"Copy address\"),d=(0,kg.useCallback)(()=>{o(!0)},[o]),h=(0,kg.useCallback)(()=>{r&&(n(null),o(!1))},[r,n,o]),m=(0,kg.useCallback)(()=>{setTimeout(()=>{a(\"Copy\"),u(\"Copy address\")},2e3)},[]),g=(0,kg.useCallback)(()=>{u(\"Address copied\"),m()},[m]),b=(0,kg.useCallback)(()=>{u(\"Failed to copy address\"),m()},[m]),E=(0,kg.useCallback)(()=>{a(\"Copied\"),m()},[m]),C=(0,kg.useCallback)(()=>{a(\"Failed to copy\"),m()},[m]);return(0,Dm.jsxs)(\"div\",{\"data-testid\":\"ockWalletAdvancedQrReceive\",className:ge(mt.radius,it.foreground,Xe.headline,\"flex flex-col items-center justify-between\",\"h-120 w-88 px-4 pt-3 pb-4\",r?\"fade-out slide-out-to-left-5 animate-out fill-mode-forwards ease-in-out\":\"fade-in slide-in-from-left-5 linear animate-in duration-150\",t?.container),onAnimationEnd:h,children:[(0,Dm.jsxs)(\"div\",{className:ge(\"flex h-[34px] w-full flex-row items-center justify-between\",t?.header),children:[(0,Dm.jsx)(Lm,{ariaLabel:\"Back button\",onClick:d,children:(0,Dm.jsx)(\"div\",{className:\"p-2\",children:VT})}),(0,Dm.jsx)(\"span\",{children:\"Scan to receive\"}),(0,Dm.jsxs)(\"div\",{className:\"group relative\",children:[(0,Dm.jsx)(jV,{label:MNe,copyValue:e??\"\",onSuccess:E,onError:C,className:ge(Ht.default,mt.radiusInner,mt.default,\"flex items-center justify-center p-2\"),\"aria-label\":\"Copy your address by clicking the icon\"}),(0,Dm.jsx)(jV,{label:i,copyValue:e??\"\",onSuccess:E,onError:C,className:ge(Ht.alternate,Xe.legal,it.foreground,mt.default,mt.radius,Nu.dropdown,\"absolute top-full right-0 mt-0.5 px-1.5 py-0.5 opacity-0 transition-opacity group-hover:opacity-100\"),\"aria-label\":\"Copy your address by clicking the tooltip\"})]})]}),(0,Dm.jsx)(PNe,{value:e}),(0,Dm.jsx)(jV,{copyValue:e??\"\",label:c,className:ge(mt.radius,Ht.alternate,\"w-full p-3\",t?.copyButton),onSuccess:g,onError:b,\"aria-label\":\"Copy your address by clicking the button\"})]})}p();var Du=he(De(),1);p();var Ll=he(De(),1);p();var qh=he(De(),1),x2=he(et(),1);p();var IM=he(De(),1);function NNe({token:t,onClick:e,className:n,isPressable:r=!0}){let o=ji();return(0,IM.jsxs)(\"button\",{type:\"button\",\"data-testid\":\"ockTokenChip_Button\",className:ge(o,r?[Ht.secondary,Ht.shadow]:[dn.secondary,\"cursor-default\"],\"flex w-fit shrink-0 items-center gap-2 rounded-lg py-1 pr-3 pl-1 \",n),onClick:()=>e?.(t),children:[(0,IM.jsx)(q1,{token:t,size:24}),(0,IM.jsx)(\"span\",{className:Xe.headline,children:t.symbol})]})}p();var G3=he(De(),1),Rk=he(et(),1);p();var OM=he(De(),1);p();function LNe({align:t,contentRect:e,triggerRect:n}){if(!n||!e)return 0;switch(t){case\"start\":return n.left;case\"center\":return n.left+(n.width-e.width)/2;case\"end\":return n.right-e.width}}var KT=he(et(),1),BNe=he(I0(),1);function DNe({align:t=\"start\",children:e,isOpen:n,offset:r=8,onClose:o,trigger:i,\"aria-label\":a}){let c=ji(),u=(0,KT.useRef)(null),d=(0,KT.useCallback)(()=>{if(!i?.current||!u.current)return;let m=i.current.getBoundingClientRect(),g=u.current.getBoundingClientRect();if(!m||!g)return;let b=LNe({triggerRect:m,contentRect:g,align:t});u.current.style.top=`${m.bottom+r}px`,u.current.style.left=`${b}px`},[i,r,t]);if((0,KT.useEffect)(()=>{if(n)return d(),window.addEventListener(\"resize\",d),window.addEventListener(\"scroll\",d),()=>{window.removeEventListener(\"resize\",d),window.removeEventListener(\"scroll\",d)}},[n,d]),!n)return null;let h=(0,OM.jsx)(\"div\",{className:ge(c,Nu.dropdown,\"pointer-events-none fixed\"),\"data-portal-origin\":\"true\",children:(0,OM.jsx)(D1,{active:n,children:(0,OM.jsx)(B1,{onDismiss:o,triggerRef:i,children:(0,OM.jsx)(\"div\",{ref:u,className:ge(\"pointer-events-auto fixed\"),role:\"listbox\",\"data-testid\":\"ockDropdownMenu\",\"aria-label\":a,children:e})})})});return(0,BNe.createPortal)(h,document.body)}function FNe({options:t,setToken:e,token:n}){let[r,o]=(0,Rk.useState)(!1),i=(0,Rk.useRef)(null),a=(0,Rk.useCallback)(()=>{o(!1)},[]),c=(0,Rk.useCallback)(()=>{o(u=>!u)},[]);return(0,G3.jsxs)(\"div\",{className:\"relative max-w-fit shrink-0\",children:[(0,G3.jsx)(sMe,{ref:i,onClick:c,isOpen:r,token:n}),(0,G3.jsx)(DNe,{trigger:i,isOpen:r,onClose:a,align:\"end\",children:(0,G3.jsx)(\"div\",{\"data-testid\":\"ockTokenSelectDropdown_List\",className:ge(mt.radius,it.foreground,\"flex max-h-80 w-[200px] flex-col overflow-y-hidden\",\"ock-scrollbar\"),children:(0,G3.jsx)(\"div\",{className:\"overflow-y-auto\",children:t.map(u=>(0,G3.jsx)(rMe,{className:ge(dn.inverse,\"px-4 py-2\"),token:u,onClick:()=>{e(u),o(!1)}},u.name+u.address))})})})]})}p();function UNe(t){if(!/\\\\d+\\\\.?\\\\d*e[+-]*\\\\d+/i.test(t))return t;let[e,n]=t.toLowerCase().split(\"e\"),r=Number.parseInt(n),[o,i=\"\"]=e.split(\".\"),a=o+i,c=o.length+r;return c<=0?`0.${\"0\".repeat(Math.abs(c))}${a}`:c>=a.length?a+\"0\".repeat(c-a.length):`${a.slice(0,c)}.${a.slice(c)}`}p();var oLe=he(De(),1);var Nl=he(et(),1);Si();p();p();var jNe=\"cdp_getSwapQuote\",zNe=\"cdp_getSwapTrade\";p();p();p();function HNe(t,e){let[n,r=\"\"]=t.split(\".\"),i=r.padEnd(e,\"0\").slice(0,e);return(BigInt(n+i)*BigInt(10)**BigInt(e-i.length)).toString()}p();function qNe(t,e){if(t.includes(\".\")){let[c,u]=t.split(\".\"),d=u.padEnd(e,\"0\");return c+d}let n=BigInt(t),r=BigInt(10)**BigInt(e),o=(n/r).toString(),a=(n%r).toString().padStart(e,\"0\").replace(/0+$/,\"\");return a?`${o}.${a}`:o}function WNe(t,e=!0,n=18){let r;return e?r=qNe(t,n):r=HNe(t,n),r}function i$(t){let{from:e,to:n,amount:r,amountReference:o,isAmountInDecimals:i}=t,{fromAddress:a}=t,c=o===\"from\"?e.decimals:n.decimals;return typeof r!=\"string\"||r.trim()===\"\"?{code:\"INVALID_INPUT\",error:\"Invalid input: amount must be a non-empty string\",message:\"\"}:!Number.isInteger(c)||c<0?{code:\"INVALID_INPUT\",error:\"Invalid input: decimals must be a non-negative integer\",message:\"\"}:/^(?:0|[1-9]\\\\d*|\\\\.\\\\d+)(?:\\\\.\\\\d*)?$/.test(r)?{fromAddress:a,from:e.address||\"ETH\",to:n.address||\"ETH\",amount:i?r:WNe(r,!1,c),amountReference:o||\"from\"}:{code:\"INVALID_INPUT\",error:\"Invalid input: amount must be a non-negative number string\",message:\"\"}}p();function fae(t,e){let{data:n,gas:r,to:o,value:i}=t;return{chainId:Number(e),data:n,gas:BigInt(r),to:o,value:BigInt(i)}}async function VNe(t,e=no.API){var n;let o=i$({...{amountReference:\"from\",isAmountInDecimals:!1},...t});if(\"error\"in o)return o;if(t.useAggregator&&t.amountReference===\"to\")return console.error(Kc.UNSUPPORTED_AMOUNT_REFERENCE),{code:PV,error:Kc.UNSUPPORTED_AMOUNT_REFERENCE,message:\"\"};if(t.useAggregator||(o={v2Enabled:!0,...o}),t.maxSlippage){let i=t.maxSlippage;t.useAggregator&&(i=(Number(t.maxSlippage)*10).toString()),o={slippagePercentage:i,...o}}try{let i=await H3(zNe,[o],e);if(i.error)return{code:H1(\"swap\",(n=i.error)==null?void 0:n.code),error:i.error.message,message:\"\"};let a=i.result;return{approveTransaction:a.approveTx?fae(a.approveTx,a.chainId):void 0,fee:a.fee,quote:a.quote,transaction:fae(a.tx,a.chainId),warning:a.quote.warning}}catch{return{code:H1(\"uncaught-swap\"),error:\"Something went wrong\",message:\"\"}}}p();async function $Ne(t,e=no.API){var n;let o=i$({...{amountReference:\"from\",isAmountInDecimals:!1},...t});if(\"error\"in o)return o;if(t.useAggregator&&t.amountReference===\"to\")return console.error(Kc.UNSUPPORTED_AMOUNT_REFERENCE),{code:PV,error:Kc.UNSUPPORTED_AMOUNT_REFERENCE,message:\"\"};if(t.useAggregator||(o={v2Enabled:!0,...o}),t.maxSlippage){let i=t.maxSlippage;t.useAggregator&&(i=(Number(t.maxSlippage)*10).toString()),o={slippagePercentage:i,...o}}try{let i=await H3(jNe,[o],e);return i.error?{code:H1(\"quote\",(n=i.error)==null?void 0:n.code),error:i.error.message,message:\"\"}:i.result}catch{return{code:H1(\"uncaught-quote\"),error:\"Something went wrong\",message:\"\"}}}p();function KNe(t,e){return(Number(t)/10**e).toString()}p();var v2=\"Something went wrong. Please try again.\";p();function Z3(t){var e,n;return!!(((e=t?.cause)==null?void 0:e.name)===\"UserRejectedRequestError\"||(n=t?.shortMessage)!=null&&n.includes(\"User rejected the request.\"))}p();var GNe=he(et(),1);p();p();function PM(t){return t===\"CONFIRMED\"?\"success\":t===\"PENDING\"?\"pending\":t}function s$(t){return typeof t==\"string\"?t:t.id}function ZNe({accountConfig:t,lifecycleStatus:e,updateLifecycleStatus:n}){var r;let o=e.statusName===\"transactionApproved\"?(r=e.statusData)==null?void 0:r.callsId:void 0,{data:i}=F9({id:o||\"\",query:{refetchInterval:a=>{var c;return PM((c=a.state.data)==null?void 0:c.status)===\"success\"?!1:1e3},enabled:o!==void 0}});return(0,GNe.useCallback)(async()=>{if(PM(i?.status)===\"success\"&&i?.receipts){let a=await Xp(t,{confirmations:1,hash:i.receipts[i.receipts.length-1].transactionHash});n({statusName:\"success\",statusData:{transactionReceipt:a}})}},[t,i,n])}p();var w2=he(et(),1);p();p();var YNe=he(et(),1);bo();function hae(t,e){let n=MF({abi:f9,address:e?.address,functionName:\"balanceOf\",args:t?[t]:[],query:{enabled:!!e?.address&&!!t}});return(0,YNe.useMemo)(()=>{var r;let o;if(n?.error&&(o={code:H1(\"balance\"),error:(r=n?.error)==null?void 0:r.shortMessage,message:\"\"}),n?.data!==0n&&!n?.data||!e)return{convertedBalance:\"\",status:n.status,error:o,roundedBalance:\"\",response:n,refetch:n.refetch};let i=vs(n?.data,e?.decimals);return{convertedBalance:i,status:n.status,error:o,response:n,roundedBalance:m2(i,8),refetch:n.refetch}},[e,n])}function QNe({address:t,fromToken:e,toToken:n}){let{convertedBalance:r,error:o,response:i}=MV(t),{convertedBalance:a,error:c,response:u}=hae(t,e),{convertedBalance:d,error:h,response:m}=hae(t,n),g=e?.symbol===\"ETH\",b=n?.symbol===\"ETH\";return Vc({fromBalanceString:g?r:a,fromTokenBalanceError:g?o:c,fromTokenResponse:g?i:u,toBalanceString:b?r:d,toTokenBalanceError:b?o:h,toTokenResponse:b?i:m})}var JNe=t=>{let[e,n]=(0,w2.useState)(\"\"),[r,o]=(0,w2.useState)(\"\"),[i,a]=(0,w2.useState)(),[c,u]=(0,w2.useState)(\"\"),[d,h]=(0,w2.useState)(\"\"),[m,g]=(0,w2.useState)(),[b,E]=(0,w2.useState)(!1),[C,T]=(0,w2.useState)(!1),{fromBalanceString:R,fromTokenBalanceError:L,toBalanceString:D,toTokenBalanceError:G,fromTokenResponse:W,toTokenResponse:J}=QNe({address:t,fromToken:i,toToken:m}),ne=Vc({balance:R,balanceResponse:W,amount:e,setAmount:n,amountUSD:r,setAmountUSD:o,token:i,setToken:a,loading:C,setLoading:T,error:L}),ie=Vc({balance:D,balanceResponse:J,amount:c,amountUSD:d,setAmountUSD:h,setAmount:u,token:m,setToken:g,loading:b,setLoading:E,error:G});return{from:ne,to:ie}};p();var XNe=he(et(),1),eLe=({from:t,to:e})=>(0,XNe.useCallback)(async()=>{var n,r;await Promise.all([(n=t.balanceResponse)==null?void 0:n.refetch(),(r=e.balanceResponse)==null?void 0:r.refetch(),t.setAmount(\"\"),t.setAmountUSD(\"\"),e.setAmount(\"\"),e.setAmountUSD(\"\")])},[t,e]);p();function pae(t){return t!==null&&typeof t==\"object\"&&\"error\"in t}p();bo();Si();p();p();async function tLe({config:t,sendTransactionAsync:e,transactions:n,updateLifecycleStatus:r}){let o;for(let{transaction:i,transactionType:a}of n){r({statusName:\"transactionPending\"});let c=await e(i);r({statusName:\"transactionApproved\",statusData:{transactionHash:c,transactionType:a}}),o=await Xp(t,{hash:c,confirmations:1})}o&&r({statusName:\"success\",statusData:{transactionReceipt:o}})}async function nLe({config:t,isSponsored:e,paymaster:n,sendCallsAsync:r,sendTransactionAsync:o,updateLifecycleStatus:i,walletCapabilities:a,transactions:c}){var u;if((u=a[uk.AtomicBatch])!=null&&u.supported){i({statusName:\"transactionPending\"});let d=await r({calls:c.map(({transaction:h})=>h),capabilities:e?{paymasterService:{url:n}}:{}});i({statusName:\"transactionApproved\",statusData:{callsId:s$(d),transactionType:\"Batched\"}})}else await tLe({config:t,sendTransactionAsync:o,transactions:c,updateLifecycleStatus:i})}async function rLe({chainId:t,config:e,isSponsored:n,paymaster:r,sendCallsAsync:o,sendTransactionAsync:i,swapTransaction:a,switchChainAsync:c,updateLifecycleStatus:u,useAggregator:d,walletCapabilities:h}){let{transaction:m,approveTransaction:g,quote:b}=a,E=[];if(g?.data&&(E.push({transaction:{to:g.to,value:g.value,data:g.data},transactionType:\"ERC20\"}),!d)){let C=P5([\"function approve(address token, address spender, uint160 amount, uint48 expiration) external\"]),T=yo({abi:C,functionName:\"approve\",args:[b.from.address,NPe,BigInt(b.fromAmount),2e13]});E.push({transaction:{to:OPe,value:0n,data:T},transactionType:\"Permit2\"})}E.push({transaction:{to:m.to,value:m.value,data:m.data},transactionType:\"Swap\"}),t!==Yn.id&&await c({chainId:Yn.id}),await nLe({config:e,isSponsored:n,paymaster:r,sendCallsAsync:o,sendTransactionAsync:i,transactions:E,updateLifecycleStatus:u,walletCapabilities:h})}var iLe={},sLe=(0,Nl.createContext)(iLe);function Fm(){let t=(0,Nl.useContext)(sLe);if(t===iLe)throw new Error(\"useSwapContext must be used within a Swap component\");return t}function aLe({children:t,config:e={maxSlippage:3},experimental:n,isSponsored:r,onError:o,onStatus:i,onSuccess:a}){var c,u;let{config:{paymaster:d}={paymaster:void 0}}=lo(),{address:h,chainId:m}=Jn(),{switchChainAsync:g}=L6(),{useAggregator:b}=n,E=Qn(),C=kT({chainId:Yn.id}),[T,R]=CT({statusName:\"init\",statusData:{isMissingRequiredField:!0,maxSlippage:e.maxSlippage}}),[L,D]=(0,Nl.useState)(!1),[G,W]=(0,Nl.useState)(\"\"),[J,ne]=(0,Nl.useState)(!1),{from:ie,to:Z}=JNe(h),{sendTransactionAsync:ae}=H9(),{sendCallsAsync:V}=z9(),$=eLe({from:ie,to:Z}),F=ZNe({accountConfig:E,lifecycleStatus:T,updateLifecycleStatus:R}),{sendAnalytics:_}=zi();(0,Nl.useEffect)(()=>{var j,q,H,I;T.statusName===\"error\"&&(o?.(T.statusData),_(c2.SwapFailure,{error:T.statusData.error,metadata:T.statusData})),T.statusName===\"success\"&&(a?.(T.statusData.transactionReceipt),W((j=T.statusData)==null?void 0:j.transactionReceipt.transactionHash),ne(!0),D(!0),_(c2.SwapSuccess,{paymaster:!!d,transactionHash:(q=T.statusData.transactionReceipt)==null?void 0:q.transactionHash,address:h||\"\",amount:Number(ie.amount),from:((H=ie.token)==null?void 0:H.symbol)||\"\",to:((I=Z.token)==null?void 0:I.symbol)||\"\"})),i?.(T)},[o,i,a,T,T.statusData,T.statusName,_,d,ie.amount,(c=ie.token)==null?void 0:c.symbol,(u=Z.token)==null?void 0:u.symbol,h]),(0,Nl.useEffect)(()=>{T.statusName===\"init\"&&J&&(ne(!1),$())},[J,T.statusName,$]),(0,Nl.useEffect)(()=>{T.statusName===\"transactionApproved\"&&T.statusData.transactionType===\"Batched\"&&F()},[F,T,T.statusData,T.statusName]),(0,Nl.useEffect)(()=>{T.statusName===\"success\"&&J&&R({statusName:\"init\",statusData:{isMissingRequiredField:!0,maxSlippage:e.maxSlippage}})},[e.maxSlippage,J,T.statusName,R]);let O=(0,Nl.useCallback)(()=>{var j,q;ie.setAmount(Z.amount),Z.setAmount(ie.amount),(j=ie.setToken)==null||j.call(ie,Z.token),(q=Z.setToken)==null||q.call(Z,ie.token),R({statusName:\"amountChange\",statusData:{amountFrom:ie.amount,amountTo:Z.amount,tokenFrom:ie.token,tokenTo:Z.token,isMissingRequiredField:!ie.token||!Z.token||!ie.amount||!Z.amount}})},[ie,Z,R]),z=(0,Nl.useCallback)(async(j,q,H,I)=>{let U=j===\"from\"?ie:Z,X=j===\"from\"?Z:ie;if(U.token=H??U.token,X.token=I??X.token,U.token===void 0||X.token===void 0){R({statusName:\"amountChange\",statusData:{amountFrom:ie.amount,amountTo:Z.amount,tokenFrom:ie.token,tokenTo:Z.token,isMissingRequiredField:!0}});return}if(q===\"\"||q===\".\"||Number.parseFloat(q)===0){X.setAmount(\"\"),X.setAmountUSD(\"\"),U.setAmountUSD(\"\");return}X.setLoading(!0),R({statusName:\"amountChange\",statusData:{amountFrom:j===\"from\"?q:\"\",amountTo:j===\"to\"?q:\"\",tokenFrom:ie.token,tokenTo:Z.token,isMissingRequiredField:!0}});try{let ee=T.statusData.maxSlippage,se=await $Ne({amount:q,amountReference:\"from\",from:U.token,maxSlippage:String(ee),to:X.token,useAggregator:b},no.Swap);if(pae(se)){R({statusName:\"error\",statusData:{code:se.code,error:se.error,message:\"\"}});return}let pe=KNe(se.toAmount,se.to.decimals);X.setAmountUSD(se.toAmountUSD),X.setAmount(pe),U.setAmountUSD(se.fromAmountUSD),R({statusName:\"amountChange\",statusData:{amountFrom:j===\"from\"?q:pe,amountTo:j===\"to\"?q:pe,tokenFrom:ie.token,tokenTo:Z.token,isMissingRequiredField:!pe}})}catch(ee){R({statusName:\"error\",statusData:{code:\"TmSPc01\",error:JSON.stringify(ee),message:\"\"}})}finally{X.setLoading(!1)}},[ie,Z,T,R,b]),N=(0,Nl.useCallback)(async()=>{if(!(!h||!ie.token||!Z.token||!ie.amount))try{_(c2.SwapInitiated,{amount:Number(ie.amount)});let j=T.statusData.maxSlippage,q=await VNe({amount:ie.amount,fromAddress:h,from:ie.token,maxSlippage:String(j),to:Z.token,useAggregator:b},no.Swap);if(pae(q)){R({statusName:\"error\",statusData:{code:q.code,error:q.error,message:q.message}});return}await rLe({chainId:m,config:E,isSponsored:r,paymaster:d||\"\",sendCallsAsync:V,sendTransactionAsync:ae,swapTransaction:q,switchChainAsync:g,updateLifecycleStatus:R,useAggregator:b,walletCapabilities:C})}catch(j){let q=Z3(j)?\"Request denied.\":v2;R({statusName:\"error\",statusData:{code:\"TmSPc02\",error:JSON.stringify(j),message:q}})}},[E,h,m,ie.amount,ie.token,r,T,d,V,ae,g,Z.token,R,b,C,_]),B=Vc({address:h,config:e,from:ie,handleAmountChange:z,handleToggle:O,handleSubmit:N,lifecycleStatus:T,updateLifecycleStatus:R,to:Z,isToastVisible:L,setIsToastVisible:D,setTransactionHash:W,transactionHash:G});return(0,oLe.jsx)(sLe.Provider,{value:B,children:t})}function GT({className:t,delayMs:e=1e3,label:n,token:r,type:o,swappableTokens:i}){let{address:a,to:c,from:u,handleAmountChange:d}=Fm(),{sendAnalytics:h}=zi(),m=Vc(o===\"from\"?u:c),g=Vc(o===\"from\"?c:u),{setToken:b,setAmount:E,balance:C,amount:T,amountUSD:R}=m;(0,x2.useEffect)(()=>{r&&b?.(r)},[r,b]);let L=(0,x2.useCallback)(()=>{C&&(E(C),d(o,C))},[C,E,d,o]),D=(0,x2.useCallback)(Z=>{d(o,Z)},[d,o]),G=(0,x2.useCallback)(Z=>{h(c2.TokenSelected,{token:Z.symbol})},[h]),W=(0,x2.useCallback)(Z=>{b?.(Z),d(o,T,Z),G(Z)},[T,b,d,G,o]),J=(0,x2.useMemo)(()=>i?.filter(({symbol:Z})=>{var ae;return Z!==((ae=g.token)==null?void 0:ae.symbol)})??[],[i,g.token]),ne=o===\"from\"&&Number(C)<Number(T),ie=Z=>!Z||Z===\"0\"?null:`~$${Number(m2(Z,2)).toFixed(2)}`;return(0,qh.jsxs)(\"div\",{className:ge(dn.secondary,mt.radius,\"my-0.5 box-border flex h-[148px] w-full flex-col items-start p-4\",t),\"data-testid\":\"ockSwapAmountInput_Container\",children:[(0,qh.jsx)(\"div\",{className:ge(Xe.label2,it.foregroundMuted,\"flex w-full items-center justify-between\"),children:n}),(0,qh.jsxs)(\"div\",{className:\"flex w-full items-center justify-between\",children:[(0,qh.jsx)(Ek,{className:ge(\"mr-2 w-full border-[none] bg-transparent font-display text-[2.5rem]\",\"leading-none outline-none\",ne&&a?it.error:it.foreground),placeholder:\"0.0\",delayMs:e,value:UNe(T),setValue:E,disabled:m.loading,onChange:D,inputValidator:vV}),J.length>0?(0,qh.jsx)(FNe,{token:m.token,setToken:W,options:J}):m.token&&(0,qh.jsx)(NNe,{className:Ht.inverse,token:m.token})]}),(0,qh.jsxs)(\"div\",{className:\"mt-4 flex w-full items-center justify-between\",children:[(0,qh.jsx)(\"div\",{className:ge(Xe.label2,it.foregroundMuted),children:ie(R)}),(0,qh.jsxs)(\"div\",{className:ge(Xe.label2,it.foregroundMuted,\"flex grow items-center justify-end\"),children:[C&&(0,qh.jsx)(\"span\",{children:`Balance: ${m2(C,8)}`}),o===\"from\"&&a&&(0,qh.jsx)(\"button\",{type:\"button\",className:ge(Xe.label1,it.primary,\"flex cursor-pointer items-center justify-center px-2 py-1\"),\"data-testid\":\"ockSwapAmountInput_MaxButton\",onClick:L,children:\"Max\"})]})]})]})}p();var MM=he(De(),1);function a$({className:t,label:e=\"Swap\",disabled:n=!1}){var r,o;let{address:i,to:a,from:c,lifecycleStatus:{statusName:u},handleSubmit:d}=Fm(),h=a.loading||c.loading||u===\"transactionPending\"||u===\"transactionApproved\",m=!c.amount||!c.token||!a.amount||!a.token||n||h,g=((r=a.token)==null?void 0:r.address)===((o=c.token)==null?void 0:o.address);return!m&&!i?(0,MM.jsx)(Eg,{className:ge(\"mt-4 w-full\",t)}):(0,MM.jsx)(\"button\",{type:\"button\",className:ge(dn.primary,mt.radius,\"w-full rounded-xl\",\"mt-4 px-4 py-3\",m&&Ht.disabled,Xe.headline,t),onClick:()=>d(),disabled:m||g,\"data-testid\":\"ockSwapButton_Button\",children:h?(0,MM.jsx)(jh,{}):(0,MM.jsx)(\"span\",{className:ge(Xe.headline,it.inverse),children:e})})}p();var uLe=he(De(),1);p();p();function cLe(t){return t.code===OV?Kc.TOO_MANY_REQUESTS:t.code===IV?Kc.LOW_LIQUIDITY:t.code===LPe?Kc.USER_REJECTED:t.message}function lLe({address:t,from:e,lifecycleStatus:n,to:r}){return n.statusName===\"error\"?cLe(n.statusData):e.error||r.error?Kc.BALANCE_ERROR:t&&Number(e.balance)<Number(e.amount)?Kc.INSUFFICIENT_BALANCE:n.statusName===\"transactionPending\"?Kc.CONFIRM_IN_WALLET:n.statusName===\"transactionApproved\"?Kc.SWAP_IN_PROGRESS:r.loading||e.loading?Kc.FETCHING_QUOTE:n.statusData.isMissingRequiredField?Kc.INCOMPLETE_FIELD:\"\"}function c$({className:t}){let{address:e,to:n,from:r,lifecycleStatus:o}=Fm(),i=lLe({address:e,from:r,lifecycleStatus:o,to:n});return(0,uLe.jsx)(\"div\",{className:ge(\"flex h-7 pt-2\",Xe.label2,it.foregroundMuted,t),\"data-testid\":\"ockSwapMessage_Message\",children:i})}p();var Za=he(De(),1);p();var NM=he(De(),1);var ZT=he(et(),1),dLe=he(I0(),1);function S1t(t,e,n,r){let o=0,i=0;switch(n){case\"top\":o=t.top-e.height-r;break;case\"bottom\":o=t.bottom+r;break;case\"left\":i=t.left-e.width-r;break;case\"right\":i=t.right+r;break}return{top:o,left:i}}function k1t(t,e,n,r,o){let{top:i,left:a}=n,c=i,u=a,d=o===\"top\"||o===\"bottom\";switch(r){case\"start\":d?u=t.left:c=t.top;break;case\"center\":d?u=t.left+(t.width-e.width)/2:c=t.top+(t.height-e.height)/2;break;case\"end\":d?u=t.right-e.width:c=t.bottom-e.height;break}return{top:c,left:u}}function fLe({children:t,anchor:e,isOpen:n,onClose:r,position:o=\"bottom\",align:i=\"center\",offset:a=8,trigger:c,\"aria-label\":u,\"aria-labelledby\":d,\"aria-describedby\":h}){let m=(0,ZT.useRef)(null),g=ji(),b=(0,ZT.useCallback)(()=>{var C;if(!e||!m.current)return;let T=e.getBoundingClientRect(),R=(C=m.current)==null?void 0:C.getBoundingClientRect();if(!T||!R)return;let L=S1t(T,R,o,a),D=k1t(T,R,L,i,o);m.current.style.top=`${D.top}px`,m.current.style.left=`${D.left}px`},[e,o,a,i]);if((0,ZT.useEffect)(()=>{if(n)return b(),window.addEventListener(\"resize\",b),window.addEventListener(\"scroll\",b),()=>{window.removeEventListener(\"resize\",b),window.removeEventListener(\"scroll\",b)}},[n,b]),!n)return null;let E=(0,NM.jsx)(\"div\",{className:ge(g,Nu.dropdown,\"pointer-events-none fixed\"),\"data-portal-origin\":\"true\",children:(0,NM.jsx)(D1,{active:n,children:(0,NM.jsx)(B1,{onDismiss:r,triggerRef:c,children:(0,NM.jsx)(\"div\",{\"aria-label\":u,\"aria-labelledby\":d,\"aria-describedby\":h,className:ge(\"pointer-events-auto fixed\"),\"data-testid\":\"ockPopover\",ref:m,role:\"dialog\",children:t})})})});return(0,dLe.createPortal)(E,document.body)}var Y3=he(et(),1);p();var hLe=he(De(),1);function l$({children:t,className:e}){return(0,hLe.jsx)(\"p\",{className:ge(Xe.legal,it.foregroundMuted,\"mb-2\",e),children:t})}p();var $1=he(De(),1);var Ok=he(et(),1);var Ik={AUTO:\"Auto\",CUSTOM:\"Custom\"};function u$({className:t}){let{sendAnalytics:e}=zi(),{config:{maxSlippage:n},updateLifecycleStatus:r,lifecycleStatus:o}=Fm(),[i,a]=(0,Ok.useState)(o.statusData.maxSlippage===n?Ik.AUTO:Ik.CUSTOM),c=(0,Ok.useCallback)((m,g)=>{e(c2.SlippageChanged,{previousSlippage:m,slippage:g})},[e]),u=(0,Ok.useCallback)(m=>{let g=o.statusData.maxSlippage;m!==g&&(c(g,m),r({statusName:\"slippageChange\",statusData:{maxSlippage:m}}))},[o.statusData.maxSlippage,r,c]),d=(0,Ok.useCallback)(m=>{let g=m.target.value,b=Number.parseFloat(g),E=!Number.isNaN(b);u(E?b:0)},[u]),h=(0,Ok.useCallback)(m=>{a(m),m===Ik.AUTO&&u(n)},[n,u]);return(0,$1.jsxs)(\"section\",{className:ge(dn.default,mt.defaultActive,mt.radius,\"flex items-center gap-2 flex-grow max-sm:pt-4\",t),children:[(0,$1.jsxs)(\"fieldset\",{className:ge(dn.default,mt.defaultActive,mt.radius,\"flex h-9 flex-1 rounded-xl border p-1\"),children:[(0,$1.jsx)(\"legend\",{className:\"sr-only\",children:\"Slippage Setting\"}),Object.values(Ik).map(m=>(0,$1.jsx)(\"button\",{type:\"button\",className:ge(Ht.default,it.foreground,Xe.label1,mt.radiusInner,\"flex-1 px-3 py-1 transition-colors\",i===m?ge(dn.inverse,it.primary,Ht.shadow):it.foregroundMuted),onClick:()=>h(m),children:m},m))]}),(0,$1.jsxs)(\"div\",{className:ge(dn.default,mt.defaultActive,mt.radius,\"flex h-9 w-24 items-center justify-between border px-2 py-1\",i===Ik.AUTO&&\"opacity-50\"),children:[(0,$1.jsx)(\"label\",{htmlFor:\"slippage-input\",className:\"sr-only\",children:\"Slippage Percentage\"}),(0,$1.jsx)(\"input\",{id:\"slippage-input\",type:\"text\",value:o.statusData.maxSlippage,onChange:d,disabled:i===Ik.AUTO,className:ge(it.foreground,Xe.label2,\"w-full flex-grow bg-transparent pl-1 font-normal leading-6 focus:outline-none\",i===Ik.AUTO&&\"cursor-not-allowed\")}),(0,$1.jsx)(\"span\",{className:ge(dn.default,it.foreground,Xe.label2,\"ml-1 flex-shrink-0 font-normal leading-6\"),children:\"%\"})]})]})}p();var pLe=he(De(),1);function mLe({children:t,className:e}){return(0,pLe.jsx)(\"div\",{className:ge(dn.default,mt.radius,mt.lineDefault,\"right-0 z-10 w-[21.75rem] px-3 py-3\",e),\"data-testid\":\"ockSwapSettingsLayout_container\",children:t})}p();var E2=he(De(),1);function gLe({children:t,className:e}){return(0,E2.jsxs)(\"div\",{className:ge(dn.default,mt.default,Ht.shadow,\"right-0 z-10 h-full w-full rounded-t-lg px-3 pt-2 pb-3\",e),\"data-testid\":\"ockSwapSettingsLayout_container\",children:[(0,E2.jsx)(\"div\",{className:ge(dn.alternate,\"mx-auto mb-2 h-1 w-4 rounded-[6.25rem]\")}),(0,E2.jsx)(\"div\",{className:\"mb-4 flex items-center justify-center\",children:(0,E2.jsx)(\"h2\",{className:ge(it.foreground,\"font-bold text-sm\"),children:\"Settings\"})}),(0,E2.jsx)(\"div\",{className:\"flex flex-col\",children:t}),(0,E2.jsx)(\"div\",{className:\"mt-4 flex justify-center\",children:(0,E2.jsx)(\"div\",{className:ge(dn.inverse,\"h-1 w-28 shrink-0 rounded-[0.43931rem]\")})})]})}p();var yLe=he(De(),1);function d$({children:t,className:e}){return(0,yLe.jsx)(\"h3\",{className:ge(Xe.headline,it.foreground,\"mb-2 text-base\",e),children:t})}var _1t=(0,Za.jsxs)(Za.Fragment,{children:[(0,Za.jsx)(d$,{children:\"Max. slippage\"}),(0,Za.jsx)(l$,{children:\"Your swap will revert if the prices change by more than the selected percentage.\"}),(0,Za.jsx)(u$,{})]});function f$({children:t=_1t,className:e,icon:n=\"swapSettings\",text:r=\"\"}){let o=uV(),[i,a]=(0,Y3.useState)(!1),c=(0,Y3.useRef)(null),u=(0,Y3.useRef)(null),d=(0,Y3.useCallback)(g=>{g.stopPropagation(),a(b=>!b)},[]),h=(0,Y3.useCallback)(()=>{a(!1)},[]),m=h2({icon:n});return(0,Za.jsxs)(\"div\",{className:ge(\"flex w-auto items-center justify-end space-x-1 pb-4\",e),\"data-testid\":\"ockSwapSettings_Settings\",children:[r&&(0,Za.jsx)(\"span\",{className:ge(Xe.body),children:r}),(0,Za.jsxs)(\"div\",{className:ge(\"relative\",i&&\"group\"),ref:c,children:[(0,Za.jsx)(\"button\",{ref:u,type:\"button\",\"aria-label\":\"Toggle swap settings\",className:ge(Ht.default,\"rounded-full p-2 opacity-50 transition-opacity hover:opacity-100\"),onClick:d,children:(0,Za.jsx)(\"div\",{className:\"h-[1.125rem] w-[1.125rem]\",children:m})}),o===\"sm\"?(0,Za.jsx)(D1,{active:i,children:(0,Za.jsx)(B1,{onDismiss:h,triggerRef:u,preventTriggerEvents:!0,children:(0,Za.jsx)(\"div\",{className:ge(dn.inverse,Ht.shadow,\"fixed inset-x-0 z-50 transition-[bottom] duration-300 ease-in-out\",i?\"bottom-0\":\"-bottom-[12.875rem]\",\"h-[12.875rem] rounded-t-lg\",e),\"data-testid\":\"ockSwapSettingsSlippageLayoutBottomSheet_container\",children:(0,Za.jsx)(gLe,{className:e,children:t})})})}):(0,Za.jsx)(fLe,{isOpen:i,onClose:h,anchor:c.current,position:\"bottom\",align:\"end\",trigger:u,children:(0,Za.jsx)(\"div\",{className:ge(mt.radius,dn.default,Ht.shadow,\"absolute right-0 z-10 mt-1 w-[21.75rem] rounded-lg\"),\"data-testid\":\"ockSwapSettingsDropdown\",children:(0,Za.jsx)(mLe,{children:t})})})]})]})}p();var G1=he(De(),1),wLe=he(et(),1);p();Si();var C1t={[xs.id]:\"https://sepolia.basescan.org\",[Yn.id]:\"https://basescan.org\",[$G.id]:\"https://arbiscan.io\",[KG.id]:\"https://sepolia.arbiscan.io\",[KR.id]:\"https://optimistic.etherscan.io\",[uZ.id]:\"https://sepolia-optimism.etherscan.io/\",[dZ.id]:\"https://polygonscan.com\",[fZ.id]:\"https://mumbai.polygonscan.com\",[li.id]:\"https://etherscan.io\",[ZR.id]:\"https://sepolia.etherscan.io\"};function K1(t){return t?C1t[t]??\"https://basescan.org\":\"https://basescan.org\"}p();var Pk=he(De(),1),vLe=he(et(),1);p();function bLe(t){return t===\"bottom-right\"?\"bottom-5 left-3/4\":t===\"top-right\"?\"top-[100px] left-3/4\":t===\"top-center\"?\"top-[100px] left-2/4\":\"bottom-5 left-2/4\"}var A1t={\"top-center\":\"animate-enterDown\",\"top-right\":\"animate-enterRight\",\"bottom-center\":\"animate-enterUp\",\"bottom-right\":\"animate-enterRight\"};function h$({className:t,durationMs:e=5e3,startTimeout:n=!0,position:r=\"bottom-center\",animation:o,isVisible:i,onClose:a,children:c}){let u=bLe(r),d=o??A1t[r];return(0,vLe.useEffect)(()=>{if(n){let h=setTimeout(()=>{i&&a()},e);return()=>{h&&clearTimeout(h)}}},[e,i,a,n]),i?(0,Pk.jsx)(\"div\",{className:ge(\"-translate-x-2/4 fixed z-20\",u),\"data-testid\":\"ockToastContainer\",children:(0,Pk.jsxs)(\"div\",{className:ge(dn.default,\"flex items-center justify-between rounded-lg\",\"p-2 shadow-[0px_8px_24px_0px_rgba(0,0,0,0.12)]\",d,t),\"data-testid\":\"ockToast\",children:[(0,Pk.jsx)(\"div\",{className:\"flex items-center gap-4 p-2\",children:c}),(0,Pk.jsx)(\"button\",{className:\"p-2\",onClick:a,type:\"button\",\"data-testid\":\"ockCloseButton\",children:(0,Pk.jsx)(xT,{})})]})}):null}function p$({className:t,durationMs:e=5e3,position:n=\"bottom-center\"}){let{isToastVisible:r,setIsToastVisible:o,setTransactionHash:i,transactionHash:a}=Fm(),{chainId:c}=Jn(),u=K1(c),d=(0,wLe.useCallback)(()=>{o(!1),i(\"\")},[o,i]);return r?(0,G1.jsxs)(h$,{position:n,className:t,durationMs:e,isVisible:r,onClose:d,children:[(0,G1.jsx)(\"div\",{className:ge(Xe.label2),children:(0,G1.jsx)(nT,{})}),(0,G1.jsx)(\"div\",{className:ge(Xe.label1,\"text-nowrap\"),children:(0,G1.jsx)(\"p\",{className:it.foreground,children:\"Successful\"})}),(0,G1.jsx)(\"div\",{className:ge(Xe.label1,\"text-nowrap\"),children:(0,G1.jsx)(\"a\",{href:`${u}/tx/${a}`,target:\"_blank\",rel:\"noreferrer\",children:(0,G1.jsx)(\"span\",{className:ge(Xe.label1,it.primary),children:\"View transaction\"})})})]}):null}p();var xLe=he(De(),1);function m$({className:t}){let{handleToggle:e}=Fm();return(0,xLe.jsx)(\"button\",{type:\"button\",className:ge(Ht.alternate,mt.default,\"-my-6 relative mx-auto\",\"flex h-12 w-12 items-center justify-center\",\"rounded-lg border-4 border-solid\",t),\"data-testid\":\"SwapTokensButton\",onClick:e,children:MT})}function T1t({to:t,from:e,disabled:n}){return(0,Ll.jsxs)(Ll.Fragment,{children:[(0,Ll.jsx)(f$,{}),(0,Ll.jsx)(GT,{label:\"Sell\",swappableTokens:e,token:e?.[0],type:\"from\"}),(0,Ll.jsx)(m$,{}),(0,Ll.jsx)(GT,{label:\"Buy\",swappableTokens:t,token:t?.[0],type:\"to\"}),(0,Ll.jsx)(a$,{disabled:n}),(0,Ll.jsx)(c$,{}),(0,Ll.jsx)(p$,{})]})}function ELe({children:t,config:e={maxSlippage:3},className:n,disabled:r,to:o,from:i,experimental:a={useAggregator:!1},isSponsored:c=!1,onError:u,onStatus:d,onSuccess:h,title:m=\"Swap\",headerLeftContent:g}){let b=ji();return BT()?(0,Ll.jsx)(aLe,{config:e,experimental:a,isSponsored:c,onError:u,onStatus:d,onSuccess:h,children:(0,Ll.jsxs)(\"div\",{className:ge(b,dn.default,mt.radius,it.foreground,\"relative flex w-full max-w-[500px] flex-col px-6 pt-6 pb-4\",n),\"data-testid\":\"ockSwap_Container\",children:[(0,Ll.jsxs)(\"div\",{className:\"absolute flex w-1/2 items-center justify-between\",children:[g,(0,Ll.jsx)(\"h3\",{className:ge(Xe.title3,\"text-center\"),\"data-testid\":\"ockSwap_Title\",children:m})]}),t??(0,Ll.jsx)(T1t,{to:o,from:i,disabled:r})]})}):null}var gae=he(et(),1);function yae({config:t,classNames:e,disabled:n,experimental:r,from:o,isSponsored:i=!1,onError:a,onStatus:c,onSuccess:u,title:d,to:h}){var m,g,b,E;let{setActiveFeature:C,isActiveFeatureClosing:T,setIsActiveFeatureClosing:R}=Ko(),L=(0,gae.useCallback)(()=>{R(!0)},[R]),D=(0,gae.useCallback)(()=>{T&&(C(null),R(!1))},[T,C,R]),G=(0,Du.jsx)(Lm,{ariaLabel:\"Back button\",onClick:L,children:(0,Du.jsx)(\"div\",{className:\"p-2\",children:VT})});return(0,Du.jsx)(\"div\",{className:ge(\"h-full\",mt.radius,T?\"fade-out slide-out-to-right-5 animate-out fill-mode-forwards ease-in-out\":\"fade-in slide-in-from-right-5 linear animate-in duration-150\",\"relative w-88 h-120\",e?.container),onAnimationEnd:D,\"data-testid\":\"ockWalletAdvancedSwap\",children:(0,Du.jsxs)(ELe,{className:ge(\"w-full px-4 pt-3 pb-4\",e?.container),onStatus:c,onSuccess:u,onError:a,config:t,isSponsored:i,title:d,experimental:r,headerLeftContent:G,children:[(0,Du.jsxs)(f$,{className:ge(\"w-auto\",(m=e?.settings)==null?void 0:m.container),children:[(0,Du.jsx)(d$,{className:(g=e?.settings)==null?void 0:g.slippageTitle,children:\"Max. slippage\"}),(0,Du.jsx)(l$,{className:(b=e?.settings)==null?void 0:b.slippageDescription,children:\"Your swap will revert if the prices change by more than the selected percentage.\"}),(0,Du.jsx)(u$,{className:(E=e?.settings)==null?void 0:E.slippageInput})]}),(0,Du.jsx)(GT,{label:\"Sell\",swappableTokens:o,type:\"from\",className:e?.fromAmountInput}),(0,Du.jsx)(m$,{className:e?.toggleButton}),(0,Du.jsx)(GT,{label:\"Buy\",swappableTokens:h,type:\"to\",className:e?.toAmountInput}),(0,Du.jsx)(a$,{disabled:n,className:e?.swapButton}),(0,Du.jsx)(c$,{className:e?.message}),(0,Du.jsx)(p$,{className:e?.toast})]})})}p();var ga=he(De(),1);p();p();var LM=he(De(),1);p();var g$=he(De(),1);p();var TLe=he(De(),1);p();p();async function SLe(t,e=no.API){let n=R1t(t);if(\"error\"in n)return n;try{let r=await H3(YPe,[n],e);return r.error?{code:String(r.error.code),error:\"Error fetching price quote\",message:r.error.message}:r.result}catch(r){return{code:\"UNCAUGHT_PRICE_QUOTE_ERROR\",error:\"Something went wrong\",message:`Error fetching price quote: ${r}`}}}function R1t(t){let{tokens:e}=t;return!e||e.length===0?{code:\"INVALID_INPUT\",error:\"Invalid input: tokens must be an array of at least one token\",message:\"Tokens must be an array of at least one token\"}:t}function kLe(t,e=no.Hook){let{token:n,queryOptions:r}=t;return pd({queryKey:[\"getPriceQuote\",n],queryFn:async()=>{if(!n)return{priceQuotes:[]};let o=await SLe({tokens:[n]},e);if(q3(o))throw o;return o},...Mu,...r})}var yc=he(et(),1);bo();p();var XDn=he(De(),1),S2=he(et(),1);Si();p();p();var _Le=t=>t.endsWith(\".base.eth\")||t.endsWith(\".basetest.eth\")?!1:!!(t.endsWith(\".eth\")||t.endsWith(\".test.eth\"));bo();Si();async function CLe(t){if(Kr(t,{strict:!1}))return t;if(pk(t)||_Le(t)){let e=await mk({name:t,chain:pk(t)?Yn:li});if(e)return e}return null}function ALe(){let[t,e]=(0,S2.useState)({phase:\"input\",input:\"\",address:null,displayValue:null}),n=(0,S2.useCallback)(a=>{e(c=>({...c,input:a}))},[]),r=(0,S2.useCallback)(a=>{CLe(a).then(c=>{if(!c){e({phase:\"input\",input:a,address:null,displayValue:null});return}e({phase:\"validated\",input:a,address:c,displayValue:null})})},[]),o=(0,S2.useCallback)(async a=>{e(a)},[]),i=(0,S2.useCallback)(()=>{t.phase===\"selected\"?e({phase:\"validated\",input:t.input,address:t.address,displayValue:null}):e({...t,displayValue:null})},[t]);return(0,S2.useEffect)(()=>{t.phase===\"selected\"&&zP({address:t.address,chain:Yn}).then(a=>{e({phase:t.phase,input:t.input,address:t.address,displayValue:a??vk(t.address)})}).catch(()=>e({phase:t.phase,input:t.input,address:t.address,displayValue:vk(t.address)}))},[t.phase,t.address,t.input]),{recipientState:t,updateRecipientInput:n,validateRecipientInput:r,selectRecipient:o,deselectRecipient:i}}var RLe={},ILe=(0,yc.createContext)(RLe);function Fu(){let t=(0,yc.useContext)(ILe);if(t===RLe)throw new Error(\"useSendContext must be used within a SendProvider\");return t}function OLe({children:t}){var e;let[n,r]=(0,yc.useState)(null),[o,i]=(0,yc.useState)(\"crypto\"),[a,c]=(0,yc.useState)(null),[u,d]=(0,yc.useState)(null),{recipientState:h,updateRecipientInput:m,validateRecipientInput:g,selectRecipient:b,deselectRecipient:E}=ALe(),[C,T]=CT({statusName:\"init\",statusData:{isMissingRequiredField:!0}}),R=(0,yc.useMemo)(()=>n?o===\"fiat\"?Number(a)<=n.fiatBalance:Number(u)<=Number(vs(BigInt(n.cryptoBalance),n.decimals)):!1,[o,n,u,a]),{address:L}=Jn(),{data:D}=Bd({address:L},no.Wallet),G=(e=D?.tokenBalances)==null?void 0:e.find(O=>O.address===\"\"),W=G?Number(vs(BigInt(G.cryptoBalance),G.decimals)):0,J=W!==void 0;(0,yc.useEffect)(()=>{if(!W||W===0){T({statusName:\"fundingWallet\",statusData:{isMissingRequiredField:!0}});return}T({statusName:\"selectingAddress\",statusData:{isMissingRequiredField:!0}})},[W,T]);let{isLoading:ne,data:ie}=kLe({token:n?.address===\"\"?\"ETH\":n?.address},no.Wallet),Z=(0,yc.useMemo)(()=>!ie||q3(ie)||ie.priceQuotes.length===0?0:1/Number(ie.priceQuotes[0].price),[ie]),ae=(0,yc.useCallback)(O=>{r(O),T({statusName:\"amountChange\",statusData:{isMissingRequiredField:!0,sufficientBalance:!1}})},[T]),V=(0,yc.useCallback)(()=>{r(null),c(null),d(null),T({statusName:\"selectingToken\",statusData:{isMissingRequiredField:!0}})},[T]),$=(0,yc.useCallback)(O=>{c(O),T({statusName:\"amountChange\",statusData:{isMissingRequiredField:!0,sufficientBalance:R}})},[T,R]),F=(0,yc.useCallback)(O=>{let z=Sg(O,8);d(z),T({statusName:\"amountChange\",statusData:{isMissingRequiredField:!0,sufficientBalance:R}})},[T,R]),_=Vc({isInitialized:J,lifecycleStatus:C,updateLifecycleStatus:T,ethBalance:W,recipientState:h,updateRecipientInput:m,validateRecipientInput:g,selectRecipient:b,deselectRecipient:E,selectedToken:n,handleTokenSelection:ae,handleResetTokenSelection:V,fiatAmount:a,handleFiatAmountChange:$,cryptoAmount:u,handleCryptoAmountChange:F,exchangeRate:Z,exchangeRateLoading:ne,selectedInputType:o,setSelectedInputType:i});return(0,TLe.jsx)(ILe.Provider,{value:_,children:t})}var I1t=(0,g$.jsx)(\"div\",{\"data-testid\":\"ockSendAmountInputTypeSwitch_ErrorDisplay\",className:ge(Xe.caption,it.foregroundMuted,\"h-[1.625rem]\"),children:\"Exchange rate unavailable\"});function PLe({errorDisplay:t,className:e}){let{selectedToken:n,fiatAmount:r,cryptoAmount:o,exchangeRate:i,exchangeRateLoading:a,selectedInputType:c,setSelectedInputType:u}=Fu();return a?(0,g$.jsx)(z1,{className:\"h-[1.625rem]\"}):i?(0,g$.jsx)(SV,{asset:n?.symbol??\"\",fiatAmount:r??\"\",cryptoAmount:o??\"\",exchangeRate:i,exchangeRateLoading:!1,currency:\"USD\",selectedInputType:c,setSelectedInputType:u,className:e}):t||I1t}function MLe({className:t,textClassName:e}){let{selectedToken:n,cryptoAmount:r,handleCryptoAmountChange:o,fiatAmount:i,handleFiatAmountChange:a,selectedInputType:c,exchangeRate:u}=Fu();return(0,LM.jsxs)(\"div\",{className:\"flex h-full w-full flex-col justify-center\",children:[(0,LM.jsx)(xV,{fiatAmount:i??\"\",cryptoAmount:r??\"\",asset:n?.symbol??\"\",currency:\"USD\",selectedInputType:c,setFiatAmount:a,setCryptoAmount:o,exchangeRate:String(u),className:t,textClassName:e}),(0,LM.jsx)(PLe,{})]})}p();var X3=he(De(),1);p();var Z1=he(De(),1);p();var bae=he(De(),1),Q3=he(et(),1);p();function NLe({errorMessage:t,hasReceipt:e,isInProgress:n,transactionHash:r,transactionId:o}){let i=o||r;return e||t?!1:!!(n||i)}p();var qLe=he(De(),1),Ti=he(et(),1);p();function LLe({setLifecycleStatus:t,transactionId:e}){var n,r;try{let{data:o}=F9({id:e,query:{refetchInterval:a=>{var c;return PM((c=a.state.data)==null?void 0:c.status)===\"success\"?!1:1e3},enabled:!!e}}),i=(r=(n=o?.receipts)==null?void 0:n[0])==null?void 0:r.transactionHash;return{status:o?.status,transactionHash:i}}catch(o){return t({statusName:\"error\",statusData:{code:\"TmUCSh01\",error:JSON.stringify(o),message:\"\"}}),{status:\"error\",transactionHash:void 0}}}p();function BLe({setLifecycleStatus:t,transactionHashList:e}){let{status:n,sendTransactionAsync:r,data:o,reset:i}=H9({mutation:{onError:a=>{let c=Z3(a)?\"Request denied.\":v2;t({statusName:\"error\",statusData:{code:\"TmUSCh01\",error:a.message,message:c}})},onSuccess:a=>{t({statusName:\"transactionLegacyExecuted\",statusData:{transactionHashList:[...e,a]}})}}});return{status:n,sendCallAsync:r,data:o,reset:i}}p();function DLe({setLifecycleStatus:t,setTransactionId:e}){let{status:n,sendCallsAsync:r,data:o,reset:i}=z9({mutation:{onError:a=>{let c=Z3(a)?\"Request denied.\":v2;t({statusName:\"error\",statusData:{code:\"TmUSCSh01\",error:a.message,message:c}})},onSuccess:a=>{e(s$(a))}}});return{status:n,sendCallsAsync:r,data:o,reset:i}}p();var jLe=he(et(),1);p();p();function y$(t){return\"abi\"in t}var FLe=async({capabilities:t,sendCallsAsync:e,transactions:n})=>{if(!n)return;let r=n?.map(o=>{if(y$(o)){let{address:i,...a}=o;return{...a,to:i}}return o});await e({calls:r,capabilities:t})};p();bo();var ULe=async({config:t,sendCallAsync:e,transactions:n})=>{let r=n?.map(o=>y$(o)?{data:yo({abi:o?.abi,functionName:o?.functionName,args:o?.args}),to:o?.address}:o);for(let o of r){let i=await e(o);i&&await Xp(t,{hash:i,confirmations:1})}};var zLe=({capabilities:t,sendCallAsync:e,sendCallsAsync:n,walletCapabilities:r})=>{let o=Qn();return(0,jLe.useCallback)(async i=>{var a;if(!i)return;let c=await Promise.resolve(i);(a=r[uk.AtomicBatch])!=null&&a.supported?await FLe({capabilities:t,sendCallsAsync:n,transactions:c}):await ULe({config:o,sendCallAsync:e,transactions:c})},[n,e,t,r,o])};p();var HLe=t=>{var e;return((e=t?.paymasterService)==null?void 0:e.url)||null};var WLe={},VLe=(0,Ti.createContext)(WLe);function Uu(){let t=(0,Ti.useContext)(VLe);if(t===WLe)throw new Error(\"useTransactionContext must be used within a Transaction component\");return t}function $Le({calls:t,capabilities:e,chainId:n,children:r,contracts:o,isSponsored:i,onError:a,onStatus:c,onSuccess:u,resetAfter:d}){let h=Jn(),m=Qn(),{config:{paymaster:g}={paymaster:void 0}}=lo(),[b,E]=(0,Ti.useState)(\"\"),[C,T]=(0,Ti.useState)(\"\"),[R,L]=(0,Ti.useState)(!1),[D,G]=(0,Ti.useState)({statusName:\"init\",statusData:null}),[W,J]=(0,Ti.useState)(\"\"),[ne,ie]=(0,Ti.useState)(),[Z,ae]=(0,Ti.useState)([]),V=t||o,$=kT({chainId:n}),{switchChainAsync:F}=L6();if(!o&&!t)throw new Error(\"Transaction: calls or contracts must be provided as a prop to the Transaction component.\");if(t&&o)throw new Error(\"Transaction: Only one of contracts or calls can be provided as a prop to the Transaction component.\");let{status:_,sendCallsAsync:O,reset:z}=DLe({setLifecycleStatus:G,setTransactionId:J}),{status:N,sendCallAsync:B,data:j,reset:q}=BLe({setLifecycleStatus:G,transactionHashList:Z}),H=(0,Ti.useMemo)(()=>{var Ge;return(Ge=$[uk.AtomicBatch])!=null&&Ge.supported?_:N},[N,_,$]),I=(0,Ti.useMemo)(()=>i&&g?{paymasterService:{url:g},...e}:e,[i,g,e]),U=zLe({capabilities:I,sendCallAsync:B,sendCallsAsync:O,walletCapabilities:$}),{transactionHash:X,status:ee}=LLe({setLifecycleStatus:G,transactionId:W}),{data:se}=nJ({hash:j||X}),{sendAnalytics:pe}=zi(),ye=(0,Ti.useCallback)((Ge,ht)=>{pe(Ge,ht)},[pe]);(0,Ti.useEffect)(()=>{E(\"\"),D.statusName===\"error\"&&(E(D.statusData.message),T(D.statusData.code),a?.(D.statusData)),D.statusName===\"transactionLegacyExecuted\"&&ae(D.statusData.transactionHashList),D.statusName===\"success\"&&u?.({transactionReceipts:D.statusData.transactionReceipts}),c?.(D)},[a,c,u,D,D.statusData,D.statusName]),(0,Ti.useEffect)(()=>{H===\"pending\"&&G({statusName:\"transactionPending\",statusData:null})},[H]),(0,Ti.useEffect)(()=>{if(se&&(G({statusName:\"success\",statusData:{transactionReceipts:[se]}}),d)){let Ge=setTimeout(()=>{E(\"\"),T(\"\"),L(!1),J(\"\"),ae([]),ie(void 0),z(),q()},d);return()=>clearTimeout(Ge)}},[se,d,z,q]);let xe=(0,Ti.useCallback)(async()=>{let Ge=[];for(let ht of Z)try{let Ct=await Xp(m,{hash:ht,chainId:n});Ge.push(Ct)}catch(Ct){G({statusName:\"error\",statusData:{code:\"TmTPc01\",error:JSON.stringify(Ct),message:v2}})}G({statusName:\"success\",statusData:{transactionReceipts:Ge}})},[n,m,Z]);(0,Ti.useEffect)(()=>{!V||Z.length!==ne||ne<2||xe()},[V,ne,Z,xe]);let _e=(0,Ti.useCallback)(async Ge=>{Ge&&h.chainId!==Ge&&await F({chainId:Ge})},[h.chainId,F]),Me=(0,Ti.useCallback)(async()=>{G({statusName:\"buildingTransaction\",statusData:null});try{ye(ZA.TransactionInitiated,{address:h.address});let Ge=await(typeof V==\"function\"?V():Promise.resolve(V));return ie(Ge?.length),Ge}catch(Ge){ye(ZA.TransactionFailure,{error:Ge.message,metadata:{code:C}}),G({statusName:\"error\",statusData:{code:\"TmTPc04\",error:JSON.stringify(Ge),message:\"Error building transactions\"}});return}},[V,ye,h.address,C]),qe=(0,Ti.useCallback)(async()=>{E(\"\"),L(!0);try{await _e(n);let Ge=await Me();await U(Ge)}catch(Ge){let ht=Z3(Ge)?\"Request denied.\":v2;G({statusName:\"error\",statusData:{code:\"TmTPc03\",error:JSON.stringify(Ge),message:ht}})}},[Me,n,U,_e]),wt=Vc({chainId:n,errorCode:C,errorMessage:b,isLoading:ee===\"PENDING\",isToastVisible:R,lifecycleStatus:D,onSubmit:qe,paymasterUrl:HLe(I),receipt:se,setIsToastVisible:L,setLifecycleStatus:G,setTransactionId:J,transactions:V,transactionId:W,transactionHash:j||X,transactionCount:ne});return(0,Ti.useEffect)(()=>{se&&(se.status===\"success\"?ye(ZA.TransactionSuccess,{paymaster:!!(i&&g),address:h.address,transactionHash:se.transactionHash}):ye(ZA.TransactionFailure,{error:\"Transaction failed\",metadata:{code:C}}))},[se,ye,i,g,h.address,C]),(0,qLe.jsx)(VLe.Provider,{value:wt,children:r})}function b$({className:t,disabled:e=!1,text:n=\"Transact\",errorOverride:r,successOverride:o,pendingOverride:i}){var a,c;let{chainId:u,errorMessage:d,isLoading:h,lifecycleStatus:m,onSubmit:g,receipt:b,transactions:E,transactionCount:C,transactionHash:T,transactionId:R}=Uu(),{address:L}=Jn(),D=u??xl(),G=m.statusName===\"transactionLegacyExecuted\"&&C!==((c=(a=m?.statusData)==null?void 0:a.transactionHashList)==null?void 0:c.length),W=m.statusName===\"buildingTransaction\"||m.statusName===\"transactionPending\"||G||h,ie=!b&&(W||(!E||!L)||(!!R||!!T)||e),Z=NLe({errorMessage:d,hasReceipt:!!b,isInProgress:W,transactionHash:T,transactionId:R}),{errorText:ae,successText:V,pendingContent:$}=(0,Q3.useMemo)(()=>{let B=o?.text??\"View transaction\",j=r?.text??\"Try again\",q=i?.text??(0,bae.jsx)(jh,{});return{successText:B,errorText:j,pendingContent:q}},[r,i,o]),F=(0,Q3.useCallback)(()=>{if(b&&R&&T&&u&&L){let j=new URL(\"https://wallet.coinbase.com/assets/transactions\");return j.searchParams.set(\"contentParams[txHash]\",T),j.searchParams.set(\"contentParams[chainId]\",JSON.stringify(u)),j.searchParams.set(\"contentParams[fromAddress]\",L),window.open(j,\"_blank\",\"noopener,noreferrer\")}let B=K1(D);return window.open(`${B}/tx/${T}`,\"_blank\",\"noopener,noreferrer\")},[L,u,b,R,T,D]),_=(0,Q3.useCallback)(()=>{var B;if(o?.onClick&&b)return(B=o?.onClick)==null?void 0:B.call(o,b);F()},[F,o,b]),O=(0,Q3.useCallback)(()=>{var B;return r?.onClick?(B=r?.onClick)==null?void 0:B.call(r):g()},[r,g]),z=(0,Q3.useMemo)(()=>b?V:d?ae:Z?$:n,[Z,d,ae,n,$,b,V]),N=(0,Q3.useCallback)(()=>{b?_():d?O():g()},[d,O,g,b,_]);return(0,bae.jsx)(\"button\",{className:ge(Ht.primary,mt.radius,\"w-full rounded-xl\",\"px-4 py-3 font-medium leading-6\",ie&&Ht.disabled,Xe.headline,it.inverse,t),onClick:N,type:\"button\",disabled:ie,\"data-testid\":\"ockTransactionButton_Button\",children:z})}p();var k2=he(De(),1),nBe=he(et(),1);p();var ZLe=he(De(),1);p();var Mk=he(De(),1),KLe=he(et(),1);function GLe(){let{chainId:t,errorMessage:e,onSubmit:n,transactionHash:r,transactionId:o}=Uu(),i=t??xl(),{showCallsStatus:a}=q9();return(0,KLe.useMemo)(()=>{let c=K1(i),u=null;return r&&(u=(0,Mk.jsx)(\"a\",{href:`${c}/tx/${r}`,target:\"_blank\",rel:\"noreferrer\",children:(0,Mk.jsx)(\"span\",{className:ge(Xe.label1,it.primary),children:\"View transaction\"})})),o&&(u=(0,Mk.jsx)(\"button\",{onClick:()=>a({id:o}),type:\"button\",children:(0,Mk.jsx)(\"span\",{className:ge(Xe.label1,it.primary),children:\"View transaction\"})})),e&&(u=(0,Mk.jsx)(\"button\",{type:\"button\",onClick:n,children:(0,Mk.jsx)(\"span\",{className:ge(Xe.label1,it.primary),children:\"Try again\"})})),{actionElement:u}},[i,e,n,a,r,o])}function YLe({className:t}){let{actionElement:e}=GLe();return(0,ZLe.jsx)(\"div\",{className:ge(Xe.label1,\"text-nowrap\",t),children:e})}p();var BM=he(De(),1),QLe=he(et(),1);function JLe({className:t}){let{errorMessage:e,isLoading:n,receipt:r,transactionHash:o,transactionId:i}=Uu(),a=n||!!i||!!o,c=(0,QLe.useMemo)(()=>r?(0,BM.jsx)(nT,{}):e?(0,BM.jsx)(TW,{}):a?(0,BM.jsx)(jh,{className:\"px-1.5 py-1.5\"}):null,[a,e,r]);return c?(0,BM.jsx)(\"div\",{className:ge(Xe.label2,t),children:c}):null}p();var vae=he(De(),1);p();var XLe=he(et(),1);function eBe(){let{errorMessage:t,isLoading:e,lifecycleStatus:n,receipt:r,transactionHash:o,transactionId:i}=Uu(),a=e||!!i||!!o,c=n.statusName===\"buildingTransaction\";return(0,XLe.useMemo)(()=>{let u=\"\",d=it.foregroundMuted;return c&&(u=\"Building transaction\"),a&&(u=\"Transaction in progress\"),r&&(u=\"Successful\"),t&&(u=\"Something went wrong\",d=it.error),{label:u,labelClassName:d}},[t,c,a,r])}function tBe({className:t}){let{label:e}=eBe();return(0,vae.jsx)(\"div\",{className:ge(Xe.label1,\"text-nowrap\",t),children:(0,vae.jsx)(\"p\",{className:it.foreground,children:e})})}function rBe({children:t,className:e,durationMs:n=5e3,position:r=\"bottom-center\"}){let{errorMessage:o,isLoading:i,isToastVisible:a,receipt:c,setIsToastVisible:u,transactionHash:d,transactionId:h}=Uu(),m=(0,nBe.useCallback)(()=>{u(!1)},[u]);return!a||!c&&!i&&!d&&!o&&!h?null:(0,k2.jsx)(h$,{position:r,className:e,durationMs:n,isVisible:a,onClose:m,startTimeout:!!c||!!o,children:t??(0,k2.jsxs)(k2.Fragment,{children:[(0,k2.jsx)(JLe,{}),(0,k2.jsx)(tBe,{}),(0,k2.jsx)(YLe,{})]})})}function oBe({calls:t,capabilities:e,chainId:n,className:r,children:o,contracts:i,disabled:a=!1,isSponsored:c,onError:u,onStatus:d,onSuccess:h,resetAfter:m}){let g=BT(),b=ji(),{chain:E}=lo();if(!g)return(0,Z1.jsx)(\"div\",{className:ge(b,\"flex w-full flex-col gap-2\",r)});let C=n||E.id;return(0,Z1.jsx)($Le,{calls:t,capabilities:e,chainId:C,contracts:i,isSponsored:c,onError:u,onStatus:d,onSuccess:h,resetAfter:m,children:(0,Z1.jsx)(\"div\",{className:ge(b,\"flex w-full flex-col gap-2\",r),children:o??(0,Z1.jsxs)(Z1.Fragment,{children:[(0,Z1.jsx)(b$,{disabled:a}),(0,Z1.jsx)(rBe,{})]})})})}p();var J3=he(De(),1);p();var aBe=he(De(),1);p();var DM=he(De(),1),iBe=he(et(),1);function sBe(){let{chainId:t,receipt:e,transactionHash:n,transactionId:r}=Uu(),o=t??xl(),{showCallsStatus:i}=q9();return(0,iBe.useMemo)(()=>{let a=K1(o),c=null;return n&&(c=(0,DM.jsx)(\"a\",{href:`${a}/tx/${n}`,target:\"_blank\",rel:\"noreferrer\",children:(0,DM.jsx)(\"span\",{className:ge(Xe.label1,it.primary),children:\"View transaction\"})})),r&&(c=(0,DM.jsx)(\"button\",{onClick:()=>i({id:r}),type:\"button\",children:(0,DM.jsx)(\"span\",{className:ge(Xe.label1,it.primary),children:\"View transaction\"})})),e&&(c=null),{actionElement:c}},[o,e,i,n,r])}function v$({className:t}){let{actionElement:e}=sBe();return(0,aBe.jsx)(\"div\",{className:ge(Xe.label2,\"min-w-[70px]\",t),children:e})}p();var wae=he(De(),1);p();var cBe=he(et(),1);function lBe(){let{errorMessage:t,isLoading:e,receipt:n,lifecycleStatus:r,transactionHash:o,transactionId:i}=Uu(),a=e||!!i||!!o,c=r.statusName===\"transactionPending\",u=r.statusName===\"buildingTransaction\";return(0,cBe.useMemo)(()=>{let d=\"\",h=it.foregroundMuted;return u&&(d=\"Building transaction...\"),c&&(d=\"Confirm in wallet.\"),a&&(d=\"Transaction in progress...\"),n&&(d=\"Successful\"),t&&(d=t,h=it.error),{label:d,labelClassName:h}},[t,u,a,c,n])}function w$({className:t}){let{label:e,labelClassName:n}=lBe();return(0,wae.jsx)(\"div\",{className:ge(Xe.label2,t),children:(0,wae.jsx)(\"p\",{className:n,children:e})})}function uBe({children:t,className:e}){return(0,J3.jsx)(\"div\",{className:ge(\"flex justify-between\",e),children:t??(0,J3.jsxs)(J3.Fragment,{children:[(0,J3.jsx)(w$,{}),(0,J3.jsx)(v$,{})]})})}var xae=he(et(),1);bo();Si();p();function dBe({transactionId:t,transactionHash:e,senderChain:n,address:r,onComplete:o}){return i=>{let a=n?.id??xl();if(i&&t&&e&&n?.id&&r){let c=new URL(\"https://wallet.coinbase.com/assets/transactions\");c.searchParams.set(\"contentParams[txHash]\",e),c.searchParams.set(\"contentParams[chainId]\",JSON.stringify(n?.id)),c.searchParams.set(\"contentParams[fromAddress]\",r),window.open(c,\"_blank\",\"noopener,noreferrer\")}else{let c=K1(a);window.open(`${c}/tx/${e}`,\"_blank\",\"noopener,noreferrer\")}o?.()}}p();p();bo();function fBe({recipientAddress:t,tokenAddress:e,amount:n}){if(!e)return{to:t,data:\"0x\",value:n};try{let r=yo({abi:f9,functionName:\"transfer\",args:[t,n]});return{to:e,data:r}}catch(r){return{code:\"AmBSeTx01\",error:r instanceof Error?r.message:String(r),message:\"Could not build transfer transaction\"}}}bo();function hBe({recipientAddress:t,token:e,amount:n}){if(!t||!e||!e.decimals||!n)return{calldata:null,error:{code:\"SemBSeTx01\",error:\"Invalid transaction parameters\",message:\"Could not build send transaction\"}};if(!e.address&&e.symbol!==\"ETH\")return{calldata:null,error:{code:\"SemBSeTx02\",error:\"No token address provided for non-ETH token\",message:\"Could not build send transaction\"}};try{let r=AC(n,e.decimals),o=fBe({recipientAddress:t,tokenAddress:e.address||null,amount:r});return q3(o)?{calldata:null,error:o}:{calldata:o,error:null}}catch(r){return{calldata:null,error:{code:\"SemBSeTx03\",error:r instanceof Error?r.message:\"Unknown error\",message:\"Could not build send transaction\"}}}}function pBe(){let{chain:t,isSponsored:e}=Ko(),{recipientState:n,cryptoAmount:r,selectedToken:o,updateLifecycleStatus:i}=Fu(),{calldata:a,error:c}=hBe({recipientAddress:n.address,token:o,amount:r}),u=!!c||!M1t({inputAmount:r??\"\",balance:BigInt(o?.cryptoBalance??0),selectedToken:o??void 0}),d=P1t(r,o),h=(0,xae.useCallback)(m=>{[\"transactionPending\",\"transactionLegacyExecuted\",\"success\",\"error\"].includes(m.statusName)&&i(m)},[i]);return(0,X3.jsxs)(oBe,{isSponsored:e,chainId:t?.id??Yn.id,calls:a?[a]:[],onStatus:h,children:[(0,X3.jsx)(O1t,{label:d,senderChain:t,disabled:u}),(0,X3.jsxs)(uBe,{children:[(0,X3.jsx)(w$,{}),(0,X3.jsx)(v$,{})]})]})}function O1t({label:t,senderChain:e,disabled:n}){let{address:r,setActiveFeature:o}=Ko(),{transactionHash:i,transactionId:a}=Uu(),c=(0,xae.useCallback)(()=>{o(null)},[o]),u={onClick:dBe({transactionId:a,transactionHash:i,senderChain:e??void 0,address:r??void 0,onComplete:c})};return(0,X3.jsx)(b$,{text:t,successOverride:u,disabled:n})}function P1t(t,e){return t?e?AC(t,e.decimals)>e.cryptoBalance?\"Insufficient balance\":\"Continue\":\"Select token\":\"Input amount\"}function M1t({inputAmount:t,balance:e,selectedToken:n}){if(!t||!n||!e)return!1;let r=AC(t,n.decimals);return r>0n&&r<=e}p();var Y1=he(De(),1),Mzn=he(et(),1);var Zzn=he(I0(),1);function mBe({onError:t,onStatus:e,onSuccess:n,classNames:r}){return(0,Y1.jsxs)(\"div\",{className:ge(\"flex flex-col items-center justify-between\",r?.container),\"data-testid\":\"ockSendFundWallet\",children:[(0,Y1.jsx)(\"div\",{className:ge(Xe.label2,it.foregroundMuted,r?.subtitle),children:\"Insufficient ETH balance to send transaction. Fund your wallet to continue.\"}),(0,Y1.jsxs)(Ise,{assetSymbol:\"ETH\",country:\"US\",currency:\"USD\",presetAmountInputs:[\"2\",\"5\",\"10\"],onError:t,onStatus:e,onSuccess:n,className:ge(\"mt-3 w-88 border-none py-0\",r?.fundCard),children:[(0,Y1.jsx)(XP,{}),(0,Y1.jsx)(nM,{}),(0,Y1.jsx)(iM,{}),(0,Y1.jsx)(rM,{}),(0,Y1.jsx)(aM,{})]})]})}p();var _2=he(De(),1);var Eae=he(et(),1);function gBe({label:t=\"Send\",classNames:e}){let{setActiveFeature:n}=Ko(),{recipientState:r,selectedToken:o,handleResetTokenSelection:i,deselectRecipient:a}=Fu(),c=(0,Eae.useCallback)(()=>{o?i():r.address&&a()},[r.address,o,i,a]),u=(0,Eae.useCallback)(()=>{n(null)},[n]);return(0,_2.jsxs)(\"div\",{\"data-testid\":\"ockSendHeader\",className:ge(\"mb-4 grid grid-cols-3 items-center\",e?.container),children:[(0,_2.jsx)(\"div\",{\"data-testid\":\"ockSendHeader_back\",className:\"justify-self-start\",children:r.phase===\"selected\"&&(0,_2.jsx)(Lm,{onClick:c,className:ge(\"h-7 w-7 scale-110 p-2\",e?.back),children:VT})}),(0,_2.jsx)(\"div\",{\"data-testid\":\"ockSendHeader_label\",className:ge(Xe.headline,\"justify-self-center\",e?.label),children:t}),(0,_2.jsx)(\"div\",{\"data-testid\":\"ockSendHeader_close\",className:\"justify-self-end\",children:(0,_2.jsx)(Lm,{onClick:u,className:ge(\"h-7 w-7 scale-110 p-2\",e?.close),children:(0,_2.jsx)(xT,{})})})]})}p();var Nk=he(De(),1);var kHn=he(et(),1);var THn=he(I0(),1);p();var Gc=he(De(),1);var Sae=he(et(),1);bo();function kae({token:t,onClick:e,onActionPress:n,actionText:r=\"Max\",classNames:o,\"aria-label\":i,...a}){return e?(0,Gc.jsxs)(\"div\",{className:\"relative\",children:[(0,Gc.jsx)(\"button\",{type:\"button\",\"aria-label\":i??`${t.name} token balance`,onClick:()=>e(t),className:ge(\"flex w-full items-center justify-start gap-4 px-2 py-1\",o?.container),\"data-testid\":\"ockTokenBalanceButton\",children:(0,Gc.jsx)(yBe,{token:t,classNames:o,onActionPress:n,...a})}),n&&(0,Gc.jsx)(bBe,{actionText:r,onActionPress:n,className:o?.action})]}):(0,Gc.jsxs)(\"div\",{className:ge(\"flex w-full items-center justify-start gap-4 px-2 py-1\",o?.container),\"data-testid\":\"ockTokenBalance\",children:[(0,Gc.jsx)(yBe,{token:t,...a,classNames:o}),n&&(0,Gc.jsx)(bBe,{actionText:r,onActionPress:n,className:o?.action})]})}function yBe({token:t,subtitle:e,showImage:n=!0,onActionPress:r,tokenSize:o=40,classNames:i}){var a;let c=(0,Sae.useMemo)(()=>p2({amount:t.fiatBalance,currency:\"USD\"}),[t.fiatBalance]),u=(0,Sae.useMemo)(()=>Sg(vs(BigInt(t.cryptoBalance),t.decimals),3),[t.cryptoBalance,t.decimals]);return(0,Gc.jsxs)(\"div\",{className:\"grid w-full grid-cols-[2.5rem_1fr_auto] items-center gap-3\",children:[(0,Gc.jsx)(\"div\",{className:\"h-10 w-10\",children:n&&(0,Gc.jsx)(q1,{token:t,size:o})}),(0,Gc.jsxs)(\"div\",{className:\"flex min-w-0 flex-col text-left\",children:[(0,Gc.jsx)(\"span\",{className:ge(Xe.headline,it.foreground,\"overflow-hidden text-ellipsis whitespace-nowrap\",i?.tokenName),children:(a=t.name)==null?void 0:a.trim()}),(0,Gc.jsx)(\"span\",{className:ge(Xe.label2,it.foregroundMuted,i?.tokenValue),children:`${u} ${t.symbol} ${e??\"\"}`})]}),(0,Gc.jsx)(\"div\",{className:\"text-right\",children:!r&&(0,Gc.jsx)(\"span\",{className:ge(Xe.label2,it.foregroundMuted,\"whitespace-nowrap\",i?.fiatValue),children:c})})]})}function bBe({actionText:t,onActionPress:e,className:n}){return(0,Gc.jsx)(\"button\",{type:\"button\",\"data-testid\":\"ockTokenBalanceAction\",\"aria-label\":t,onClick:e,className:ge(Xe.label2,it.primary,mt.radius,\"cursor-pointer p-0.5 font-bold\",\"border border-transparent hover:border-[--ock-line-primary]\",\"-translate-y-1/2 absolute top-1/2 right-2\",n),children:t})}bo();function _ae({classNames:t}){let{address:e}=Jn(),{data:n}=Bd({address:e},no.Wallet),r=n?.tokenBalances,{selectedToken:o,handleTokenSelection:i,handleResetTokenSelection:a,setSelectedInputType:c,handleCryptoAmountChange:u,handleFiatAmountChange:d}=Fu();return o?(0,Nk.jsx)(kae,{token:o,showImage:!0,subtitle:\"available\",onClick:a,onActionPress:()=>{c(\"crypto\"),d(String(o.fiatBalance)),u(String(vs(BigInt(o.cryptoBalance),o.decimals)))},classNames:{container:ge(Ht.alternate,mt.radius,t?.container),...t}}):(0,Nk.jsxs)(\"div\",{className:\"mt-4 flex max-h-80 flex-col gap-2\",children:[(0,Nk.jsx)(\"span\",{className:ge(Xe.caption,it.foregroundMuted,\"uppercase\"),children:\"Select a token\"}),(0,Nk.jsx)(\"div\",{className:\"scrollbar-hidden overflow-y-auto\",children:r?.map(h=>(0,Nk.jsx)(kae,{token:h,onClick:i,subtitle:\"\",classNames:{container:ge(Ht.default,mt.radius,t?.container),...t}},h.address))})]})}p();var FM=he(De(),1);function vBe({classNames:t}){let{recipientState:e,updateRecipientInput:n,validateRecipientInput:r,deselectRecipient:o}=Fu();return(0,FM.jsxs)(\"div\",{\"data-testid\":\"ockSendAddressInput\",className:ge(mt.lineDefault,mt.radius,\"w-full\",\"flex items-center gap-2\",\"px-4 py-3\",t?.container),children:[(0,FM.jsx)(\"span\",{className:ge(it.foreground,t?.label),children:\"To\"}),(0,FM.jsx)(Ek,{inputMode:\"text\",placeholder:\"Basename, ENS, or Address\",value:e.displayValue??e.input,setValue:n,onChange:r,onFocus:o,\"aria-label\":\"Input Receiver Address\",className:ge(dn.default,\"w-full outline-none\",t?.input)})]})}p();var Q1=he(De(),1);var wBe=he(et(),1);function xBe({classNames:t}){let{chain:e}=Ko(),{recipientState:n,selectRecipient:r}=Fu(),o=(0,wBe.useCallback)(async()=>{r({phase:\"selected\",input:n.input,address:n.address,displayValue:n.displayValue})},[n.input,n.address,n.displayValue,r]);return!n.address||!e?null:(0,Q1.jsx)(\"button\",{\"data-testid\":\"ockSendAddressSelector_button\",type:\"button\",onClick:o,className:\"w-full text-left\",children:(0,Q1.jsx)(\"div\",{\"data-testid\":\"ockSendAddressSelector_container\",className:ge(dn.default,mt.radius,Ht.default,\"items-left flex min-w-[300px]\",\"mt-2 p-2\",t?.container),children:(0,Q1.jsxs)(\"div\",{className:\"flex items-center space-x-3\",children:[(0,Q1.jsx)(\"div\",{className:\"flex-shrink-0\",children:(0,Q1.jsx)(Ld,{address:n.address,chain:e,className:t?.avatar})}),(0,Q1.jsxs)(\"div\",{className:\"flex flex-col\",children:[(0,Q1.jsx)(Df,{address:n.address,chain:e,className:t?.name}),(0,Q1.jsx)(j3,{address:n.address,hasCopyAddressOnClick:!1,className:t?.address})]})]})})})}function EBe({children:t=(0,ga.jsx)(L1t,{}),className:e}){return(0,ga.jsx)(OLe,{children:(0,ga.jsx)(\"div\",{\"data-testid\":\"ockSend\",className:ge(dn.default,mt.radius,mt.lineDefault,it.foreground,\"h-120 w-88\",\"flex flex-col\",\"p-4\",e),children:t})})}function L1t(){let{ethBalance:t,isInitialized:e,recipientState:n,selectedToken:r}=Fu(),o=(t??0)>1e-6;return e?(0,ga.jsxs)(ga.Fragment,{children:[(0,ga.jsx)(gBe,{}),o?(0,ga.jsxs)(\"div\",{className:\"flex h-full flex-col justify-between gap-4\",children:[(0,ga.jsxs)(\"div\",{children:[(0,ga.jsx)(vBe,{}),n.phase===\"validated\"&&(0,ga.jsx)(xBe,{}),n.phase===\"selected\"&&!r&&(0,ga.jsx)(_ae,{})]}),n.phase===\"selected\"&&r&&(0,ga.jsxs)(ga.Fragment,{children:[(0,ga.jsx)(MLe,{}),(0,ga.jsx)(_ae,{}),(0,ga.jsx)(pBe,{})]})]}):(0,ga.jsx)(mBe,{})]}):(0,ga.jsx)(z1,{className:\"h-full w-full\"})}function E$({children:t,swappableTokens:e,classNames:n}){let{isSubComponentOpen:r,setIsSubComponentOpen:o,isSubComponentClosing:i,setIsSubComponentClosing:a,connectRef:c,breakpoint:u,activeFeature:d,animations:h}=Ko(),{address:m}=Jn(),{data:g}=Bd({address:m,enabled:!!d},no.Wallet),b=g?.tokenBalances,E=(0,UM.useCallback)(()=>{o(!1)},[o]),C=(0,UM.useCallback)(()=>{i&&(o(!1),a(!1))},[i,o,a]),T=(0,UM.useMemo)(()=>d===\"send\"?(0,Wh.jsx)(x$,{children:(0,Wh.jsx)(EBe,{className:\"border-none\"})}):d===\"qr\"?(0,Wh.jsx)(x$,{children:(0,Wh.jsx)(dae,{classNames:n?.qr})}):d===\"swap\"?(0,Wh.jsx)(x$,{children:(0,Wh.jsx)(yae,{title:(0,Wh.jsx)(\"div\",{className:ge(Xe.headline,\"w-full text-center text-base\"),children:\"Swap\"}),to:e??DOe,from:b?.map(R=>({address:R.address,chainId:R.chainId,symbol:R.symbol,decimals:R.decimals,image:R.image,name:R.name}))??[],classNames:n?.swap})}):(0,Wh.jsx)(x$,{children:t}),[d,e,b,t,n]);return u===\"sm\"?(0,Wh.jsx)(pMe,{isOpen:r,triggerRef:c,onClose:E,className:n?.container,children:(0,Wh.jsx)(\"div\",{className:\"flex h-full w-full flex-col items-center justify-center\",children:T})}):(0,Wh.jsx)(\"div\",{\"data-testid\":\"ockWalletDropdownContent\",className:ge(dn.default,mt.radius,mt.lineDefault,Nu.dropdown,\"my-1.5 h-auto w-full\",\"flex justify-center\",\"overflow-hidden\",h.container,n?.container),onAnimationEnd:C,children:T})}function x$({children:t,className:e}){return(0,Wh.jsx)(\"div\",{className:ge(\"flex flex-col justify-between\",\"min-w-80 max-h-120\",e),children:t})}var B1t=(0,_g.jsxs)(_g.Fragment,{children:[(0,_g.jsx)(vM,{}),(0,_g.jsx)(fM,{}),(0,_g.jsx)(yM,{}),(0,_g.jsx)(hM,{})]});function S$({children:t,classNames:e,swappableTokens:n}){let{isSubComponentOpen:r,showSubComponentAbove:o,alignSubComponentRight:i}=Ko();return r?(0,_g.jsx)(\"div\",{\"data-testid\":\"ockWalletAdvancedContainer\",className:ge(\"absolute\",o?\"bottom-full\":\"top-full\",i?\"right-0\":\"left-0\"),children:(0,_g.jsx)(E$,{classNames:e,swappableTokens:n,children:t||B1t})}):null}p();var Hf=he(De(),1);var iWn=he(et(),1);p();var jM=he(De(),1),SBe=he(et(),1);function zM({className:t,text:e=\"Disconnect\"}){let{disconnect:n,connectors:r}=j9(),o=(0,SBe.useCallback)(()=>{r.map(i=>n({connector:i}))},[n,r]);return(0,jM.jsxs)(\"button\",{type:\"button\",className:ge(Ht.default,it.foreground,\"relative flex w-full items-center px-4 pt-3 pb-4\",t),onClick:o,children:[(0,jM.jsx)(\"div\",{className:\"absolute left-4 flex h-[1.125rem] w-[1.125rem] items-center justify-center\",children:UV}),(0,jM.jsx)(\"span\",{className:ge(Xe.body,\"pl-6\"),children:e})]})}p();var HM=he(De(),1);function Cae({children:t,className:e,icon:n,href:r,rel:o,target:i}){let a=h2({icon:n});return(0,HM.jsxs)(\"a\",{className:ge(Ht.default,it.foreground,\"relative flex items-center px-4 py-3\",e),href:r,target:i,rel:o,children:[(0,HM.jsx)(\"div\",{className:\"-translate-y-1/2 absolute top-1/2 left-4 flex h-[1.125rem] w-[1.125rem] items-center justify-center\",children:a}),(0,HM.jsx)(\"span\",{className:ge(Xe.body,\"pl-6\"),children:t})]})}var D1t=(0,Hf.jsxs)(Hf.Fragment,{children:[(0,Hf.jsxs)(LV,{className:\"px-4 pt-3 pb-2\",children:[(0,Hf.jsx)(Ld,{}),(0,Hf.jsx)(Df,{}),(0,Hf.jsx)(j3,{className:it.foregroundMuted}),(0,Hf.jsx)(lM,{})]},\"wallet-dd-identity\"),(0,Hf.jsx)(Cae,{icon:\"wallet\",href:\"https://keys.coinbase.com\",target:\"_blank\",children:\"Wallet\"},\"wallet-dd-link\"),(0,Hf.jsx)(zM,{},\"wallet-dd-disconnect\")]});function eE({children:t,className:e,classNames:n,swappableTokens:r}){let{address:o,breakpoint:i,isSubComponentOpen:a,showSubComponentAbove:c,alignSubComponentRight:u}=Ko();return!o||!i||!a?null:(0,Hf.jsx)(\"div\",{\"data-testid\":\"ockWalletDropdown\",className:ge(\"absolute\",c?\"bottom-full\":\"top-full\",u?\"right-0\":\"left-0\",e),children:(0,Hf.jsx)(E$,{classNames:n,swappableTokens:r,children:t||D1t})})}var kBe=(0,qf.jsxs)(qf.Fragment,{children:[(0,qf.jsx)(Eg,{}),(0,qf.jsx)(eE,{})]});function YT({children:t,className:e,draggable:n,draggableStartingPosition:r,isSponsored:o}){let i=ji();return BT()?(0,qf.jsx)(dse,{isSponsored:o,children:(0,qf.jsx)(F1t,{className:ge(i,e),...GPe({draggable:n,draggableStartingPosition:r}),children:t})}):null}function F1t({children:t,className:e,draggable:n,draggableStartingPosition:r}){let{isSubComponentOpen:o,isConnectModalOpen:i,handleClose:a,connectRef:c,breakpoint:u}=Ko(),d=(0,J1.useRef)(null);_V(d,a);let{dropdown:h,advanced:m}=(0,J1.useMemo)(()=>{let E=J1.Children.toArray(t);return{dropdown:E.find(Nd(eE)),advanced:E.find(Nd(S$))}},[t]),g=(0,J1.useMemo)(()=>J1.Children.map(t,E=>(0,J1.isValidElement)(E)&&E.type===S$&&h?null:E),[h,t]);h&&m&&console.error(\"Defaulted to WalletDropdown. Wallet cannot have both WalletDropdown and WalletAdvanced as children.\");let b=i||u===\"sm\"&&o;return n?(0,qf.jsx)(\"div\",{ref:d,className:ge(\"relative w-fit shrink-0\",e),children:(0,qf.jsx)(KPe,{startingPosition:r,disabled:b,children:(0,qf.jsx)(\"div\",{ref:c,children:g||kBe})})}):(0,qf.jsx)(\"div\",{ref:d,className:ge(\"relative w-fit shrink-0\",e),children:(0,qf.jsx)(\"div\",{ref:c,children:g||kBe})})}p();var U1t=he(De(),1);p();var _Be=he(De(),1),qWn=he(et(),1);p();var QT=he(De(),1);var j1t=(0,QT.jsxs)(\"svg\",{width:\"100%\",height:\"100%\",viewBox:\"0 0 18 18\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",className:Kt.foreground,children:[(0,QT.jsx)(\"title\",{children:\"Portfolio\"}),(0,QT.jsx)(\"path\",{d:\"M2.7125 0.875H15.875V4.625H2.7125C1.7 4.625 0.875 3.8 0.875 2.7875V2.7125C0.875 1.7 1.7 0.875 2.7125 0.875Z\",fill:\"currentColor\"}),(0,QT.jsx)(\"path\",{d:\"M0.875 5.875V14.5C0.875 15.95 2.05 17.125 3.5 17.125H17.125V5.875H0.875ZM13.375 12.125C12.6875 12.125 12.125 11.5625 12.125 10.875C12.125 10.1875 12.6875 9.625 13.375 9.625C14.0625 9.625 14.625 10.1875 14.625 10.875C14.625 11.5625 14.0625 12.125 13.375 12.125Z\",fill:\"currentColor\"})]});p();var Aae=he(De(),1);p();var k$=he(De(),1);var z1t=(0,k$.jsx)(\"svg\",{\"data-testid\":\"ock-basenameSvg\",role:\"img\",\"aria-label\":\"ock-basenameSvg\",width:\"100%\",height:\"100%\",viewBox:\"0 0 20 20\",xmlns:\"http://www.w3.org/2000/svg\",fill:\"none\",className:\"h-full w-full\",children:(0,k$.jsx)(\"g\",{id:\"Icons/User\",children:(0,k$.jsx)(\"path\",{id:\"Vector\",d:\"M10 20C4.47715 20 0 15.5228 0 10C0 4.47715 4.47715 0 10 0C15.5228 0 20 4.47715 20 10C20 15.5228 15.5228 20 10 20ZM12.832 6.9987C12.832 5.43461 11.5641 4.16666 10 4.16666C8.43594 4.16666 7.168 5.43461 7.168 6.9987C7.168 8.56279 8.43594 9.83073 10 9.83073C11.5641 9.83073 12.832 8.56279 12.832 6.9987ZM5.67266 11.6810L4.76738 14.0938C6.10704 15.4238 7.95093 16.2465 9.98699 16.2500L10.0130 16.2500C12.0491 16.2465 13.8930 15.4238 15.2326 14.0938L14.3273 11.6810C14.0026 10.8125 13.1794 10.2385 12.2581 10.2159C12.2279 10.2385 11.2310 10.9635 10.0000 10.9635C8.76903 10.9635 7.77215 10.2385 7.74194 10.2159C6.82059 10.2310 5.9974 10.8125 5.67266 11.6810Z\",className:Kt.foreground})})});p();var CBe=he(De(),1),ABe=he(et(),1);p();var TBe=he(De(),1);p();p();var ju=he(et());bo();Si();p();p();p();p();p();var JT={84532:{usdcAddress:\"0x036CbD53842c5426634e7929541eC2318f3dCF7e\",usdcName:\"USDC\"},8453:{usdcAddress:\"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\",usdcName:\"USD Coin\"},43113:{usdcAddress:\"0x5425890298aed601595a70AB815c96711a31Bc65\",usdcName:\"USD Coin\"},43114:{usdcAddress:\"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E\",usdcName:\"USD Coin\"},4689:{usdcAddress:\"0xcdf79194c6c285077a58da47641d4dbe51f63542\",usdcName:\"Bridged USDC\"}};p();var _$={TransferWithAuthorization:[{name:\"from\",type:\"address\"},{name:\"to\",type:\"address\"},{name:\"value\",type:\"uint256\"},{name:\"validAfter\",type:\"uint256\"},{name:\"validBefore\",type:\"uint256\"},{name:\"nonce\",type:\"bytes32\"}]};p();var Lk=[{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"owner\",type:\"address\"},{indexed:!0,internalType:\"address\",name:\"spender\",type:\"address\"},{indexed:!1,internalType:\"uint256\",name:\"value\",type:\"uint256\"}],name:\"Approval\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"authorizer\",type:\"address\"},{indexed:!0,internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"}],name:\"AuthorizationCanceled\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"authorizer\",type:\"address\"},{indexed:!0,internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"}],name:\"AuthorizationUsed\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"_account\",type:\"address\"}],name:\"Blacklisted\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"newBlacklister\",type:\"address\"}],name:\"BlacklisterChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"burner\",type:\"address\"},{indexed:!1,internalType:\"uint256\",name:\"amount\",type:\"uint256\"}],name:\"Burn\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"newMasterMinter\",type:\"address\"}],name:\"MasterMinterChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"minter\",type:\"address\"},{indexed:!0,internalType:\"address\",name:\"to\",type:\"address\"},{indexed:!1,internalType:\"uint256\",name:\"amount\",type:\"uint256\"}],name:\"Mint\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"minter\",type:\"address\"},{indexed:!1,internalType:\"uint256\",name:\"minterAllowedAmount\",type:\"uint256\"}],name:\"MinterConfigured\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"oldMinter\",type:\"address\"}],name:\"MinterRemoved\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!1,internalType:\"address\",name:\"previousOwner\",type:\"address\"},{indexed:!1,internalType:\"address\",name:\"newOwner\",type:\"address\"}],name:\"OwnershipTransferred\",type:\"event\"},{anonymous:!1,inputs:[],name:\"Pause\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"newAddress\",type:\"address\"}],name:\"PauserChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"newRescuer\",type:\"address\"}],name:\"RescuerChanged\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"from\",type:\"address\"},{indexed:!0,internalType:\"address\",name:\"to\",type:\"address\"},{indexed:!1,internalType:\"uint256\",name:\"value\",type:\"uint256\"}],name:\"Transfer\",type:\"event\"},{anonymous:!1,inputs:[{indexed:!0,internalType:\"address\",name:\"_account\",type:\"address\"}],name:\"UnBlacklisted\",type:\"event\"},{anonymous:!1,inputs:[],name:\"Unpause\",type:\"event\"},{inputs:[],name:\"CANCEL_AUTHORIZATION_TYPEHASH\",outputs:[{internalType:\"bytes32\",name:\"\",type:\"bytes32\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"DOMAIN_SEPARATOR\",outputs:[{internalType:\"bytes32\",name:\"\",type:\"bytes32\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"PERMIT_TYPEHASH\",outputs:[{internalType:\"bytes32\",name:\"\",type:\"bytes32\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"RECEIVE_WITH_AUTHORIZATION_TYPEHASH\",outputs:[{internalType:\"bytes32\",name:\"\",type:\"bytes32\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"TRANSFER_WITH_AUTHORIZATION_TYPEHASH\",outputs:[{internalType:\"bytes32\",name:\"\",type:\"bytes32\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"owner\",type:\"address\"},{internalType:\"address\",name:\"spender\",type:\"address\"}],name:\"allowance\",outputs:[{internalType:\"uint256\",name:\"\",type:\"uint256\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"spender\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"}],name:\"approve\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"authorizer\",type:\"address\"},{internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"}],name:\"authorizationState\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"account\",type:\"address\"}],name:\"balanceOf\",outputs:[{internalType:\"uint256\",name:\"\",type:\"uint256\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"_account\",type:\"address\"}],name:\"blacklist\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[],name:\"blacklister\",outputs:[{internalType:\"address\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"uint256\",name:\"_amount\",type:\"uint256\"}],name:\"burn\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"authorizer\",type:\"address\"},{internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"},{internalType:\"uint8\",name:\"v\",type:\"uint8\"},{internalType:\"bytes32\",name:\"r\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"s\",type:\"bytes32\"}],name:\"cancelAuthorization\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"authorizer\",type:\"address\"},{internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"},{internalType:\"bytes\",name:\"signature\",type:\"bytes\"}],name:\"cancelAuthorization\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"minter\",type:\"address\"},{internalType:\"uint256\",name:\"minterAllowedAmount\",type:\"uint256\"}],name:\"configureMinter\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[],name:\"currency\",outputs:[{internalType:\"string\",name:\"\",type:\"string\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"decimals\",outputs:[{internalType:\"uint8\",name:\"\",type:\"uint8\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"spender\",type:\"address\"},{internalType:\"uint256\",name:\"decrement\",type:\"uint256\"}],name:\"decreaseAllowance\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"spender\",type:\"address\"},{internalType:\"uint256\",name:\"increment\",type:\"uint256\"}],name:\"increaseAllowance\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"string\",name:\"tokenName\",type:\"string\"},{internalType:\"string\",name:\"tokenSymbol\",type:\"string\"},{internalType:\"string\",name:\"tokenCurrency\",type:\"string\"},{internalType:\"uint8\",name:\"tokenDecimals\",type:\"uint8\"},{internalType:\"address\",name:\"newMasterMinter\",type:\"address\"},{internalType:\"address\",name:\"newPauser\",type:\"address\"},{internalType:\"address\",name:\"newBlacklister\",type:\"address\"},{internalType:\"address\",name:\"newOwner\",type:\"address\"}],name:\"initialize\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"string\",name:\"newName\",type:\"string\"}],name:\"initializeV2\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"lostAndFound\",type:\"address\"}],name:\"initializeV2_1\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address[]\",name:\"accountsToBlacklist\",type:\"address[]\"},{internalType:\"string\",name:\"newSymbol\",type:\"string\"}],name:\"initializeV2_2\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"_account\",type:\"address\"}],name:\"isBlacklisted\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"account\",type:\"address\"}],name:\"isMinter\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"masterMinter\",outputs:[{internalType:\"address\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"_to\",type:\"address\"},{internalType:\"uint256\",name:\"_amount\",type:\"uint256\"}],name:\"mint\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"minter\",type:\"address\"}],name:\"minterAllowance\",outputs:[{internalType:\"uint256\",name:\"\",type:\"uint256\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"name\",outputs:[{internalType:\"string\",name:\"\",type:\"string\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"owner\",type:\"address\"}],name:\"nonces\",outputs:[{internalType:\"uint256\",name:\"\",type:\"uint256\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"owner\",outputs:[{internalType:\"address\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"pause\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[],name:\"paused\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"pauser\",outputs:[{internalType:\"address\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"owner\",type:\"address\"},{internalType:\"address\",name:\"spender\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"},{internalType:\"uint256\",name:\"deadline\",type:\"uint256\"},{internalType:\"bytes\",name:\"signature\",type:\"bytes\"}],name:\"permit\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"owner\",type:\"address\"},{internalType:\"address\",name:\"spender\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"},{internalType:\"uint256\",name:\"deadline\",type:\"uint256\"},{internalType:\"uint8\",name:\"v\",type:\"uint8\"},{internalType:\"bytes32\",name:\"r\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"s\",type:\"bytes32\"}],name:\"permit\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"from\",type:\"address\"},{internalType:\"address\",name:\"to\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"},{internalType:\"uint256\",name:\"validAfter\",type:\"uint256\"},{internalType:\"uint256\",name:\"validBefore\",type:\"uint256\"},{internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"},{internalType:\"bytes\",name:\"signature\",type:\"bytes\"}],name:\"receiveWithAuthorization\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"from\",type:\"address\"},{internalType:\"address\",name:\"to\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"},{internalType:\"uint256\",name:\"validAfter\",type:\"uint256\"},{internalType:\"uint256\",name:\"validBefore\",type:\"uint256\"},{internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"},{internalType:\"uint8\",name:\"v\",type:\"uint8\"},{internalType:\"bytes32\",name:\"r\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"s\",type:\"bytes32\"}],name:\"receiveWithAuthorization\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"minter\",type:\"address\"}],name:\"removeMinter\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"contract IERC20\",name:\"tokenContract\",type:\"address\"},{internalType:\"address\",name:\"to\",type:\"address\"},{internalType:\"uint256\",name:\"amount\",type:\"uint256\"}],name:\"rescueERC20\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[],name:\"rescuer\",outputs:[{internalType:\"address\",name:\"\",type:\"address\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"symbol\",outputs:[{internalType:\"string\",name:\"\",type:\"string\"}],stateMutability:\"view\",type:\"function\"},{inputs:[],name:\"totalSupply\",outputs:[{internalType:\"uint256\",name:\"\",type:\"uint256\"}],stateMutability:\"view\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"to\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"}],name:\"transfer\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"from\",type:\"address\"},{internalType:\"address\",name:\"to\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"}],name:\"transferFrom\",outputs:[{internalType:\"bool\",name:\"\",type:\"bool\"}],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"newOwner\",type:\"address\"}],name:\"transferOwnership\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"from\",type:\"address\"},{internalType:\"address\",name:\"to\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"},{internalType:\"uint256\",name:\"validAfter\",type:\"uint256\"},{internalType:\"uint256\",name:\"validBefore\",type:\"uint256\"},{internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"},{internalType:\"bytes\",name:\"signature\",type:\"bytes\"}],name:\"transferWithAuthorization\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"from\",type:\"address\"},{internalType:\"address\",name:\"to\",type:\"address\"},{internalType:\"uint256\",name:\"value\",type:\"uint256\"},{internalType:\"uint256\",name:\"validAfter\",type:\"uint256\"},{internalType:\"uint256\",name:\"validBefore\",type:\"uint256\"},{internalType:\"bytes32\",name:\"nonce\",type:\"bytes32\"},{internalType:\"uint8\",name:\"v\",type:\"uint8\"},{internalType:\"bytes32\",name:\"r\",type:\"bytes32\"},{internalType:\"bytes32\",name:\"s\",type:\"bytes32\"}],name:\"transferWithAuthorization\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"_account\",type:\"address\"}],name:\"unBlacklist\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[],name:\"unpause\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"_newBlacklister\",type:\"address\"}],name:\"updateBlacklister\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"_newMasterMinter\",type:\"address\"}],name:\"updateMasterMinter\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"_newPauser\",type:\"address\"}],name:\"updatePauser\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[{internalType:\"address\",name:\"newRescuer\",type:\"address\"}],name:\"updateRescuer\",outputs:[],stateMutability:\"nonpayable\",type:\"function\"},{inputs:[],name:\"version\",outputs:[{internalType:\"string\",name:\"\",type:\"string\"}],stateMutability:\"pure\",type:\"function\"}];p();function C$(t){return typeof t==\"object\"&&t!==null&&\"chain\"in t&&\"transport\"in t}function RBe(t){let e=t;return typeof t==\"object\"&&t!==null&&typeof e.address==\"string\"&&typeof e.type==\"string\"&&typeof e.sign==\"function\"&&typeof e.signMessage==\"function\"&&typeof e.signTypedData==\"function\"&&typeof e.signTransaction==\"function\"}p();bo();p();p();p();p();p();function Tae(t){return typeof globalThis<\"u\"&&typeof globalThis.btoa==\"function\"?globalThis.btoa(t):globalThis.Buffer.from(t).toString(\"base64\")}function A$(t){return typeof globalThis<\"u\"&&typeof globalThis.atob==\"function\"?globalThis.atob(t):globalThis.Buffer.from(t,\"base64\").toString(\"utf-8\")}p();p();p();var q1t=st.union([st.string().transform(t=>t.replace(/[^0-9.-]+/g,\"\")),st.number()]).pipe(st.coerce.number().min(1e-4).max(999999999));p();var qM=st.enum([\"base-sepolia\",\"base\",\"avalanche-fuji\",\"avalanche\",\"iotex\"]),T$=[\"base-sepolia\",\"base\",\"avalanche-fuji\",\"avalanche\",\"iotex\"],R$=new Map([[\"base-sepolia\",84532],[\"base\",8453],[\"avalanche-fuji\",43113],[\"avalanche\",43114],[\"iotex\",4689]]),tKn=Object.fromEntries(T$.map(t=>[R$.get(t),t]));p();p();function Bk(t){if(R$.has(t))return R$.get(t);throw new Error(`Unsupported network: ${t}`)}p();p();p();p();var W1t=18,IBe=/^0x[0-9a-fA-F]{40}$/,WM=/^0x[a-fA-F0-9]{40}|[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$/,V1t=/^0x[0-9a-fA-F]{64}$/,$1t=/^0x[0-9a-fA-F]+$/,Rae=[\"exact\"],OBe=[1],PBe=[\"insufficient_funds\",\"invalid_exact_evm_payload_authorization_valid_after\",\"invalid_exact_evm_payload_authorization_valid_before\",\"invalid_exact_evm_payload_authorization_value\",\"invalid_exact_evm_payload_signature\",\"invalid_exact_evm_payload_recipient_mismatch\",\"invalid_network\",\"invalid_payload\",\"invalid_payment_requirements\",\"invalid_scheme\",\"unsupported_scheme\",\"invalid_x402_version\",\"invalid_transaction_state\",\"unexpected_verify_error\",\"unexpected_settle_error\"],I$=t=>Number.isInteger(Number(t))&&Number(t)>=0,K1t=t=>e=>e.length<=t,MBe=st.object({scheme:st.enum(Rae),network:qM,maxAmountRequired:st.string().refine(I$),resource:st.string().url(),description:st.string(),mimeType:st.string(),outputSchema:st.record(st.any()).optional(),payTo:st.string().regex(WM),maxTimeoutSeconds:st.number().int(),asset:st.string().regex(WM),extra:st.record(st.any()).optional()}),G1t=st.object({from:st.string().regex(IBe),to:st.string().regex(IBe),value:st.string().refine(I$).refine(K1t(W1t)),validAfter:st.string().refine(I$),validBefore:st.string().refine(I$),nonce:st.string().regex(V1t)}),Z1t=st.object({signature:st.string().regex($1t),authorization:G1t}),NBe=st.object({x402Version:st.number().refine(t=>OBe.includes(t)),scheme:st.enum(Rae),network:qM,payload:Z1t}),bKn=st.object({isValid:st.boolean(),invalidReason:st.enum(PBe).optional(),payer:st.string().regex(WM).optional()}),vKn=st.object({success:st.boolean(),errorReason:st.enum(PBe).optional(),payer:st.string().regex(WM).optional(),transaction:st.string().regex(WM),network:qM}),Y1t=st.object({x402Version:st.number().refine(t=>OBe.includes(t)),scheme:st.enum(Rae),network:qM}),wKn=st.object({kinds:st.array(Y1t)});p();var AKn=st.object({paymentHeader:st.string(),paymentRequirements:MBe});p();p();function Q1t(t){return JT[t.chain.id.toString()].usdcAddress}function P$(t){return JT[t.toString()]}var O$=null;async function LBe(t){return O$!==null||(O$=await t.readContract({address:Q1t(t),abi:Lk,functionName:\"version\"})),O$}async function Iae(t,e){let n=t.chain.id,r=P$(n);return r?await t.readContract({address:r.usdcAddress,abi:Lk,functionName:\"balanceOf\",args:[e]}):0n}p();async function BBe(t,e,n){return await t.readContract({address:e,abi:Lk,functionName:\"balanceOf\",args:[n]})}async function DBe(t,{from:e,to:n,value:r,validAfter:o,validBefore:i,nonce:a},{asset:c,network:u,extra:d}){let h=Bk(u),m=d?.name,g=d?.version,b={types:_$,domain:{name:m,version:g,chainId:h,verifyingContract:Fr(c)},primaryType:\"TransferWithAuthorization\",message:{from:Fr(e),to:Fr(n),value:r,validAfter:o,validBefore:i,nonce:a}};if(C$(t))return{signature:await t.signTypedData(b)};if(RBe(t)&&t.signTypedData)return{signature:await t.signTypedData(b)};throw new Error(\"Invalid wallet client provided does not support signTypedData\")}function FBe(){let t=typeof globalThis.crypto<\"u\"&&typeof globalThis.crypto.getRandomValues==\"function\"?globalThis.crypto:nUe(\"crypto\").webcrypto;return Uo(t.getRandomValues(new Uint8Array(32)))}p();function M$(t){let e={...t,payload:{...t.payload,authorization:Object.fromEntries(Object.entries(t.payload.authorization).map(([n,r])=>[n,typeof r==\"bigint\"?r.toString():r]))}};return Tae(JSON.stringify(e))}function J1t(t){let e=A$(t),n=JSON.parse(e),r={...n,payload:{signature:n.payload.signature,authorization:{...n.payload.authorization,value:n.payload.authorization.value,validAfter:n.payload.authorization.validAfter,validBefore:n.payload.authorization.validBefore}}};return NBe.parse(r)}function Oae(t,e,n){let r=FBe(),o=BigInt(Math.floor(Date.now()/1e3)-600).toString(),i=BigInt(Math.floor(Date.now()/1e3+n.maxTimeoutSeconds)).toString();return{x402Version:e,scheme:n.scheme,network:n.network,payload:{signature:void 0,authorization:{from:t,to:n.payTo,value:n.maxAmountRequired,validAfter:o.toString(),validBefore:i.toString(),nonce:r}}}}async function Pae(t,e,n){let{signature:r}=await DBe(t,n.payload.authorization,e);return{...n,payload:{...n.payload,signature:r}}}async function UBe(t,e,n){let r=C$(t)?t.account.address:t.address,o=Oae(r,e,n);return Pae(t,n,o)}async function jBe(t,e,n){let r=await UBe(t,e,n);return M$(r)}p();p();function zBe(t,e,n){t.sort((i,a)=>i.network===\"base\"&&a.network!==\"base\"?-1:i.network!==\"base\"&&a.network===\"base\"?1:0);let r=t.filter(i=>{let a=!n||i.scheme===n,c=!e||e==i.network;return a&&c}),o=r.filter(i=>i.asset===P$(Bk(i.network))?.usdcAddress);return o.length>0?o[0]:r.length>0?r[0]:t[0]}p();p();var Dk={};ld(Dk,{SCHEME:()=>N$,evm:()=>Mae});p();var Mae={};ld(Mae,{createPayment:()=>UBe,createPaymentHeader:()=>jBe,decodePayment:()=>J1t,encodePayment:()=>M$,preparePaymentHeader:()=>Oae,settle:()=>X1t,signPaymentHeader:()=>Pae,verify:()=>HBe});p();p();bo();async function HBe(t,e,n){if(e.scheme!==N$||n.scheme!==N$)return{isValid:!1,invalidReason:\"unsupported_scheme\",payer:e.payload.authorization.from};let r,o,i,a;try{o=Bk(e.network),r=n.extra?.name??JT[o.toString()].usdcName,i=n.asset,a=n.extra?.version??await LBe(t)}catch{return{isValid:!1,invalidReason:\"invalid_network\",payer:e.payload.authorization.from}}let c={types:_$,primaryType:\"TransferWithAuthorization\",domain:{name:r,version:a,chainId:o,verifyingContract:i},message:{from:e.payload.authorization.from,to:e.payload.authorization.to,value:e.payload.authorization.value,validAfter:e.payload.authorization.validAfter,validBefore:e.payload.authorization.validBefore,nonce:e.payload.authorization.nonce}};return await t.verifyTypedData({address:e.payload.authorization.from,...c,signature:e.payload.signature})?Fr(e.payload.authorization.to)!==Fr(n.payTo)?{isValid:!1,invalidReason:\"invalid_exact_evm_payload_recipient_mismatch\",payer:e.payload.authorization.from}:BigInt(e.payload.authorization.validBefore)<BigInt(Math.floor(Date.now()/1e3)+6)?{isValid:!1,invalidReason:\"invalid_exact_evm_payload_authorization_valid_before\",payer:e.payload.authorization.from}:BigInt(e.payload.authorization.validAfter)>BigInt(Math.floor(Date.now()/1e3))?{isValid:!1,invalidReason:\"invalid_exact_evm_payload_authorization_valid_after\",payer:e.payload.authorization.from}:await BBe(t,i,e.payload.authorization.from)<BigInt(n.maxAmountRequired)?{isValid:!1,invalidReason:\"insufficient_funds\",payer:e.payload.authorization.from}:BigInt(e.payload.authorization.value)<BigInt(n.maxAmountRequired)?{isValid:!1,invalidReason:\"invalid_exact_evm_payload_authorization_value\",payer:e.payload.authorization.from}:{isValid:!0,invalidReason:void 0,payer:e.payload.authorization.from}:{isValid:!1,invalidReason:\"invalid_exact_evm_payload_signature\",payer:e.payload.authorization.from}}async function X1t(t,e,n){let r=await HBe(t,e,n);if(!r.isValid)return{success:!1,network:e.network,transaction:\"\",errorReason:r.invalidReason??\"invalid_scheme\",payer:e.payload.authorization.from};let{signature:o}=oQ(e.payload.signature),i=await t.writeContract({address:n.asset,abi:Lk,functionName:\"transferWithAuthorization\",args:[e.payload.authorization.from,e.payload.authorization.to,BigInt(e.payload.authorization.value),BigInt(e.payload.authorization.validAfter),BigInt(e.payload.authorization.validBefore),e.payload.authorization.nonce,o],chain:t.chain});return(await t.waitForTransactionReceipt({hash:i})).status!==\"success\"?{success:!1,errorReason:\"invalid_transaction_state\",transaction:i,network:e.network,payer:e.payload.authorization.from}:{success:!0,transaction:i,network:e.network,payer:e.payload.authorization.from}}var N$=\"exact\";p();var Nae=he(De());function qBe({className:t=\"\"}){return(0,Nae.jsx)(\"div\",{className:`inline-flex items-center justify-center ${t}`,children:(0,Nae.jsx)(\"div\",{className:\"animate-spin border-2 border-gray-200 border-t-gray-400 rounded-full w-4 h-4\",style:{animation:\"spin 1s linear infinite\",borderTopWidth:\"2px\"}})})}p();var tE=he(et());p();function Lae(t){if(t===null||typeof t!=\"object\")return t;if(t instanceof Date)return new Date(t.getTime());if(Array.isArray(t))return t.map(n=>Lae(n));let e={};for(let n in t)n===\"__proto__\"||n===\"constructor\"||n===\"prototype\"||Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=Lae(t[n]));return e}function WBe(t){let e=Lae(t);if(window.x402?.amount)try{let n=Math.round(window.x402.amount*1e6);e.maxAmountRequired=n.toString()}catch(n){console.error(\"Failed to parse amount:\",n)}return(!e.maxAmountRequired||!/^\\\\d+$/.test(e.maxAmountRequired))&&(e.maxAmountRequired=\"10000\"),e}var VBe=async t=>{let e=window.x402?.sessionTokenEndpoint;return e?(await(await fetch(e,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify({addresses:[{address:t,blockchains:[\"base\"]}],assets:[\"USDC\"]})})).json()).token:void 0};var ebt=5*60*1e3;function $Be(t){let[e,n]=(0,tE.useState)(),[r,o]=(0,tE.useState)(null),i=(0,tE.useCallback)(()=>r?Date.now()-r>ebt:!0,[r]),a=(0,tE.useCallback)(async()=>{if(t&&(!e||i())){let c=await VBe(t);n(c),o(Date.now())}},[t,e,i]);return(0,tE.useEffect)(()=>{t?a():(n(void 0),o(null))},[t,a]),{sessionToken:e}}var ur=he(De());function KBe(){let{address:t,isConnected:e,chainId:n}=Jn(),{switchChainAsync:r}=L6(),{data:o}=tJ(),{sessionToken:i}=$Be(t),[a,c]=(0,ju.useState)(\"\"),[u,d]=(0,ju.useState)(null),[h,m]=(0,ju.useState)(!1),[g,b]=(0,ju.useState)(\"\"),[E,C]=(0,ju.useState)(!0),T=window.x402,R=T.amount||0,L=T.testnet??!0,D=L?xs:Yn,G=L?\"Base Sepolia\":\"Base\",W=L?\"base-sepolia\":\"base\",J=!!(!L&&e&&T.sessionTokenEndpoint);(0,ju.useEffect)(()=>{t&&($(),Z())},[t]);let ne=M9({chain:D,transport:Eh()}).extend(NC),ie=T?zBe([T.paymentRequirements].flat(),W,\"exact\"):null;(0,ju.useEffect)(()=>{e&&D.id===n?(d(!0),c(\"\")):e&&D.id!==n?(d(!1),c(`On the wrong network. Please switch to ${G}.`)):(d(null),c(\"\"))},[D.id,n,e]);let Z=(0,ju.useCallback)(async()=>{if(!t)return;let _=await Iae(ne,t),O=vs(_,6);b(O)},[t,ne]),ae=(0,ju.useMemo)(()=>{if(i)return xk({presetFiatAmount:2,fiatCurrency:\"USD\",sessionToken:i})},[i]),V=(0,ju.useCallback)(async _=>{let O=_.headers.get(\"content-type\");if(O&&O.includes(\"text/html\"))document.documentElement.innerHTML=await _.text();else{let z=await _.blob(),N=window.URL.createObjectURL(z);window.location.href=N}},[]),$=(0,ju.useCallback)(async()=>{if(!u)try{c(\"\"),await r({chainId:D.id}),await new Promise(_=>setTimeout(_,100))}catch(_){c(_ instanceof Error?_.message:\"Failed to switch network\")}},[r,D,u]),F=(0,ju.useCallback)(async()=>{if(!t||!T||!ie)return;if(await $(),!o){c(\"Wallet client not available. Please reconnect your wallet.\");return}let _=o.extend(NC);m(!0);try{if(c(\"Checking USDC balance...\"),await Iae(ne,t)===0n)throw new Error(`Insufficient balance. Make sure you have USDC on ${G}`);c(\"Creating payment signature...\");let z=WBe(ie),N=await Dk.evm.createPayment(_,1,z),B=Dk.evm.encodePayment(N);c(\"Requesting content with payment...\");let j=await fetch(T.currentUrl,{headers:{\"X-PAYMENT\":B,\"Access-Control-Expose-Headers\":\"X-PAYMENT-RESPONSE\"}});if(j.ok)await V(j);else if(j.status===402){let q=await j.json().catch(()=>({}));if(q&&typeof q.x402Version==\"number\"){let H=await Dk.evm.createPayment(_,q.x402Version,z);H.x402Version=q.x402Version;let I=Dk.evm.encodePayment(H),U=await fetch(T.currentUrl,{headers:{\"X-PAYMENT\":I,\"Access-Control-Expose-Headers\":\"X-PAYMENT-RESPONSE\"}});if(U.ok){await V(U);return}else throw new Error(`Payment retry failed: ${U.statusText}`)}else throw new Error(`Payment failed: ${j.statusText}`)}else throw new Error(`Request failed: ${j.status} ${j.statusText}`)}catch(O){c(O instanceof Error?O.message:\"Payment failed\")}finally{m(!1)}},[t,T,ie,ne,D,$]);return!T||!ie?(0,ur.jsx)(\"div\",{className:\"container\",children:(0,ur.jsxs)(\"div\",{className:\"header\",children:[(0,ur.jsx)(\"h1\",{className:\"title\",children:\"Payment Required\"}),(0,ur.jsx)(\"p\",{className:\"subtitle\",children:\"Loading payment details...\"})]})}):(0,ur.jsxs)(\"div\",{className:\"container gap-8\",children:[(0,ur.jsxs)(\"div\",{className:\"header\",children:[(0,ur.jsx)(\"h1\",{className:\"title\",children:\"Payment Required\"}),(0,ur.jsxs)(\"p\",{children:[ie.description&&`${ie.description}.`,\" To access this content, please pay $\",R,\" \",G,\" USDC.\"]}),L&&(0,ur.jsxs)(\"p\",{className:\"instructions\",children:[\"Need Base Sepolia USDC?\",\" \",(0,ur.jsxs)(\"a\",{href:\"https://faucet.circle.com/\",target:\"_blank\",rel:\"noopener noreferrer\",children:[\"Get some \",(0,ur.jsx)(\"u\",{children:\"here\"}),\".\"]})]})]}),(0,ur.jsxs)(\"div\",{className:\"content w-full\",children:[(0,ur.jsxs)(YT,{className:\"w-full\",children:[(0,ur.jsxs)(Eg,{className:\"w-full py-3\",disconnectedLabel:\"Connect wallet\",children:[(0,ur.jsx)(Ld,{className:\"h-5 w-5 opacity-80\"}),(0,ur.jsx)(Df,{className:\"opacity-80 text-sm\"})]}),(0,ur.jsx)(eE,{children:(0,ur.jsx)(zM,{className:\"opacity-80\"})})]}),e&&(0,ur.jsxs)(\"div\",{id:\"payment-section\",children:[(0,ur.jsxs)(\"div\",{className:\"payment-details\",children:[(0,ur.jsxs)(\"div\",{className:\"payment-row\",children:[(0,ur.jsx)(\"span\",{className:\"payment-label\",children:\"Wallet:\"}),(0,ur.jsx)(\"span\",{className:\"payment-value\",children:t?`${t.slice(0,6)}...${t.slice(-4)}`:\"Loading...\"})]}),(0,ur.jsxs)(\"div\",{className:\"payment-row\",children:[(0,ur.jsx)(\"span\",{className:\"payment-label\",children:\"Available balance:\"}),(0,ur.jsx)(\"span\",{className:\"payment-value\",children:(0,ur.jsx)(\"button\",{className:\"balance-button\",onClick:()=>C(_=>!_),children:g&&!E?`$${g} USDC`:\"\\\\u2022\\\\u2022\\\\u2022\\\\u2022\\\\u2022 USDC\"})})]}),(0,ur.jsxs)(\"div\",{className:\"payment-row\",children:[(0,ur.jsx)(\"span\",{className:\"payment-label\",children:\"Amount:\"}),(0,ur.jsxs)(\"span\",{className:\"payment-value\",children:[\"$\",R,\" USDC\"]})]}),(0,ur.jsxs)(\"div\",{className:\"payment-row\",children:[(0,ur.jsx)(\"span\",{className:\"payment-label\",children:\"Network:\"}),(0,ur.jsx)(\"span\",{className:\"payment-value\",children:G})]})]}),u?(0,ur.jsxs)(\"div\",{className:\"cta-container\",children:[J&&(0,ur.jsx)(JP,{fundingUrl:ae,text:\"Get more USDC\",hideIcon:!0,className:\"button button-positive\"}),(0,ur.jsx)(\"button\",{className:\"button button-primary\",onClick:F,disabled:h,children:h?(0,ur.jsx)(qBe,{}):\"Pay now\"})]}):(0,ur.jsxs)(\"button\",{className:\"button button-primary\",onClick:$,children:[\"Switch to \",G]})]}),a&&(0,ur.jsx)(\"div\",{className:\"status\",children:a})]})]})}var Bae=he(De());window.addEventListener(\"load\",()=>{let t=document.getElementById(\"root\");if(!t){console.error(\"Root element not found\");return}(0,GBe.createRoot)(t).render((0,Bae.jsx)(B9e,{children:(0,Bae.jsx)(KBe,{})}))});})();\\n/*! Bundled license information:\\n\\nieee754/index.js:\\n  (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)\\n\\nbuffer/index.js:\\n  (*!\\n   * The buffer module from node.js, for the browser.\\n   *\\n   * @author   Feross Aboukhadijeh <https://feross.org>\\n   * @license  MIT\\n   *)\\n\\nscheduler/cjs/scheduler.development.js:\\n  (**\\n   * @license React\\n   * scheduler.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\nreact/cjs/react.development.js:\\n  (**\\n   * @license React\\n   * react.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\nreact-dom/cjs/react-dom.development.js:\\n  (**\\n   * @license React\\n   * react-dom.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\nreact-dom/cjs/react-dom-client.development.js:\\n  (**\\n   * @license React\\n   * react-dom-client.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\n@noble/hashes/esm/utils.js:\\n@noble/hashes/utils.js:\\n  (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)\\n\\nreact/cjs/react-jsx-runtime.development.js:\\n  (**\\n   * @license React\\n   * react-jsx-runtime.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\n@noble/curves/esm/utils.js:\\n@noble/curves/esm/abstract/modular.js:\\n@noble/curves/esm/abstract/curve.js:\\n@noble/curves/esm/abstract/weierstrass.js:\\n@noble/curves/esm/_shortw_utils.js:\\n@noble/curves/esm/secp256k1.js:\\n@noble/curves/esm/abstract/edwards.js:\\n@noble/curves/esm/ed25519.js:\\n  (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)\\n\\nuse-sync-external-store/cjs/use-sync-external-store-shim.development.js:\\n  (**\\n   * @license React\\n   * use-sync-external-store-shim.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\nuse-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js:\\n  (**\\n   * @license React\\n   * use-sync-external-store-shim/with-selector.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\nsafe-buffer/index.js:\\n  (*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)\\n\\neventemitter2/lib/eventemitter2.js:\\n  (*!\\n   * EventEmitter2\\n   * https://github.com/hij1nx/EventEmitter2\\n   *\\n   * Copyright (c) 2013 hij1nx\\n   * Licensed under the MIT license.\\n   *)\\n\\n@solana/buffer-layout/lib/Layout.js:\\n  (**\\n   * Support for translating between Uint8Array instances and JavaScript\\n   * native types.\\n   *\\n   * {@link module:Layout~Layout|Layout} is the basis of a class\\n   * hierarchy that associates property names with sequences of encoded\\n   * bytes.\\n   *\\n   * Layouts are supported for these scalar (numeric) types:\\n   * * {@link module:Layout~UInt|Unsigned integers in little-endian\\n   *   format} with {@link module:Layout.u8|8-bit}, {@link\\n   *   module:Layout.u16|16-bit}, {@link module:Layout.u24|24-bit},\\n   *   {@link module:Layout.u32|32-bit}, {@link\\n   *   module:Layout.u40|40-bit}, and {@link module:Layout.u48|48-bit}\\n   *   representation ranges;\\n   * * {@link module:Layout~UIntBE|Unsigned integers in big-endian\\n   *   format} with {@link module:Layout.u16be|16-bit}, {@link\\n   *   module:Layout.u24be|24-bit}, {@link module:Layout.u32be|32-bit},\\n   *   {@link module:Layout.u40be|40-bit}, and {@link\\n   *   module:Layout.u48be|48-bit} representation ranges;\\n   * * {@link module:Layout~Int|Signed integers in little-endian\\n   *   format} with {@link module:Layout.s8|8-bit}, {@link\\n   *   module:Layout.s16|16-bit}, {@link module:Layout.s24|24-bit},\\n   *   {@link module:Layout.s32|32-bit}, {@link\\n   *   module:Layout.s40|40-bit}, and {@link module:Layout.s48|48-bit}\\n   *   representation ranges;\\n   * * {@link module:Layout~IntBE|Signed integers in big-endian format}\\n   *   with {@link module:Layout.s16be|16-bit}, {@link\\n   *   module:Layout.s24be|24-bit}, {@link module:Layout.s32be|32-bit},\\n   *   {@link module:Layout.s40be|40-bit}, and {@link\\n   *   module:Layout.s48be|48-bit} representation ranges;\\n   * * 64-bit integral values that decode to an exact (if magnitude is\\n   *   less than 2^53) or nearby integral Number in {@link\\n   *   module:Layout.nu64|unsigned little-endian}, {@link\\n   *   module:Layout.nu64be|unsigned big-endian}, {@link\\n   *   module:Layout.ns64|signed little-endian}, and {@link\\n   *   module:Layout.ns64be|unsigned big-endian} encodings;\\n   * * 32-bit floating point values with {@link\\n   *   module:Layout.f32|little-endian} and {@link\\n   *   module:Layout.f32be|big-endian} representations;\\n   * * 64-bit floating point values with {@link\\n   *   module:Layout.f64|little-endian} and {@link\\n   *   module:Layout.f64be|big-endian} representations;\\n   * * {@link module:Layout.const|Constants} that take no space in the\\n   *   encoded expression.\\n   *\\n   * and for these aggregate types:\\n   * * {@link module:Layout.seq|Sequence}s of instances of a {@link\\n   *   module:Layout~Layout|Layout}, with JavaScript representation as\\n   *   an Array and constant or data-dependent {@link\\n   *   module:Layout~Sequence#count|length};\\n   * * {@link module:Layout.struct|Structure}s that aggregate a\\n   *   heterogeneous sequence of {@link module:Layout~Layout|Layout}\\n   *   instances, with JavaScript representation as an Object;\\n   * * {@link module:Layout.union|Union}s that support multiple {@link\\n   *   module:Layout~VariantLayout|variant layouts} over a fixed\\n   *   (padded) or variable (not padded) span of bytes, using an\\n   *   unsigned integer at the start of the data or a separate {@link\\n   *   module:Layout.unionLayoutDiscriminator|layout element} to\\n   *   determine which layout to use when interpreting the buffer\\n   *   contents;\\n   * * {@link module:Layout.bits|BitStructure}s that contain a sequence\\n   *   of individual {@link\\n   *   module:Layout~BitStructure#addField|BitField}s packed into an 8,\\n   *   16, 24, or 32-bit unsigned integer starting at the least- or\\n   *   most-significant bit;\\n   * * {@link module:Layout.cstr|C strings} of varying length;\\n   * * {@link module:Layout.blob|Blobs} of fixed- or variable-{@link\\n   *   module:Layout~Blob#length|length} raw data.\\n   *\\n   * All {@link module:Layout~Layout|Layout} instances are immutable\\n   * after construction, to prevent internal state from becoming\\n   * inconsistent.\\n   *\\n   * @local Layout\\n   * @local ExternalLayout\\n   * @local GreedyCount\\n   * @local OffsetLayout\\n   * @local UInt\\n   * @local UIntBE\\n   * @local Int\\n   * @local IntBE\\n   * @local NearUInt64\\n   * @local NearUInt64BE\\n   * @local NearInt64\\n   * @local NearInt64BE\\n   * @local Float\\n   * @local FloatBE\\n   * @local Double\\n   * @local DoubleBE\\n   * @local Sequence\\n   * @local Structure\\n   * @local UnionDiscriminator\\n   * @local UnionLayoutDiscriminator\\n   * @local Union\\n   * @local VariantLayout\\n   * @local BitStructure\\n   * @local BitField\\n   * @local Boolean\\n   * @local Blob\\n   * @local CString\\n   * @local Constant\\n   * @local bindConstructorLayout\\n   * @module Layout\\n   * @license MIT\\n   * @author Peter A. Bigot\\n   * @see {@link https://github.com/pabigot/buffer-layout|buffer-layout on GitHub}\\n   *)\\n\\nreact-dom/cjs/react-dom-server-legacy.browser.development.js:\\n  (**\\n   * @license React\\n   * react-dom-server-legacy.browser.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\nreact-dom/cjs/react-dom-server.browser.development.js:\\n  (**\\n   * @license React\\n   * react-dom-server.browser.development.js\\n   *\\n   * Copyright (c) Meta Platforms, Inc. and affiliates.\\n   *\\n   * This source code is licensed under the MIT license found in the\\n   * LICENSE file in the root directory of this source tree.\\n   *)\\n\\ncomlink/dist/esm/comlink.mjs:\\n  (**\\n   * @license\\n   * Copyright 2019 Google LLC\\n   * SPDX-License-Identifier: Apache-2.0\\n   *)\\n*/\\n</script></body></html>';\n","import { PAYWALL_TEMPLATE } from \"../paywall/gen/template\";\nimport { config } from \"../types/shared/evm/config\";\nimport { PaymentRequirements } from \"../types/verify\";\n\ninterface PaywallOptions {\n  amount: number;\n  paymentRequirements: PaymentRequirements[];\n  currentUrl: string;\n  testnet: boolean;\n  cdpClientKey?: string;\n  appName?: string;\n  appLogo?: string;\n  sessionTokenEndpoint?: string;\n}\n\n/**\n * Escapes a string for safe injection into JavaScript string literals\n *\n * @param str - The string to escape\n * @returns The escaped string\n */\nfunction escapeString(str: string): string {\n  return str\n    .replace(/\\\\/g, \"\\\\\\\\\")\n    .replace(/\"/g, '\\\\\"')\n    .replace(/'/g, \"\\\\'\")\n    .replace(/\\n/g, \"\\\\n\")\n    .replace(/\\r/g, \"\\\\r\")\n    .replace(/\\t/g, \"\\\\t\");\n}\n\n/**\n * Generates an HTML paywall page that allows users to pay for content access\n *\n * @param options - The options for generating the paywall\n * @param options.amount - The amount to be paid in USD\n * @param options.paymentRequirements - The payment requirements for the content\n * @param options.currentUrl - The URL of the content being accessed\n * @param options.testnet - Whether to use testnet or mainnet\n * @param options.cdpClientKey - CDP client API key for OnchainKit\n * @param options.appName - The name of the application to display in the wallet connection modal\n * @param options.appLogo - The logo of the application to display in the wallet connection modal\n * @param options.sessionTokenEndpoint - The API endpoint for generating session tokens for Onramp authentication\n * @returns An HTML string containing the paywall page\n */\nexport function getPaywallHtml({\n  amount,\n  testnet,\n  paymentRequirements,\n  currentUrl,\n  cdpClientKey,\n  appName,\n  appLogo,\n  sessionTokenEndpoint,\n}: PaywallOptions): string {\n  const logOnTestnet = testnet\n    ? \"console.log('Payment requirements initialized:', window.x402);\"\n    : \"\";\n\n  // Create the configuration script to inject with proper escaping\n  const configScript = `\n  <script>\n    window.x402 = {\n      amount: ${amount},\n      paymentRequirements: ${JSON.stringify(paymentRequirements)},\n      testnet: ${testnet},\n      currentUrl: \"${escapeString(currentUrl)}\",\n      config: {\n        chainConfig: ${JSON.stringify(config)},\n      },\n      cdpClientKey: \"${escapeString(cdpClientKey || \"\")}\",\n      appName: \"${escapeString(appName || \"\")}\",\n      appLogo: \"${escapeString(appLogo || \"\")}\",\n      sessionTokenEndpoint: \"${escapeString(sessionTokenEndpoint || \"\")}\",\n    };\n    ${logOnTestnet}\n  </script>`;\n\n  // Inject the configuration script into the head\n  return PAYWALL_TEMPLATE.replace(\"</head>\", `${configScript}\\n</head>`);\n}\n","/**\n * Encodes a string to base64 format\n *\n * @param data - The string to be encoded to base64\n * @returns The base64 encoded string\n */\nexport function safeBase64Encode(data: string): string {\n  if (typeof globalThis !== \"undefined\" && typeof globalThis.btoa === \"function\") {\n    return globalThis.btoa(data);\n  }\n  return Buffer.from(data).toString(\"base64\");\n}\n\n/**\n * Decodes a base64 string back to its original format\n *\n * @param data - The base64 encoded string to be decoded\n * @returns The decoded string in UTF-8 format\n */\nexport function safeBase64Decode(data: string): string {\n  if (typeof globalThis !== \"undefined\" && typeof globalThis.atob === \"function\") {\n    return globalThis.atob(data);\n  }\n  return Buffer.from(data, \"base64\").toString(\"utf-8\");\n}\n","import { EvmNetworkToChainId, Network } from \"../types/shared\";\n\n/**\n * Converts a network name to its corresponding chain ID\n *\n * @param network - The network name to convert to a chain ID\n * @returns The chain ID for the specified network\n * @throws Error if the network is not supported\n */\nexport function getNetworkId(network: Network): number {\n  if (EvmNetworkToChainId.has(network)) {\n    return EvmNetworkToChainId.get(network)!;\n  }\n  // TODO: Solana\n  throw new Error(`Unsupported network: ${network}`);\n}\n","import { Address, Hex } from \"viem\";\nimport {\n  moneySchema,\n  Network,\n  Price,\n  RouteConfig,\n  RoutePattern,\n  ERC20TokenAmount,\n  PaymentRequirements,\n  PaymentPayload,\n} from \"../types\";\nimport { RoutesConfig } from \"../types\";\nimport { safeBase64Decode } from \"./base64\";\nimport { getUsdcChainConfigForChain } from \"./evm\";\nimport { getNetworkId } from \"./network\";\n\n/**\n * Computes the route patterns for the given routes config\n *\n * @param routes - The routes config to compute the patterns for\n * @returns The route patterns\n */\nexport function computeRoutePatterns(routes: RoutesConfig): RoutePattern[] {\n  const normalizedRoutes = Object.fromEntries(\n    Object.entries(routes).map(([pattern, value]) => [\n      pattern,\n      typeof value === \"string\" || typeof value === \"number\"\n        ? ({ price: value, network: \"base-sepolia\" } as RouteConfig)\n        : (value as RouteConfig),\n    ]),\n  );\n\n  return Object.entries(normalizedRoutes).map(([pattern, routeConfig]) => {\n    // Split pattern into verb and path, defaulting to \"*\" for verb if not specified\n    const [verb, path] = pattern.includes(\" \") ? pattern.split(/\\s+/) : [\"*\", pattern];\n    if (!path) {\n      throw new Error(`Invalid route pattern: ${pattern}`);\n    }\n    return {\n      verb: verb.toUpperCase(),\n      pattern: new RegExp(\n        `^${\n          path\n            .replace(/\\*/g, \".*?\") // Make wildcard non-greedy and optional\n            .replace(/\\[([^\\]]+)\\]/g, \"[^/]+\")\n            .replace(/\\//g, \"\\\\/\") // Keep exact slashes\n        }$`,\n        \"i\",\n      ),\n      config: routeConfig,\n    };\n  });\n}\n\n/**\n * Finds the matching route pattern for the given path and method\n *\n * @param routePatterns - The route patterns to search through\n * @param path - The path to match against\n * @param method - The HTTP method to match against\n * @returns The matching route pattern or undefined if no match is found\n */\nexport function findMatchingRoute(\n  routePatterns: RoutePattern[],\n  path: string,\n  method: string,\n): RoutePattern | undefined {\n  // Normalize the path:\n  // 1. Remove query parameters and hash fragments\n  // 2. Replace backslashes with forward slashes\n  // 3. Replace multiple consecutive slashes with a single slash\n  // 4. Keep trailing slash if path is not root\n  const normalizedPath = path\n    .split(/[?#]/)[0] // Remove query parameters and hash fragments\n    .replace(/\\\\/g, \"/\") // Replace backslashes with forward slashes\n    .replace(/\\/+/g, \"/\") // Replace multiple consecutive slashes with a single slash\n    .replace(/(.+?)\\/+$/, \"$1\"); // Remove trailing slashes except for root path\n\n  // Find matching route pattern\n  const matchingRoutes = routePatterns.filter(({ pattern, verb }) => {\n    const matchesPath = pattern.test(normalizedPath);\n    const matchesVerb = verb === \"*\" || verb === method.toUpperCase();\n    return matchesPath && matchesVerb;\n  });\n\n  if (matchingRoutes.length === 0) {\n    return undefined;\n  }\n\n  // Use the most specific route (longest path pattern)\n  const matchingRoute = matchingRoutes.reduce((a, b) =>\n    b.pattern.source.length > a.pattern.source.length ? b : a,\n  );\n\n  return matchingRoute;\n}\n\n/**\n * Gets the default asset (USDC) for the given network\n *\n * @param network - The network to get the default asset for\n * @returns The default asset\n */\nexport function getDefaultAsset(network: Network) {\n  const chainId = getNetworkId(network);\n  const usdc = getUsdcChainConfigForChain(chainId);\n  if (!usdc) {\n    throw new Error(`Unable to get default asset on ${network}`);\n  }\n  return {\n    address: usdc.usdcAddress,\n    decimals: 6,\n    eip712: {\n      name: usdc.usdcName,\n      version: \"2\",\n    },\n  };\n}\n\n/**\n * Parses the amount from the given price\n *\n * @param price - The price to parse\n * @param network - The network to get the default asset for\n * @returns The parsed amount or an error message\n */\nexport function processPriceToAtomicAmount(\n  price: Price,\n  network: Network,\n): { maxAmountRequired: string; asset: ERC20TokenAmount[\"asset\"] } | { error: string } {\n  // Handle USDC amount (string) or token amount (ERC20TokenAmount)\n  let maxAmountRequired: string;\n  let asset: ERC20TokenAmount[\"asset\"];\n\n  if (typeof price === \"string\" || typeof price === \"number\") {\n    // USDC amount in dollars\n    const parsedAmount = moneySchema.safeParse(price);\n    if (!parsedAmount.success) {\n      return {\n        error: `Invalid price (price: ${price}). Must be in the form \"$3.10\", 0.10, \"0.001\", ${parsedAmount.error}`,\n      };\n    }\n    const parsedUsdAmount = parsedAmount.data;\n    asset = getDefaultAsset(network);\n    maxAmountRequired = (parsedUsdAmount * 10 ** asset.decimals).toString();\n  } else {\n    // Token amount in atomic units\n    maxAmountRequired = price.amount;\n    asset = price.asset;\n  }\n\n  return {\n    maxAmountRequired,\n    asset,\n  };\n}\n\n/**\n * Finds the matching payment requirements for the given payment\n *\n * @param paymentRequirements - The payment requirements to search through\n * @param payment - The payment to match against\n * @returns The matching payment requirements or undefined if no match is found\n */\nexport function findMatchingPaymentRequirements(\n  paymentRequirements: PaymentRequirements[],\n  payment: PaymentPayload,\n) {\n  return paymentRequirements.find(\n    value => value.scheme === payment.scheme && value.network === payment.network,\n  );\n}\n\n/**\n * Decodes the X-PAYMENT-RESPONSE header\n *\n * @param header - The X-PAYMENT-RESPONSE header to decode\n * @returns The decoded payment response\n */\nexport function decodeXPaymentResponse(header: string) {\n  const decoded = safeBase64Decode(header);\n  return JSON.parse(decoded) as {\n    success: boolean;\n    transaction: Hex;\n    network: Network;\n    payer: Address;\n  };\n}\n","import type { Client } from '../clients/createClient.js'\nimport type { PublicActions } from '../clients/decorators/public.js'\nimport type { WalletActions } from '../clients/decorators/wallet.js'\nimport type { Transport } from '../clients/transports/createTransport.js'\nimport type { Account } from '../types/account.js'\nimport type { Chain } from '../types/chain.js'\nimport type { RpcSchema } from '../types/eip1193.js'\n\n/**\n * Retrieves and returns an action from the client (if exists), and falls\n * back to the tree-shakable action.\n *\n * Useful for extracting overridden actions from a client (ie. if a consumer\n * wants to override the `sendTransaction` implementation).\n */\nexport function getAction<\n  transport extends Transport,\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  rpcSchema extends RpcSchema | undefined,\n  extended extends { [key: string]: unknown },\n  client extends Client<transport, chain, account, rpcSchema, extended>,\n  parameters,\n  returnType,\n>(\n  client: client,\n  actionFn: (_: any, parameters: parameters) => returnType,\n  // Some minifiers drop `Function.prototype.name`, or replace it with short letters,\n  // meaning that `actionFn.name` will not always work. For that case, the consumer\n  // needs to pass the name explicitly.\n  name: keyof PublicActions | keyof WalletActions | (string & {}),\n): (parameters: parameters) => returnType {\n  const action_implicit = client[actionFn.name]\n  if (typeof action_implicit === 'function')\n    return action_implicit as (params: parameters) => returnType\n\n  const action_explicit = client[name]\n  if (typeof action_explicit === 'function')\n    return action_explicit as (params: parameters) => returnType\n\n  return (params) => actionFn(client, params)\n}\n","import { BaseError } from './base.js'\n\nexport type FilterTypeNotSupportedErrorType = FilterTypeNotSupportedError & {\n  name: 'FilterTypeNotSupportedError'\n}\nexport class FilterTypeNotSupportedError extends BaseError {\n  constructor(type: string) {\n    super(`Filter type \"${type}\" is not supported.`, {\n      name: 'FilterTypeNotSupportedError',\n    })\n  }\n}\n","import type {\n  Abi,\n  AbiParameter,\n  AbiParameterToPrimitiveType,\n  ExtractAbiEvents,\n} from 'abitype'\n\nimport {\n  AbiEventNotFoundError,\n  type AbiEventNotFoundErrorType,\n} from '../../errors/abi.js'\nimport {\n  FilterTypeNotSupportedError,\n  type FilterTypeNotSupportedErrorType,\n} from '../../errors/log.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type {\n  ContractEventArgs,\n  ContractEventName,\n  EventDefinition,\n} from '../../types/contract.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { IsNarrowable, UnionEvaluate } from '../../types/utils.js'\nimport { type ToBytesErrorType, toBytes } from '../encoding/toBytes.js'\nimport { type Keccak256ErrorType, keccak256 } from '../hash/keccak256.js'\nimport {\n  type ToEventSelectorErrorType,\n  toEventSelector,\n} from '../hash/toEventSelector.js'\nimport {\n  type EncodeAbiParametersErrorType,\n  encodeAbiParameters,\n} from './encodeAbiParameters.js'\nimport { type FormatAbiItemErrorType, formatAbiItem } from './formatAbiItem.js'\nimport { type GetAbiItemErrorType, getAbiItem } from './getAbiItem.js'\n\nconst docsPath = '/docs/contract/encodeEventTopics'\n\nexport type EncodeEventTopicsParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> | undefined = ContractEventName<abi>,\n  ///\n  hasEvents = abi extends Abi\n    ? Abi extends abi\n      ? true\n      : [ExtractAbiEvents<abi>] extends [never]\n        ? false\n        : true\n    : true,\n  allArgs = ContractEventArgs<\n    abi,\n    eventName extends ContractEventName<abi>\n      ? eventName\n      : ContractEventName<abi>\n  >,\n  allErrorNames = ContractEventName<abi>,\n> = {\n  abi: abi\n  args?: allArgs | undefined\n} & UnionEvaluate<\n  IsNarrowable<abi, Abi> extends true\n    ? abi['length'] extends 1\n      ? { eventName?: eventName | allErrorNames | undefined }\n      : { eventName: eventName | allErrorNames }\n    : { eventName?: eventName | allErrorNames | undefined }\n> &\n  (hasEvents extends true ? unknown : never)\n\nexport type EncodeEventTopicsReturnType = [Hex, ...(Hex | Hex[] | null)[]]\n\nexport type EncodeEventTopicsErrorType =\n  | AbiEventNotFoundErrorType\n  | EncodeArgErrorType\n  | FormatAbiItemErrorType\n  | GetAbiItemErrorType\n  | ToEventSelectorErrorType\n  | ErrorType\n\nexport function encodeEventTopics<\n  const abi extends Abi | readonly unknown[],\n  eventName extends ContractEventName<abi> | undefined = undefined,\n>(\n  parameters: EncodeEventTopicsParameters<abi, eventName>,\n): EncodeEventTopicsReturnType {\n  const { abi, eventName, args } = parameters as EncodeEventTopicsParameters\n\n  let abiItem = abi[0]\n  if (eventName) {\n    const item = getAbiItem({ abi, name: eventName })\n    if (!item) throw new AbiEventNotFoundError(eventName, { docsPath })\n    abiItem = item\n  }\n\n  if (abiItem.type !== 'event')\n    throw new AbiEventNotFoundError(undefined, { docsPath })\n\n  const definition = formatAbiItem(abiItem)\n  const signature = toEventSelector(definition as EventDefinition)\n\n  let topics: (Hex | Hex[] | null)[] = []\n  if (args && 'inputs' in abiItem) {\n    const indexedInputs = abiItem.inputs?.filter(\n      (param) => 'indexed' in param && param.indexed,\n    )\n    const args_ = Array.isArray(args)\n      ? args\n      : Object.values(args).length > 0\n        ? (indexedInputs?.map((x: any) => (args as any)[x.name]) ?? [])\n        : []\n\n    if (args_.length > 0) {\n      topics =\n        indexedInputs?.map((param, i) => {\n          if (Array.isArray(args_[i]))\n            return args_[i].map((_: any, j: number) =>\n              encodeArg({ param, value: args_[i][j] }),\n            )\n          return typeof args_[i] !== 'undefined' && args_[i] !== null\n            ? encodeArg({ param, value: args_[i] })\n            : null\n        }) ?? []\n    }\n  }\n  return [signature, ...topics]\n}\n\nexport type EncodeArgErrorType =\n  | Keccak256ErrorType\n  | ToBytesErrorType\n  | EncodeAbiParametersErrorType\n  | FilterTypeNotSupportedErrorType\n  | ErrorType\n\nfunction encodeArg({\n  param,\n  value,\n}: { param: AbiParameter; value: AbiParameterToPrimitiveType<AbiParameter> }) {\n  if (param.type === 'string' || param.type === 'bytes')\n    return keccak256(toBytes(value as string))\n  if (param.type === 'tuple' || param.type.match(/^(.*)\\[(\\d+)?\\]$/))\n    throw new FilterTypeNotSupportedError(param.type)\n  return encodeAbiParameters([param], [value])\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { OnResponseFn } from '../../clients/transports/fallback.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { PublicRpcSchema } from '../../types/eip1193.js'\nimport type { EIP1193RequestFn } from '../../types/eip1193.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { Filter } from '../../types/utils.js'\n\ntype CreateFilterRequestScopeParameters = {\n  method:\n    | 'eth_newFilter'\n    | 'eth_newPendingTransactionFilter'\n    | 'eth_newBlockFilter'\n}\n\ntype FilterRpcSchema = Filter<\n  PublicRpcSchema,\n  { Method: 'eth_getFilterLogs' | 'eth_getFilterChanges' }\n>\n\ntype CreateFilterRequestScopeReturnType = (\n  id: Hex,\n) => EIP1193RequestFn<FilterRpcSchema>\n\n/**\n * Scopes `request` to the filter ID. If the client is a fallback, it will\n * listen for responses and scope the child transport `request` function\n * to the successful filter ID.\n */\nexport function createFilterRequestScope<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  { method }: CreateFilterRequestScopeParameters,\n): CreateFilterRequestScopeReturnType {\n  const requestMap: Record<Hex, EIP1193RequestFn> = {}\n\n  if (client.transport.type === 'fallback')\n    client.transport.onResponse?.(\n      ({\n        method: method_,\n        response: id,\n        status,\n        transport,\n      }: Parameters<OnResponseFn>[0]) => {\n        if (status === 'success' && method === method_)\n          requestMap[id as Hex] = transport.request\n      },\n    )\n\n  return ((id) =>\n    requestMap[id] || client.request) as CreateFilterRequestScopeReturnType\n}\n","import type { Abi, Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockNumber, BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ContractEventName,\n  MaybeExtractEventArgsFromAbi,\n} from '../../types/contract.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { Hex } from '../../types/misc.js'\nimport {\n  type EncodeEventTopicsErrorType,\n  type EncodeEventTopicsParameters,\n  encodeEventTopics,\n} from '../../utils/abi/encodeEventTopics.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport { createFilterRequestScope } from '../../utils/filters/createFilterRequestScope.js'\n\nexport type CreateContractEventFilterParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> | undefined = undefined,\n  args extends\n    | MaybeExtractEventArgsFromAbi<abi, eventName>\n    | undefined = undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n> = {\n  address?: Address | Address[] | undefined\n  abi: abi\n  eventName?: eventName | ContractEventName<abi> | undefined\n  fromBlock?: fromBlock | BlockNumber | BlockTag | undefined\n  /**\n   * Whether or not the logs must match the indexed/non-indexed arguments in the event ABI item.\n   * @default false\n   */\n  strict?: strict | boolean | undefined\n  toBlock?: toBlock | BlockNumber | BlockTag | undefined\n} & (undefined extends eventName\n  ? {\n      args?: undefined\n    }\n  : MaybeExtractEventArgsFromAbi<abi, eventName> extends infer eventFilterArgs\n    ? {\n        args?:\n          | eventFilterArgs\n          | (args extends eventFilterArgs ? args : never)\n          | undefined\n      }\n    : {\n        args?: undefined\n      })\n\nexport type CreateContractEventFilterReturnType<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> | undefined = undefined,\n  args extends\n    | MaybeExtractEventArgsFromAbi<abi, eventName>\n    | undefined = undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n> = Filter<'event', abi, eventName, args, strict, fromBlock, toBlock>\n\nexport type CreateContractEventFilterErrorType =\n  | EncodeEventTopicsErrorType\n  | RequestErrorType\n  | NumberToHexErrorType\n  | ErrorType\n\n/**\n * Creates a Filter to retrieve event logs that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges) or [`getFilterLogs`](https://viem.sh/docs/actions/public/getFilterLogs).\n *\n * - Docs: https://viem.sh/docs/contract/createContractEventFilter\n *\n * @param client - Client to use\n * @param parameters - {@link CreateContractEventFilterParameters}\n * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateContractEventFilterReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createContractEventFilter } from 'viem/contract'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createContractEventFilter(client, {\n *   abi: parseAbi(['event Transfer(address indexed, address indexed, uint256)']),\n * })\n */\nexport async function createContractEventFilter<\n  chain extends Chain | undefined,\n  const abi extends Abi | readonly unknown[],\n  eventName extends ContractEventName<abi> | undefined,\n  args extends MaybeExtractEventArgsFromAbi<abi, eventName> | undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n>(\n  client: Client<Transport, chain>,\n  parameters: CreateContractEventFilterParameters<\n    abi,\n    eventName,\n    args,\n    strict,\n    fromBlock,\n    toBlock\n  >,\n): Promise<\n  CreateContractEventFilterReturnType<\n    abi,\n    eventName,\n    args,\n    strict,\n    fromBlock,\n    toBlock\n  >\n> {\n  const { address, abi, args, eventName, fromBlock, strict, toBlock } =\n    parameters as CreateContractEventFilterParameters\n\n  const getRequest = createFilterRequestScope(client, {\n    method: 'eth_newFilter',\n  })\n\n  const topics = eventName\n    ? encodeEventTopics({\n        abi,\n        args,\n        eventName,\n      } as unknown as EncodeEventTopicsParameters)\n    : undefined\n  const id: Hex = await client.request({\n    method: 'eth_newFilter',\n    params: [\n      {\n        address,\n        fromBlock:\n          typeof fromBlock === 'bigint' ? numberToHex(fromBlock) : fromBlock,\n        toBlock: typeof toBlock === 'bigint' ? numberToHex(toBlock) : toBlock,\n        topics,\n      },\n    ],\n  })\n\n  return {\n    abi,\n    args,\n    eventName,\n    id,\n    request: getRequest(id),\n    strict: Boolean(strict),\n    type: 'event',\n  } as unknown as CreateContractEventFilterReturnType<\n    abi,\n    eventName,\n    args,\n    strict,\n    fromBlock,\n    toBlock\n  >\n}\n","import type { Abi, Address } from 'abitype'\n\nimport { AbiDecodingZeroDataError } from '../../errors/abi.js'\nimport { BaseError } from '../../errors/base.js'\nimport {\n  ContractFunctionExecutionError,\n  type ContractFunctionExecutionErrorType,\n  ContractFunctionRevertedError,\n  type ContractFunctionRevertedErrorType,\n  ContractFunctionZeroDataError,\n  type ContractFunctionZeroDataErrorType,\n  RawContractError,\n} from '../../errors/contract.js'\nimport { RpcRequestError } from '../../errors/request.js'\nimport { InternalRpcError } from '../../errors/rpc.js'\nimport type { ErrorType } from '../../errors/utils.js'\n\nconst EXECUTION_REVERTED_ERROR_CODE = 3\n\nexport type GetContractErrorReturnType<cause = ErrorType> = Omit<\n  ContractFunctionExecutionErrorType,\n  'cause'\n> & {\n  cause:\n    | cause\n    | ContractFunctionZeroDataErrorType\n    | ContractFunctionRevertedErrorType\n}\n\nexport function getContractError<err extends ErrorType<string>>(\n  err: err,\n  {\n    abi,\n    address,\n    args,\n    docsPath,\n    functionName,\n    sender,\n  }: {\n    abi: Abi\n    args: any\n    address?: Address | undefined\n    docsPath?: string | undefined\n    functionName: string\n    sender?: Address | undefined\n  },\n): GetContractErrorReturnType {\n  const error = (\n    err instanceof RawContractError\n      ? err\n      : err instanceof BaseError\n        ? err.walk((err) => 'data' in (err as Error)) || err.walk()\n        : {}\n  ) as BaseError\n  const { code, data, details, message, shortMessage } =\n    error as RawContractError\n\n  const cause = (() => {\n    if (err instanceof AbiDecodingZeroDataError)\n      return new ContractFunctionZeroDataError({ functionName })\n    if (\n      [EXECUTION_REVERTED_ERROR_CODE, InternalRpcError.code].includes(code) &&\n      (data || details || message || shortMessage)\n    ) {\n      return new ContractFunctionRevertedError({\n        abi,\n        data: typeof data === 'object' ? data.data : data,\n        functionName,\n        message:\n          error instanceof RpcRequestError\n            ? details\n            : (shortMessage ?? message),\n      })\n    }\n    return err\n  })()\n\n  return new ContractFunctionExecutionError(cause as BaseError, {\n    abi,\n    args,\n    contractAddress: address,\n    docsPath,\n    functionName,\n    sender,\n  }) as GetContractErrorReturnType\n}\n","import type { Address } from 'abitype'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\nimport {\n  type ChecksumAddressErrorType,\n  checksumAddress,\n} from '../../utils/address/getAddress.js'\nimport {\n  type Keccak256ErrorType,\n  keccak256,\n} from '../../utils/hash/keccak256.js'\n\nexport type PublicKeyToAddressErrorType =\n  | ChecksumAddressErrorType\n  | Keccak256ErrorType\n  | ErrorType\n\n/**\n * @description Converts an ECDSA public key to an address.\n *\n * @param publicKey The public key to convert.\n *\n * @returns The address.\n */\nexport function publicKeyToAddress(publicKey: Hex): Address {\n  const address = keccak256(`0x${publicKey.substring(4)}`).substring(26)\n  return checksumAddress(`0x${address}`) as Address\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex, Signature } from '../../types/misc.js'\nimport { type IsHexErrorType, isHex } from '../data/isHex.js'\nimport { size } from '../data/size.js'\nimport {\n  type HexToNumberErrorType,\n  hexToBigInt,\n  hexToNumber,\n} from '../encoding/fromHex.js'\nimport { toHex } from '../encoding/toHex.js'\n\nexport type RecoverPublicKeyParameters = {\n  hash: Hex | ByteArray\n  signature: Hex | ByteArray | Signature\n}\n\nexport type RecoverPublicKeyReturnType = Hex\n\nexport type RecoverPublicKeyErrorType =\n  | HexToNumberErrorType\n  | IsHexErrorType\n  | ErrorType\n\nexport async function recoverPublicKey({\n  hash,\n  signature,\n}: RecoverPublicKeyParameters): Promise<RecoverPublicKeyReturnType> {\n  const hashHex = isHex(hash) ? hash : toHex(hash)\n\n  const { secp256k1 } = await import('@noble/curves/secp256k1')\n  const signature_ = (() => {\n    // typeof signature: `Signature`\n    if (typeof signature === 'object' && 'r' in signature && 's' in signature) {\n      const { r, s, v, yParity } = signature\n      const yParityOrV = Number(yParity ?? v)!\n      const recoveryBit = toRecoveryBit(yParityOrV)\n      return new secp256k1.Signature(\n        hexToBigInt(r),\n        hexToBigInt(s),\n      ).addRecoveryBit(recoveryBit)\n    }\n\n    // typeof signature: `Hex | ByteArray`\n    const signatureHex = isHex(signature) ? signature : toHex(signature)\n    if (size(signatureHex) !== 65) throw new Error('invalid signature length')\n    const yParityOrV = hexToNumber(`0x${signatureHex.slice(130)}`)\n    const recoveryBit = toRecoveryBit(yParityOrV)\n    return secp256k1.Signature.fromCompact(\n      signatureHex.substring(2, 130),\n    ).addRecoveryBit(recoveryBit)\n  })()\n\n  const publicKey = signature_\n    .recoverPublicKey(hashHex.substring(2))\n    .toHex(false)\n  return `0x${publicKey}`\n}\n\nfunction toRecoveryBit(yParityOrV: number) {\n  if (yParityOrV === 0 || yParityOrV === 1) return yParityOrV\n  if (yParityOrV === 27) return 0\n  if (yParityOrV === 28) return 1\n  throw new Error('Invalid yParityOrV value')\n}\n","import type { Address } from 'abitype'\n\nimport { publicKeyToAddress } from '../../accounts/utils/publicKeyToAddress.js'\nimport type { ByteArray, Hex, Signature } from '../../types/misc.js'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport { recoverPublicKey } from './recoverPublicKey.js'\n\nexport type RecoverAddressParameters = {\n  hash: Hex | ByteArray\n  signature: Hex | ByteArray | Signature\n}\n\nexport type RecoverAddressReturnType = Address\n\nexport type RecoverAddressErrorType = ErrorType\n\nexport async function recoverAddress({\n  hash,\n  signature,\n}: RecoverAddressParameters): Promise<RecoverAddressReturnType> {\n  return publicKeyToAddress(await recoverPublicKey({ hash, signature }))\n}\n","import { BaseError } from '../../errors/base.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport {\n  type CreateCursorErrorType,\n  type Cursor,\n  createCursor,\n} from '../cursor.js'\n\nimport { type HexToBytesErrorType, hexToBytes } from './toBytes.js'\nimport { type BytesToHexErrorType, bytesToHex } from './toHex.js'\n\nexport type RecursiveArray<T> = T | readonly RecursiveArray<T>[]\n\ntype To = 'hex' | 'bytes'\n\ntype Encodable = {\n  length: number\n  encode(cursor: Cursor): void\n}\n\nexport type ToRlpReturnType<to extends To> =\n  | (to extends 'bytes' ? ByteArray : never)\n  | (to extends 'hex' ? Hex : never)\n\nexport type ToRlpErrorType =\n  | CreateCursorErrorType\n  | BytesToHexErrorType\n  | HexToBytesErrorType\n  | ErrorType\n\nexport function toRlp<to extends To = 'hex'>(\n  bytes: RecursiveArray<ByteArray> | RecursiveArray<Hex>,\n  to: to | To | undefined = 'hex',\n): ToRlpReturnType<to> {\n  const encodable = getEncodable(bytes)\n  const cursor = createCursor(new Uint8Array(encodable.length))\n  encodable.encode(cursor)\n\n  if (to === 'hex') return bytesToHex(cursor.bytes) as ToRlpReturnType<to>\n  return cursor.bytes as ToRlpReturnType<to>\n}\n\nexport type BytesToRlpErrorType = ToRlpErrorType | ErrorType\n\nexport function bytesToRlp<to extends To = 'bytes'>(\n  bytes: RecursiveArray<ByteArray>,\n  to: to | To | undefined = 'bytes',\n): ToRlpReturnType<to> {\n  return toRlp(bytes, to)\n}\n\nexport type HexToRlpErrorType = ToRlpErrorType | ErrorType\n\nexport function hexToRlp<to extends To = 'hex'>(\n  hex: RecursiveArray<Hex>,\n  to: to | To | undefined = 'hex',\n): ToRlpReturnType<to> {\n  return toRlp(hex, to)\n}\n\nfunction getEncodable(\n  bytes: RecursiveArray<ByteArray> | RecursiveArray<Hex>,\n): Encodable {\n  if (Array.isArray(bytes))\n    return getEncodableList(bytes.map((x) => getEncodable(x)))\n  return getEncodableBytes(bytes as any)\n}\n\nfunction getEncodableList(list: Encodable[]): Encodable {\n  const bodyLength = list.reduce((acc, x) => acc + x.length, 0)\n\n  const sizeOfBodyLength = getSizeOfLength(bodyLength)\n  const length = (() => {\n    if (bodyLength <= 55) return 1 + bodyLength\n    return 1 + sizeOfBodyLength + bodyLength\n  })()\n\n  return {\n    length,\n    encode(cursor: Cursor) {\n      if (bodyLength <= 55) {\n        cursor.pushByte(0xc0 + bodyLength)\n      } else {\n        cursor.pushByte(0xc0 + 55 + sizeOfBodyLength)\n        if (sizeOfBodyLength === 1) cursor.pushUint8(bodyLength)\n        else if (sizeOfBodyLength === 2) cursor.pushUint16(bodyLength)\n        else if (sizeOfBodyLength === 3) cursor.pushUint24(bodyLength)\n        else cursor.pushUint32(bodyLength)\n      }\n      for (const { encode } of list) {\n        encode(cursor)\n      }\n    },\n  }\n}\n\nfunction getEncodableBytes(bytesOrHex: ByteArray | Hex): Encodable {\n  const bytes =\n    typeof bytesOrHex === 'string' ? hexToBytes(bytesOrHex) : bytesOrHex\n\n  const sizeOfBytesLength = getSizeOfLength(bytes.length)\n  const length = (() => {\n    if (bytes.length === 1 && bytes[0] < 0x80) return 1\n    if (bytes.length <= 55) return 1 + bytes.length\n    return 1 + sizeOfBytesLength + bytes.length\n  })()\n\n  return {\n    length,\n    encode(cursor: Cursor) {\n      if (bytes.length === 1 && bytes[0] < 0x80) {\n        cursor.pushBytes(bytes)\n      } else if (bytes.length <= 55) {\n        cursor.pushByte(0x80 + bytes.length)\n        cursor.pushBytes(bytes)\n      } else {\n        cursor.pushByte(0x80 + 55 + sizeOfBytesLength)\n        if (sizeOfBytesLength === 1) cursor.pushUint8(bytes.length)\n        else if (sizeOfBytesLength === 2) cursor.pushUint16(bytes.length)\n        else if (sizeOfBytesLength === 3) cursor.pushUint24(bytes.length)\n        else cursor.pushUint32(bytes.length)\n        cursor.pushBytes(bytes)\n      }\n    },\n  }\n}\n\nfunction getSizeOfLength(length: number) {\n  if (length < 2 ** 8) return 1\n  if (length < 2 ** 16) return 2\n  if (length < 2 ** 24) return 3\n  if (length < 2 ** 32) return 4\n  throw new BaseError('Length is too large.')\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { AuthorizationRequest } from '../../types/authorization.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport { type ConcatHexErrorType, concatHex } from '../data/concat.js'\nimport { type HexToBytesErrorType, hexToBytes } from '../encoding/toBytes.js'\nimport { type NumberToHexErrorType, numberToHex } from '../encoding/toHex.js'\nimport { type ToRlpErrorType, toRlp } from '../encoding/toRlp.js'\nimport { type Keccak256ErrorType, keccak256 } from '../hash/keccak256.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type HashAuthorizationParameters<to extends To> =\n  AuthorizationRequest & {\n    /** Output format. @default \"hex\" */\n    to?: to | To | undefined\n  }\n\nexport type HashAuthorizationReturnType<to extends To> =\n  | (to extends 'bytes' ? ByteArray : never)\n  | (to extends 'hex' ? Hex : never)\n\nexport type HashAuthorizationErrorType =\n  | Keccak256ErrorType\n  | ConcatHexErrorType\n  | ToRlpErrorType\n  | NumberToHexErrorType\n  | HexToBytesErrorType\n  | ErrorType\n\n/**\n * Computes an Authorization hash in [EIP-7702 format](https://eips.ethereum.org/EIPS/eip-7702): `keccak256('0x05' || rlp([chain_id, address, nonce]))`.\n */\nexport function hashAuthorization<to extends To = 'hex'>(\n  parameters: HashAuthorizationParameters<to>,\n): HashAuthorizationReturnType<to> {\n  const { chainId, nonce, to } = parameters\n  const address = parameters.contractAddress ?? parameters.address\n  const hash = keccak256(\n    concatHex([\n      '0x05',\n      toRlp([\n        chainId ? numberToHex(chainId) : '0x',\n        address,\n        nonce ? numberToHex(nonce) : '0x',\n      ]),\n    ]),\n  )\n  if (to === 'bytes') return hexToBytes(hash) as HashAuthorizationReturnType<to>\n  return hash as HashAuthorizationReturnType<to>\n}\n","import type { Address } from 'abitype'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport type {\n  Authorization,\n  AuthorizationRequest,\n  SignedAuthorization,\n} from '../../types/authorization.js'\nimport type { ByteArray, Hex, Signature } from '../../types/misc.js'\nimport type { OneOf } from '../../types/utils.js'\nimport {\n  type RecoverAddressErrorType,\n  recoverAddress,\n} from '../signature/recoverAddress.js'\nimport {\n  type HashAuthorizationErrorType,\n  hashAuthorization,\n} from './hashAuthorization.js'\n\nexport type RecoverAuthorizationAddressParameters<\n  authorization extends OneOf<\n    Authorization | AuthorizationRequest | SignedAuthorization\n  > = OneOf<Authorization | AuthorizationRequest | SignedAuthorization>,\n  //\n  _signature = Hex | ByteArray | OneOf<Signature | SignedAuthorization>,\n> = {\n  /**\n   * The Authorization object.\n   *\n   * - If an unsigned `authorization` is provided, the `signature` property is required.\n   * - If a signed `authorization` is provided, the `signature` property does not need to be provided.\n   */\n  authorization:\n    | authorization\n    | OneOf<Authorization | AuthorizationRequest | SignedAuthorization>\n} & (authorization extends SignedAuthorization\n  ? {\n      /** Signature of the Authorization. Not required if the `authorization` is signed. */\n      signature?: _signature | undefined\n    }\n  : {\n      /** Signature of the Authorization. Not required if the `authorization` is signed. */\n      signature: _signature\n    })\n\nexport type RecoverAuthorizationAddressReturnType = Address\n\nexport type RecoverAuthorizationAddressErrorType =\n  | HashAuthorizationErrorType\n  | RecoverAddressErrorType\n  | ErrorType\n\nexport async function recoverAuthorizationAddress<\n  const authorization extends OneOf<\n    Authorization | AuthorizationRequest | SignedAuthorization\n  >,\n>(\n  parameters: RecoverAuthorizationAddressParameters<authorization>,\n): Promise<RecoverAuthorizationAddressReturnType> {\n  const { authorization, signature } = parameters\n\n  return recoverAddress({\n    hash: hashAuthorization(authorization as AuthorizationRequest),\n    signature: (signature ?? authorization) as Signature,\n  })\n}\n","import type { Account } from '../accounts/types.js'\nimport type { EstimateGasParameters } from '../actions/public/estimateGas.js'\nimport type { Chain } from '../types/chain.js'\nimport { formatEther } from '../utils/unit/formatEther.js'\nimport { formatGwei } from '../utils/unit/formatGwei.js'\n\nimport { BaseError } from './base.js'\nimport { prettyPrint } from './transaction.js'\n\nexport type EstimateGasExecutionErrorType = EstimateGasExecutionError & {\n  name: 'EstimateGasExecutionError'\n}\nexport class EstimateGasExecutionError extends BaseError {\n  override cause: BaseError\n\n  constructor(\n    cause: BaseError,\n    {\n      account,\n      docsPath,\n      chain,\n      data,\n      gas,\n      gasPrice,\n      maxFeePerGas,\n      maxPriorityFeePerGas,\n      nonce,\n      to,\n      value,\n    }: Omit<EstimateGasParameters<any>, 'account'> & {\n      account?: Account | undefined\n      chain?: Chain | undefined\n      docsPath?: string | undefined\n    },\n  ) {\n    const prettyArgs = prettyPrint({\n      from: account?.address,\n      to,\n      value:\n        typeof value !== 'undefined' &&\n        `${formatEther(value)} ${chain?.nativeCurrency?.symbol || 'ETH'}`,\n      data,\n      gas,\n      gasPrice:\n        typeof gasPrice !== 'undefined' && `${formatGwei(gasPrice)} gwei`,\n      maxFeePerGas:\n        typeof maxFeePerGas !== 'undefined' &&\n        `${formatGwei(maxFeePerGas)} gwei`,\n      maxPriorityFeePerGas:\n        typeof maxPriorityFeePerGas !== 'undefined' &&\n        `${formatGwei(maxPriorityFeePerGas)} gwei`,\n      nonce,\n    })\n\n    super(cause.shortMessage, {\n      cause,\n      docsPath,\n      metaMessages: [\n        ...(cause.metaMessages ? [...cause.metaMessages, ' '] : []),\n        'Estimate Gas Arguments:',\n        prettyArgs,\n      ].filter(Boolean) as string[],\n      name: 'EstimateGasExecutionError',\n    })\n    this.cause = cause\n  }\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { EstimateGasParameters } from '../../actions/public/estimateGas.js'\nimport type { BaseError } from '../../errors/base.js'\nimport {\n  EstimateGasExecutionError,\n  type EstimateGasExecutionErrorType,\n} from '../../errors/estimateGas.js'\nimport { UnknownNodeError } from '../../errors/node.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\n\nimport {\n  type GetNodeErrorParameters,\n  type GetNodeErrorReturnType,\n  getNodeError,\n} from './getNodeError.js'\n\nexport type GetEstimateGasErrorReturnType<cause = ErrorType> = Omit<\n  EstimateGasExecutionErrorType,\n  'cause'\n> & { cause: cause | GetNodeErrorReturnType }\n\nexport function getEstimateGasError<err extends ErrorType<string>>(\n  err: err,\n  {\n    docsPath,\n    ...args\n  }: Omit<EstimateGasParameters, 'account'> & {\n    account?: Account | undefined\n    chain?: Chain | undefined\n    docsPath?: string | undefined\n  },\n): GetEstimateGasErrorReturnType<err> {\n  const cause = (() => {\n    const cause = getNodeError(\n      err as {} as BaseError,\n      args as GetNodeErrorParameters,\n    )\n    if (cause instanceof UnknownNodeError) return err as {} as BaseError\n    return cause\n  })()\n  return new EstimateGasExecutionError(cause, {\n    docsPath,\n    ...args,\n  }) as GetEstimateGasErrorReturnType<err>\n}\n","import { formatGwei } from '../utils/unit/formatGwei.js'\nimport { BaseError } from './base.js'\n\nexport type BaseFeeScalarErrorType = BaseFeeScalarError & {\n  name: 'BaseFeeScalarError'\n}\nexport class BaseFeeScalarError extends BaseError {\n  constructor() {\n    super('`baseFeeMultiplier` must be greater than 1.', {\n      name: 'BaseFeeScalarError',\n    })\n  }\n}\n\nexport type Eip1559FeesNotSupportedErrorType = Eip1559FeesNotSupportedError & {\n  name: 'Eip1559FeesNotSupportedError'\n}\nexport class Eip1559FeesNotSupportedError extends BaseError {\n  constructor() {\n    super('Chain does not support EIP-1559 fees.', {\n      name: 'Eip1559FeesNotSupportedError',\n    })\n  }\n}\n\nexport type MaxFeePerGasTooLowErrorType = MaxFeePerGasTooLowError & {\n  name: 'MaxFeePerGasTooLowError'\n}\nexport class MaxFeePerGasTooLowError extends BaseError {\n  constructor({ maxPriorityFeePerGas }: { maxPriorityFeePerGas: bigint }) {\n    super(\n      `\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${formatGwei(\n        maxPriorityFeePerGas,\n      )} gwei).`,\n      { name: 'MaxFeePerGasTooLowError' },\n    )\n  }\n}\n","import type { Hash } from '../types/misc.js'\n\nimport { BaseError } from './base.js'\n\nexport type BlockNotFoundErrorType = BlockNotFoundError & {\n  name: 'BlockNotFoundError'\n}\nexport class BlockNotFoundError extends BaseError {\n  constructor({\n    blockHash,\n    blockNumber,\n  }: {\n    blockHash?: Hash | undefined\n    blockNumber?: bigint | undefined\n  }) {\n    let identifier = 'Block'\n    if (blockHash) identifier = `Block at hash \"${blockHash}\"`\n    if (blockNumber) identifier = `Block at number \"${blockNumber}\"`\n    super(`${identifier} could not be found.`, { name: 'BlockNotFoundError' })\n  }\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { SignedAuthorizationList } from '../../types/authorization.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ExtractChainFormatterExclude,\n  ExtractChainFormatterReturnType,\n} from '../../types/chain.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { RpcAuthorizationList, RpcTransaction } from '../../types/rpc.js'\nimport type { Transaction, TransactionType } from '../../types/transaction.js'\nimport type { ExactPartial, UnionLooseOmit } from '../../types/utils.js'\nimport { hexToNumber } from '../encoding/fromHex.js'\nimport { type DefineFormatterErrorType, defineFormatter } from './formatter.js'\n\ntype TransactionPendingDependencies =\n  | 'blockHash'\n  | 'blockNumber'\n  | 'transactionIndex'\n\nexport type FormattedTransaction<\n  chain extends Chain | undefined = undefined,\n  blockTag extends BlockTag = BlockTag,\n  _FormatterReturnType = ExtractChainFormatterReturnType<\n    chain,\n    'transaction',\n    Transaction\n  >,\n  _ExcludedPendingDependencies extends string = TransactionPendingDependencies &\n    ExtractChainFormatterExclude<chain, 'transaction'>,\n> = UnionLooseOmit<_FormatterReturnType, TransactionPendingDependencies> & {\n  [_K in _ExcludedPendingDependencies]: never\n} & Pick<\n    Transaction<bigint, number, blockTag extends 'pending' ? true : false>,\n    TransactionPendingDependencies\n  >\n\nexport const transactionType = {\n  '0x0': 'legacy',\n  '0x1': 'eip2930',\n  '0x2': 'eip1559',\n  '0x3': 'eip4844',\n  '0x4': 'eip7702',\n} as const satisfies Record<Hex, TransactionType>\n\nexport type FormatTransactionErrorType = ErrorType\n\nexport function formatTransaction(transaction: ExactPartial<RpcTransaction>) {\n  const transaction_ = {\n    ...transaction,\n    blockHash: transaction.blockHash ? transaction.blockHash : null,\n    blockNumber: transaction.blockNumber\n      ? BigInt(transaction.blockNumber)\n      : null,\n    chainId: transaction.chainId ? hexToNumber(transaction.chainId) : undefined,\n    gas: transaction.gas ? BigInt(transaction.gas) : undefined,\n    gasPrice: transaction.gasPrice ? BigInt(transaction.gasPrice) : undefined,\n    maxFeePerBlobGas: transaction.maxFeePerBlobGas\n      ? BigInt(transaction.maxFeePerBlobGas)\n      : undefined,\n    maxFeePerGas: transaction.maxFeePerGas\n      ? BigInt(transaction.maxFeePerGas)\n      : undefined,\n    maxPriorityFeePerGas: transaction.maxPriorityFeePerGas\n      ? BigInt(transaction.maxPriorityFeePerGas)\n      : undefined,\n    nonce: transaction.nonce ? hexToNumber(transaction.nonce) : undefined,\n    to: transaction.to ? transaction.to : null,\n    transactionIndex: transaction.transactionIndex\n      ? Number(transaction.transactionIndex)\n      : null,\n    type: transaction.type\n      ? (transactionType as any)[transaction.type]\n      : undefined,\n    typeHex: transaction.type ? transaction.type : undefined,\n    value: transaction.value ? BigInt(transaction.value) : undefined,\n    v: transaction.v ? BigInt(transaction.v) : undefined,\n  } as Transaction\n\n  if (transaction.authorizationList)\n    transaction_.authorizationList = formatAuthorizationList(\n      transaction.authorizationList,\n    )\n\n  transaction_.yParity = (() => {\n    // If `yParity` is provided, we will use it.\n    if (transaction.yParity) return Number(transaction.yParity)\n\n    // If no `yParity` provided, try derive from `v`.\n    if (typeof transaction_.v === 'bigint') {\n      if (transaction_.v === 0n || transaction_.v === 27n) return 0\n      if (transaction_.v === 1n || transaction_.v === 28n) return 1\n      if (transaction_.v >= 35n) return transaction_.v % 2n === 0n ? 1 : 0\n    }\n\n    return undefined\n  })()\n\n  if (transaction_.type === 'legacy') {\n    delete transaction_.accessList\n    delete transaction_.maxFeePerBlobGas\n    delete transaction_.maxFeePerGas\n    delete transaction_.maxPriorityFeePerGas\n    delete transaction_.yParity\n  }\n  if (transaction_.type === 'eip2930') {\n    delete transaction_.maxFeePerBlobGas\n    delete transaction_.maxFeePerGas\n    delete transaction_.maxPriorityFeePerGas\n  }\n  if (transaction_.type === 'eip1559') {\n    delete transaction_.maxFeePerBlobGas\n  }\n  return transaction_\n}\n\nexport type DefineTransactionErrorType = DefineFormatterErrorType | ErrorType\n\nexport const defineTransaction = /*#__PURE__*/ defineFormatter(\n  'transaction',\n  formatTransaction,\n)\n\n//////////////////////////////////////////////////////////////////////////////\n\nfunction formatAuthorizationList(\n  authorizationList: RpcAuthorizationList,\n): SignedAuthorizationList {\n  return authorizationList.map((authorization) => ({\n    address: (authorization as any).address,\n    chainId: Number(authorization.chainId),\n    nonce: Number(authorization.nonce),\n    r: authorization.r,\n    s: authorization.s,\n    yParity: Number(authorization.yParity),\n  })) as SignedAuthorizationList\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Block, BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ExtractChainFormatterExclude,\n  ExtractChainFormatterReturnType,\n} from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { RpcBlock } from '../../types/rpc.js'\nimport type { ExactPartial, Prettify } from '../../types/utils.js'\n\nimport { type DefineFormatterErrorType, defineFormatter } from './formatter.js'\nimport { type FormattedTransaction, formatTransaction } from './transaction.js'\n\ntype BlockPendingDependencies = 'hash' | 'logsBloom' | 'nonce' | 'number'\n\nexport type FormattedBlock<\n  chain extends Chain | undefined = undefined,\n  includeTransactions extends boolean = boolean,\n  blockTag extends BlockTag = BlockTag,\n  _FormatterReturnType = ExtractChainFormatterReturnType<\n    chain,\n    'block',\n    Block<bigint, includeTransactions>\n  >,\n  _ExcludedPendingDependencies extends string = BlockPendingDependencies &\n    ExtractChainFormatterExclude<chain, 'block'>,\n  _Formatted = Omit<_FormatterReturnType, BlockPendingDependencies> & {\n    [_key in _ExcludedPendingDependencies]: never\n  } & Pick<\n      Block<bigint, includeTransactions, blockTag>,\n      BlockPendingDependencies\n    >,\n  _Transactions = includeTransactions extends true\n    ? Prettify<FormattedTransaction<chain, blockTag>>[]\n    : Hash[],\n> = Omit<_Formatted, 'transactions'> & {\n  transactions: _Transactions\n}\n\nexport type FormatBlockErrorType = ErrorType\n\nexport function formatBlock(block: ExactPartial<RpcBlock>) {\n  const transactions = (block.transactions ?? []).map((transaction) => {\n    if (typeof transaction === 'string') return transaction\n    return formatTransaction(transaction)\n  })\n  return {\n    ...block,\n    baseFeePerGas: block.baseFeePerGas ? BigInt(block.baseFeePerGas) : null,\n    blobGasUsed: block.blobGasUsed ? BigInt(block.blobGasUsed) : undefined,\n    difficulty: block.difficulty ? BigInt(block.difficulty) : undefined,\n    excessBlobGas: block.excessBlobGas\n      ? BigInt(block.excessBlobGas)\n      : undefined,\n    gasLimit: block.gasLimit ? BigInt(block.gasLimit) : undefined,\n    gasUsed: block.gasUsed ? BigInt(block.gasUsed) : undefined,\n    hash: block.hash ? block.hash : null,\n    logsBloom: block.logsBloom ? block.logsBloom : null,\n    nonce: block.nonce ? block.nonce : null,\n    number: block.number ? BigInt(block.number) : null,\n    size: block.size ? BigInt(block.size) : undefined,\n    timestamp: block.timestamp ? BigInt(block.timestamp) : undefined,\n    transactions,\n    totalDifficulty: block.totalDifficulty\n      ? BigInt(block.totalDifficulty)\n      : null,\n  } as Block\n}\n\nexport type DefineBlockErrorType = DefineFormatterErrorType | ErrorType\n\nexport const defineBlock = /*#__PURE__*/ defineFormatter('block', formatBlock)\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  BlockNotFoundError,\n  type BlockNotFoundErrorType,\n} from '../../errors/block.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { RpcBlock } from '../../types/rpc.js'\nimport type { Prettify } from '../../types/utils.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport {\n  type FormattedBlock,\n  formatBlock,\n} from '../../utils/formatters/block.js'\n\nexport type GetBlockParameters<\n  includeTransactions extends boolean = false,\n  blockTag extends BlockTag = 'latest',\n> = {\n  /** Whether or not to include transaction data in the response. */\n  includeTransactions?: includeTransactions | undefined\n} & (\n  | {\n      /** Hash of the block. */\n      blockHash?: Hash | undefined\n      blockNumber?: undefined\n      blockTag?: undefined\n    }\n  | {\n      blockHash?: undefined\n      /** The block number. */\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n  | {\n      blockHash?: undefined\n      blockNumber?: undefined\n      /**\n       * The block tag.\n       * @default 'latest'\n       */\n      blockTag?: blockTag | BlockTag | undefined\n    }\n)\n\nexport type GetBlockReturnType<\n  chain extends Chain | undefined = undefined,\n  includeTransactions extends boolean = false,\n  blockTag extends BlockTag = 'latest',\n> = Prettify<FormattedBlock<chain, includeTransactions, blockTag>>\n\nexport type GetBlockErrorType =\n  | BlockNotFoundErrorType\n  | NumberToHexErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Returns information about a block at a block number, hash, or tag.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBlock\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_fetching-blocks\n * - JSON-RPC Methods:\n *   - Calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbynumber) for `blockNumber` & `blockTag`.\n *   - Calls [`eth_getBlockByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbyhash) for `blockHash`.\n *\n * @param client - Client to use\n * @param parameters - {@link GetBlockParameters}\n * @returns Information about the block. {@link GetBlockReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBlock } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const block = await getBlock(client)\n */\nexport async function getBlock<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  includeTransactions extends boolean = false,\n  blockTag extends BlockTag = 'latest',\n>(\n  client: Client<Transport, chain, account>,\n  {\n    blockHash,\n    blockNumber,\n    blockTag: blockTag_,\n    includeTransactions: includeTransactions_,\n  }: GetBlockParameters<includeTransactions, blockTag> = {},\n): Promise<GetBlockReturnType<chain, includeTransactions, blockTag>> {\n  const blockTag = blockTag_ ?? 'latest'\n  const includeTransactions = includeTransactions_ ?? false\n\n  const blockNumberHex =\n    blockNumber !== undefined ? numberToHex(blockNumber) : undefined\n\n  let block: RpcBlock | null = null\n  if (blockHash) {\n    block = await client.request(\n      {\n        method: 'eth_getBlockByHash',\n        params: [blockHash, includeTransactions],\n      },\n      { dedupe: true },\n    )\n  } else {\n    block = await client.request(\n      {\n        method: 'eth_getBlockByNumber',\n        params: [blockNumberHex || blockTag, includeTransactions],\n      },\n      { dedupe: Boolean(blockNumberHex) },\n    )\n  }\n\n  if (!block) throw new BlockNotFoundError({ blockHash, blockNumber })\n\n  const format = client.chain?.formatters?.block?.format || formatBlock\n  return format(block)\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type GetGasPriceReturnType = bigint\n\nexport type GetGasPriceErrorType = RequestErrorType | ErrorType\n\n/**\n * Returns the current price of gas (in wei).\n *\n * - Docs: https://viem.sh/docs/actions/public/getGasPrice\n * - JSON-RPC Methods: [`eth_gasPrice`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gasprice)\n *\n * @param client - Client to use\n * @returns The gas price (in wei). {@link GetGasPriceReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getGasPrice } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const gasPrice = await getGasPrice(client)\n */\nexport async function getGasPrice<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(client: Client<Transport, chain, account>): Promise<GetGasPriceReturnType> {\n  const gasPrice = await client.request({\n    method: 'eth_gasPrice',\n  })\n  return BigInt(gasPrice)\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  Eip1559FeesNotSupportedError,\n  type Eip1559FeesNotSupportedErrorType,\n} from '../../errors/fee.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account } from '../../types/account.js'\nimport type { Block } from '../../types/block.js'\nimport type { Chain, ChainFeesFnParameters } from '../../types/chain.js'\nimport type { GetChainParameter } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type HexToBigIntErrorType,\n  hexToBigInt,\n} from '../../utils/encoding/fromHex.js'\nimport { getAction } from '../../utils/getAction.js'\nimport type { PrepareTransactionRequestParameters } from '../wallet/prepareTransactionRequest.js'\nimport { type GetBlockErrorType, getBlock } from './getBlock.js'\nimport { type GetGasPriceErrorType, getGasPrice } from './getGasPrice.js'\n\nexport type EstimateMaxPriorityFeePerGasParameters<\n  chain extends Chain | undefined = Chain | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n> = GetChainParameter<chain, chainOverride>\n\nexport type EstimateMaxPriorityFeePerGasReturnType = bigint\n\nexport type EstimateMaxPriorityFeePerGasErrorType =\n  | GetBlockErrorType\n  | HexToBigIntErrorType\n  | RequestErrorType\n  | GetBlockErrorType\n  | GetGasPriceErrorType\n  | Eip1559FeesNotSupportedErrorType\n  | ErrorType\n\n/**\n * Returns an estimate for the max priority fee per gas (in wei) for a\n * transaction to be likely included in the next block.\n * Defaults to [`chain.fees.defaultPriorityFee`](/docs/clients/chains#fees-defaultpriorityfee) if set.\n *\n * - Docs: https://viem.sh/docs/actions/public/estimateMaxPriorityFeePerGas\n *\n * @param client - Client to use\n * @returns An estimate (in wei) for the max priority fee per gas. {@link EstimateMaxPriorityFeePerGasReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { estimateMaxPriorityFeePerGas } from 'viem/actions'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const maxPriorityFeePerGas = await estimateMaxPriorityFeePerGas(client)\n * // 10000000n\n */\nexport async function estimateMaxPriorityFeePerGas<\n  chain extends Chain | undefined,\n  chainOverride extends Chain | undefined,\n>(\n  client: Client<Transport, chain>,\n  args?:\n    | EstimateMaxPriorityFeePerGasParameters<chain, chainOverride>\n    | undefined,\n): Promise<EstimateMaxPriorityFeePerGasReturnType> {\n  return internal_estimateMaxPriorityFeePerGas(client, args as any)\n}\n\nexport async function internal_estimateMaxPriorityFeePerGas<\n  chain extends Chain | undefined,\n  chainOverride extends Chain | undefined,\n>(\n  client: Client<Transport, chain>,\n  args: EstimateMaxPriorityFeePerGasParameters<chain, chainOverride> & {\n    block?: Block | undefined\n    request?:\n      | PrepareTransactionRequestParameters<\n          chain,\n          Account | undefined,\n          chainOverride\n        >\n      | undefined\n  },\n): Promise<EstimateMaxPriorityFeePerGasReturnType> {\n  const { block: block_, chain = client.chain, request } = args || {}\n\n  try {\n    const maxPriorityFeePerGas =\n      chain?.fees?.maxPriorityFeePerGas ?? chain?.fees?.defaultPriorityFee\n\n    if (typeof maxPriorityFeePerGas === 'function') {\n      const block =\n        block_ || (await getAction(client, getBlock, 'getBlock')({}))\n      const maxPriorityFeePerGas_ = await maxPriorityFeePerGas({\n        block,\n        client,\n        request,\n      } as ChainFeesFnParameters)\n      if (maxPriorityFeePerGas_ === null) throw new Error()\n      return maxPriorityFeePerGas_\n    }\n\n    if (typeof maxPriorityFeePerGas !== 'undefined') return maxPriorityFeePerGas\n\n    const maxPriorityFeePerGasHex = await client.request({\n      method: 'eth_maxPriorityFeePerGas',\n    })\n    return hexToBigInt(maxPriorityFeePerGasHex)\n  } catch {\n    // If the RPC Provider does not support `eth_maxPriorityFeePerGas`\n    // fall back to calculating it manually via `gasPrice - baseFeePerGas`.\n    // See: https://github.com/ethereum/pm/issues/328#:~:text=eth_maxPriorityFeePerGas%20after%20London%20will%20effectively%20return%20eth_gasPrice%20%2D%20baseFee\n    const [block, gasPrice] = await Promise.all([\n      block_\n        ? Promise.resolve(block_)\n        : getAction(client, getBlock, 'getBlock')({}),\n      getAction(client, getGasPrice, 'getGasPrice')({}),\n    ])\n\n    if (typeof block.baseFeePerGas !== 'bigint')\n      throw new Eip1559FeesNotSupportedError()\n\n    const maxPriorityFeePerGas = gasPrice - block.baseFeePerGas\n\n    if (maxPriorityFeePerGas < 0n) return 0n\n    return maxPriorityFeePerGas\n  }\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  BaseFeeScalarError,\n  type BaseFeeScalarErrorType,\n  Eip1559FeesNotSupportedError,\n  type Eip1559FeesNotSupportedErrorType,\n} from '../../errors/fee.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account } from '../../types/account.js'\nimport type { Block } from '../../types/block.js'\nimport type {\n  Chain,\n  ChainEstimateFeesPerGasFnParameters,\n  ChainFeesFnParameters,\n  GetChainParameter,\n} from '../../types/chain.js'\nimport type {\n  FeeValuesEIP1559,\n  FeeValuesLegacy,\n  FeeValuesType,\n} from '../../types/fee.js'\nimport { getAction } from '../../utils/getAction.js'\nimport type { PrepareTransactionRequestParameters } from '../wallet/prepareTransactionRequest.js'\nimport {\n  type EstimateMaxPriorityFeePerGasErrorType,\n  internal_estimateMaxPriorityFeePerGas,\n} from './estimateMaxPriorityFeePerGas.js'\nimport { getBlock } from './getBlock.js'\nimport { type GetGasPriceErrorType, getGasPrice } from './getGasPrice.js'\n\nexport type EstimateFeesPerGasParameters<\n  chain extends Chain | undefined = Chain | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  type extends FeeValuesType = FeeValuesType,\n> = {\n  /**\n   * The type of fee values to return.\n   *\n   * - `legacy`: Returns the legacy gas price.\n   * - `eip1559`: Returns the max fee per gas and max priority fee per gas.\n   *\n   * @default 'eip1559'\n   */\n  type?: type | FeeValuesType | undefined\n} & GetChainParameter<chain, chainOverride>\n\nexport type EstimateFeesPerGasReturnType<\n  type extends FeeValuesType = FeeValuesType,\n> =\n  | (type extends 'legacy' ? FeeValuesLegacy : never)\n  | (type extends 'eip1559' ? FeeValuesEIP1559 : never)\n\nexport type EstimateFeesPerGasErrorType =\n  | BaseFeeScalarErrorType\n  | EstimateMaxPriorityFeePerGasErrorType\n  | GetGasPriceErrorType\n  | Eip1559FeesNotSupportedErrorType\n  | ErrorType\n\n/**\n * Returns an estimate for the fees per gas (in wei) for a\n * transaction to be likely included in the next block.\n * Defaults to [`chain.fees.estimateFeesPerGas`](/docs/clients/chains#fees-estimatefeespergas) if set.\n *\n * - Docs: https://viem.sh/docs/actions/public/estimateFeesPerGas\n *\n * @param client - Client to use\n * @param parameters - {@link EstimateFeesPerGasParameters}\n * @returns An estimate (in wei) for the fees per gas. {@link EstimateFeesPerGasReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { estimateFeesPerGas } from 'viem/actions'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const maxPriorityFeePerGas = await estimateFeesPerGas(client)\n * // { maxFeePerGas: ..., maxPriorityFeePerGas: ... }\n */\nexport async function estimateFeesPerGas<\n  chain extends Chain | undefined,\n  chainOverride extends Chain | undefined,\n  type extends FeeValuesType = 'eip1559',\n>(\n  client: Client<Transport, chain>,\n  args?: EstimateFeesPerGasParameters<chain, chainOverride, type> | undefined,\n): Promise<EstimateFeesPerGasReturnType<type>> {\n  return internal_estimateFeesPerGas(client, args as any)\n}\n\nexport async function internal_estimateFeesPerGas<\n  chain extends Chain | undefined,\n  chainOverride extends Chain | undefined,\n  type extends FeeValuesType = 'eip1559',\n>(\n  client: Client<Transport, chain>,\n  args: EstimateFeesPerGasParameters<chain, chainOverride, type> & {\n    block?: Block | undefined\n    request?: PrepareTransactionRequestParameters<Chain, Account> | undefined\n  },\n): Promise<EstimateFeesPerGasReturnType<type>> {\n  const {\n    block: block_,\n    chain = client.chain,\n    request,\n    type = 'eip1559',\n  } = args || {}\n\n  const baseFeeMultiplier = await (async () => {\n    if (typeof chain?.fees?.baseFeeMultiplier === 'function')\n      return chain.fees.baseFeeMultiplier({\n        block: block_ as Block,\n        client,\n        request,\n      } as ChainFeesFnParameters)\n    return chain?.fees?.baseFeeMultiplier ?? 1.2\n  })()\n  if (baseFeeMultiplier < 1) throw new BaseFeeScalarError()\n\n  const decimals = baseFeeMultiplier.toString().split('.')[1]?.length ?? 0\n  const denominator = 10 ** decimals\n  const multiply = (base: bigint) =>\n    (base * BigInt(Math.ceil(baseFeeMultiplier * denominator))) /\n    BigInt(denominator)\n\n  const block = block_\n    ? block_\n    : await getAction(client, getBlock, 'getBlock')({})\n\n  if (typeof chain?.fees?.estimateFeesPerGas === 'function') {\n    const fees = (await chain.fees.estimateFeesPerGas({\n      block: block_ as Block,\n      client,\n      multiply,\n      request,\n      type,\n    } as ChainEstimateFeesPerGasFnParameters)) as unknown as EstimateFeesPerGasReturnType<type>\n\n    if (fees !== null) return fees\n  }\n\n  if (type === 'eip1559') {\n    if (typeof block.baseFeePerGas !== 'bigint')\n      throw new Eip1559FeesNotSupportedError()\n\n    const maxPriorityFeePerGas =\n      typeof request?.maxPriorityFeePerGas === 'bigint'\n        ? request.maxPriorityFeePerGas\n        : await internal_estimateMaxPriorityFeePerGas(\n            client as Client<Transport, Chain>,\n            {\n              block: block as Block,\n              chain,\n              request,\n            },\n          )\n\n    const baseFeePerGas = multiply(block.baseFeePerGas)\n    const maxFeePerGas =\n      request?.maxFeePerGas ?? baseFeePerGas + maxPriorityFeePerGas\n\n    return {\n      maxFeePerGas,\n      maxPriorityFeePerGas,\n    } as EstimateFeesPerGasReturnType<type>\n  }\n\n  const gasPrice =\n    request?.gasPrice ??\n    multiply(await getAction(client, getGasPrice, 'getGasPrice')({}))\n  return {\n    gasPrice,\n  } as EstimateFeesPerGasReturnType<type>\n}\n","import type { Address } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type HexToNumberErrorType,\n  hexToNumber,\n} from '../../utils/encoding/fromHex.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\n\nexport type GetTransactionCountParameters = {\n  /** The account address. */\n  address: Address\n} & (\n  | {\n      /** The block number. */\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n  | {\n      blockNumber?: undefined\n      /** The block tag. Defaults to 'latest'. */\n      blockTag?: BlockTag | undefined\n    }\n)\nexport type GetTransactionCountReturnType = number\n\nexport type GetTransactionCountErrorType =\n  | RequestErrorType\n  | NumberToHexErrorType\n  | HexToNumberErrorType\n  | ErrorType\n\n/**\n * Returns the number of [Transactions](https://viem.sh/docs/glossary/terms#transaction) an Account has sent.\n *\n * - Docs: https://viem.sh/docs/actions/public/getTransactionCount\n * - JSON-RPC Methods: [`eth_getTransactionCount`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gettransactioncount)\n *\n * @param client - Client to use\n * @param parameters - {@link GetTransactionCountParameters}\n * @returns The number of transactions an account has sent. {@link GetTransactionCountReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getTransactionCount } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const transactionCount = await getTransactionCount(client, {\n *   address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n */\nexport async function getTransactionCount<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(\n  client: Client<Transport, chain, account>,\n  { address, blockTag = 'latest', blockNumber }: GetTransactionCountParameters,\n): Promise<GetTransactionCountReturnType> {\n  const count = await client.request(\n    {\n      method: 'eth_getTransactionCount',\n      params: [\n        address,\n        typeof blockNumber === 'bigint' ? numberToHex(blockNumber) : blockTag,\n      ],\n    },\n    {\n      dedupe: Boolean(blockNumber),\n    },\n  )\n  return hexToNumber(count)\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Kzg } from '../../types/kzg.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport { type HexToBytesErrorType, hexToBytes } from '../encoding/toBytes.js'\nimport { type BytesToHexErrorType, bytesToHex } from '../encoding/toHex.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type BlobsToCommitmentsParameters<\n  blobs extends readonly ByteArray[] | readonly Hex[] =\n    | readonly ByteArray[]\n    | readonly Hex[],\n  to extends To | undefined = undefined,\n> = {\n  /** Blobs to transform into commitments. */\n  blobs: blobs | readonly ByteArray[] | readonly Hex[]\n  /** KZG implementation. */\n  kzg: Pick<Kzg, 'blobToKzgCommitment'>\n  /** Return type. */\n  to?: to | To | undefined\n}\n\nexport type BlobsToCommitmentsReturnType<to extends To> =\n  | (to extends 'bytes' ? readonly ByteArray[] : never)\n  | (to extends 'hex' ? readonly Hex[] : never)\n\nexport type BlobsToCommitmentsErrorType =\n  | HexToBytesErrorType\n  | BytesToHexErrorType\n  | ErrorType\n\n/**\n * Compute commitments from a list of blobs.\n *\n * @example\n * ```ts\n * import { blobsToCommitments, toBlobs } from 'viem'\n * import { kzg } from './kzg'\n *\n * const blobs = toBlobs({ data: '0x1234' })\n * const commitments = blobsToCommitments({ blobs, kzg })\n * ```\n */\nexport function blobsToCommitments<\n  const blobs extends readonly ByteArray[] | readonly Hex[],\n  to extends To =\n    | (blobs extends readonly Hex[] ? 'hex' : never)\n    | (blobs extends readonly ByteArray[] ? 'bytes' : never),\n>(\n  parameters: BlobsToCommitmentsParameters<blobs, to>,\n): BlobsToCommitmentsReturnType<to> {\n  const { kzg } = parameters\n\n  const to =\n    parameters.to ?? (typeof parameters.blobs[0] === 'string' ? 'hex' : 'bytes')\n  const blobs = (\n    typeof parameters.blobs[0] === 'string'\n      ? parameters.blobs.map((x) => hexToBytes(x as any))\n      : parameters.blobs\n  ) as ByteArray[]\n\n  const commitments: ByteArray[] = []\n  for (const blob of blobs)\n    commitments.push(Uint8Array.from(kzg.blobToKzgCommitment(blob)))\n\n  return (to === 'bytes'\n    ? commitments\n    : commitments.map((x) =>\n        bytesToHex(x),\n      )) as {} as BlobsToCommitmentsReturnType<to>\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Kzg } from '../../types/kzg.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport { type HexToBytesErrorType, hexToBytes } from '../encoding/toBytes.js'\nimport { type BytesToHexErrorType, bytesToHex } from '../encoding/toHex.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type blobsToProofsParameters<\n  blobs extends readonly ByteArray[] | readonly Hex[],\n  commitments extends readonly ByteArray[] | readonly Hex[],\n  to extends To =\n    | (blobs extends readonly Hex[] ? 'hex' : never)\n    | (blobs extends readonly ByteArray[] ? 'bytes' : never),\n  ///\n  _blobsType =\n    | (blobs extends readonly Hex[] ? readonly Hex[] : never)\n    | (blobs extends readonly ByteArray[] ? readonly ByteArray[] : never),\n> = {\n  /** Blobs to transform into proofs. */\n  blobs: blobs\n  /** Commitments for the blobs. */\n  commitments: commitments &\n    (commitments extends _blobsType\n      ? {}\n      : `commitments must be the same type as blobs`)\n  /** KZG implementation. */\n  kzg: Pick<Kzg, 'computeBlobKzgProof'>\n  /** Return type. */\n  to?: to | To | undefined\n}\n\nexport type blobsToProofsReturnType<to extends To> =\n  | (to extends 'bytes' ? ByteArray[] : never)\n  | (to extends 'hex' ? Hex[] : never)\n\nexport type blobsToProofsErrorType =\n  | BytesToHexErrorType\n  | HexToBytesErrorType\n  | ErrorType\n\n/**\n * Compute the proofs for a list of blobs and their commitments.\n *\n * @example\n * ```ts\n * import {\n *   blobsToCommitments,\n *   toBlobs\n * } from 'viem'\n * import { kzg } from './kzg'\n *\n * const blobs = toBlobs({ data: '0x1234' })\n * const commitments = blobsToCommitments({ blobs, kzg })\n * const proofs = blobsToProofs({ blobs, commitments, kzg })\n * ```\n */\nexport function blobsToProofs<\n  const blobs extends readonly ByteArray[] | readonly Hex[],\n  const commitments extends readonly ByteArray[] | readonly Hex[],\n  to extends To =\n    | (blobs extends readonly Hex[] ? 'hex' : never)\n    | (blobs extends readonly ByteArray[] ? 'bytes' : never),\n>(\n  parameters: blobsToProofsParameters<blobs, commitments, to>,\n): blobsToProofsReturnType<to> {\n  const { kzg } = parameters\n\n  const to =\n    parameters.to ?? (typeof parameters.blobs[0] === 'string' ? 'hex' : 'bytes')\n\n  const blobs = (\n    typeof parameters.blobs[0] === 'string'\n      ? parameters.blobs.map((x) => hexToBytes(x as any))\n      : parameters.blobs\n  ) as ByteArray[]\n  const commitments = (\n    typeof parameters.commitments[0] === 'string'\n      ? parameters.commitments.map((x) => hexToBytes(x as any))\n      : parameters.commitments\n  ) as ByteArray[]\n\n  const proofs: ByteArray[] = []\n  for (let i = 0; i < blobs.length; i++) {\n    const blob = blobs[i]\n    const commitment = commitments[i]\n    proofs.push(Uint8Array.from(kzg.computeBlobKzgProof(blob, commitment)))\n  }\n\n  return (to === 'bytes'\n    ? proofs\n    : proofs.map((x) => bytesToHex(x))) as {} as blobsToProofsReturnType<to>\n}\n","/**\n * SHA2-256 a.k.a. sha256. In JS, it is the fastest hash, even faster than Blake3.\n *\n * To break sha256 using birthday attack, attackers need to try 2^128 hashes.\n * BTC network is doing 2^70 hashes/sec (2^95 hashes/year) as per 2025.\n *\n * Check out [FIPS 180-4](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf).\n * @module\n * @deprecated\n */\nimport {\n  SHA224 as SHA224n,\n  sha224 as sha224n,\n  SHA256 as SHA256n,\n  sha256 as sha256n,\n} from './sha2.ts';\n/** @deprecated Use import from `noble/hashes/sha2` module */\nexport const SHA256: typeof SHA256n = SHA256n;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nexport const sha256: typeof sha256n = sha256n;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nexport const SHA224: typeof SHA224n = SHA224n;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nexport const sha224: typeof sha224n = sha224n;\n","import { sha256 as noble_sha256 } from '@noble/hashes/sha256'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport { type IsHexErrorType, isHex } from '../data/isHex.js'\nimport { type ToBytesErrorType, toBytes } from '../encoding/toBytes.js'\nimport { type ToHexErrorType, toHex } from '../encoding/toHex.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type Sha256Hash<to extends To> =\n  | (to extends 'bytes' ? ByteArray : never)\n  | (to extends 'hex' ? Hex : never)\n\nexport type Sha256ErrorType =\n  | IsHexErrorType\n  | ToBytesErrorType\n  | ToHexErrorType\n  | ErrorType\n\nexport function sha256<to extends To = 'hex'>(\n  value: Hex | ByteArray,\n  to_?: to | undefined,\n): Sha256Hash<to> {\n  const to = to_ || 'hex'\n  const bytes = noble_sha256(\n    isHex(value, { strict: false }) ? toBytes(value) : value,\n  )\n  if (to === 'bytes') return bytes as Sha256Hash<to>\n  return toHex(bytes) as Sha256Hash<to>\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport { type BytesToHexErrorType, bytesToHex } from '../encoding/toHex.js'\nimport { type Sha256ErrorType, sha256 } from '../hash/sha256.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type CommitmentToVersionedHashParameters<\n  commitment extends Uint8Array | Hex = Uint8Array | Hex,\n  to extends To | undefined = undefined,\n> = {\n  /** Commitment from blob. */\n  commitment: commitment | Uint8Array | Hex\n  /** Return type. */\n  to?: to | To | undefined\n  /** Version to tag onto the hash. */\n  version?: number | undefined\n}\n\nexport type CommitmentToVersionedHashReturnType<to extends To> =\n  | (to extends 'bytes' ? ByteArray : never)\n  | (to extends 'hex' ? Hex : never)\n\nexport type CommitmentToVersionedHashErrorType =\n  | Sha256ErrorType\n  | BytesToHexErrorType\n  | ErrorType\n\n/**\n * Transform a commitment to it's versioned hash.\n *\n * @example\n * ```ts\n * import {\n *   blobsToCommitments,\n *   commitmentToVersionedHash,\n *   toBlobs\n * } from 'viem'\n * import { kzg } from './kzg'\n *\n * const blobs = toBlobs({ data: '0x1234' })\n * const [commitment] = blobsToCommitments({ blobs, kzg })\n * const versionedHash = commitmentToVersionedHash({ commitment })\n * ```\n */\nexport function commitmentToVersionedHash<\n  const commitment extends Hex | ByteArray,\n  to extends To =\n    | (commitment extends Hex ? 'hex' : never)\n    | (commitment extends ByteArray ? 'bytes' : never),\n>(\n  parameters: CommitmentToVersionedHashParameters<commitment, to>,\n): CommitmentToVersionedHashReturnType<to> {\n  const { commitment, version = 1 } = parameters\n  const to = parameters.to ?? (typeof commitment === 'string' ? 'hex' : 'bytes')\n\n  const versionedHash = sha256(commitment, 'bytes')\n  versionedHash.set([version], 0)\n  return (\n    to === 'bytes' ? versionedHash : bytesToHex(versionedHash)\n  ) as CommitmentToVersionedHashReturnType<to>\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport {\n  type CommitmentToVersionedHashErrorType,\n  commitmentToVersionedHash,\n} from './commitmentToVersionedHash.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type CommitmentsToVersionedHashesParameters<\n  commitments extends readonly Uint8Array[] | readonly Hex[] =\n    | readonly Uint8Array[]\n    | readonly Hex[],\n  to extends To | undefined = undefined,\n> = {\n  /** Commitments from blobs. */\n  commitments: commitments | readonly Uint8Array[] | readonly Hex[]\n  /** Return type. */\n  to?: to | To | undefined\n  /** Version to tag onto the hashes. */\n  version?: number | undefined\n}\n\nexport type CommitmentsToVersionedHashesReturnType<to extends To> =\n  | (to extends 'bytes' ? readonly ByteArray[] : never)\n  | (to extends 'hex' ? readonly Hex[] : never)\n\nexport type CommitmentsToVersionedHashesErrorType =\n  | CommitmentToVersionedHashErrorType\n  | ErrorType\n\n/**\n * Transform a list of commitments to their versioned hashes.\n *\n * @example\n * ```ts\n * import {\n *   blobsToCommitments,\n *   commitmentsToVersionedHashes,\n *   toBlobs\n * } from 'viem'\n * import { kzg } from './kzg'\n *\n * const blobs = toBlobs({ data: '0x1234' })\n * const commitments = blobsToCommitments({ blobs, kzg })\n * const versionedHashes = commitmentsToVersionedHashes({ commitments })\n * ```\n */\nexport function commitmentsToVersionedHashes<\n  const commitments extends readonly Uint8Array[] | readonly Hex[],\n  to extends To =\n    | (commitments extends readonly Hex[] ? 'hex' : never)\n    | (commitments extends readonly ByteArray[] ? 'bytes' : never),\n>(\n  parameters: CommitmentsToVersionedHashesParameters<commitments, to>,\n): CommitmentsToVersionedHashesReturnType<to> {\n  const { commitments, version } = parameters\n\n  const to =\n    parameters.to ?? (typeof commitments[0] === 'string' ? 'hex' : 'bytes')\n\n  const hashes: Uint8Array[] | Hex[] = []\n  for (const commitment of commitments) {\n    hashes.push(\n      commitmentToVersionedHash({\n        commitment,\n        to,\n        version,\n      }) as any,\n    )\n  }\n  return hashes as any\n}\n","// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-4844.md#parameters\n\n/** Blob limit per transaction. */\nconst blobsPerTransaction = 6\n\n/** The number of bytes in a BLS scalar field element. */\nexport const bytesPerFieldElement = 32\n\n/** The number of field elements in a blob. */\nexport const fieldElementsPerBlob = 4096\n\n/** The number of bytes in a blob. */\nexport const bytesPerBlob = bytesPerFieldElement * fieldElementsPerBlob\n\n/** Blob bytes limit per transaction. */\nexport const maxBytesPerTransaction =\n  bytesPerBlob * blobsPerTransaction -\n  // terminator byte (0x80).\n  1 -\n  // zero byte (0x00) appended to each field element.\n  1 * fieldElementsPerBlob * blobsPerTransaction\n","// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-4844.md#parameters\n\nexport const versionedHashVersionKzg = 1\n","import { versionedHashVersionKzg } from '../constants/kzg.js'\nimport type { Hash } from '../types/misc.js'\n\nimport { BaseError } from './base.js'\n\nexport type BlobSizeTooLargeErrorType = BlobSizeTooLargeError & {\n  name: 'BlobSizeTooLargeError'\n}\nexport class BlobSizeTooLargeError extends BaseError {\n  constructor({ maxSize, size }: { maxSize: number; size: number }) {\n    super('Blob size is too large.', {\n      metaMessages: [`Max: ${maxSize} bytes`, `Given: ${size} bytes`],\n      name: 'BlobSizeTooLargeError',\n    })\n  }\n}\n\nexport type EmptyBlobErrorType = EmptyBlobError & {\n  name: 'EmptyBlobError'\n}\nexport class EmptyBlobError extends BaseError {\n  constructor() {\n    super('Blob data must not be empty.', { name: 'EmptyBlobError' })\n  }\n}\n\nexport type InvalidVersionedHashSizeErrorType =\n  InvalidVersionedHashSizeError & {\n    name: 'InvalidVersionedHashSizeError'\n  }\nexport class InvalidVersionedHashSizeError extends BaseError {\n  constructor({\n    hash,\n    size,\n  }: {\n    hash: Hash\n    size: number\n  }) {\n    super(`Versioned hash \"${hash}\" size is invalid.`, {\n      metaMessages: ['Expected: 32', `Received: ${size}`],\n      name: 'InvalidVersionedHashSizeError',\n    })\n  }\n}\n\nexport type InvalidVersionedHashVersionErrorType =\n  InvalidVersionedHashVersionError & {\n    name: 'InvalidVersionedHashVersionError'\n  }\nexport class InvalidVersionedHashVersionError extends BaseError {\n  constructor({\n    hash,\n    version,\n  }: {\n    hash: Hash\n    version: number\n  }) {\n    super(`Versioned hash \"${hash}\" version is invalid.`, {\n      metaMessages: [\n        `Expected: ${versionedHashVersionKzg}`,\n        `Received: ${version}`,\n      ],\n      name: 'InvalidVersionedHashVersionError',\n    })\n  }\n}\n","import {\n  bytesPerBlob,\n  bytesPerFieldElement,\n  fieldElementsPerBlob,\n  maxBytesPerTransaction,\n} from '../../constants/blob.js'\nimport {\n  BlobSizeTooLargeError,\n  type BlobSizeTooLargeErrorType,\n  EmptyBlobError,\n  type EmptyBlobErrorType,\n} from '../../errors/blob.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport { type CreateCursorErrorType, createCursor } from '../cursor.js'\nimport { type SizeErrorType, size } from '../data/size.js'\nimport { type HexToBytesErrorType, hexToBytes } from '../encoding/toBytes.js'\nimport { type BytesToHexErrorType, bytesToHex } from '../encoding/toHex.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type ToBlobsParameters<\n  data extends Hex | ByteArray = Hex | ByteArray,\n  to extends To | undefined = undefined,\n> = {\n  /** Data to transform to a blob. */\n  data: data | Hex | ByteArray\n  /** Return type. */\n  to?: to | To | undefined\n}\n\nexport type ToBlobsReturnType<to extends To> =\n  | (to extends 'bytes' ? readonly ByteArray[] : never)\n  | (to extends 'hex' ? readonly Hex[] : never)\n\nexport type ToBlobsErrorType =\n  | BlobSizeTooLargeErrorType\n  | BytesToHexErrorType\n  | CreateCursorErrorType\n  | EmptyBlobErrorType\n  | HexToBytesErrorType\n  | SizeErrorType\n  | ErrorType\n\n/**\n * Transforms arbitrary data to blobs.\n *\n * @example\n * ```ts\n * import { toBlobs, stringToHex } from 'viem'\n *\n * const blobs = toBlobs({ data: stringToHex('hello world') })\n * ```\n */\nexport function toBlobs<\n  const data extends Hex | ByteArray,\n  to extends To =\n    | (data extends Hex ? 'hex' : never)\n    | (data extends ByteArray ? 'bytes' : never),\n>(parameters: ToBlobsParameters<data, to>): ToBlobsReturnType<to> {\n  const to =\n    parameters.to ?? (typeof parameters.data === 'string' ? 'hex' : 'bytes')\n  const data = (\n    typeof parameters.data === 'string'\n      ? hexToBytes(parameters.data)\n      : parameters.data\n  ) as ByteArray\n\n  const size_ = size(data)\n  if (!size_) throw new EmptyBlobError()\n  if (size_ > maxBytesPerTransaction)\n    throw new BlobSizeTooLargeError({\n      maxSize: maxBytesPerTransaction,\n      size: size_,\n    })\n\n  const blobs = []\n\n  let active = true\n  let position = 0\n  while (active) {\n    const blob = createCursor(new Uint8Array(bytesPerBlob))\n\n    let size = 0\n    while (size < fieldElementsPerBlob) {\n      const bytes = data.slice(position, position + (bytesPerFieldElement - 1))\n\n      // Push a zero byte so the field element doesn't overflow the BLS modulus.\n      blob.pushByte(0x00)\n\n      // Push the current segment of data bytes.\n      blob.pushBytes(bytes)\n\n      // If we detect that the current segment of data bytes is less than 31 bytes,\n      // we can stop processing and push a terminator byte to indicate the end of the blob.\n      if (bytes.length < 31) {\n        blob.pushByte(0x80)\n        active = false\n        break\n      }\n\n      size++\n      position += 31\n    }\n\n    blobs.push(blob)\n  }\n\n  return (\n    to === 'bytes'\n      ? blobs.map((x) => x.bytes)\n      : blobs.map((x) => bytesToHex(x.bytes))\n  ) as any\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { BlobSidecars } from '../../types/eip4844.js'\nimport type { Kzg } from '../../types/kzg.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport type { OneOf } from '../../types/utils.js'\nimport {\n  type BlobsToCommitmentsErrorType,\n  blobsToCommitments,\n} from './blobsToCommitments.js'\nimport { blobsToProofs, type blobsToProofsErrorType } from './blobsToProofs.js'\nimport { type ToBlobsErrorType, toBlobs } from './toBlobs.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type ToBlobSidecarsParameters<\n  data extends Hex | ByteArray | undefined = undefined,\n  blobs extends readonly Hex[] | readonly ByteArray[] | undefined = undefined,\n  to extends To =\n    | (blobs extends readonly Hex[] ? 'hex' : never)\n    | (blobs extends readonly ByteArray[] ? 'bytes' : never),\n  ///\n  _blobsType =\n    | (blobs extends readonly Hex[] ? readonly Hex[] : never)\n    | (blobs extends readonly ByteArray[] ? readonly ByteArray[] : never),\n> = {\n  /** Return type. */\n  to?: to | To | undefined\n} & OneOf<\n  | {\n      /** Data to transform into blobs. */\n      data: data | Hex | ByteArray\n      /** KZG implementation. */\n      kzg: Kzg\n    }\n  | {\n      /** Blobs. */\n      blobs: blobs | readonly Hex[] | readonly ByteArray[]\n      /** Commitment for each blob. */\n      commitments: _blobsType | readonly Hex[] | readonly ByteArray[]\n      /** Proof for each blob. */\n      proofs: _blobsType | readonly Hex[] | readonly ByteArray[]\n    }\n>\n\nexport type ToBlobSidecarsReturnType<to extends To> =\n  | (to extends 'bytes' ? BlobSidecars<ByteArray> : never)\n  | (to extends 'hex' ? BlobSidecars<Hex> : never)\n\nexport type ToBlobSidecarsErrorType =\n  | BlobsToCommitmentsErrorType\n  | ToBlobsErrorType\n  | blobsToProofsErrorType\n  | ErrorType\n\n/**\n * Transforms arbitrary data (or blobs, commitments, & proofs) into a sidecar array.\n *\n * @example\n * ```ts\n * import { toBlobSidecars, stringToHex } from 'viem'\n *\n * const sidecars = toBlobSidecars({ data: stringToHex('hello world') })\n * ```\n *\n * @example\n * ```ts\n * import {\n *   blobsToCommitments,\n *   toBlobs,\n *   blobsToProofs,\n *   toBlobSidecars,\n *   stringToHex\n * } from 'viem'\n *\n * const blobs = toBlobs({ data: stringToHex('hello world') })\n * const commitments = blobsToCommitments({ blobs, kzg })\n * const proofs = blobsToProofs({ blobs, commitments, kzg })\n *\n * const sidecars = toBlobSidecars({ blobs, commitments, proofs })\n * ```\n */\nexport function toBlobSidecars<\n  const data extends Hex | ByteArray | undefined = undefined,\n  const blobs extends\n    | readonly Hex[]\n    | readonly ByteArray[]\n    | undefined = undefined,\n  to extends To =\n    | (data extends Hex ? 'hex' : never)\n    | (data extends ByteArray ? 'bytes' : never)\n    | (blobs extends readonly Hex[] ? 'hex' : never)\n    | (blobs extends readonly ByteArray[] ? 'bytes' : never),\n>(\n  parameters: ToBlobSidecarsParameters<data, blobs, to>,\n): ToBlobSidecarsReturnType<to> {\n  const { data, kzg, to } = parameters\n  const blobs = parameters.blobs ?? toBlobs({ data: data!, to })\n  const commitments =\n    parameters.commitments ?? blobsToCommitments({ blobs, kzg: kzg!, to })\n  const proofs =\n    parameters.proofs ?? blobsToProofs({ blobs, commitments, kzg: kzg!, to })\n\n  const sidecars: BlobSidecars = []\n  for (let i = 0; i < blobs.length; i++)\n    sidecars.push({\n      blob: blobs[i],\n      commitment: commitments[i],\n      proof: proofs[i],\n    })\n\n  return sidecars as ToBlobSidecarsReturnType<to>\n}\n","import {\n  InvalidSerializableTransactionError,\n  type InvalidSerializableTransactionErrorType,\n} from '../../errors/transaction.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type {\n  FeeValuesEIP1559,\n  FeeValuesEIP4844,\n  FeeValuesLegacy,\n} from '../../index.js'\nimport type {\n  TransactionRequestGeneric,\n  TransactionSerializableEIP2930,\n  TransactionSerializableEIP4844,\n  TransactionSerializableEIP7702,\n  TransactionSerializableGeneric,\n} from '../../types/transaction.js'\nimport type { Assign, ExactPartial, IsNever, OneOf } from '../../types/utils.js'\n\nexport type GetTransactionType<\n  transaction extends OneOf<\n    TransactionSerializableGeneric | TransactionRequestGeneric\n  > = TransactionSerializableGeneric,\n  result =\n    | (transaction extends LegacyProperties ? 'legacy' : never)\n    | (transaction extends EIP1559Properties ? 'eip1559' : never)\n    | (transaction extends EIP2930Properties ? 'eip2930' : never)\n    | (transaction extends EIP4844Properties ? 'eip4844' : never)\n    | (transaction extends EIP7702Properties ? 'eip7702' : never)\n    | (transaction['type'] extends TransactionSerializableGeneric['type']\n        ? Extract<transaction['type'], string>\n        : never),\n> = IsNever<keyof transaction> extends true\n  ? string\n  : IsNever<result> extends false\n    ? result\n    : string\n\nexport type GetTransactionTypeErrorType =\n  | InvalidSerializableTransactionErrorType\n  | ErrorType\n\nexport function getTransactionType<\n  const transaction extends OneOf<\n    TransactionSerializableGeneric | TransactionRequestGeneric\n  >,\n>(transaction: transaction): GetTransactionType<transaction> {\n  if (transaction.type)\n    return transaction.type as GetTransactionType<transaction>\n\n  if (typeof transaction.authorizationList !== 'undefined')\n    return 'eip7702' as any\n\n  if (\n    typeof transaction.blobs !== 'undefined' ||\n    typeof transaction.blobVersionedHashes !== 'undefined' ||\n    typeof transaction.maxFeePerBlobGas !== 'undefined' ||\n    typeof transaction.sidecars !== 'undefined'\n  )\n    return 'eip4844' as any\n\n  if (\n    typeof transaction.maxFeePerGas !== 'undefined' ||\n    typeof transaction.maxPriorityFeePerGas !== 'undefined'\n  ) {\n    return 'eip1559' as any\n  }\n\n  if (typeof transaction.gasPrice !== 'undefined') {\n    if (typeof transaction.accessList !== 'undefined') return 'eip2930' as any\n    return 'legacy' as any\n  }\n\n  throw new InvalidSerializableTransactionError({ transaction })\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////\n// Types\n\ntype BaseProperties = {\n  accessList?: undefined\n  authorizationList?: undefined\n  blobs?: undefined\n  blobVersionedHashes?: undefined\n  gasPrice?: undefined\n  maxFeePerBlobGas?: undefined\n  maxFeePerGas?: undefined\n  maxPriorityFeePerGas?: undefined\n  sidecars?: undefined\n}\n\ntype LegacyProperties = Assign<BaseProperties, FeeValuesLegacy>\ntype EIP1559Properties = Assign<\n  BaseProperties,\n  OneOf<\n    | {\n        maxFeePerGas: FeeValuesEIP1559['maxFeePerGas']\n      }\n    | {\n        maxPriorityFeePerGas: FeeValuesEIP1559['maxPriorityFeePerGas']\n      },\n    FeeValuesEIP1559\n  > & {\n    accessList?: TransactionSerializableEIP2930['accessList'] | undefined\n  }\n>\ntype EIP2930Properties = Assign<\n  ExactPartial<LegacyProperties>,\n  {\n    accessList: TransactionSerializableEIP2930['accessList']\n  }\n>\ntype EIP4844Properties = Assign<\n  ExactPartial<EIP1559Properties>,\n  ExactPartial<FeeValuesEIP4844> &\n    OneOf<\n      | {\n          blobs: TransactionSerializableEIP4844['blobs']\n        }\n      | {\n          blobVersionedHashes: TransactionSerializableEIP4844['blobVersionedHashes']\n        }\n      | {\n          sidecars: TransactionSerializableEIP4844['sidecars']\n        },\n      TransactionSerializableEIP4844\n    >\n>\ntype EIP7702Properties = Assign<\n  ExactPartial<EIP1559Properties>,\n  {\n    authorizationList: TransactionSerializableEIP7702['authorizationList']\n  }\n>\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type HexToNumberErrorType,\n  hexToNumber,\n} from '../../utils/encoding/fromHex.js'\n\nexport type GetChainIdReturnType = number\n\nexport type GetChainIdErrorType =\n  | HexToNumberErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Returns the chain ID associated with the current network.\n *\n * - Docs: https://viem.sh/docs/actions/public/getChainId\n * - JSON-RPC Methods: [`eth_chainId`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_chainid)\n *\n * @param client - Client to use\n * @returns The current chain ID. {@link GetChainIdReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getChainId } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const chainId = await getChainId(client)\n * // 1\n */\nexport async function getChainId<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(client: Client<Transport, chain, account>): Promise<GetChainIdReturnType> {\n  const chainIdHex = await client.request(\n    {\n      method: 'eth_chainId',\n    },\n    { dedupe: true },\n  )\n  return hexToNumber(chainIdHex)\n}\n","import type { Address } from 'abitype'\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport {\n  type EstimateFeesPerGasErrorType,\n  internal_estimateFeesPerGas,\n} from '../../actions/public/estimateFeesPerGas.js'\nimport {\n  type EstimateGasErrorType,\n  type EstimateGasParameters,\n  estimateGas,\n} from '../../actions/public/estimateGas.js'\nimport {\n  type GetBlockErrorType,\n  getBlock as getBlock_,\n} from '../../actions/public/getBlock.js'\nimport {\n  type GetTransactionCountErrorType,\n  getTransactionCount,\n} from '../../actions/public/getTransactionCount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { AccountNotFoundErrorType } from '../../errors/account.js'\nimport {\n  Eip1559FeesNotSupportedError,\n  MaxFeePerGasTooLowError,\n} from '../../errors/fee.js'\nimport type { DeriveAccount, GetAccountParameter } from '../../types/account.js'\nimport type { Block } from '../../types/block.js'\nimport type { Chain, DeriveChain } from '../../types/chain.js'\nimport type { GetChainParameter } from '../../types/chain.js'\nimport type { GetTransactionRequestKzgParameter } from '../../types/kzg.js'\nimport type {\n  TransactionRequest,\n  TransactionRequestEIP1559,\n  TransactionRequestEIP2930,\n  TransactionRequestEIP4844,\n  TransactionRequestEIP7702,\n  TransactionRequestLegacy,\n  TransactionSerializable,\n} from '../../types/transaction.js'\nimport type {\n  ExactPartial,\n  IsNever,\n  Prettify,\n  UnionOmit,\n  UnionRequiredBy,\n} from '../../types/utils.js'\nimport { blobsToCommitments } from '../../utils/blob/blobsToCommitments.js'\nimport { blobsToProofs } from '../../utils/blob/blobsToProofs.js'\nimport { commitmentsToVersionedHashes } from '../../utils/blob/commitmentsToVersionedHashes.js'\nimport { toBlobSidecars } from '../../utils/blob/toBlobSidecars.js'\nimport type { FormattedTransactionRequest } from '../../utils/formatters/transactionRequest.js'\nimport { getAction } from '../../utils/getAction.js'\nimport type { NonceManager } from '../../utils/nonceManager.js'\nimport {\n  type AssertRequestErrorType,\n  type AssertRequestParameters,\n  assertRequest,\n} from '../../utils/transaction/assertRequest.js'\nimport {\n  type GetTransactionType,\n  getTransactionType,\n} from '../../utils/transaction/getTransactionType.js'\nimport { getChainId as getChainId_ } from '../public/getChainId.js'\n\nexport const defaultParameters = [\n  'blobVersionedHashes',\n  'chainId',\n  'fees',\n  'gas',\n  'nonce',\n  'type',\n] as const\n\n/** @internal */\nexport const eip1559NetworkCache = /*#__PURE__*/ new Map<string, boolean>()\n\nexport type PrepareTransactionRequestParameterType =\n  | 'blobVersionedHashes'\n  | 'chainId'\n  | 'fees'\n  | 'gas'\n  | 'nonce'\n  | 'sidecars'\n  | 'type'\ntype ParameterTypeToParameters<\n  parameterType extends PrepareTransactionRequestParameterType,\n> = parameterType extends 'fees'\n  ? 'maxFeePerGas' | 'maxPriorityFeePerGas' | 'gasPrice'\n  : parameterType\n\nexport type PrepareTransactionRequestRequest<\n  chain extends Chain | undefined = Chain | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  ///\n  _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>,\n> = UnionOmit<FormattedTransactionRequest<_derivedChain>, 'from'> &\n  GetTransactionRequestKzgParameter & {\n    /**\n     * Nonce manager to use for the transaction request.\n     */\n    nonceManager?: NonceManager | undefined\n    /**\n     * Parameters to prepare for the transaction request.\n     *\n     * @default ['blobVersionedHashes', 'chainId', 'fees', 'gas', 'nonce', 'type']\n     */\n    parameters?: readonly PrepareTransactionRequestParameterType[] | undefined\n  }\n\nexport type PrepareTransactionRequestParameters<\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  accountOverride extends Account | Address | undefined =\n    | Account\n    | Address\n    | undefined,\n  request extends PrepareTransactionRequestRequest<\n    chain,\n    chainOverride\n  > = PrepareTransactionRequestRequest<chain, chainOverride>,\n> = request &\n  GetAccountParameter<account, accountOverride, false, true> &\n  GetChainParameter<chain, chainOverride> &\n  GetTransactionRequestKzgParameter<request> & { chainId?: number | undefined }\n\nexport type PrepareTransactionRequestReturnType<\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  accountOverride extends Account | Address | undefined =\n    | Account\n    | Address\n    | undefined,\n  request extends PrepareTransactionRequestRequest<\n    chain,\n    chainOverride\n  > = PrepareTransactionRequestRequest<chain, chainOverride>,\n  ///\n  _derivedAccount extends Account | Address | undefined = DeriveAccount<\n    account,\n    accountOverride\n  >,\n  _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>,\n  _transactionType = request['type'] extends string | undefined\n    ? request['type']\n    : GetTransactionType<request> extends 'legacy'\n      ? unknown\n      : GetTransactionType<request>,\n  _transactionRequest extends TransactionRequest =\n    | (_transactionType extends 'legacy' ? TransactionRequestLegacy : never)\n    | (_transactionType extends 'eip1559' ? TransactionRequestEIP1559 : never)\n    | (_transactionType extends 'eip2930' ? TransactionRequestEIP2930 : never)\n    | (_transactionType extends 'eip4844' ? TransactionRequestEIP4844 : never)\n    | (_transactionType extends 'eip7702' ? TransactionRequestEIP7702 : never),\n> = Prettify<\n  UnionRequiredBy<\n    Extract<\n      UnionOmit<FormattedTransactionRequest<_derivedChain>, 'from'> &\n        (_derivedChain extends Chain\n          ? { chain: _derivedChain }\n          : { chain?: undefined }) &\n        (_derivedAccount extends Account\n          ? { account: _derivedAccount; from: Address }\n          : { account?: undefined; from?: undefined }),\n      IsNever<_transactionRequest> extends true\n        ? unknown\n        : ExactPartial<_transactionRequest>\n    > & { chainId?: number | undefined },\n    ParameterTypeToParameters<\n      request['parameters'] extends readonly PrepareTransactionRequestParameterType[]\n        ? request['parameters'][number]\n        : (typeof defaultParameters)[number]\n    >\n  > &\n    (unknown extends request['kzg'] ? {} : Pick<request, 'kzg'>)\n>\n\nexport type PrepareTransactionRequestErrorType =\n  | AccountNotFoundErrorType\n  | AssertRequestErrorType\n  | ParseAccountErrorType\n  | GetBlockErrorType\n  | GetTransactionCountErrorType\n  | EstimateGasErrorType\n  | EstimateFeesPerGasErrorType\n\n/**\n * Prepares a transaction request for signing.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/prepareTransactionRequest\n *\n * @param args - {@link PrepareTransactionRequestParameters}\n * @returns The transaction request. {@link PrepareTransactionRequestReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { prepareTransactionRequest } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const request = await prepareTransactionRequest(client, {\n *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n *   to: '0x0000000000000000000000000000000000000000',\n *   value: 1n,\n * })\n *\n * @example\n * // Account Hoisting\n * import { createWalletClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { prepareTransactionRequest } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   account: privateKeyToAccount('0x…'),\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const request = await prepareTransactionRequest(client, {\n *   to: '0x0000000000000000000000000000000000000000',\n *   value: 1n,\n * })\n */\nexport async function prepareTransactionRequest<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  const request extends PrepareTransactionRequestRequest<chain, chainOverride>,\n  accountOverride extends Account | Address | undefined = undefined,\n  chainOverride extends Chain | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  args: PrepareTransactionRequestParameters<\n    chain,\n    account,\n    chainOverride,\n    accountOverride,\n    request\n  >,\n): Promise<\n  PrepareTransactionRequestReturnType<\n    chain,\n    account,\n    chainOverride,\n    accountOverride,\n    request\n  >\n> {\n  const {\n    account: account_ = client.account,\n    blobs,\n    chain,\n    gas,\n    kzg,\n    nonce,\n    nonceManager,\n    parameters = defaultParameters,\n    type,\n  } = args\n  const account = account_ ? parseAccount(account_) : account_\n\n  const request = { ...args, ...(account ? { from: account?.address } : {}) }\n\n  let block: Block | undefined\n  async function getBlock(): Promise<Block> {\n    if (block) return block\n    block = await getAction(\n      client,\n      getBlock_,\n      'getBlock',\n    )({ blockTag: 'latest' })\n    return block\n  }\n\n  let chainId: number | undefined\n  async function getChainId(): Promise<number> {\n    if (chainId) return chainId\n    if (chain) return chain.id\n    if (typeof args.chainId !== 'undefined') return args.chainId\n    const chainId_ = await getAction(client, getChainId_, 'getChainId')({})\n    chainId = chainId_\n    return chainId\n  }\n\n  if (parameters.includes('nonce') && typeof nonce === 'undefined' && account) {\n    if (nonceManager) {\n      const chainId = await getChainId()\n      request.nonce = await nonceManager.consume({\n        address: account.address,\n        chainId,\n        client,\n      })\n    } else {\n      request.nonce = await getAction(\n        client,\n        getTransactionCount,\n        'getTransactionCount',\n      )({\n        address: account.address,\n        blockTag: 'pending',\n      })\n    }\n  }\n\n  if (\n    (parameters.includes('blobVersionedHashes') ||\n      parameters.includes('sidecars')) &&\n    blobs &&\n    kzg\n  ) {\n    const commitments = blobsToCommitments({ blobs, kzg })\n\n    if (parameters.includes('blobVersionedHashes')) {\n      const versionedHashes = commitmentsToVersionedHashes({\n        commitments,\n        to: 'hex',\n      })\n      request.blobVersionedHashes = versionedHashes\n    }\n    if (parameters.includes('sidecars')) {\n      const proofs = blobsToProofs({ blobs, commitments, kzg })\n      const sidecars = toBlobSidecars({\n        blobs,\n        commitments,\n        proofs,\n        to: 'hex',\n      })\n      request.sidecars = sidecars\n    }\n  }\n\n  if (parameters.includes('chainId')) request.chainId = await getChainId()\n\n  if (\n    (parameters.includes('fees') || parameters.includes('type')) &&\n    typeof type === 'undefined'\n  ) {\n    try {\n      request.type = getTransactionType(\n        request as TransactionSerializable,\n      ) as any\n    } catch {\n      let isEip1559Network = eip1559NetworkCache.get(client.uid)\n      if (typeof isEip1559Network === 'undefined') {\n        const block = await getBlock()\n        isEip1559Network = typeof block?.baseFeePerGas === 'bigint'\n        eip1559NetworkCache.set(client.uid, isEip1559Network)\n      }\n      request.type = isEip1559Network ? 'eip1559' : 'legacy'\n    }\n  }\n\n  if (parameters.includes('fees')) {\n    // TODO(4844): derive blob base fees once https://github.com/ethereum/execution-apis/pull/486 is merged.\n\n    if (request.type !== 'legacy' && request.type !== 'eip2930') {\n      // EIP-1559 fees\n      if (\n        typeof request.maxFeePerGas === 'undefined' ||\n        typeof request.maxPriorityFeePerGas === 'undefined'\n      ) {\n        const block = await getBlock()\n        const { maxFeePerGas, maxPriorityFeePerGas } =\n          await internal_estimateFeesPerGas(client, {\n            block: block as Block,\n            chain,\n            request: request as PrepareTransactionRequestParameters,\n          })\n\n        if (\n          typeof args.maxPriorityFeePerGas === 'undefined' &&\n          args.maxFeePerGas &&\n          args.maxFeePerGas < maxPriorityFeePerGas\n        )\n          throw new MaxFeePerGasTooLowError({\n            maxPriorityFeePerGas,\n          })\n\n        request.maxPriorityFeePerGas = maxPriorityFeePerGas\n        request.maxFeePerGas = maxFeePerGas\n      }\n    } else {\n      // Legacy fees\n      if (\n        typeof args.maxFeePerGas !== 'undefined' ||\n        typeof args.maxPriorityFeePerGas !== 'undefined'\n      )\n        throw new Eip1559FeesNotSupportedError()\n\n      if (typeof args.gasPrice === 'undefined') {\n        const block = await getBlock()\n        const { gasPrice: gasPrice_ } = await internal_estimateFeesPerGas(\n          client,\n          {\n            block: block as Block,\n            chain,\n            request: request as PrepareTransactionRequestParameters,\n            type: 'legacy',\n          },\n        )\n        request.gasPrice = gasPrice_\n      }\n    }\n  }\n\n  if (parameters.includes('gas') && typeof gas === 'undefined')\n    request.gas = await getAction(\n      client,\n      estimateGas,\n      'estimateGas',\n    )({\n      ...request,\n      account: account\n        ? { address: account.address, type: 'json-rpc' }\n        : account,\n    } as EstimateGasParameters)\n\n  assertRequest(request as AssertRequestParameters)\n\n  delete request.parameters\n\n  return request as any\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\n\nexport type GetBalanceParameters = {\n  /** The address of the account. */\n  address: Address\n} & (\n  | {\n      /** The balance of the account at a block number. */\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n  | {\n      blockNumber?: undefined\n      /** The balance of the account at a block tag. */\n      blockTag?: BlockTag | undefined\n    }\n)\n\nexport type GetBalanceReturnType = bigint\n\nexport type GetBalanceErrorType =\n  | NumberToHexErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Returns the balance of an address in wei.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBalance\n * - JSON-RPC Methods: [`eth_getBalance`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getbalance)\n *\n * You can convert the balance to ether units with [`formatEther`](https://viem.sh/docs/utilities/formatEther).\n *\n * ```ts\n * const balance = await getBalance(client, {\n *   address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n *   blockTag: 'safe'\n * })\n * const balanceAsEther = formatEther(balance)\n * // \"6.942\"\n * ```\n *\n * @param client - Client to use\n * @param parameters - {@link GetBalanceParameters}\n * @returns The balance of the address in wei. {@link GetBalanceReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBalance } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const balance = await getBalance(client, {\n *   address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n * // 10000000000000000000000n (wei)\n */\nexport async function getBalance<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  { address, blockNumber, blockTag = 'latest' }: GetBalanceParameters,\n): Promise<GetBalanceReturnType> {\n  const blockNumberHex =\n    typeof blockNumber === 'bigint' ? numberToHex(blockNumber) : undefined\n\n  const balance = await client.request({\n    method: 'eth_getBalance',\n    params: [address, blockNumberHex || blockTag],\n  })\n  return BigInt(balance)\n}\n","import type { Address } from 'abitype'\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { BaseError } from '../../errors/base.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { StateOverride } from '../../types/stateOverride.js'\nimport type { TransactionRequest } from '../../types/transaction.js'\nimport type { UnionOmit } from '../../types/utils.js'\nimport {\n  type RecoverAuthorizationAddressErrorType,\n  recoverAuthorizationAddress,\n} from '../../utils/authorization/recoverAuthorizationAddress.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport {\n  type GetEstimateGasErrorReturnType,\n  getEstimateGasError,\n} from '../../utils/errors/getEstimateGasError.js'\nimport { extract } from '../../utils/formatters/extract.js'\nimport {\n  type FormattedTransactionRequest,\n  formatTransactionRequest,\n} from '../../utils/formatters/transactionRequest.js'\nimport { serializeStateOverride } from '../../utils/stateOverride.js'\nimport {\n  type AssertRequestErrorType,\n  type AssertRequestParameters,\n  assertRequest,\n} from '../../utils/transaction/assertRequest.js'\nimport {\n  type PrepareTransactionRequestParameters,\n  prepareTransactionRequest,\n} from '../wallet/prepareTransactionRequest.js'\nimport { getBalance } from './getBalance.js'\n\nexport type EstimateGasParameters<\n  chain extends Chain | undefined = Chain | undefined,\n> = UnionOmit<FormattedEstimateGas<chain>, 'from'> & {\n  account?: Account | Address | undefined\n  stateOverride?: StateOverride | undefined\n} & (\n    | {\n        /** The balance of the account at a block number. */\n        blockNumber?: bigint | undefined\n        blockTag?: undefined\n      }\n    | {\n        blockNumber?: undefined\n        /**\n         * The balance of the account at a block tag.\n         * @default 'latest'\n         */\n        blockTag?: BlockTag | undefined\n      }\n  )\ntype FormattedEstimateGas<chain extends Chain | undefined = Chain | undefined> =\n  FormattedTransactionRequest<chain>\n\nexport type EstimateGasReturnType = bigint\n\nexport type EstimateGasErrorType = GetEstimateGasErrorReturnType<\n  | ParseAccountErrorType\n  | NumberToHexErrorType\n  | RequestErrorType\n  | RecoverAuthorizationAddressErrorType\n  | AssertRequestErrorType\n>\n\n/**\n * Estimates the gas necessary to complete a transaction without submitting it to the network.\n *\n * - Docs: https://viem.sh/docs/actions/public/estimateGas\n * - JSON-RPC Methods: [`eth_estimateGas`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_estimategas)\n *\n * @param client - Client to use\n * @param parameters - {@link EstimateGasParameters}\n * @returns The gas estimate (in gas units). {@link EstimateGasReturnType}\n *\n * @example\n * import { createPublicClient, http, parseEther } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { estimateGas } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const gasEstimate = await estimateGas(client, {\n *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *   value: parseEther('1'),\n * })\n */\nexport async function estimateGas<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  args: EstimateGasParameters<chain>,\n): Promise<EstimateGasReturnType> {\n  const { account: account_ = client.account } = args\n  const account = account_ ? parseAccount(account_) : undefined\n\n  try {\n    const {\n      accessList,\n      authorizationList,\n      blobs,\n      blobVersionedHashes,\n      blockNumber,\n      blockTag,\n      data,\n      gas,\n      gasPrice,\n      maxFeePerBlobGas,\n      maxFeePerGas,\n      maxPriorityFeePerGas,\n      nonce,\n      value,\n      stateOverride,\n      ...rest\n    } = (await prepareTransactionRequest(client, {\n      ...args,\n      parameters:\n        // Some RPC Providers do not compute versioned hashes from blobs. We will need\n        // to compute them.\n        account?.type === 'local' ? undefined : ['blobVersionedHashes'],\n    } as PrepareTransactionRequestParameters)) as EstimateGasParameters\n\n    const blockNumberHex =\n      typeof blockNumber === 'bigint' ? numberToHex(blockNumber) : undefined\n    const block = blockNumberHex || blockTag\n\n    const rpcStateOverride = serializeStateOverride(stateOverride)\n\n    const to = await (async () => {\n      // If `to` exists on the parameters, use that.\n      if (rest.to) return rest.to\n\n      // If no `to` exists, and we are sending a EIP-7702 transaction, use the\n      // address of the first authorization in the list.\n      if (authorizationList && authorizationList.length > 0)\n        return await recoverAuthorizationAddress({\n          authorization: authorizationList[0],\n        }).catch(() => {\n          throw new BaseError(\n            '`to` is required. Could not infer from `authorizationList`',\n          )\n        })\n\n      // Otherwise, we are sending a deployment transaction.\n      return undefined\n    })()\n\n    assertRequest(args as AssertRequestParameters)\n\n    const chainFormat = client.chain?.formatters?.transactionRequest?.format\n    const format = chainFormat || formatTransactionRequest\n\n    const request = format({\n      // Pick out extra data that might exist on the chain's transaction request type.\n      ...extract(rest, { format: chainFormat }),\n      from: account?.address,\n      accessList,\n      authorizationList,\n      blobs,\n      blobVersionedHashes,\n      data,\n      gas,\n      gasPrice,\n      maxFeePerBlobGas,\n      maxFeePerGas,\n      maxPriorityFeePerGas,\n      nonce,\n      to,\n      value,\n    } as TransactionRequest)\n\n    function estimateGas_rpc(parameters: {\n      block: any\n      request: any\n      rpcStateOverride: any\n    }) {\n      const { block, request, rpcStateOverride } = parameters\n      return client.request({\n        method: 'eth_estimateGas',\n        params: rpcStateOverride\n          ? [request, block ?? 'latest', rpcStateOverride]\n          : block\n            ? [request, block]\n            : [request],\n      })\n    }\n\n    let estimate = BigInt(\n      await estimateGas_rpc({ block, request, rpcStateOverride }),\n    )\n\n    // TODO(7702): Remove this once https://github.com/ethereum/execution-apis/issues/561 is resolved.\n    //       Authorization list schema is not implemented on JSON-RPC spec yet, so we need to\n    //       manually estimate the gas.\n    if (authorizationList) {\n      const value = await getBalance(client, { address: request.from })\n      const estimates = await Promise.all(\n        authorizationList.map(async (authorization) => {\n          const { address } = authorization\n          const estimate = await estimateGas_rpc({\n            block,\n            request: {\n              authorizationList: undefined,\n              data,\n              from: account?.address,\n              to: address,\n              value: numberToHex(value),\n            },\n            rpcStateOverride,\n          }).catch(() => 100_000n)\n          return 2n * BigInt(estimate)\n        }),\n      )\n      estimate += estimates.reduce((acc, curr) => acc + curr, 0n)\n    }\n\n    return estimate\n  } catch (err) {\n    throw getEstimateGasError(err as BaseError, {\n      ...args,\n      account,\n      chain: client.chain,\n    })\n  }\n}\n","import type { Abi } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { BaseError } from '../../errors/base.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ContractFunctionArgs,\n  ContractFunctionName,\n  ContractFunctionParameters,\n  GetValue,\n} from '../../types/contract.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { UnionOmit } from '../../types/utils.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  type EncodeFunctionDataParameters,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport {\n  type GetContractErrorReturnType,\n  getContractError,\n} from '../../utils/errors/getContractError.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type EstimateGasErrorType,\n  type EstimateGasParameters,\n  estimateGas,\n} from './estimateGas.js'\n\nexport type EstimateContractGasParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  functionName extends ContractFunctionName<\n    abi,\n    'nonpayable' | 'payable'\n  > = ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n  args extends ContractFunctionArgs<\n    abi,\n    'nonpayable' | 'payable',\n    functionName\n  > = ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName>,\n  chain extends Chain | undefined = Chain | undefined,\n> = ContractFunctionParameters<\n  abi,\n  'nonpayable' | 'payable',\n  functionName,\n  args\n> &\n  UnionOmit<EstimateGasParameters<chain>, 'data' | 'to' | 'value'> &\n  GetValue<\n    abi,\n    functionName,\n    EstimateGasParameters<chain> extends EstimateGasParameters\n      ? EstimateGasParameters<chain>['value']\n      : EstimateGasParameters['value']\n  > & {\n    /** Data to append to the end of the calldata. Useful for adding a [\"domain\" tag](https://opensea.notion.site/opensea/Seaport-Order-Attributions-ec2d69bf455041a5baa490941aad307f). */\n    dataSuffix?: Hex | undefined\n  }\n\nexport type EstimateContractGasReturnType = bigint\n\nexport type EstimateContractGasErrorType = GetContractErrorReturnType<\n  EncodeFunctionDataErrorType | EstimateGasErrorType | ParseAccountErrorType\n>\n\n/**\n * Estimates the gas required to successfully execute a contract write function call.\n *\n * - Docs: https://viem.sh/docs/contract/estimateContractGas\n *\n * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`estimateGas` action](https://viem.sh/docs/actions/public/estimateGas) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n *\n * @param client - Client to use\n * @param parameters - {@link EstimateContractGasParameters}\n * @returns The gas estimate (in wei). {@link EstimateContractGasReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { estimateContractGas } from 'viem/contract'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const gas = await estimateContractGas(client, {\n *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *   abi: parseAbi(['function mint() public']),\n *   functionName: 'mint',\n *   account: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266',\n * })\n */\nexport async function estimateContractGas<\n  const abi extends Abi | readonly unknown[],\n  functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n  args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName>,\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: EstimateContractGasParameters<abi, functionName, args, chain>,\n): Promise<EstimateContractGasReturnType> {\n  const { abi, address, args, functionName, dataSuffix, ...request } =\n    parameters as EstimateContractGasParameters\n  const data = encodeFunctionData({\n    abi,\n    args,\n    functionName,\n  } as EncodeFunctionDataParameters)\n  try {\n    const gas = await getAction(\n      client,\n      estimateGas,\n      'estimateGas',\n    )({\n      data: `${data}${dataSuffix ? dataSuffix.replace('0x', '') : ''}`,\n      to: address,\n      ...request,\n    } as unknown as EstimateGasParameters)\n    return gas\n  } catch (error) {\n    const account = request.account ? parseAccount(request.account) : undefined\n    throw getContractError(error as BaseError, {\n      abi,\n      address,\n      args,\n      docsPath: '/docs/contract/estimateContractGas',\n      functionName,\n      sender: account?.address,\n    })\n  }\n}\n","import type { Abi, AbiParameter } from 'abitype'\n\nimport {\n  AbiDecodingDataSizeTooSmallError,\n  type AbiDecodingDataSizeTooSmallErrorType,\n  AbiEventSignatureEmptyTopicsError,\n  type AbiEventSignatureEmptyTopicsErrorType,\n  AbiEventSignatureNotFoundError,\n  type AbiEventSignatureNotFoundErrorType,\n  DecodeLogDataMismatch,\n  type DecodeLogDataMismatchErrorType,\n  DecodeLogTopicsMismatch,\n  type DecodeLogTopicsMismatchErrorType,\n} from '../../errors/abi.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type {\n  ContractEventArgsFromTopics,\n  ContractEventName,\n  EventDefinition,\n} from '../../types/contract.js'\nimport type { Hex } from '../../types/misc.js'\nimport type {\n  IsNarrowable,\n  Prettify,\n  UnionEvaluate,\n} from '../../types/utils.js'\nimport { size } from '../data/size.js'\nimport {\n  type ToEventSelectorErrorType,\n  toEventSelector,\n} from '../hash/toEventSelector.js'\n\nimport { PositionOutOfBoundsError } from '../../errors/cursor.js'\nimport {\n  type DecodeAbiParametersErrorType,\n  decodeAbiParameters,\n} from './decodeAbiParameters.js'\nimport { type FormatAbiItemErrorType, formatAbiItem } from './formatAbiItem.js'\n\nexport type DecodeEventLogParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> | undefined = ContractEventName<abi>,\n  topics extends Hex[] = Hex[],\n  data extends Hex | undefined = undefined,\n  strict extends boolean = true,\n> = {\n  abi: abi\n  data?: data | undefined\n  eventName?: eventName | ContractEventName<abi> | undefined\n  strict?: strict | boolean | undefined\n  topics: [signature: Hex, ...args: topics] | []\n}\n\nexport type DecodeEventLogReturnType<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> | undefined = ContractEventName<abi>,\n  topics extends Hex[] = Hex[],\n  data extends Hex | undefined = undefined,\n  strict extends boolean = true,\n  ///\n  allEventNames extends\n    ContractEventName<abi> = eventName extends ContractEventName<abi>\n    ? eventName\n    : ContractEventName<abi>,\n> = IsNarrowable<abi, Abi> extends true\n  ? {\n      [name in allEventNames]: Prettify<\n        {\n          eventName: name\n        } & UnionEvaluate<\n          ContractEventArgsFromTopics<abi, name, strict> extends infer allArgs\n            ? topics extends readonly []\n              ? data extends undefined\n                ? { args?: undefined }\n                : { args?: allArgs | undefined }\n              : { args: allArgs }\n            : never\n        >\n      >\n    }[allEventNames]\n  : {\n      eventName: eventName\n      args: readonly unknown[] | undefined\n    }\n\nexport type DecodeEventLogErrorType =\n  | AbiDecodingDataSizeTooSmallErrorType\n  | AbiEventSignatureEmptyTopicsErrorType\n  | AbiEventSignatureNotFoundErrorType\n  | DecodeAbiParametersErrorType\n  | DecodeLogTopicsMismatchErrorType\n  | DecodeLogDataMismatchErrorType\n  | FormatAbiItemErrorType\n  | ToEventSelectorErrorType\n  | ErrorType\n\nconst docsPath = '/docs/contract/decodeEventLog'\n\nexport function decodeEventLog<\n  const abi extends Abi | readonly unknown[],\n  eventName extends ContractEventName<abi> | undefined = undefined,\n  topics extends Hex[] = Hex[],\n  data extends Hex | undefined = undefined,\n  strict extends boolean = true,\n>(\n  parameters: DecodeEventLogParameters<abi, eventName, topics, data, strict>,\n): DecodeEventLogReturnType<abi, eventName, topics, data, strict> {\n  const {\n    abi,\n    data,\n    strict: strict_,\n    topics,\n  } = parameters as DecodeEventLogParameters\n\n  const strict = strict_ ?? true\n  const [signature, ...argTopics] = topics\n  if (!signature) throw new AbiEventSignatureEmptyTopicsError({ docsPath })\n\n  const abiItem = abi.find(\n    (x) =>\n      x.type === 'event' &&\n      signature === toEventSelector(formatAbiItem(x) as EventDefinition),\n  )\n\n  if (!(abiItem && 'name' in abiItem) || abiItem.type !== 'event')\n    throw new AbiEventSignatureNotFoundError(signature, { docsPath })\n\n  const { name, inputs } = abiItem\n  const isUnnamed = inputs?.some((x) => !('name' in x && x.name))\n\n  const args: any = isUnnamed ? [] : {}\n\n  // Decode topics (indexed args).\n  const indexedInputs = inputs\n    .map((x, i) => [x, i] as const)\n    .filter(([x]) => 'indexed' in x && x.indexed)\n  for (let i = 0; i < indexedInputs.length; i++) {\n    const [param, argIndex] = indexedInputs[i]\n    const topic = argTopics[i]\n    if (!topic)\n      throw new DecodeLogTopicsMismatch({\n        abiItem,\n        param: param as AbiParameter & { indexed: boolean },\n      })\n    args[isUnnamed ? argIndex : param.name || argIndex] = decodeTopic({\n      param,\n      value: topic,\n    })\n  }\n\n  // Decode data (non-indexed args).\n  const nonIndexedInputs = inputs.filter((x) => !('indexed' in x && x.indexed))\n  if (nonIndexedInputs.length > 0) {\n    if (data && data !== '0x') {\n      try {\n        const decodedData = decodeAbiParameters(nonIndexedInputs, data)\n        if (decodedData) {\n          if (isUnnamed)\n            for (let i = 0; i < inputs.length; i++)\n              args[i] = args[i] ?? decodedData.shift()\n          else\n            for (let i = 0; i < nonIndexedInputs.length; i++)\n              args[nonIndexedInputs[i].name!] = decodedData[i]\n        }\n      } catch (err) {\n        if (strict) {\n          if (\n            err instanceof AbiDecodingDataSizeTooSmallError ||\n            err instanceof PositionOutOfBoundsError\n          )\n            throw new DecodeLogDataMismatch({\n              abiItem,\n              data: data,\n              params: nonIndexedInputs,\n              size: size(data),\n            })\n          throw err\n        }\n      }\n    } else if (strict) {\n      throw new DecodeLogDataMismatch({\n        abiItem,\n        data: '0x',\n        params: nonIndexedInputs,\n        size: 0,\n      })\n    }\n  }\n\n  return {\n    eventName: name,\n    args: Object.values(args).length > 0 ? args : undefined,\n  } as unknown as DecodeEventLogReturnType<abi, eventName, topics, data, strict>\n}\n\nfunction decodeTopic({ param, value }: { param: AbiParameter; value: Hex }) {\n  if (\n    param.type === 'string' ||\n    param.type === 'bytes' ||\n    param.type === 'tuple' ||\n    param.type.match(/^(.*)\\[(\\d+)?\\]$/)\n  )\n    return value\n  const decodedArg = decodeAbiParameters([param], value) || []\n  return decodedArg[0]\n}\n","// TODO(v3): checksum address.\n\nimport type { Abi, AbiEvent, AbiEventParameter, Address } from 'abitype'\nimport {\n  AbiEventSignatureNotFoundError,\n  DecodeLogDataMismatch,\n  DecodeLogTopicsMismatch,\n} from '../../errors/abi.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { ContractEventName, GetEventArgs } from '../../types/contract.js'\nimport type { Log } from '../../types/log.js'\nimport type { RpcLog } from '../../types/rpc.js'\nimport { isAddressEqual } from '../address/isAddressEqual.js'\nimport { toBytes } from '../encoding/toBytes.js'\nimport { keccak256 } from '../hash/keccak256.js'\nimport { toEventSelector } from '../hash/toEventSelector.js'\nimport {\n  type DecodeEventLogErrorType,\n  decodeEventLog,\n} from './decodeEventLog.js'\n\nexport type ParseEventLogsParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends\n    | ContractEventName<abi>\n    | ContractEventName<abi>[]\n    | undefined = ContractEventName<abi>,\n  strict extends boolean | undefined = boolean | undefined,\n  ///\n  allArgs = GetEventArgs<\n    abi,\n    eventName extends ContractEventName<abi>\n      ? eventName\n      : ContractEventName<abi>,\n    {\n      EnableUnion: true\n      IndexedOnly: false\n      Required: false\n    }\n  >,\n> = {\n  /** Contract ABI. */\n  abi: abi\n  /** Arguments for the event. */\n  args?: allArgs | undefined\n  /** Contract event. */\n  eventName?:\n    | eventName\n    | ContractEventName<abi>\n    | ContractEventName<abi>[]\n    | undefined\n  /** List of logs. */\n  logs: (Log | RpcLog)[]\n  strict?: strict | boolean | undefined\n}\n\nexport type ParseEventLogsReturnType<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends\n    | ContractEventName<abi>\n    | ContractEventName<abi>[]\n    | undefined = ContractEventName<abi>,\n  strict extends boolean | undefined = boolean | undefined,\n  ///\n  derivedEventName extends\n    | ContractEventName<abi>\n    | undefined = eventName extends ContractEventName<abi>[]\n    ? eventName[number]\n    : eventName,\n> = Log<bigint, number, false, undefined, strict, abi, derivedEventName>[]\n\nexport type ParseEventLogsErrorType = DecodeEventLogErrorType | ErrorType\n\n/**\n * Extracts & decodes logs matching the provided signature(s) (`abi` + optional `eventName`)\n * from a set of opaque logs.\n *\n * @param parameters - {@link ParseEventLogsParameters}\n * @returns The logs. {@link ParseEventLogsReturnType}\n *\n * @example\n * import { createClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { parseEventLogs } from 'viem/op-stack'\n *\n * const client = createClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n *\n * const receipt = await getTransactionReceipt(client, {\n *   hash: '0xec23b2ba4bc59ba61554507c1b1bc91649e6586eb2dd00c728e8ed0db8bb37ea',\n * })\n *\n * const logs = parseEventLogs({ logs: receipt.logs })\n * // [{ args: { ... }, eventName: 'TransactionDeposited', ... }, ...]\n */\nexport function parseEventLogs<\n  abi extends Abi | readonly unknown[],\n  strict extends boolean | undefined = true,\n  eventName extends\n    | ContractEventName<abi>\n    | ContractEventName<abi>[]\n    | undefined = undefined,\n>(\n  parameters: ParseEventLogsParameters<abi, eventName, strict>,\n): ParseEventLogsReturnType<abi, eventName, strict> {\n  const { abi, args, logs, strict = true } = parameters\n\n  const eventName = (() => {\n    if (!parameters.eventName) return undefined\n    if (Array.isArray(parameters.eventName)) return parameters.eventName\n    return [parameters.eventName as string]\n  })()\n\n  return logs\n    .map((log) => {\n      try {\n        const abiItem = (abi as Abi).find(\n          (abiItem) =>\n            abiItem.type === 'event' &&\n            log.topics[0] === toEventSelector(abiItem),\n        ) as AbiEvent\n        if (!abiItem) return null\n\n        const event = decodeEventLog({\n          ...log,\n          abi: [abiItem],\n          strict,\n        })\n\n        // Check that the decoded event name matches the provided event name.\n        if (eventName && !eventName.includes(event.eventName)) return null\n\n        // Check that the decoded event args match the provided args.\n        if (\n          !includesArgs({\n            args: event.args,\n            inputs: abiItem.inputs,\n            matchArgs: args,\n          })\n        )\n          return null\n\n        return { ...event, ...log }\n      } catch (err) {\n        let eventName: string | undefined\n        let isUnnamed: boolean | undefined\n\n        if (err instanceof AbiEventSignatureNotFoundError) return null\n        if (\n          err instanceof DecodeLogDataMismatch ||\n          err instanceof DecodeLogTopicsMismatch\n        ) {\n          // If strict mode is on, and log data/topics do not match event definition, skip.\n          if (strict) return null\n          eventName = err.abiItem.name\n          isUnnamed = err.abiItem.inputs?.some((x) => !('name' in x && x.name))\n        }\n\n        // Set args to empty if there is an error decoding (e.g. indexed/non-indexed params mismatch).\n        return { ...log, args: isUnnamed ? [] : {}, eventName }\n      }\n    })\n    .filter(Boolean) as unknown as ParseEventLogsReturnType<\n    abi,\n    eventName,\n    strict\n  >\n}\n\nfunction includesArgs(parameters: {\n  args: unknown\n  inputs: AbiEvent['inputs']\n  matchArgs: unknown\n}) {\n  const { args, inputs, matchArgs } = parameters\n\n  if (!matchArgs) return true\n  if (!args) return false\n\n  function isEqual(input: AbiEventParameter, value: unknown, arg: unknown) {\n    try {\n      if (input.type === 'address')\n        return isAddressEqual(value as Address, arg as Address)\n      if (input.type === 'string' || input.type === 'bytes')\n        return keccak256(toBytes(value as string)) === arg\n      return value === arg\n    } catch {\n      return false\n    }\n  }\n\n  if (Array.isArray(args) && Array.isArray(matchArgs)) {\n    return matchArgs.every((value, index) => {\n      if (value === null || value === undefined) return true\n      const input = inputs[index]\n      if (!input) return false\n      const value_ = Array.isArray(value) ? value : [value]\n      return value_.some((value) => isEqual(input, value, args[index]))\n    })\n  }\n\n  if (\n    typeof args === 'object' &&\n    !Array.isArray(args) &&\n    typeof matchArgs === 'object' &&\n    !Array.isArray(matchArgs)\n  )\n    return Object.entries(matchArgs).every(([key, value]) => {\n      if (value === null || value === undefined) return true\n      const input = inputs.find((input) => input.name === key)\n      if (!input) return false\n      const value_ = Array.isArray(value) ? value : [value]\n      return value_.some((value) =>\n        isEqual(input, value, (args as Record<string, unknown>)[key]),\n      )\n    })\n\n  return false\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Log } from '../../types/log.js'\nimport type { RpcLog } from '../../types/rpc.js'\nimport type { ExactPartial } from '../../types/utils.js'\n\nexport type FormatLogErrorType = ErrorType\n\nexport function formatLog(\n  log: ExactPartial<RpcLog>,\n  {\n    args,\n    eventName,\n  }: { args?: unknown | undefined; eventName?: string | undefined } = {},\n) {\n  return {\n    ...log,\n    blockHash: log.blockHash ? log.blockHash : null,\n    blockNumber: log.blockNumber ? BigInt(log.blockNumber) : null,\n    logIndex: log.logIndex ? Number(log.logIndex) : null,\n    transactionHash: log.transactionHash ? log.transactionHash : null,\n    transactionIndex: log.transactionIndex\n      ? Number(log.transactionIndex)\n      : null,\n    ...(eventName ? { args, eventName } : {}),\n  } as Log\n}\n","import type { AbiEvent, Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockNumber, BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  MaybeAbiEventName,\n  MaybeExtractEventArgsFromAbi,\n} from '../../types/contract.js'\nimport type { Log } from '../../types/log.js'\nimport type { Hash, LogTopic } from '../../types/misc.js'\nimport type { RpcLog } from '../../types/rpc.js'\nimport type { DecodeEventLogErrorType } from '../../utils/abi/decodeEventLog.js'\nimport {\n  type EncodeEventTopicsErrorType,\n  type EncodeEventTopicsParameters,\n  encodeEventTopics,\n} from '../../utils/abi/encodeEventTopics.js'\nimport { parseEventLogs } from '../../utils/abi/parseEventLogs.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport {\n  type FormatLogErrorType,\n  formatLog,\n} from '../../utils/formatters/log.js'\n\nexport type GetLogsParameters<\n  abiEvent extends AbiEvent | undefined = undefined,\n  abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  //\n  _eventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n> = {\n  /** Address or list of addresses from which logs originated */\n  address?: Address | Address[] | undefined\n} & (\n  | {\n      event: abiEvent\n      events?: undefined\n      args?: MaybeExtractEventArgsFromAbi<abiEvents, _eventName> | undefined\n      /**\n       * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n       * @default false\n       */\n      strict?: strict | undefined\n    }\n  | {\n      event?: undefined\n      events: abiEvents\n      args?: undefined\n      /**\n       * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n       * @default false\n       */\n      strict?: strict | undefined\n    }\n  | {\n      event?: undefined\n      events?: undefined\n      args?: undefined\n      strict?: undefined\n    }\n) &\n  (\n    | {\n        /** Block number or tag after which to include logs */\n        fromBlock?: fromBlock | BlockNumber | BlockTag | undefined\n        /** Block number or tag before which to include logs */\n        toBlock?: toBlock | BlockNumber | BlockTag | undefined\n        blockHash?: undefined\n      }\n    | {\n        fromBlock?: undefined\n        toBlock?: undefined\n        /** Hash of block to include logs from */\n        blockHash?: Hash | undefined\n      }\n  )\n\nexport type GetLogsReturnType<\n  abiEvent extends AbiEvent | undefined = undefined,\n  abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  //\n  _eventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n  _pending extends boolean =\n    | (fromBlock extends 'pending' ? true : false)\n    | (toBlock extends 'pending' ? true : false),\n> = Log<bigint, number, _pending, abiEvent, strict, abiEvents, _eventName>[]\n\nexport type GetLogsErrorType =\n  | DecodeEventLogErrorType\n  | EncodeEventTopicsErrorType\n  | FormatLogErrorType\n  | NumberToHexErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Returns a list of event logs matching the provided parameters.\n *\n * - Docs: https://viem.sh/docs/actions/public/getLogs\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/logs_event-logs\n * - JSON-RPC Methods: [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs)\n *\n * @param client - Client to use\n * @param parameters - {@link GetLogsParameters}\n * @returns A list of event logs. {@link GetLogsReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbiItem } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getLogs } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const logs = await getLogs(client)\n */\nexport async function getLogs<\n  chain extends Chain | undefined,\n  const abiEvent extends AbiEvent | undefined = undefined,\n  const abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n>(\n  client: Client<Transport, chain>,\n  {\n    address,\n    blockHash,\n    fromBlock,\n    toBlock,\n    event,\n    events: events_,\n    args,\n    strict: strict_,\n  }: GetLogsParameters<abiEvent, abiEvents, strict, fromBlock, toBlock> = {},\n): Promise<GetLogsReturnType<abiEvent, abiEvents, strict, fromBlock, toBlock>> {\n  const strict = strict_ ?? false\n  const events = events_ ?? (event ? [event] : undefined)\n\n  let topics: LogTopic[] = []\n  if (events) {\n    const encoded = (events as AbiEvent[]).flatMap((event) =>\n      encodeEventTopics({\n        abi: [event],\n        eventName: (event as AbiEvent).name,\n        args: events_ ? undefined : args,\n      } as EncodeEventTopicsParameters),\n    )\n    // TODO: Clean up type casting\n    topics = [encoded as LogTopic]\n    if (event) topics = topics[0] as LogTopic[]\n  }\n\n  let logs: RpcLog[]\n  if (blockHash) {\n    logs = await client.request({\n      method: 'eth_getLogs',\n      params: [{ address, topics, blockHash }],\n    })\n  } else {\n    logs = await client.request({\n      method: 'eth_getLogs',\n      params: [\n        {\n          address,\n          topics,\n          fromBlock:\n            typeof fromBlock === 'bigint' ? numberToHex(fromBlock) : fromBlock,\n          toBlock: typeof toBlock === 'bigint' ? numberToHex(toBlock) : toBlock,\n        },\n      ],\n    })\n  }\n\n  const formattedLogs = logs.map((log) => formatLog(log))\n  if (!events)\n    return formattedLogs as GetLogsReturnType<\n      abiEvent,\n      abiEvents,\n      strict,\n      fromBlock,\n      toBlock\n    >\n  return parseEventLogs({\n    abi: events,\n    args: args as any,\n    logs: formattedLogs,\n    strict,\n  }) as unknown as GetLogsReturnType<\n    abiEvent,\n    abiEvents,\n    strict,\n    fromBlock,\n    toBlock\n  >\n}\n","import type { Abi, Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockNumber, BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ContractEventArgs,\n  ContractEventName,\n} from '../../types/contract.js'\nimport type { Log } from '../../types/log.js'\nimport type { Hash } from '../../types/misc.js'\nimport {\n  type GetAbiItemErrorType,\n  type GetAbiItemParameters,\n  getAbiItem,\n} from '../../utils/abi/getAbiItem.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type GetLogsErrorType,\n  type GetLogsParameters,\n  getLogs,\n} from './getLogs.js'\n\nexport type GetContractEventsParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> | undefined =\n    | ContractEventName<abi>\n    | undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n> = {\n  /** The address of the contract. */\n  address?: Address | Address[] | undefined\n  /** Contract ABI. */\n  abi: abi\n  args?:\n    | ContractEventArgs<\n        abi,\n        eventName extends ContractEventName<abi>\n          ? eventName\n          : ContractEventName<abi>\n      >\n    | undefined\n  /** Contract event. */\n  eventName?: eventName | ContractEventName<abi> | undefined\n  /**\n   * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n   * @default false\n   */\n  strict?: strict | boolean | undefined\n} & (\n  | {\n      /** Block number or tag after which to include logs */\n      fromBlock?: fromBlock | BlockNumber | BlockTag | undefined\n      /** Block number or tag before which to include logs */\n      toBlock?: toBlock | BlockNumber | BlockTag | undefined\n      blockHash?: undefined\n    }\n  | {\n      fromBlock?: undefined\n      toBlock?: undefined\n      /** Hash of block to include logs from */\n      blockHash?: Hash | undefined\n    }\n)\n\nexport type GetContractEventsReturnType<\n  abi extends Abi | readonly unknown[] = readonly unknown[],\n  eventName extends ContractEventName<abi> | undefined =\n    | ContractEventName<abi>\n    | undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  ///\n  isPending extends boolean =\n    | (fromBlock extends 'pending' ? true : false)\n    | (toBlock extends 'pending' ? true : false),\n> = Log<bigint, number, isPending, undefined, strict, abi, eventName>[]\n\nexport type GetContractEventsErrorType =\n  | GetAbiItemErrorType\n  | GetLogsErrorType\n  | ErrorType\n\n/**\n * Returns a list of event logs emitted by a contract.\n *\n * - Docs: https://viem.sh/docs/contract/getContractEvents#getcontractevents\n * - JSON-RPC Methods: [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs)\n *\n * @param client - Client to use\n * @param parameters - {@link GetContractEventsParameters}\n * @returns A list of event logs. {@link GetContractEventsReturnType}\n *\n * @example\n * import { createClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getContractEvents } from 'viem/public'\n * import { wagmiAbi } from './abi'\n *\n * const client = createClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const logs = await getContractEvents(client, {\n *  address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *  abi: wagmiAbi,\n *  eventName: 'Transfer'\n * })\n */\nexport async function getContractEvents<\n  chain extends Chain | undefined,\n  const abi extends Abi | readonly unknown[],\n  eventName extends ContractEventName<abi> | undefined = undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n>(\n  client: Client<Transport, chain>,\n  parameters: GetContractEventsParameters<\n    abi,\n    eventName,\n    strict,\n    fromBlock,\n    toBlock\n  >,\n): Promise<\n  GetContractEventsReturnType<abi, eventName, strict, fromBlock, toBlock>\n> {\n  const {\n    abi,\n    address,\n    args,\n    blockHash,\n    eventName,\n    fromBlock,\n    toBlock,\n    strict,\n  } = parameters\n  const event = eventName\n    ? getAbiItem({ abi, name: eventName } as GetAbiItemParameters)\n    : undefined\n  const events = !event\n    ? (abi as Abi).filter((x) => x.type === 'event')\n    : undefined\n  return getAction(\n    client,\n    getLogs,\n    'getLogs',\n  )({\n    address,\n    args,\n    blockHash,\n    event,\n    events,\n    fromBlock,\n    toBlock,\n    strict,\n  } as {} as GetLogsParameters) as unknown as GetContractEventsReturnType<\n    abi,\n    eventName,\n    strict,\n    fromBlock,\n    toBlock\n  >\n}\n","import type { Abi } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { BaseError } from '../../errors/base.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ContractFunctionArgs,\n  ContractFunctionName,\n  ContractFunctionParameters,\n  ContractFunctionReturnType,\n} from '../../types/contract.js'\nimport type { UnionEvaluate } from '../../types/utils.js'\nimport {\n  type DecodeFunctionResultErrorType,\n  decodeFunctionResult,\n} from '../../utils/abi/decodeFunctionResult.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  type EncodeFunctionDataParameters,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport {\n  type GetContractErrorReturnType,\n  getContractError,\n} from '../../utils/errors/getContractError.js'\nimport { getAction } from '../../utils/getAction.js'\n\nimport { type CallErrorType, type CallParameters, call } from './call.js'\n\nexport type ReadContractParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  functionName extends ContractFunctionName<\n    abi,\n    'pure' | 'view'\n  > = ContractFunctionName<abi, 'pure' | 'view'>,\n  args extends ContractFunctionArgs<\n    abi,\n    'pure' | 'view',\n    functionName\n  > = ContractFunctionArgs<abi, 'pure' | 'view', functionName>,\n> = UnionEvaluate<\n  Pick<\n    CallParameters,\n    | 'account'\n    | 'blockNumber'\n    | 'blockTag'\n    | 'factory'\n    | 'factoryData'\n    | 'stateOverride'\n  >\n> &\n  ContractFunctionParameters<abi, 'pure' | 'view', functionName, args, boolean>\n\nexport type ReadContractReturnType<\n  abi extends Abi | readonly unknown[] = Abi,\n  functionName extends ContractFunctionName<\n    abi,\n    'pure' | 'view'\n  > = ContractFunctionName<abi, 'pure' | 'view'>,\n  args extends ContractFunctionArgs<\n    abi,\n    'pure' | 'view',\n    functionName\n  > = ContractFunctionArgs<abi, 'pure' | 'view', functionName>,\n> = ContractFunctionReturnType<abi, 'pure' | 'view', functionName, args>\n\nexport type ReadContractErrorType = GetContractErrorReturnType<\n  CallErrorType | EncodeFunctionDataErrorType | DecodeFunctionResultErrorType\n>\n\n/**\n * Calls a read-only function on a contract, and returns the response.\n *\n * - Docs: https://viem.sh/docs/contract/readContract\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_reading-contracts\n *\n * A \"read-only\" function (constant function) on a Solidity contract is denoted by a `view` or `pure` keyword. They can only read the state of the contract, and cannot make any changes to it. Since read-only methods do not change the state of the contract, they do not require any gas to be executed, and can be called by any user without the need to pay for gas.\n *\n * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`call` action](https://viem.sh/docs/actions/public/call) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n *\n * @param client - Client to use\n * @param parameters - {@link ReadContractParameters}\n * @returns The response from the contract. Type is inferred. {@link ReadContractReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { readContract } from 'viem/contract'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const result = await readContract(client, {\n *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *   abi: parseAbi(['function balanceOf(address) view returns (uint256)']),\n *   functionName: 'balanceOf',\n *   args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n * })\n * // 424122n\n */\nexport async function readContract<\n  chain extends Chain | undefined,\n  const abi extends Abi | readonly unknown[],\n  functionName extends ContractFunctionName<abi, 'pure' | 'view'>,\n  const args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName>,\n>(\n  client: Client<Transport, chain>,\n  parameters: ReadContractParameters<abi, functionName, args>,\n): Promise<ReadContractReturnType<abi, functionName, args>> {\n  const { abi, address, args, functionName, ...rest } =\n    parameters as ReadContractParameters\n  const calldata = encodeFunctionData({\n    abi,\n    args,\n    functionName,\n  } as EncodeFunctionDataParameters)\n  try {\n    const { data } = await getAction(\n      client,\n      call,\n      'call',\n    )({\n      ...(rest as CallParameters),\n      data: calldata,\n      to: address!,\n    })\n    return decodeFunctionResult({\n      abi,\n      args,\n      functionName,\n      data: data || '0x',\n    }) as ReadContractReturnType<abi, functionName>\n  } catch (error) {\n    throw getContractError(error as BaseError, {\n      abi,\n      address,\n      args,\n      docsPath: '/docs/contract/readContract',\n      functionName,\n    })\n  }\n}\n","import type { Abi, AbiFunction, AbiStateMutability, Address } from 'abitype'\n\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { BaseError } from '../../errors/base.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account, ParseAccount } from '../../types/account.js'\nimport type { Chain, DeriveChain } from '../../types/chain.js'\nimport type {\n  ContractFunctionArgs,\n  ContractFunctionName,\n  ContractFunctionParameters,\n  ContractFunctionReturnType,\n  ExtractAbiFunctionForArgs,\n} from '../../types/contract.js'\nimport type { Hex } from '../../types/misc.js'\nimport type {\n  IsNarrowable,\n  NoInfer,\n  Prettify,\n  UnionEvaluate,\n  UnionOmit,\n} from '../../types/utils.js'\nimport {\n  type DecodeFunctionResultErrorType,\n  decodeFunctionResult,\n} from '../../utils/abi/decodeFunctionResult.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport {\n  type GetContractErrorReturnType,\n  getContractError,\n} from '../../utils/errors/getContractError.js'\nimport type { WriteContractParameters } from '../wallet/writeContract.js'\n\nimport type { TransactionRequest } from '../../types/transaction.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { type CallErrorType, type CallParameters, call } from './call.js'\n\nexport type GetMutabilityAwareValue<\n  abi extends Abi | readonly unknown[],\n  mutability extends AbiStateMutability = AbiStateMutability,\n  functionName extends ContractFunctionName<\n    abi,\n    mutability\n  > = ContractFunctionName<abi, mutability>,\n  valueType = TransactionRequest['value'],\n  args extends ContractFunctionArgs<\n    abi,\n    mutability,\n    functionName\n  > = ContractFunctionArgs<abi, mutability, functionName>,\n  abiFunction extends AbiFunction = abi extends Abi\n    ? ExtractAbiFunctionForArgs<abi, mutability, functionName, args>\n    : AbiFunction,\n  _Narrowable extends boolean = IsNarrowable<abi, Abi>,\n> = _Narrowable extends true\n  ? abiFunction['stateMutability'] extends 'payable'\n    ? { value?: NoInfer<valueType> | undefined }\n    : abiFunction['payable'] extends true\n      ? { value?: NoInfer<valueType> | undefined }\n      : { value?: undefined }\n  : { value?: NoInfer<valueType> | undefined }\n\nexport type SimulateContractParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  functionName extends ContractFunctionName<\n    abi,\n    'nonpayable' | 'payable'\n  > = ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n  args extends ContractFunctionArgs<\n    abi,\n    'nonpayable' | 'payable',\n    functionName\n  > = ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName>,\n  chain extends Chain | undefined = Chain | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  accountOverride extends Account | Address | null | undefined = undefined,\n  ///\n  derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>,\n> = {\n  account?: accountOverride | null | undefined\n  chain?: chainOverride | undefined\n  /** Data to append to the end of the calldata. Useful for adding a [\"domain\" tag](https://opensea.notion.site/opensea/Seaport-Order-Attributions-ec2d69bf455041a5baa490941aad307f). */\n  dataSuffix?: Hex | undefined\n} & ContractFunctionParameters<\n  abi,\n  'nonpayable' | 'payable',\n  functionName,\n  args\n> &\n  UnionOmit<\n    CallParameters<derivedChain>,\n    | 'account'\n    | 'batch'\n    | 'code'\n    | 'to'\n    | 'data'\n    | 'factory'\n    | 'factoryData'\n    | 'value'\n  > &\n  GetMutabilityAwareValue<\n    abi,\n    'nonpayable' | 'payable',\n    functionName,\n    CallParameters<derivedChain> extends CallParameters\n      ? CallParameters<derivedChain>['value']\n      : CallParameters['value'],\n    args\n  >\n\nexport type SimulateContractReturnType<\n  out abi extends Abi | readonly unknown[] = Abi,\n  in out functionName extends ContractFunctionName<\n    abi,\n    'nonpayable' | 'payable'\n  > = ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n  in out args extends ContractFunctionArgs<\n    abi,\n    'nonpayable' | 'payable',\n    functionName\n  > = ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName>,\n  /** @ts-expect-error cast variance */\n  out chain extends Chain | undefined = Chain | undefined,\n  out account extends Account | undefined = Account | undefined,\n  out chainOverride extends Chain | undefined = Chain | undefined,\n  out accountOverride extends Account | Address | null | undefined =\n    | Account\n    | Address\n    | null\n    | undefined,\n  ///\n  in out minimizedAbi extends Abi = readonly [\n    ExtractAbiFunctionForArgs<\n      abi extends Abi ? abi : Abi,\n      'nonpayable' | 'payable',\n      functionName,\n      args\n    >,\n  ],\n  out resolvedAccount extends\n    | Account\n    | null\n    | undefined = accountOverride extends Account | Address | null\n    ? ParseAccount<accountOverride>\n    : account,\n> = {\n  result: ContractFunctionReturnType<\n    minimizedAbi,\n    'nonpayable' | 'payable',\n    functionName,\n    args\n  >\n  request: Prettify<\n    UnionEvaluate<\n      UnionOmit<\n        WriteContractParameters<\n          minimizedAbi,\n          functionName,\n          args,\n          chain,\n          undefined,\n          chainOverride\n        >,\n        'account' | 'abi' | 'args' | 'chain' | 'functionName'\n      >\n    > &\n      ContractFunctionParameters<\n        minimizedAbi,\n        'nonpayable' | 'payable',\n        functionName,\n        args\n      > & {\n        chain: DeriveChain<chain, chainOverride>\n      } & (resolvedAccount extends Account | null\n        ? { account: resolvedAccount }\n        : { account?: undefined })\n  >\n}\n\nexport type SimulateContractErrorType =\n  | ParseAccountErrorType\n  | EncodeFunctionDataErrorType\n  | GetContractErrorReturnType<CallErrorType | DecodeFunctionResultErrorType>\n  | ErrorType\n\n/**\n * Simulates/validates a contract interaction. This is useful for retrieving **return data** and **revert reasons** of contract write functions.\n *\n * - Docs: https://viem.sh/docs/contract/simulateContract\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_writing-to-contracts\n *\n * This function does not require gas to execute and _**does not**_ change the state of the blockchain. It is almost identical to [`readContract`](https://viem.sh/docs/contract/readContract), but also supports contract write functions.\n *\n * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`call` action](https://viem.sh/docs/actions/public/call) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n *\n * @param client - Client to use\n * @param parameters - {@link SimulateContractParameters}\n * @returns The simulation result and write request. {@link SimulateContractReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { simulateContract } from 'viem/contract'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const result = await simulateContract(client, {\n *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *   abi: parseAbi(['function mint(uint32) view returns (uint32)']),\n *   functionName: 'mint',\n *   args: ['69420'],\n *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n */\nexport async function simulateContract<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  const abi extends Abi | readonly unknown[],\n  functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n  const args extends ContractFunctionArgs<\n    abi,\n    'nonpayable' | 'payable',\n    functionName\n  >,\n  chainOverride extends Chain | undefined = undefined,\n  accountOverride extends Account | Address | null | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: SimulateContractParameters<\n    abi,\n    functionName,\n    args,\n    chain,\n    chainOverride,\n    accountOverride\n  >,\n): Promise<\n  SimulateContractReturnType<\n    abi,\n    functionName,\n    args,\n    chain,\n    account,\n    chainOverride,\n    accountOverride\n  >\n> {\n  const { abi, address, args, dataSuffix, functionName, ...callRequest } =\n    parameters as SimulateContractParameters\n\n  const account = callRequest.account\n    ? parseAccount(callRequest.account)\n    : client.account\n  const calldata = encodeFunctionData({ abi, args, functionName })\n  try {\n    const { data } = await getAction(\n      client,\n      call,\n      'call',\n    )({\n      batch: false,\n      data: `${calldata}${dataSuffix ? dataSuffix.replace('0x', '') : ''}`,\n      to: address,\n      ...callRequest,\n      account,\n    })\n    const result = decodeFunctionResult({\n      abi,\n      args,\n      functionName,\n      data: data || '0x',\n    })\n    const minimizedAbi = abi.filter(\n      (abiItem) =>\n        'name' in abiItem && abiItem.name === parameters.functionName,\n    )\n    return {\n      result,\n      request: {\n        abi: minimizedAbi,\n        address,\n        args,\n        dataSuffix,\n        functionName,\n        ...callRequest,\n        account,\n      },\n    } as unknown as SimulateContractReturnType<\n      abi,\n      functionName,\n      args,\n      chain,\n      account,\n      chainOverride,\n      accountOverride\n    >\n  } catch (error) {\n    throw getContractError(error as BaseError, {\n      abi,\n      address,\n      args,\n      docsPath: '/docs/contract/simulateContract',\n      functionName,\n      sender: account?.address,\n    })\n  }\n}\n","import type { ErrorType } from '../errors/utils.js'\nimport type { MaybePromise } from '../types/utils.js'\n\ntype Callback = ((...args: any[]) => any) | undefined\ntype Callbacks = Record<string, Callback>\n\nexport type ObserveErrorType = ErrorType\n\n/** @internal */\nexport const listenersCache = /*#__PURE__*/ new Map<\n  string,\n  { id: number; fns: Callbacks }[]\n>()\n/** @internal */\nexport const cleanupCache = /*#__PURE__*/ new Map<\n  string,\n  () => void | Promise<void>\n>()\n\ntype EmitFunction<callbacks extends Callbacks> = (\n  emit: callbacks,\n) => MaybePromise<void | (() => void) | (() => Promise<void>)>\n\nlet callbackCount = 0\n\n/**\n * @description Sets up an observer for a given function. If another function\n * is set up under the same observer id, the function will only be called once\n * for both instances of the observer.\n */\nexport function observe<callbacks extends Callbacks>(\n  observerId: string,\n  callbacks: callbacks,\n  fn: EmitFunction<callbacks>,\n) {\n  const callbackId = ++callbackCount\n\n  const getListeners = () => listenersCache.get(observerId) || []\n\n  const unsubscribe = () => {\n    const listeners = getListeners()\n    listenersCache.set(\n      observerId,\n      listeners.filter((cb: any) => cb.id !== callbackId),\n    )\n  }\n\n  const unwatch = () => {\n    const listeners = getListeners()\n    if (!listeners.some((cb: any) => cb.id === callbackId)) return\n    const cleanup = cleanupCache.get(observerId)\n    if (listeners.length === 1 && cleanup) {\n      const p = cleanup()\n      if (p instanceof Promise) p.catch(() => {})\n    }\n    unsubscribe()\n  }\n\n  const listeners = getListeners()\n  listenersCache.set(observerId, [\n    ...listeners,\n    { id: callbackId, fns: callbacks },\n  ])\n\n  if (listeners && listeners.length > 0) return unwatch\n\n  const emit: callbacks = {} as callbacks\n  for (const key in callbacks) {\n    emit[key] = ((\n      ...args: Parameters<NonNullable<callbacks[keyof callbacks]>>\n    ) => {\n      const listeners = getListeners()\n      if (listeners.length === 0) return\n      for (const listener of listeners) listener.fns[key]?.(...args)\n    }) as callbacks[Extract<keyof callbacks, string>]\n  }\n\n  const cleanup = fn(emit)\n  if (typeof cleanup === 'function') cleanupCache.set(observerId, cleanup)\n\n  return unwatch\n}\n","export async function wait(time: number) {\n  return new Promise((res) => setTimeout(res, time))\n}\n","import type { ErrorType } from '../errors/utils.js'\nimport { wait } from './wait.js'\n\ntype PollOptions<data> = {\n  // Whether or not to emit when the polling starts.\n  emitOnBegin?: boolean | undefined\n  // The initial wait time (in ms) before polling.\n  initialWaitTime?: ((data: data | void) => Promise<number>) | undefined\n  // The interval (in ms).\n  interval: number\n}\n\nexport type PollErrorType = ErrorType\n\n/**\n * @description Polls a function at a specified interval.\n */\nexport function poll<data>(\n  fn: ({ unpoll }: { unpoll: () => void }) => Promise<data | void>,\n  { emitOnBegin, initialWaitTime, interval }: PollOptions<data>,\n) {\n  let active = true\n\n  const unwatch = () => (active = false)\n\n  const watch = async () => {\n    let data: data | void = undefined\n    if (emitOnBegin) data = await fn({ unpoll: unwatch })\n\n    const initialWait = (await initialWaitTime?.(data)) ?? interval\n    await wait(initialWait)\n\n    const poll = async () => {\n      if (!active) return\n      await fn({ unpoll: unwatch })\n      await wait(interval)\n      poll()\n    }\n\n    poll()\n  }\n  watch()\n\n  return unwatch\n}\n","import type { ErrorType } from '../../errors/utils.js'\n\n/** @internal */\nexport const promiseCache = /*#__PURE__*/ new Map()\n/** @internal */\nexport const responseCache = /*#__PURE__*/ new Map()\n\nexport type GetCacheErrorType = ErrorType\n\nexport function getCache<data>(cacheKey: string) {\n  const buildCache = <data>(cacheKey: string, cache: Map<string, data>) => ({\n    clear: () => cache.delete(cacheKey),\n    get: () => cache.get(cacheKey),\n    set: (data: data) => cache.set(cacheKey, data),\n  })\n\n  const promise = buildCache<Promise<data>>(cacheKey, promiseCache)\n  const response = buildCache<{ created: Date; data: data }>(\n    cacheKey,\n    responseCache,\n  )\n\n  return {\n    clear: () => {\n      promise.clear()\n      response.clear()\n    },\n    promise,\n    response,\n  }\n}\n\ntype WithCacheParameters = {\n  /** The key to cache the data against. */\n  cacheKey: string\n  /** The time that cached data will remain in memory. Default: Infinity (no expiry) */\n  cacheTime?: number | undefined\n}\n\n/**\n * @description Returns the result of a given promise, and caches the result for\n * subsequent invocations against a provided cache key.\n */\nexport async function withCache<data>(\n  fn: () => Promise<data>,\n  { cacheKey, cacheTime = Number.POSITIVE_INFINITY }: WithCacheParameters,\n) {\n  const cache = getCache<data>(cacheKey)\n\n  // If a response exists in the cache, and it's not expired, return it\n  // and do not invoke the promise.\n  // If the max age is 0, the cache is disabled.\n  const response = cache.response.get()\n  if (response && cacheTime > 0) {\n    const age = new Date().getTime() - response.created.getTime()\n    if (age < cacheTime) return response.data\n  }\n\n  let promise = cache.promise.get()\n  if (!promise) {\n    promise = fn()\n\n    // Store the promise in the cache so that subsequent invocations\n    // will wait for the same promise to resolve (deduping).\n    cache.promise.set(promise)\n  }\n\n  try {\n    const data = await promise\n\n    // Store the response in the cache so that subsequent invocations\n    // will return the same response.\n    cache.response.set({ created: new Date(), data })\n\n    return data\n  } finally {\n    // Clear the promise cache so that subsequent invocations will\n    // invoke the promise again.\n    cache.promise.clear()\n  }\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type GetCacheErrorType,\n  getCache,\n  withCache,\n} from '../../utils/promise/withCache.js'\n\nexport type GetBlockNumberParameters = {\n  /** Time (in ms) that cached block number will remain in memory. */\n  cacheTime?: number | undefined\n}\n\nexport type GetBlockNumberReturnType = bigint\n\nexport type GetBlockNumberErrorType = RequestErrorType | ErrorType\n\nconst cacheKey = (id: string) => `blockNumber.${id}`\n\n/** @internal */\nexport type GetBlockNumberCacheErrorType = GetCacheErrorType | ErrorType\n\n/** @internal */\nexport function getBlockNumberCache(id: string) {\n  return getCache(cacheKey(id))\n}\n\n/**\n * Returns the number of the most recent block seen.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBlockNumber\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_fetching-blocks\n * - JSON-RPC Methods: [`eth_blockNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blocknumber)\n *\n * @param client - Client to use\n * @param parameters - {@link GetBlockNumberParameters}\n * @returns The number of the block. {@link GetBlockNumberReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBlockNumber } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const blockNumber = await getBlockNumber(client)\n * // 69420n\n */\nexport async function getBlockNumber<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  { cacheTime = client.cacheTime }: GetBlockNumberParameters = {},\n): Promise<GetBlockNumberReturnType> {\n  const blockNumberHex = await withCache(\n    () =>\n      client.request({\n        method: 'eth_blockNumber',\n      }),\n    { cacheKey: cacheKey(client.uid), cacheTime },\n  )\n  return BigInt(blockNumberHex)\n}\n","import type { Abi, AbiEvent, ExtractAbiEvent } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { RpcLog } from '../../index.js'\nimport type { BlockNumber, BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Filter, FilterType } from '../../types/filter.js'\nimport type { Log } from '../../types/log.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { DecodeEventLogErrorType } from '../../utils/abi/decodeEventLog.js'\nimport { parseEventLogs } from '../../utils/abi/parseEventLogs.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type FormatLogErrorType,\n  formatLog,\n} from '../../utils/formatters/log.js'\n\nexport type GetFilterChangesParameters<\n  filterType extends FilterType = FilterType,\n  abi extends Abi | readonly unknown[] | undefined = undefined,\n  eventName extends string | undefined = undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n> = {\n  filter: Filter<filterType, abi, eventName, any, strict, fromBlock, toBlock>\n}\n\nexport type GetFilterChangesReturnType<\n  filterType extends FilterType = FilterType,\n  abi extends Abi | readonly unknown[] | undefined = undefined,\n  eventName extends string | undefined = undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  _AbiEvent extends AbiEvent | undefined = abi extends Abi\n    ? eventName extends string\n      ? ExtractAbiEvent<abi, eventName>\n      : undefined\n    : undefined,\n  _Pending extends boolean =\n    | (fromBlock extends 'pending' ? true : false)\n    | (toBlock extends 'pending' ? true : false),\n> = filterType extends 'event'\n  ? Log<bigint, number, _Pending, _AbiEvent, strict, abi, eventName>[]\n  : Hash[]\n\nexport type GetFilterChangesErrorType =\n  | RequestErrorType\n  | DecodeEventLogErrorType\n  | FormatLogErrorType\n  | ErrorType\n\n/**\n * Returns a list of logs or hashes based on a [Filter](/docs/glossary/terms#filter) since the last time it was called.\n *\n * - Docs: https://viem.sh/docs/actions/public/getFilterChanges\n * - JSON-RPC Methods: [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterchanges)\n *\n * A Filter can be created from the following actions:\n *\n * - [`createBlockFilter`](https://viem.sh/docs/actions/public/createBlockFilter)\n * - [`createContractEventFilter`](https://viem.sh/docs/contract/createContractEventFilter)\n * - [`createEventFilter`](https://viem.sh/docs/actions/public/createEventFilter)\n * - [`createPendingTransactionFilter`](https://viem.sh/docs/actions/public/createPendingTransactionFilter)\n *\n * Depending on the type of filter, the return value will be different:\n *\n * - If the filter was created with `createContractEventFilter` or `createEventFilter`, it returns a list of logs.\n * - If the filter was created with `createPendingTransactionFilter`, it returns a list of transaction hashes.\n * - If the filter was created with `createBlockFilter`, it returns a list of block hashes.\n *\n * @param client - Client to use\n * @param parameters - {@link GetFilterChangesParameters}\n * @returns Logs or hashes. {@link GetFilterChangesReturnType}\n *\n * @example\n * // Blocks\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createBlockFilter, getFilterChanges } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createBlockFilter(client)\n * const hashes = await getFilterChanges(client, { filter })\n *\n * @example\n * // Contract Events\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createContractEventFilter, getFilterChanges } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createContractEventFilter(client, {\n *   address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n *   abi: parseAbi(['event Transfer(address indexed, address indexed, uint256)']),\n *   eventName: 'Transfer',\n * })\n * const logs = await getFilterChanges(client, { filter })\n *\n * @example\n * // Raw Events\n * import { createPublicClient, http, parseAbiItem } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createEventFilter, getFilterChanges } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createEventFilter(client, {\n *   address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n *   event: parseAbiItem('event Transfer(address indexed, address indexed, uint256)'),\n * })\n * const logs = await getFilterChanges(client, { filter })\n *\n * @example\n * // Transactions\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createPendingTransactionFilter, getFilterChanges } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createPendingTransactionFilter(client)\n * const hashes = await getFilterChanges(client, { filter })\n */\nexport async function getFilterChanges<\n  transport extends Transport,\n  chain extends Chain | undefined,\n  filterType extends FilterType,\n  const abi extends Abi | readonly unknown[] | undefined,\n  eventName extends string | undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n>(\n  _client: Client<transport, chain>,\n  {\n    filter,\n  }: GetFilterChangesParameters<\n    filterType,\n    abi,\n    eventName,\n    strict,\n    fromBlock,\n    toBlock\n  >,\n): Promise<\n  GetFilterChangesReturnType<\n    filterType,\n    abi,\n    eventName,\n    strict,\n    fromBlock,\n    toBlock\n  >\n> {\n  const strict = 'strict' in filter && filter.strict\n\n  const logs = await filter.request({\n    method: 'eth_getFilterChanges',\n    params: [filter.id],\n  })\n\n  if (typeof logs[0] === 'string')\n    return logs as GetFilterChangesReturnType<\n      filterType,\n      abi,\n      eventName,\n      strict,\n      fromBlock,\n      toBlock\n    >\n\n  const formattedLogs = logs.map((log) => formatLog(log as RpcLog))\n  if (!('abi' in filter) || !filter.abi)\n    return formattedLogs as GetFilterChangesReturnType<\n      filterType,\n      abi,\n      eventName,\n      strict,\n      fromBlock,\n      toBlock\n    >\n  return parseEventLogs({\n    abi: filter.abi,\n    logs: formattedLogs,\n    strict,\n  }) as unknown as GetFilterChangesReturnType<\n    filterType,\n    abi,\n    eventName,\n    strict,\n    fromBlock,\n    toBlock\n  >\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type UninstallFilterParameters = {\n  filter: Filter<any>\n}\nexport type UninstallFilterReturnType = boolean\n\nexport type UninstallFilterErrorType = RequestErrorType | ErrorType\n\n/**\n * Destroys a [`Filter`](https://viem.sh/docs/glossary/types#filter).\n *\n * - Docs: https://viem.sh/docs/actions/public/uninstallFilter\n * - JSON-RPC Methods: [`eth_uninstallFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_uninstallFilter)\n *\n * Destroys a Filter that was created from one of the following Actions:\n * - [`createBlockFilter`](https://viem.sh/docs/actions/public/createBlockFilter)\n * - [`createEventFilter`](https://viem.sh/docs/actions/public/createEventFilter)\n * - [`createPendingTransactionFilter`](https://viem.sh/docs/actions/public/createPendingTransactionFilter)\n *\n * @param client - Client to use\n * @param parameters - {@link UninstallFilterParameters}\n * @returns A boolean indicating if the Filter was successfully uninstalled. {@link UninstallFilterReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createPendingTransactionFilter, uninstallFilter } from 'viem/public'\n *\n * const filter = await createPendingTransactionFilter(client)\n * const uninstalled = await uninstallFilter(client, { filter })\n * // true\n */\nexport async function uninstallFilter<\n  transport extends Transport,\n  chain extends Chain | undefined,\n>(\n  _client: Client<transport, chain>,\n  { filter }: UninstallFilterParameters,\n): Promise<UninstallFilterReturnType> {\n  return filter.request({\n    method: 'eth_uninstallFilter',\n    params: [filter.id],\n  })\n}\n","import type { Abi, Address, ExtractAbiEvent } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { Log } from '../../types/log.js'\n\nimport {\n  DecodeLogDataMismatch,\n  DecodeLogTopicsMismatch,\n} from '../../errors/abi.js'\nimport { InvalidInputRpcError } from '../../errors/rpc.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockNumber } from '../../types/block.js'\nimport type {\n  ContractEventArgs,\n  ContractEventName,\n} from '../../types/contract.js'\nimport type { LogTopic } from '../../types/misc.js'\nimport type { GetPollOptions } from '../../types/transport.js'\nimport { decodeEventLog } from '../../utils/abi/decodeEventLog.js'\nimport {\n  type EncodeEventTopicsParameters,\n  encodeEventTopics,\n} from '../../utils/abi/encodeEventTopics.js'\nimport { formatLog } from '../../utils/formatters/log.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { type ObserveErrorType, observe } from '../../utils/observe.js'\nimport { poll } from '../../utils/poll.js'\nimport { type StringifyErrorType, stringify } from '../../utils/stringify.js'\nimport { createContractEventFilter } from './createContractEventFilter.js'\nimport { getBlockNumber } from './getBlockNumber.js'\nimport {\n  type GetContractEventsParameters,\n  getContractEvents,\n} from './getContractEvents.js'\nimport { getFilterChanges } from './getFilterChanges.js'\nimport { uninstallFilter } from './uninstallFilter.js'\n\nexport type WatchContractEventOnLogsParameter<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> = ContractEventName<abi>,\n  strict extends boolean | undefined = undefined,\n> = abi extends Abi\n  ? Abi extends abi\n    ? Log[]\n    : Log<bigint, number, false, ExtractAbiEvent<abi, eventName>, strict>[]\n  : Log[]\n\nexport type WatchContractEventOnLogsFn<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> = ContractEventName<abi>,\n  strict extends boolean | undefined = undefined,\n> = (logs: WatchContractEventOnLogsParameter<abi, eventName, strict>) => void\n\nexport type WatchContractEventParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  eventName extends ContractEventName<abi> | undefined = ContractEventName<abi>,\n  strict extends boolean | undefined = undefined,\n  transport extends Transport = Transport,\n> = {\n  /** The address of the contract. */\n  address?: Address | Address[] | undefined\n  /** Contract ABI. */\n  abi: abi\n  args?:\n    | ContractEventArgs<\n        abi,\n        eventName extends ContractEventName<abi>\n          ? eventName\n          : ContractEventName<abi>\n      >\n    | undefined\n  /** Contract event. */\n  eventName?: eventName | ContractEventName<abi> | undefined\n  /** Block to start listening from. */\n  fromBlock?: BlockNumber<bigint> | undefined\n  /** The callback to call when an error occurred when trying to get for a new block. */\n  onError?: ((error: Error) => void) | undefined\n  /** The callback to call when new event logs are received. */\n  onLogs: WatchContractEventOnLogsFn<\n    abi,\n    eventName extends ContractEventName<abi>\n      ? eventName\n      : ContractEventName<abi>,\n    strict\n  >\n  /**\n   * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n   * @default false\n   */\n  strict?: strict | boolean | undefined\n} & GetPollOptions<transport>\n\nexport type WatchContractEventReturnType = () => void\n\nexport type WatchContractEventErrorType =\n  | StringifyErrorType\n  | ObserveErrorType\n  | ErrorType\n\n/**\n * Watches and returns emitted contract event logs.\n *\n * - Docs: https://viem.sh/docs/contract/watchContractEvent\n *\n * This Action will batch up all the event logs found within the [`pollingInterval`](https://viem.sh/docs/contract/watchContractEvent#pollinginterval-optional), and invoke them via [`onLogs`](https://viem.sh/docs/contract/watchContractEvent#onLogs).\n *\n * `watchContractEvent` will attempt to create an [Event Filter](https://viem.sh/docs/contract/createContractEventFilter) and listen to changes to the Filter per polling interval, however, if the RPC Provider does not support Filters (e.g. `eth_newFilter`), then `watchContractEvent` will fall back to using [`getLogs`](https://viem.sh/docs/actions/public/getLogs) instead.\n *\n * @param client - Client to use\n * @param parameters - {@link WatchContractEventParameters}\n * @returns A function that can be invoked to stop watching for new event logs. {@link WatchContractEventReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { watchContractEvent } from 'viem/contract'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const unwatch = watchContractEvent(client, {\n *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *   abi: parseAbi(['event Transfer(address indexed from, address indexed to, uint256 value)']),\n *   eventName: 'Transfer',\n *   args: { from: '0xc961145a54C96E3aE9bAA048c4F4D6b04C13916b' },\n *   onLogs: (logs) => console.log(logs),\n * })\n */\nexport function watchContractEvent<\n  chain extends Chain | undefined,\n  const abi extends Abi | readonly unknown[],\n  eventName extends ContractEventName<abi> | undefined = undefined,\n  strict extends boolean | undefined = undefined,\n  transport extends Transport = Transport,\n>(\n  client: Client<transport, chain>,\n  parameters: WatchContractEventParameters<abi, eventName, strict, transport>,\n): WatchContractEventReturnType {\n  const {\n    abi,\n    address,\n    args,\n    batch = true,\n    eventName,\n    fromBlock,\n    onError,\n    onLogs,\n    poll: poll_,\n    pollingInterval = client.pollingInterval,\n    strict: strict_,\n  } = parameters\n\n  const enablePolling = (() => {\n    if (typeof poll_ !== 'undefined') return poll_\n    if (typeof fromBlock === 'bigint') return true\n    if (\n      client.transport.type === 'webSocket' ||\n      client.transport.type === 'ipc'\n    )\n      return false\n    if (\n      client.transport.type === 'fallback' &&\n      (client.transport.transports[0].config.type === 'webSocket' ||\n        client.transport.transports[0].config.type === 'ipc')\n    )\n      return false\n    return true\n  })()\n\n  const pollContractEvent = () => {\n    const strict = strict_ ?? false\n    const observerId = stringify([\n      'watchContractEvent',\n      address,\n      args,\n      batch,\n      client.uid,\n      eventName,\n      pollingInterval,\n      strict,\n      fromBlock,\n    ])\n\n    return observe(observerId, { onLogs, onError }, (emit) => {\n      let previousBlockNumber: bigint\n      if (fromBlock !== undefined) previousBlockNumber = fromBlock - 1n\n      let filter: Filter<'event', abi, eventName> | undefined\n      let initialized = false\n\n      const unwatch = poll(\n        async () => {\n          if (!initialized) {\n            try {\n              filter = (await getAction(\n                client,\n                createContractEventFilter,\n                'createContractEventFilter',\n              )({\n                abi,\n                address,\n                args: args as any,\n                eventName: eventName as any,\n                strict: strict as any,\n                fromBlock,\n              })) as Filter<'event', abi, eventName>\n            } catch {}\n            initialized = true\n            return\n          }\n\n          try {\n            let logs: Log[]\n            if (filter) {\n              logs = await getAction(\n                client,\n                getFilterChanges,\n                'getFilterChanges',\n              )({ filter })\n            } else {\n              // If the filter doesn't exist, we will fall back to use `getLogs`.\n              // The fall back exists because some RPC Providers do not support filters.\n\n              // Fetch the block number to use for `getLogs`.\n              const blockNumber = await getAction(\n                client,\n                getBlockNumber,\n                'getBlockNumber',\n              )({})\n\n              // If the block number has changed, we will need to fetch the logs.\n              // If the block number doesn't exist, we are yet to reach the first poll interval,\n              // so do not emit any logs.\n              if (previousBlockNumber && previousBlockNumber < blockNumber) {\n                logs = await getAction(\n                  client,\n                  getContractEvents,\n                  'getContractEvents',\n                )({\n                  abi,\n                  address,\n                  args,\n                  eventName,\n                  fromBlock: previousBlockNumber + 1n,\n                  toBlock: blockNumber,\n                  strict,\n                } as {} as GetContractEventsParameters)\n              } else {\n                logs = []\n              }\n              previousBlockNumber = blockNumber\n            }\n\n            if (logs.length === 0) return\n            if (batch) emit.onLogs(logs as any)\n            else for (const log of logs) emit.onLogs([log] as any)\n          } catch (err) {\n            // If a filter has been set and gets uninstalled, providers will throw an InvalidInput error.\n            // Reinitialize the filter when this occurs\n            if (filter && err instanceof InvalidInputRpcError)\n              initialized = false\n            emit.onError?.(err as Error)\n          }\n        },\n        {\n          emitOnBegin: true,\n          interval: pollingInterval,\n        },\n      )\n\n      return async () => {\n        if (filter)\n          await getAction(\n            client,\n            uninstallFilter,\n            'uninstallFilter',\n          )({ filter })\n        unwatch()\n      }\n    })\n  }\n\n  const subscribeContractEvent = () => {\n    const strict = strict_ ?? false\n    const observerId = stringify([\n      'watchContractEvent',\n      address,\n      args,\n      batch,\n      client.uid,\n      eventName,\n      pollingInterval,\n      strict,\n    ])\n\n    let active = true\n    let unsubscribe = () => (active = false)\n    return observe(observerId, { onLogs, onError }, (emit) => {\n      ;(async () => {\n        try {\n          const transport = (() => {\n            if (client.transport.type === 'fallback') {\n              const transport = client.transport.transports.find(\n                (transport: ReturnType<Transport>) =>\n                  transport.config.type === 'webSocket' ||\n                  transport.config.type === 'ipc',\n              )\n              if (!transport) return client.transport\n              return transport.value\n            }\n            return client.transport\n          })()\n\n          const topics: LogTopic[] = eventName\n            ? encodeEventTopics({\n                abi: abi,\n                eventName: eventName,\n                args,\n              } as EncodeEventTopicsParameters)\n            : []\n\n          const { unsubscribe: unsubscribe_ } = await transport.subscribe({\n            params: ['logs', { address, topics }],\n            onData(data: any) {\n              if (!active) return\n              const log = data.result\n              try {\n                const { eventName, args } = decodeEventLog({\n                  abi: abi,\n                  data: log.data,\n                  topics: log.topics as any,\n                  strict: strict_,\n                })\n                const formatted = formatLog(log, {\n                  args,\n                  eventName: eventName as string,\n                })\n                emit.onLogs([formatted] as any)\n              } catch (err) {\n                let eventName: string | undefined\n                let isUnnamed: boolean | undefined\n                if (\n                  err instanceof DecodeLogDataMismatch ||\n                  err instanceof DecodeLogTopicsMismatch\n                ) {\n                  // If strict mode is on, and log data/topics do not match event definition, skip.\n                  if (strict_) return\n                  eventName = err.abiItem.name\n                  isUnnamed = err.abiItem.inputs?.some(\n                    (x) => !('name' in x && x.name),\n                  )\n                }\n\n                // Set args to empty if there is an error decoding (e.g. indexed/non-indexed params mismatch).\n                const formatted = formatLog(log, {\n                  args: isUnnamed ? [] : {},\n                  eventName,\n                })\n                emit.onLogs([formatted] as any)\n              }\n            },\n            onError(error: Error) {\n              emit.onError?.(error)\n            },\n          })\n          unsubscribe = unsubscribe_\n          if (!active) unsubscribe()\n        } catch (err) {\n          onError?.(err as Error)\n        }\n      })()\n      return () => unsubscribe()\n    })\n  }\n\n  return enablePolling ? pollContractEvent() : subscribeContractEvent()\n}\n","import { BaseError } from './base.js'\n\nexport type AccountNotFoundErrorType = AccountNotFoundError & {\n  name: 'AccountNotFoundError'\n}\nexport class AccountNotFoundError extends BaseError {\n  constructor({ docsPath }: { docsPath?: string | undefined } = {}) {\n    super(\n      [\n        'Could not find an Account to execute with this Action.',\n        'Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.',\n      ].join('\\n'),\n      {\n        docsPath,\n        docsSlug: 'account',\n        name: 'AccountNotFoundError',\n      },\n    )\n  }\n}\n\nexport type AccountTypeNotSupportedErrorType = AccountTypeNotSupportedError & {\n  name: 'AccountTypeNotSupportedError'\n}\nexport class AccountTypeNotSupportedError extends BaseError {\n  constructor({\n    docsPath,\n    metaMessages,\n    type,\n  }: {\n    docsPath?: string | undefined\n    metaMessages?: string[] | undefined\n    type: string\n  }) {\n    super(`Account type \"${type}\" is not supported.`, {\n      docsPath,\n      metaMessages,\n      name: 'AccountTypeNotSupportedError',\n    })\n  }\n}\n","import {\n  ChainMismatchError,\n  type ChainMismatchErrorType,\n  ChainNotFoundError,\n  type ChainNotFoundErrorType,\n} from '../../errors/chain.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\n\nexport type AssertCurrentChainParameters = {\n  chain?: Chain | undefined\n  currentChainId: number\n}\n\nexport type AssertCurrentChainErrorType =\n  | ChainNotFoundErrorType\n  | ChainMismatchErrorType\n  | ErrorType\n\nexport function assertCurrentChain({\n  chain,\n  currentChainId,\n}: AssertCurrentChainParameters): void {\n  if (!chain) throw new ChainNotFoundError()\n  if (currentChainId !== chain.id)\n    throw new ChainMismatchError({ chain, currentChainId })\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { SendTransactionParameters } from '../../actions/wallet/sendTransaction.js'\nimport type { BaseError } from '../../errors/base.js'\nimport { UnknownNodeError } from '../../errors/node.js'\nimport {\n  TransactionExecutionError,\n  type TransactionExecutionErrorType,\n} from '../../errors/transaction.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\n\nimport {\n  type GetNodeErrorParameters,\n  type GetNodeErrorReturnType,\n  getNodeError,\n} from './getNodeError.js'\n\nexport type GetTransactionErrorParameters = Omit<\n  SendTransactionParameters,\n  'account' | 'chain'\n> & {\n  account: Account | null\n  chain?: Chain | undefined\n  docsPath?: string | undefined\n}\n\nexport type GetTransactionErrorReturnType<cause = ErrorType> = Omit<\n  TransactionExecutionErrorType,\n  'cause'\n> & { cause: cause | GetNodeErrorReturnType }\n\nexport function getTransactionError<err extends ErrorType<string>>(\n  err: err,\n  { docsPath, ...args }: GetTransactionErrorParameters,\n): GetTransactionErrorReturnType<err> {\n  const cause = (() => {\n    const cause = getNodeError(\n      err as {} as BaseError,\n      args as GetNodeErrorParameters,\n    )\n    if (cause instanceof UnknownNodeError) return err as {} as BaseError\n    return cause\n  })()\n  return new TransactionExecutionError(cause, {\n    docsPath,\n    ...args,\n  }) as GetTransactionErrorReturnType<err>\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { TransactionSerializedGeneric } from '../../types/transaction.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type SendRawTransactionParameters = {\n  /** The signed serialized transaction. */\n  serializedTransaction: TransactionSerializedGeneric\n}\n\nexport type SendRawTransactionReturnType = Hash\n\nexport type SendRawTransactionErrorType = RequestErrorType | ErrorType\n\n/**\n * Sends a **signed** transaction to the network\n *\n * - Docs: https://viem.sh/docs/actions/wallet/sendRawTransaction\n * - JSON-RPC Method: [`eth_sendRawTransaction`](https://ethereum.github.io/execution-apis/api-documentation/)\n *\n * @param client - Client to use\n * @param parameters - {@link SendRawTransactionParameters}\n * @returns The transaction hash. {@link SendRawTransactionReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { sendRawTransaction } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n *\n * const hash = await sendRawTransaction(client, {\n *   serializedTransaction: '0x02f850018203118080825208808080c080a04012522854168b27e5dc3d5839bab5e6b39e1a0ffd343901ce1622e3d64b48f1a04e00902ae0502c4728cbf12156290df99c3ed7de85b1dbfe20b5c36931733a33'\n * })\n */\nexport async function sendRawTransaction<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  { serializedTransaction }: SendRawTransactionParameters,\n): Promise<SendRawTransactionReturnType> {\n  return client.request(\n    {\n      method: 'eth_sendRawTransaction',\n      params: [serializedTransaction],\n    },\n    { retryCount: 0 },\n  )\n}\n","import type { Address } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { SignTransactionErrorType } from '../../accounts/utils/signTransaction.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  AccountNotFoundError,\n  type AccountNotFoundErrorType,\n  AccountTypeNotSupportedError,\n  type AccountTypeNotSupportedErrorType,\n} from '../../errors/account.js'\nimport { BaseError } from '../../errors/base.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { GetAccountParameter } from '../../types/account.js'\nimport type {\n  Chain,\n  DeriveChain,\n  GetChainParameter,\n} from '../../types/chain.js'\nimport type { GetTransactionRequestKzgParameter } from '../../types/kzg.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { TransactionRequest } from '../../types/transaction.js'\nimport type { UnionOmit } from '../../types/utils.js'\nimport {\n  type RecoverAuthorizationAddressErrorType,\n  recoverAuthorizationAddress,\n} from '../../utils/authorization/recoverAuthorizationAddress.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type AssertCurrentChainErrorType,\n  assertCurrentChain,\n} from '../../utils/chain/assertCurrentChain.js'\nimport {\n  type GetTransactionErrorReturnType,\n  getTransactionError,\n} from '../../utils/errors/getTransactionError.js'\nimport { extract } from '../../utils/formatters/extract.js'\nimport {\n  type FormattedTransactionRequest,\n  formatTransactionRequest,\n} from '../../utils/formatters/transactionRequest.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { LruMap } from '../../utils/lru.js'\nimport {\n  type AssertRequestErrorType,\n  type AssertRequestParameters,\n  assertRequest,\n} from '../../utils/transaction/assertRequest.js'\nimport { type GetChainIdErrorType, getChainId } from '../public/getChainId.js'\nimport {\n  type PrepareTransactionRequestErrorType,\n  defaultParameters,\n  prepareTransactionRequest,\n} from './prepareTransactionRequest.js'\nimport {\n  type SendRawTransactionErrorType,\n  sendRawTransaction,\n} from './sendRawTransaction.js'\n\nconst supportsWalletNamespace = new LruMap<boolean>(128)\n\nexport type SendTransactionRequest<\n  chain extends Chain | undefined = Chain | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  ///\n  _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>,\n> = UnionOmit<FormattedTransactionRequest<_derivedChain>, 'from'> &\n  GetTransactionRequestKzgParameter\n\nexport type SendTransactionParameters<\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  request extends SendTransactionRequest<\n    chain,\n    chainOverride\n  > = SendTransactionRequest<chain, chainOverride>,\n> = request &\n  GetAccountParameter<account, Account | Address, true, true> &\n  GetChainParameter<chain, chainOverride> &\n  GetTransactionRequestKzgParameter<request>\n\nexport type SendTransactionReturnType = Hash\n\nexport type SendTransactionErrorType =\n  | ParseAccountErrorType\n  | GetTransactionErrorReturnType<\n      | AccountNotFoundErrorType\n      | AccountTypeNotSupportedErrorType\n      | AssertCurrentChainErrorType\n      | AssertRequestErrorType\n      | GetChainIdErrorType\n      | PrepareTransactionRequestErrorType\n      | SendRawTransactionErrorType\n      | RecoverAuthorizationAddressErrorType\n      | SignTransactionErrorType\n      | RequestErrorType\n    >\n  | ErrorType\n\n/**\n * Creates, signs, and sends a new transaction to the network.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/sendTransaction\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_sending-transactions\n * - JSON-RPC Methods:\n *   - JSON-RPC Accounts: [`eth_sendTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendtransaction)\n *   - Local Accounts: [`eth_sendRawTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendrawtransaction)\n *\n * @param client - Client to use\n * @param parameters - {@link SendTransactionParameters}\n * @returns The [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash. {@link SendTransactionReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { sendTransaction } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const hash = await sendTransaction(client, {\n *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *   value: 1000000000000000000n,\n * })\n *\n * @example\n * // Account Hoisting\n * import { createWalletClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { sendTransaction } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   account: privateKeyToAccount('0x…'),\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const hash = await sendTransaction(client, {\n *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *   value: 1000000000000000000n,\n * })\n */\nexport async function sendTransaction<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  const request extends SendTransactionRequest<chain, chainOverride>,\n  chainOverride extends Chain | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: SendTransactionParameters<chain, account, chainOverride, request>,\n): Promise<SendTransactionReturnType> {\n  const {\n    account: account_ = client.account,\n    chain = client.chain,\n    accessList,\n    authorizationList,\n    blobs,\n    data,\n    gas,\n    gasPrice,\n    maxFeePerBlobGas,\n    maxFeePerGas,\n    maxPriorityFeePerGas,\n    nonce,\n    type,\n    value,\n    ...rest\n  } = parameters\n\n  if (typeof account_ === 'undefined')\n    throw new AccountNotFoundError({\n      docsPath: '/docs/actions/wallet/sendTransaction',\n    })\n  const account = account_ ? parseAccount(account_) : null\n\n  try {\n    assertRequest(parameters as AssertRequestParameters)\n\n    const to = await (async () => {\n      // If `to` exists on the parameters, use that.\n      if (parameters.to) return parameters.to\n\n      // If `to` is null, we are sending a deployment transaction.\n      if (parameters.to === null) return undefined\n\n      // If no `to` exists, and we are sending a EIP-7702 transaction, use the\n      // address of the first authorization in the list.\n      if (authorizationList && authorizationList.length > 0)\n        return await recoverAuthorizationAddress({\n          authorization: authorizationList[0],\n        }).catch(() => {\n          throw new BaseError(\n            '`to` is required. Could not infer from `authorizationList`.',\n          )\n        })\n\n      // Otherwise, we are sending a deployment transaction.\n      return undefined\n    })()\n\n    if (account?.type === 'json-rpc' || account === null) {\n      let chainId: number | undefined\n      if (chain !== null) {\n        chainId = await getAction(client, getChainId, 'getChainId')({})\n        assertCurrentChain({\n          currentChainId: chainId,\n          chain,\n        })\n      }\n\n      const chainFormat = client.chain?.formatters?.transactionRequest?.format\n      const format = chainFormat || formatTransactionRequest\n\n      const request = format({\n        // Pick out extra data that might exist on the chain's transaction request type.\n        ...extract(rest, { format: chainFormat }),\n        accessList,\n        authorizationList,\n        blobs,\n        chainId,\n        data,\n        from: account?.address,\n        gas,\n        gasPrice,\n        maxFeePerBlobGas,\n        maxFeePerGas,\n        maxPriorityFeePerGas,\n        nonce,\n        to,\n        type,\n        value,\n      } as TransactionRequest)\n\n      const isWalletNamespaceSupported = supportsWalletNamespace.get(client.uid)\n      const method = isWalletNamespaceSupported\n        ? 'wallet_sendTransaction'\n        : 'eth_sendTransaction'\n\n      try {\n        return await client.request(\n          {\n            method,\n            params: [request],\n          },\n          { retryCount: 0 },\n        )\n      } catch (e) {\n        if (isWalletNamespaceSupported === false) throw e\n\n        const error = e as BaseError\n        // If the transport does not support the method or input, attempt to use the\n        // `wallet_sendTransaction` method.\n        if (\n          error.name === 'InvalidInputRpcError' ||\n          error.name === 'InvalidParamsRpcError' ||\n          error.name === 'MethodNotFoundRpcError' ||\n          error.name === 'MethodNotSupportedRpcError'\n        ) {\n          return await client\n            .request(\n              {\n                method: 'wallet_sendTransaction',\n                params: [request],\n              },\n              { retryCount: 0 },\n            )\n            .then((hash) => {\n              supportsWalletNamespace.set(client.uid, true)\n              return hash\n            })\n            .catch((e) => {\n              const walletNamespaceError = e as BaseError\n              if (\n                walletNamespaceError.name === 'MethodNotFoundRpcError' ||\n                walletNamespaceError.name === 'MethodNotSupportedRpcError'\n              ) {\n                supportsWalletNamespace.set(client.uid, false)\n                throw error\n              }\n\n              throw walletNamespaceError\n            })\n        }\n\n        throw error\n      }\n    }\n\n    if (account?.type === 'local') {\n      // Prepare the request for signing (assign appropriate fees, etc.)\n      const request = await getAction(\n        client,\n        prepareTransactionRequest,\n        'prepareTransactionRequest',\n      )({\n        account,\n        accessList,\n        authorizationList,\n        blobs,\n        chain,\n        data,\n        gas,\n        gasPrice,\n        maxFeePerBlobGas,\n        maxFeePerGas,\n        maxPriorityFeePerGas,\n        nonce,\n        nonceManager: account.nonceManager,\n        parameters: [...defaultParameters, 'sidecars'],\n        type,\n        value,\n        ...rest,\n        to,\n      } as any)\n\n      const serializer = chain?.serializers?.transaction\n      const serializedTransaction = (await account.signTransaction(request, {\n        serializer,\n      })) as Hash\n      return await getAction(\n        client,\n        sendRawTransaction,\n        'sendRawTransaction',\n      )({\n        serializedTransaction,\n      })\n    }\n\n    if (account?.type === 'smart')\n      throw new AccountTypeNotSupportedError({\n        metaMessages: [\n          'Consider using the `sendUserOperation` Action instead.',\n        ],\n        docsPath: '/docs/actions/bundler/sendUserOperation',\n        type: 'smart',\n      })\n\n    throw new AccountTypeNotSupportedError({\n      docsPath: '/docs/actions/wallet/sendTransaction',\n      type: (account as any)?.type,\n    })\n  } catch (err) {\n    if (err instanceof AccountTypeNotSupportedError) throw err\n    throw getTransactionError(err as BaseError, {\n      ...parameters,\n      account,\n      chain: parameters.chain || undefined,\n    })\n  }\n}\n","import type { Abi, Address } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  AccountNotFoundError,\n  type AccountNotFoundErrorType,\n} from '../../errors/account.js'\nimport type { BaseError } from '../../errors/base.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { GetAccountParameter } from '../../types/account.js'\nimport type {\n  Chain,\n  DeriveChain,\n  GetChainParameter,\n} from '../../types/chain.js'\nimport type {\n  ContractFunctionArgs,\n  ContractFunctionName,\n  ContractFunctionParameters,\n} from '../../types/contract.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { Prettify, UnionEvaluate, UnionOmit } from '../../types/utils.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  type EncodeFunctionDataParameters,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport {\n  type GetContractErrorReturnType,\n  getContractError,\n} from '../../utils/errors/getContractError.js'\nimport type { FormattedTransactionRequest } from '../../utils/formatters/transactionRequest.js'\nimport { getAction } from '../../utils/getAction.js'\nimport type { GetMutabilityAwareValue } from '../public/simulateContract.js'\nimport {\n  type SendTransactionErrorType,\n  type SendTransactionReturnType,\n  sendTransaction,\n} from './sendTransaction.js'\n\nexport type WriteContractParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  functionName extends ContractFunctionName<\n    abi,\n    'nonpayable' | 'payable'\n  > = ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n  args extends ContractFunctionArgs<\n    abi,\n    'nonpayable' | 'payable',\n    functionName\n  > = ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName>,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  ///\n  allFunctionNames = ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n  derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>,\n> = ContractFunctionParameters<\n  abi,\n  'nonpayable' | 'payable',\n  functionName,\n  args,\n  false,\n  allFunctionNames\n> &\n  GetChainParameter<chain, chainOverride> &\n  Prettify<\n    GetAccountParameter<account, Account | Address, true, true> &\n      GetMutabilityAwareValue<\n        abi,\n        'nonpayable' | 'payable',\n        functionName,\n        FormattedTransactionRequest<derivedChain>['value'],\n        args\n      > & {\n        /** Data to append to the end of the calldata. Useful for adding a [\"domain\" tag](https://opensea.notion.site/opensea/Seaport-Order-Attributions-ec2d69bf455041a5baa490941aad307f). */\n        dataSuffix?: Hex | undefined\n      }\n  > &\n  UnionEvaluate<\n    UnionOmit<\n      FormattedTransactionRequest<derivedChain>,\n      'data' | 'from' | 'to' | 'value'\n    >\n  >\n\nexport type WriteContractReturnType = SendTransactionReturnType\n\nexport type WriteContractErrorType =\n  | EncodeFunctionDataErrorType\n  | AccountNotFoundErrorType\n  | ParseAccountErrorType\n  | GetContractErrorReturnType<SendTransactionErrorType>\n  | ErrorType\n\n/**\n * Executes a write function on a contract.\n *\n * - Docs: https://viem.sh/docs/contract/writeContract\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_writing-to-contracts\n *\n * A \"write\" function on a Solidity contract modifies the state of the blockchain. These types of functions require gas to be executed, and hence a [Transaction](https://viem.sh/docs/glossary/terms) is needed to be broadcast in order to change the state.\n *\n * Internally, uses a [Wallet Client](https://viem.sh/docs/clients/wallet) to call the [`sendTransaction` action](https://viem.sh/docs/actions/wallet/sendTransaction) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n *\n * __Warning: The `write` internally sends a transaction – it does not validate if the contract write will succeed (the contract may throw an error). It is highly recommended to [simulate the contract write with `contract.simulate`](https://viem.sh/docs/contract/writeContract#usage) before you execute it.__\n *\n * @param client - Client to use\n * @param parameters - {@link WriteContractParameters}\n * @returns A [Transaction Hash](https://viem.sh/docs/glossary/terms#hash). {@link WriteContractReturnType}\n *\n * @example\n * import { createWalletClient, custom, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { writeContract } from 'viem/contract'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const hash = await writeContract(client, {\n *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *   abi: parseAbi(['function mint(uint32 tokenId) nonpayable']),\n *   functionName: 'mint',\n *   args: [69420],\n * })\n *\n * @example\n * // With Validation\n * import { createWalletClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { simulateContract, writeContract } from 'viem/contract'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const { request } = await simulateContract(client, {\n *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *   abi: parseAbi(['function mint(uint32 tokenId) nonpayable']),\n *   functionName: 'mint',\n *   args: [69420],\n * }\n * const hash = await writeContract(client, request)\n */\nexport async function writeContract<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  const abi extends Abi | readonly unknown[],\n  functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n  args extends ContractFunctionArgs<\n    abi,\n    'nonpayable' | 'payable',\n    functionName\n  >,\n  chainOverride extends Chain | undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: WriteContractParameters<\n    abi,\n    functionName,\n    args,\n    chain,\n    account,\n    chainOverride\n  >,\n): Promise<WriteContractReturnType> {\n  const {\n    abi,\n    account: account_ = client.account,\n    address,\n    args,\n    dataSuffix,\n    functionName,\n    ...request\n  } = parameters as WriteContractParameters\n\n  if (typeof account_ === 'undefined')\n    throw new AccountNotFoundError({\n      docsPath: '/docs/contract/writeContract',\n    })\n  const account = account_ ? parseAccount(account_) : null\n\n  const data = encodeFunctionData({\n    abi,\n    args,\n    functionName,\n  } as EncodeFunctionDataParameters)\n\n  try {\n    return await getAction(\n      client,\n      sendTransaction,\n      'sendTransaction',\n    )({\n      data: `${data}${dataSuffix ? dataSuffix.replace('0x', '') : ''}`,\n      to: address,\n      account,\n      ...request,\n    })\n  } catch (error) {\n    throw getContractError(error as BaseError, {\n      abi,\n      address,\n      args,\n      docsPath: '/docs/contract/writeContract',\n      functionName,\n      sender: account?.address,\n    })\n  }\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type {\n  Chain,\n  ExtractChainFormatterReturnType,\n} from '../../types/chain.js'\nimport type { RpcTransactionReceipt } from '../../types/rpc.js'\nimport type { TransactionReceipt } from '../../types/transaction.js'\nimport type { ExactPartial } from '../../types/utils.js'\nimport { hexToNumber } from '../encoding/fromHex.js'\n\nimport { type DefineFormatterErrorType, defineFormatter } from './formatter.js'\nimport { formatLog } from './log.js'\nimport { transactionType } from './transaction.js'\n\nexport type FormattedTransactionReceipt<\n  chain extends Chain | undefined = undefined,\n> = ExtractChainFormatterReturnType<\n  chain,\n  'transactionReceipt',\n  TransactionReceipt\n>\n\nexport const receiptStatuses = {\n  '0x0': 'reverted',\n  '0x1': 'success',\n} as const\n\nexport type FormatTransactionReceiptErrorType = ErrorType\n\nexport function formatTransactionReceipt(\n  transactionReceipt: ExactPartial<RpcTransactionReceipt>,\n) {\n  const receipt = {\n    ...transactionReceipt,\n    blockNumber: transactionReceipt.blockNumber\n      ? BigInt(transactionReceipt.blockNumber)\n      : null,\n    contractAddress: transactionReceipt.contractAddress\n      ? transactionReceipt.contractAddress\n      : null,\n    cumulativeGasUsed: transactionReceipt.cumulativeGasUsed\n      ? BigInt(transactionReceipt.cumulativeGasUsed)\n      : null,\n    effectiveGasPrice: transactionReceipt.effectiveGasPrice\n      ? BigInt(transactionReceipt.effectiveGasPrice)\n      : null,\n    gasUsed: transactionReceipt.gasUsed\n      ? BigInt(transactionReceipt.gasUsed)\n      : null,\n    logs: transactionReceipt.logs\n      ? transactionReceipt.logs.map((log) => formatLog(log))\n      : null,\n    to: transactionReceipt.to ? transactionReceipt.to : null,\n    transactionIndex: transactionReceipt.transactionIndex\n      ? hexToNumber(transactionReceipt.transactionIndex)\n      : null,\n    status: transactionReceipt.status\n      ? receiptStatuses[transactionReceipt.status]\n      : null,\n    type: transactionReceipt.type\n      ? transactionType[\n          transactionReceipt.type as keyof typeof transactionType\n        ] || transactionReceipt.type\n      : null,\n  } as TransactionReceipt\n\n  if (transactionReceipt.blobGasPrice)\n    receipt.blobGasPrice = BigInt(transactionReceipt.blobGasPrice)\n  if (transactionReceipt.blobGasUsed)\n    receipt.blobGasUsed = BigInt(transactionReceipt.blobGasUsed)\n\n  return receipt\n}\n\nexport type DefineTransactionReceiptErrorType =\n  | DefineFormatterErrorType\n  | ErrorType\n\nexport const defineTransactionReceipt = /*#__PURE__*/ defineFormatter(\n  'transactionReceipt',\n  formatTransactionReceipt,\n)\n","import type { Address, Narrow } from 'abitype'\nimport { parseAccount } from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { BaseError } from '../../errors/base.js'\nimport {\n  AtomicityNotSupportedError,\n  UnsupportedNonOptionalCapabilityError,\n} from '../../errors/rpc.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account, GetAccountParameter } from '../../types/account.js'\nimport type { Call, Calls } from '../../types/calls.js'\nimport type { ExtractCapabilities } from '../../types/capabilities.js'\nimport type { Chain, DeriveChain } from '../../types/chain.js'\nimport type { WalletSendCallsParameters } from '../../types/eip1193.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { Prettify } from '../../types/utils.js'\nimport { encodeFunctionData } from '../../utils/abi/encodeFunctionData.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport { concat } from '../../utils/data/concat.js'\nimport { hexToBigInt } from '../../utils/encoding/fromHex.js'\nimport { numberToHex } from '../../utils/encoding/toHex.js'\nimport { getTransactionError } from '../../utils/errors/getTransactionError.js'\nimport { sendTransaction } from './sendTransaction.js'\n\nexport const fallbackMagicIdentifier =\n  '0x5792579257925792579257925792579257925792579257925792579257925792'\nexport const fallbackTransactionErrorMagicIdentifier = numberToHex(0, {\n  size: 32,\n})\n\nexport type SendCallsParameters<\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  calls extends readonly unknown[] = readonly unknown[],\n  //\n  _chain extends Chain | undefined = DeriveChain<chain, chainOverride>,\n> = {\n  chain?: chainOverride | Chain | undefined\n  calls: Calls<Narrow<calls>>\n  capabilities?: ExtractCapabilities<'sendCalls', 'Request'> | undefined\n  experimental_fallback?: boolean | undefined\n  experimental_fallbackDelay?: number | undefined\n  forceAtomic?: boolean | undefined\n  id?: string | undefined\n  version?: WalletSendCallsParameters[number]['version'] | undefined\n} & GetAccountParameter<account, Account | Address, false, true>\n\nexport type SendCallsReturnType = Prettify<{\n  capabilities?: ExtractCapabilities<'sendCalls', 'ReturnType'> | undefined\n  id: string\n}>\n\nexport type SendCallsErrorType = RequestErrorType | ErrorType\n\n/**\n * Requests the connected wallet to send a batch of calls.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/sendCalls\n * - JSON-RPC Methods: [`wallet_sendCalls`](https://eips.ethereum.org/EIPS/eip-5792)\n *\n * @param client - Client to use\n * @returns Transaction identifier. {@link SendCallsReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { sendCalls } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const id = await sendCalls(client, {\n *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n *   calls: [\n *     {\n *       data: '0xdeadbeef',\n *       to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *     },\n *     {\n *       to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *       value: 69420n,\n *     },\n *   ],\n * })\n */\nexport async function sendCalls<\n  const calls extends readonly unknown[],\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n  chainOverride extends Chain | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: SendCallsParameters<chain, account, chainOverride, calls>,\n): Promise<SendCallsReturnType> {\n  const {\n    account: account_ = client.account,\n    capabilities,\n    chain = client.chain,\n    experimental_fallback,\n    experimental_fallbackDelay = 32,\n    forceAtomic = false,\n    id,\n    version = '2.0.0',\n  } = parameters\n\n  const account = account_ ? parseAccount(account_) : null\n\n  const calls = parameters.calls.map((call_: unknown) => {\n    const call = call_ as Call\n\n    const data = call.abi\n      ? encodeFunctionData({\n          abi: call.abi,\n          functionName: call.functionName,\n          args: call.args,\n        })\n      : call.data\n\n    return {\n      data: call.dataSuffix && data ? concat([data, call.dataSuffix]) : data,\n      to: call.to,\n      value: call.value ? numberToHex(call.value) : undefined,\n    }\n  })\n\n  try {\n    const response = await client.request(\n      {\n        method: 'wallet_sendCalls',\n        params: [\n          {\n            atomicRequired: forceAtomic,\n            calls,\n            capabilities,\n            chainId: numberToHex(chain!.id),\n            from: account?.address,\n            id,\n            version,\n          },\n        ],\n      },\n      { retryCount: 0 },\n    )\n    if (typeof response === 'string') return { id: response }\n    return response as never\n  } catch (err) {\n    const error = err as BaseError\n\n    // If the transport does not support EIP-5792, fall back to\n    // `eth_sendTransaction`.\n    if (\n      experimental_fallback &&\n      (error.name === 'MethodNotFoundRpcError' ||\n        error.name === 'MethodNotSupportedRpcError' ||\n        error.name === 'UnknownRpcError' ||\n        error.details\n          .toLowerCase()\n          .includes('does not exist / is not available') ||\n        error.details.toLowerCase().includes('missing or invalid. request()') ||\n        error.details\n          .toLowerCase()\n          .includes('did not match any variant of untagged enum') ||\n        error.details\n          .toLowerCase()\n          .includes('account upgraded to unsupported contract') ||\n        error.details.toLowerCase().includes('eip-7702 not supported') ||\n        error.details.toLowerCase().includes('unsupported wc_ method'))\n    ) {\n      if (capabilities) {\n        const hasNonOptionalCapability = Object.values(capabilities).some(\n          (capability) => !capability.optional,\n        )\n        if (hasNonOptionalCapability) {\n          const message =\n            'non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.'\n          throw new UnsupportedNonOptionalCapabilityError(\n            new BaseError(message, {\n              details: message,\n            }),\n          )\n        }\n      }\n      if (forceAtomic && calls.length > 1) {\n        const message =\n          '`forceAtomic` is not supported on fallback to `eth_sendTransaction`.'\n        throw new AtomicityNotSupportedError(\n          new BaseError(message, {\n            details: message,\n          }),\n        )\n      }\n\n      const promises: Promise<Hex>[] = []\n      for (const call of calls) {\n        const promise = sendTransaction(client, {\n          account,\n          chain,\n          data: call.data,\n          to: call.to,\n          value: call.value ? hexToBigInt(call.value) : undefined,\n        })\n        promises.push(promise)\n\n        // Note: some browser wallets require a small delay between transactions\n        // to prevent duplicate JSON-RPC requests.\n        if (experimental_fallbackDelay > 0)\n          await new Promise((resolve) =>\n            setTimeout(resolve, experimental_fallbackDelay),\n          )\n      }\n\n      const results = await Promise.allSettled(promises)\n      if (results.every((r) => r.status === 'rejected')) throw results[0].reason\n\n      const hashes = results.map((result) => {\n        if (result.status === 'fulfilled') return result.value\n        return fallbackTransactionErrorMagicIdentifier\n      })\n      return {\n        id: concat([\n          ...hashes,\n          numberToHex(chain!.id, { size: 32 }),\n          fallbackMagicIdentifier,\n        ]),\n      }\n    }\n\n    throw getTransactionError(err as BaseError, {\n      ...parameters,\n      account,\n      chain: parameters.chain!,\n    })\n  }\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account } from '../../types/account.js'\nimport type { ExtractCapabilities } from '../../types/capabilities.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { WalletGetCallsStatusReturnType } from '../../types/eip1193.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { RpcTransactionReceipt } from '../../types/rpc.js'\nimport type { Prettify } from '../../types/utils.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport { sliceHex } from '../../utils/data/slice.js'\nimport { trim } from '../../utils/data/trim.js'\nimport { hexToBigInt, hexToNumber } from '../../utils/encoding/fromHex.js'\nimport { receiptStatuses } from '../../utils/formatters/transactionReceipt.js'\nimport {\n  fallbackMagicIdentifier,\n  fallbackTransactionErrorMagicIdentifier,\n} from './sendCalls.js'\n\nexport type GetCallsStatusParameters = { id: string }\n\nexport type GetCallsStatusReturnType = Prettify<\n  Omit<\n    WalletGetCallsStatusReturnType<\n      ExtractCapabilities<'getCallsStatus', 'ReturnType'>,\n      number,\n      bigint,\n      'success' | 'reverted'\n    >,\n    'status'\n  > & {\n    statusCode: number\n    status: 'pending' | 'success' | 'failure' | undefined\n  }\n>\n\nexport type GetCallsStatusErrorType = RequestErrorType | ErrorType\n\n/**\n * Returns the status of a call batch that was sent via `sendCalls`.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/getCallsStatus\n * - JSON-RPC Methods: [`wallet_getCallsStatus`](https://eips.ethereum.org/EIPS/eip-5792)\n *\n * @param client - Client to use\n * @returns Status of the calls. {@link GetCallsStatusReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getCallsStatus } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const { receipts, status } = await getCallsStatus(client, { id: '0xdeadbeef' })\n */\nexport async function getCallsStatus<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: GetCallsStatusParameters,\n): Promise<GetCallsStatusReturnType> {\n  async function getStatus(id: Hex) {\n    const isTransactions = id.endsWith(fallbackMagicIdentifier.slice(2))\n    if (isTransactions) {\n      const chainId = trim(sliceHex(id, -64, -32))\n      const hashes = sliceHex(id, 0, -64)\n        .slice(2)\n        .match(/.{1,64}/g)\n\n      const receipts = await Promise.all(\n        hashes!.map((hash) =>\n          fallbackTransactionErrorMagicIdentifier.slice(2) !== hash\n            ? client.request(\n                {\n                  method: 'eth_getTransactionReceipt',\n                  params: [`0x${hash}`],\n                },\n                { dedupe: true },\n              )\n            : undefined,\n        ),\n      )\n\n      const status = (() => {\n        if (receipts.some((r) => r === null)) return 100 // pending\n        if (receipts.every((r) => r?.status === '0x1')) return 200 // success\n        if (receipts.every((r) => r?.status === '0x0')) return 500 // complete failure\n        return 600 // partial failure\n      })()\n\n      return {\n        atomic: false,\n        chainId: hexToNumber(chainId),\n        receipts: receipts.filter(Boolean) as RpcTransactionReceipt[],\n        status,\n        version: '2.0.0',\n      }\n    }\n    return client.request({\n      method: 'wallet_getCallsStatus',\n      params: [id],\n    })\n  }\n\n  const {\n    atomic = false,\n    chainId,\n    receipts,\n    version = '2.0.0',\n    ...response\n  } = await getStatus(parameters.id as Hex)\n  const [status, statusCode] = (() => {\n    const statusCode = response.status\n    if (statusCode >= 100 && statusCode < 200)\n      return ['pending', statusCode] as const\n    if (statusCode >= 200 && statusCode < 300)\n      return ['success', statusCode] as const\n    if (statusCode >= 300 && statusCode < 700)\n      return ['failure', statusCode] as const\n    // @ts-expect-error: for backwards compatibility\n    if (statusCode === 'CONFIRMED') return ['success', 200] as const\n    // @ts-expect-error: for backwards compatibility\n    if (statusCode === 'PENDING') return ['pending', 100] as const\n    return [undefined, statusCode]\n  })()\n  return {\n    ...response,\n    atomic,\n    // @ts-expect-error: for backwards compatibility\n    chainId: chainId ? hexToNumber(chainId) : undefined,\n    receipts:\n      receipts?.map((receipt) => ({\n        ...receipt,\n        blockNumber: hexToBigInt(receipt.blockNumber),\n        gasUsed: hexToBigInt(receipt.gasUsed),\n        status: receiptStatuses[receipt.status as '0x0' | '0x1'],\n      })) ?? [],\n    statusCode,\n    status,\n    version,\n  }\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { BaseError } from '../../errors/base.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport { type ObserveErrorType, observe } from '../../utils/observe.js'\nimport { type PollErrorType, poll } from '../../utils/poll.js'\nimport { withResolvers } from '../../utils/promise/withResolvers.js'\nimport { stringify } from '../../utils/stringify.js'\nimport {\n  type GetCallsStatusErrorType,\n  type GetCallsStatusReturnType,\n  getCallsStatus,\n} from './getCallsStatus.js'\n\nexport type WaitForCallsStatusParameters = {\n  /**\n   * The id of the call batch to wait for.\n   */\n  id: string\n  /**\n   * Polling frequency (in ms). Defaults to the client's pollingInterval config.\n   *\n   * @default client.pollingInterval\n   */\n  pollingInterval?: number | undefined\n  /**\n   * The status range to wait for.\n   *\n   * @default (status) => status >= 200\n   */\n  status?: ((parameters: GetCallsStatusReturnType) => boolean) | undefined\n  /**\n   * Optional timeout (in milliseconds) to wait before stopping polling.\n   *\n   * @default 60_000\n   */\n  timeout?: number | undefined\n}\n\nexport type WaitForCallsStatusReturnType = GetCallsStatusReturnType\n\nexport type WaitForCallsStatusErrorType =\n  | ObserveErrorType\n  | PollErrorType\n  | GetCallsStatusErrorType\n  | WaitForCallsStatusTimeoutError\n  | ErrorType\n\n/**\n * Waits for the status & receipts of a call bundle that was sent via `sendCalls`.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/waitForCallsStatus\n * - JSON-RPC Methods: [`wallet_getCallsStatus`](https://eips.ethereum.org/EIPS/eip-5792)\n *\n * @param client - Client to use\n * @param parameters - {@link WaitForCallsStatusParameters}\n * @returns Status & receipts of the call bundle. {@link WaitForCallsStatusReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { waitForCallsStatus } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n *\n * const { receipts, status } = await waitForCallsStatus(client, { id: '0xdeadbeef' })\n */\nexport async function waitForCallsStatus<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  parameters: WaitForCallsStatusParameters,\n): Promise<WaitForCallsStatusReturnType> {\n  const {\n    id,\n    pollingInterval = client.pollingInterval,\n    status = ({ statusCode }) => statusCode >= 200,\n    timeout = 60_000,\n  } = parameters\n  const observerId = stringify(['waitForCallsStatus', client.uid, id])\n\n  const { promise, resolve, reject } =\n    withResolvers<WaitForCallsStatusReturnType>()\n\n  let timer: Timer | undefined = undefined\n\n  const unobserve = observe(observerId, { resolve, reject }, (emit) => {\n    const unpoll = poll(\n      async () => {\n        const done = (fn: () => void) => {\n          clearTimeout(timer)\n          unpoll()\n          fn()\n          unobserve()\n        }\n\n        try {\n          const result = await getCallsStatus(client, { id })\n          if (!status(result)) return\n          done(() => emit.resolve(result))\n        } catch (error) {\n          done(() => emit.reject(error))\n        }\n      },\n      {\n        interval: pollingInterval,\n        emitOnBegin: true,\n      },\n    )\n\n    return unpoll\n  })\n\n  timer = timeout\n    ? setTimeout(() => {\n        unobserve()\n        clearTimeout(timer)\n        reject(new WaitForCallsStatusTimeoutError({ id }))\n      }, timeout)\n    : undefined\n\n  return await promise\n}\n\nexport type WaitForCallsStatusTimeoutErrorType =\n  WaitForCallsStatusTimeoutError & {\n    name: 'WaitForCallsStatusTimeoutError'\n  }\nexport class WaitForCallsStatusTimeoutError extends BaseError {\n  constructor({ id }: { id: string }) {\n    super(\n      `Timed out while waiting for call bundle with id \"${id}\" to be confirmed.`,\n      { name: 'WaitForCallsStatusTimeoutError' },\n    )\n  }\n}\n","const size = 256\nlet index = size\nlet buffer: string\n\nexport function uid(length = 11) {\n  if (!buffer || index + length > size * 2) {\n    buffer = ''\n    index = 0\n    for (let i = 0; i < size; i++) {\n      buffer += ((256 + Math.random() * 256) | 0).toString(16).substring(1)\n    }\n  }\n  return buffer.substring(index, index++ + length)\n}\n","import type { Address } from 'abitype'\n\nimport type { JsonRpcAccount } from '../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../accounts/utils/parseAccount.js'\nimport type { ErrorType } from '../errors/utils.js'\nimport type { Account } from '../types/account.js'\nimport type { Chain } from '../types/chain.js'\nimport type {\n  EIP1193RequestFn,\n  EIP1474Methods,\n  RpcSchema,\n} from '../types/eip1193.js'\nimport type { ExactPartial, Prettify } from '../types/utils.js'\nimport type {\n  CcipRequestParameters,\n  CcipRequestReturnType,\n} from '../utils/ccip.js'\nimport { uid } from '../utils/uid.js'\nimport type { PublicActions } from './decorators/public.js'\nimport type { WalletActions } from './decorators/wallet.js'\nimport type { Transport } from './transports/createTransport.js'\n\nexport type ClientConfig<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  accountOrAddress extends Account | Address | undefined =\n    | Account\n    | Address\n    | undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n> = {\n  /** The Account to use for the Client. This will be used for Actions that require an account as an argument. */\n  account?: accountOrAddress | Account | Address | undefined\n  /** Flags for batch settings. */\n  batch?:\n    | {\n        /** Toggle to enable `eth_call` multicall aggregation. */\n        multicall?: boolean | Prettify<MulticallBatchOptions> | undefined\n      }\n    | undefined\n  /**\n   * Time (in ms) that cached data will remain in memory.\n   * @default chain.blockTime / 3\n   */\n  cacheTime?: number | undefined\n  /**\n   * [CCIP Read](https://eips.ethereum.org/EIPS/eip-3668) configuration.\n   * If `false`, the client will not support offchain CCIP lookups.\n   */\n  ccipRead?:\n    | {\n        /**\n         * A function that will be called to make the offchain CCIP lookup request.\n         * @see https://eips.ethereum.org/EIPS/eip-3668#client-lookup-protocol\n         */\n        request?: (\n          parameters: CcipRequestParameters,\n        ) => Promise<CcipRequestReturnType>\n      }\n    | false\n    | undefined\n  /** Chain for the client. */\n  chain?: Chain | undefined | chain\n  /** A key for the client. */\n  key?: string | undefined\n  /** A name for the client. */\n  name?: string | undefined\n  /**\n   * Frequency (in ms) for polling enabled actions & events.\n   * @default chain.blockTime / 3\n   */\n  pollingInterval?: number | undefined\n  /**\n   * Typed JSON-RPC schema for the client.\n   */\n  rpcSchema?: rpcSchema | undefined\n  /** The RPC transport */\n  transport: transport\n  /** The type of client. */\n  type?: string | undefined\n}\n\n// Actions that are used internally by other Actions (ie. `call` is used by `readContract`).\n// They are allowed to be extended, but must conform to their parameter & return type interfaces.\n// Example: an extended `call` action must accept `CallParameters` as parameters,\n// and conform to the `CallReturnType` return type.\ntype ExtendableProtectedActions<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n> = Pick<\n  PublicActions<transport, chain, account>,\n  | 'call'\n  | 'createContractEventFilter'\n  | 'createEventFilter'\n  | 'estimateContractGas'\n  | 'estimateGas'\n  | 'getBlock'\n  | 'getBlockNumber'\n  | 'getChainId'\n  | 'getContractEvents'\n  | 'getEnsText'\n  | 'getFilterChanges'\n  | 'getGasPrice'\n  | 'getLogs'\n  | 'getTransaction'\n  | 'getTransactionCount'\n  | 'getTransactionReceipt'\n  | 'prepareTransactionRequest'\n  | 'readContract'\n  | 'sendRawTransaction'\n  | 'simulateContract'\n  | 'uninstallFilter'\n  | 'watchBlockNumber'\n  | 'watchContractEvent'\n> &\n  Pick<WalletActions<chain, account>, 'sendTransaction' | 'writeContract'>\n\n// TODO: Move `transport` to slot index 2 since `chain` and `account` used more frequently.\n// Otherwise, we end up with a lot of `Client<Transport, chain, account>` in actions.\nexport type Client<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n  extended extends Extended | undefined = Extended | undefined,\n> = Client_Base<transport, chain, account, rpcSchema> &\n  (extended extends Extended ? extended : unknown) & {\n    extend: <\n      const client extends Extended &\n        ExactPartial<ExtendableProtectedActions<transport, chain, account>>,\n    >(\n      fn: (\n        client: Client<transport, chain, account, rpcSchema, extended>,\n      ) => client,\n    ) => Client<\n      transport,\n      chain,\n      account,\n      rpcSchema,\n      Prettify<client> & (extended extends Extended ? extended : unknown)\n    >\n  }\n\ntype Client_Base<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n> = {\n  /** The Account of the Client. */\n  account: account\n  /** Flags for batch settings. */\n  batch?: ClientConfig['batch'] | undefined\n  /** Time (in ms) that cached data will remain in memory. */\n  cacheTime: number\n  /** [CCIP Read](https://eips.ethereum.org/EIPS/eip-3668) configuration. */\n  ccipRead?: ClientConfig['ccipRead'] | undefined\n  /** Chain for the client. */\n  chain: chain\n  /** A key for the client. */\n  key: string\n  /** A name for the client. */\n  name: string\n  /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n  pollingInterval: number\n  /** Request function wrapped with friendly error handling */\n  request: EIP1193RequestFn<\n    rpcSchema extends undefined ? EIP1474Methods : rpcSchema\n  >\n  /** The RPC transport */\n  transport: ReturnType<transport>['config'] & ReturnType<transport>['value']\n  /** The type of client. */\n  type: string\n  /** A unique ID for the client. */\n  uid: string\n}\n\ntype Extended = Prettify<\n  // disallow redefining base properties\n  { [_ in keyof Client_Base]?: undefined } & {\n    [key: string]: unknown\n  }\n>\n\nexport type MulticallBatchOptions = {\n  /** The maximum size (in bytes) for each calldata chunk. @default 1_024 */\n  batchSize?: number | undefined\n  /** The maximum number of milliseconds to wait before sending a batch. @default 0 */\n  wait?: number | undefined\n}\n\nexport type CreateClientErrorType = ParseAccountErrorType | ErrorType\n\nexport function createClient<\n  transport extends Transport,\n  chain extends Chain | undefined = undefined,\n  accountOrAddress extends Account | Address | undefined = undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n>(\n  parameters: ClientConfig<transport, chain, accountOrAddress, rpcSchema>,\n): Prettify<\n  Client<\n    transport,\n    chain,\n    accountOrAddress extends Address\n      ? Prettify<JsonRpcAccount<accountOrAddress>>\n      : accountOrAddress,\n    rpcSchema\n  >\n>\n\nexport function createClient(parameters: ClientConfig): Client {\n  const {\n    batch,\n    chain,\n    ccipRead,\n    key = 'base',\n    name = 'Base Client',\n    type = 'base',\n  } = parameters\n\n  const blockTime = chain?.blockTime ?? 12_000\n\n  const defaultPollingInterval = Math.min(\n    Math.max(Math.floor(blockTime / 2), 500),\n    4_000,\n  )\n  const pollingInterval = parameters.pollingInterval ?? defaultPollingInterval\n  const cacheTime = parameters.cacheTime ?? pollingInterval\n\n  const account = parameters.account\n    ? parseAccount(parameters.account)\n    : undefined\n  const { config, request, value } = parameters.transport({\n    chain,\n    pollingInterval,\n  })\n  const transport = { ...config, ...value }\n\n  const client = {\n    account,\n    batch,\n    cacheTime,\n    ccipRead,\n    chain,\n    key,\n    name,\n    pollingInterval,\n    request,\n    transport,\n    type,\n    uid: uid(),\n  }\n\n  function extend(base: typeof client) {\n    type ExtendFn = (base: typeof client) => unknown\n    return (extendFn: ExtendFn) => {\n      const extended = extendFn(base) as Extended\n      for (const key in client) delete extended[key]\n      const combined = { ...base, ...extended }\n      return Object.assign(combined, { extend: extend(combined as any) })\n    }\n  }\n\n  return Object.assign(client, { extend: extend(client) as any })\n}\n\n/**\n * Defines a typed JSON-RPC schema for the client.\n * Note: This is a runtime noop function.\n */\nexport function rpcSchema<rpcSchema extends RpcSchema>(): rpcSchema {\n  return null as any\n}\n","import { LruMap } from '../lru.js'\n\n/** @internal */\nexport const promiseCache = /*#__PURE__*/ new LruMap<Promise<any>>(8192)\n\ntype WithDedupeOptions = {\n  enabled?: boolean | undefined\n  id?: string | undefined\n}\n\n/** Deduplicates in-flight promises. */\nexport function withDedupe<data>(\n  fn: () => Promise<data>,\n  { enabled = true, id }: WithDedupeOptions,\n): Promise<data> {\n  if (!enabled || !id) return fn()\n  if (promiseCache.get(id)) return promiseCache.get(id)!\n  const promise = fn().finally(() => promiseCache.delete(id))\n  promiseCache.set(id, promise)\n  return promise\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport { wait } from '../wait.js'\n\nexport type WithRetryParameters = {\n  // The delay (in ms) between retries.\n  delay?:\n    | ((config: { count: number; error: Error }) => number)\n    | number\n    | undefined\n  // The max number of times to retry.\n  retryCount?: number | undefined\n  // Whether or not to retry when an error is thrown.\n  shouldRetry?:\n    | (({\n        count,\n        error,\n      }: {\n        count: number\n        error: Error\n      }) => Promise<boolean> | boolean)\n    | undefined\n}\n\nexport type WithRetryErrorType = ErrorType\n\nexport function withRetry<data>(\n  fn: () => Promise<data>,\n  {\n    delay: delay_ = 100,\n    retryCount = 2,\n    shouldRetry = () => true,\n  }: WithRetryParameters = {},\n) {\n  return new Promise<data>((resolve, reject) => {\n    const attemptRetry = async ({ count = 0 } = {}) => {\n      const retry = async ({ error }: { error: Error }) => {\n        const delay =\n          typeof delay_ === 'function' ? delay_({ count, error }) : delay_\n        if (delay) await wait(delay)\n        attemptRetry({ count: count + 1 })\n      }\n\n      try {\n        const data = await fn()\n        resolve(data)\n      } catch (err) {\n        if (\n          count < retryCount &&\n          (await shouldRetry({ count, error: err as Error }))\n        )\n          return retry({ error: err as Error })\n        reject(err)\n      }\n    }\n    attemptRetry()\n  })\n}\n","import { BaseError } from '../errors/base.js'\nimport {\n  HttpRequestError,\n  type HttpRequestErrorType,\n  type RpcRequestErrorType,\n  type TimeoutErrorType,\n  type WebSocketRequestErrorType,\n} from '../errors/request.js'\nimport {\n  AtomicReadyWalletRejectedUpgradeError,\n  type AtomicReadyWalletRejectedUpgradeErrorType,\n  AtomicityNotSupportedError,\n  type AtomicityNotSupportedErrorType,\n  BundleTooLargeError,\n  type BundleTooLargeErrorType,\n  ChainDisconnectedError,\n  type ChainDisconnectedErrorType,\n  DuplicateIdError,\n  type DuplicateIdErrorType,\n  InternalRpcError,\n  type InternalRpcErrorType,\n  InvalidInputRpcError,\n  type InvalidInputRpcErrorType,\n  InvalidParamsRpcError,\n  type InvalidParamsRpcErrorType,\n  InvalidRequestRpcError,\n  type InvalidRequestRpcErrorType,\n  JsonRpcVersionUnsupportedError,\n  type JsonRpcVersionUnsupportedErrorType,\n  LimitExceededRpcError,\n  type LimitExceededRpcErrorType,\n  MethodNotFoundRpcError,\n  type MethodNotFoundRpcErrorType,\n  MethodNotSupportedRpcError,\n  type MethodNotSupportedRpcErrorType,\n  ParseRpcError,\n  type ParseRpcErrorType,\n  ProviderDisconnectedError,\n  type ProviderDisconnectedErrorType,\n  type ProviderRpcErrorCode,\n  ResourceNotFoundRpcError,\n  type ResourceNotFoundRpcErrorType,\n  ResourceUnavailableRpcError,\n  type ResourceUnavailableRpcErrorType,\n  type RpcError,\n  type RpcErrorCode,\n  type RpcErrorType,\n  SwitchChainError,\n  type SwitchChainErrorType,\n  TransactionRejectedRpcError,\n  type TransactionRejectedRpcErrorType,\n  UnauthorizedProviderError,\n  type UnauthorizedProviderErrorType,\n  UnknownBundleIdError,\n  type UnknownBundleIdErrorType,\n  UnknownRpcError,\n  type UnknownRpcErrorType,\n  UnsupportedChainIdError,\n  type UnsupportedChainIdErrorType,\n  UnsupportedNonOptionalCapabilityError,\n  type UnsupportedNonOptionalCapabilityErrorType,\n  UnsupportedProviderMethodError,\n  type UnsupportedProviderMethodErrorType,\n  UserRejectedRequestError,\n  type UserRejectedRequestErrorType,\n} from '../errors/rpc.js'\nimport type { ErrorType } from '../errors/utils.js'\nimport type {\n  EIP1193RequestFn,\n  EIP1193RequestOptions,\n} from '../types/eip1193.js'\nimport { stringToHex } from './encoding/toHex.js'\nimport type { CreateBatchSchedulerErrorType } from './promise/createBatchScheduler.js'\nimport { withDedupe } from './promise/withDedupe.js'\nimport { type WithRetryErrorType, withRetry } from './promise/withRetry.js'\nimport type { GetSocketRpcClientErrorType } from './rpc/socket.js'\nimport { stringify } from './stringify.js'\n\nexport type RequestErrorType =\n  | AtomicityNotSupportedErrorType\n  | AtomicReadyWalletRejectedUpgradeErrorType\n  | BundleTooLargeErrorType\n  | ChainDisconnectedErrorType\n  | CreateBatchSchedulerErrorType\n  | DuplicateIdErrorType\n  | HttpRequestErrorType\n  | InternalRpcErrorType\n  | InvalidInputRpcErrorType\n  | InvalidParamsRpcErrorType\n  | InvalidRequestRpcErrorType\n  | GetSocketRpcClientErrorType\n  | JsonRpcVersionUnsupportedErrorType\n  | LimitExceededRpcErrorType\n  | MethodNotFoundRpcErrorType\n  | MethodNotSupportedRpcErrorType\n  | ParseRpcErrorType\n  | ProviderDisconnectedErrorType\n  | ResourceNotFoundRpcErrorType\n  | ResourceUnavailableRpcErrorType\n  | RpcErrorType\n  | RpcRequestErrorType\n  | SwitchChainErrorType\n  | TimeoutErrorType\n  | TransactionRejectedRpcErrorType\n  | UnauthorizedProviderErrorType\n  | UnknownBundleIdErrorType\n  | UnknownRpcErrorType\n  | UnsupportedChainIdErrorType\n  | UnsupportedNonOptionalCapabilityErrorType\n  | UnsupportedProviderMethodErrorType\n  | UserRejectedRequestErrorType\n  | WebSocketRequestErrorType\n  | WithRetryErrorType\n  | ErrorType\n\nexport function buildRequest<request extends (args: any) => Promise<any>>(\n  request: request,\n  options: EIP1193RequestOptions = {},\n): EIP1193RequestFn {\n  return async (args, overrideOptions = {}) => {\n    const {\n      dedupe = false,\n      methods,\n      retryDelay = 150,\n      retryCount = 3,\n      uid,\n    } = {\n      ...options,\n      ...overrideOptions,\n    }\n\n    const { method } = args\n    if (methods?.exclude?.includes(method))\n      throw new MethodNotSupportedRpcError(new Error('method not supported'), {\n        method,\n      })\n    if (methods?.include && !methods.include.includes(method))\n      throw new MethodNotSupportedRpcError(new Error('method not supported'), {\n        method,\n      })\n\n    const requestId = dedupe\n      ? stringToHex(`${uid}.${stringify(args)}`)\n      : undefined\n    return withDedupe(\n      () =>\n        withRetry(\n          async () => {\n            try {\n              return await request(args)\n            } catch (err_) {\n              const err = err_ as unknown as RpcError<\n                RpcErrorCode | ProviderRpcErrorCode\n              >\n              switch (err.code) {\n                // -32700\n                case ParseRpcError.code:\n                  throw new ParseRpcError(err)\n                // -32600\n                case InvalidRequestRpcError.code:\n                  throw new InvalidRequestRpcError(err)\n                // -32601\n                case MethodNotFoundRpcError.code:\n                  throw new MethodNotFoundRpcError(err, { method: args.method })\n                // -32602\n                case InvalidParamsRpcError.code:\n                  throw new InvalidParamsRpcError(err)\n                // -32603\n                case InternalRpcError.code:\n                  throw new InternalRpcError(err)\n                // -32000\n                case InvalidInputRpcError.code:\n                  throw new InvalidInputRpcError(err)\n                // -32001\n                case ResourceNotFoundRpcError.code:\n                  throw new ResourceNotFoundRpcError(err)\n                // -32002\n                case ResourceUnavailableRpcError.code:\n                  throw new ResourceUnavailableRpcError(err)\n                // -32003\n                case TransactionRejectedRpcError.code:\n                  throw new TransactionRejectedRpcError(err)\n                // -32004\n                case MethodNotSupportedRpcError.code:\n                  throw new MethodNotSupportedRpcError(err, {\n                    method: args.method,\n                  })\n                // -32005\n                case LimitExceededRpcError.code:\n                  throw new LimitExceededRpcError(err)\n                // -32006\n                case JsonRpcVersionUnsupportedError.code:\n                  throw new JsonRpcVersionUnsupportedError(err)\n\n                // 4001\n                case UserRejectedRequestError.code:\n                  throw new UserRejectedRequestError(err)\n                // 4100\n                case UnauthorizedProviderError.code:\n                  throw new UnauthorizedProviderError(err)\n                // 4200\n                case UnsupportedProviderMethodError.code:\n                  throw new UnsupportedProviderMethodError(err)\n                // 4900\n                case ProviderDisconnectedError.code:\n                  throw new ProviderDisconnectedError(err)\n                // 4901\n                case ChainDisconnectedError.code:\n                  throw new ChainDisconnectedError(err)\n                // 4902\n                case SwitchChainError.code:\n                  throw new SwitchChainError(err)\n\n                // 5700\n                case UnsupportedNonOptionalCapabilityError.code:\n                  throw new UnsupportedNonOptionalCapabilityError(err)\n                // 5710\n                case UnsupportedChainIdError.code:\n                  throw new UnsupportedChainIdError(err)\n                // 5720\n                case DuplicateIdError.code:\n                  throw new DuplicateIdError(err)\n                // 5730\n                case UnknownBundleIdError.code:\n                  throw new UnknownBundleIdError(err)\n                // 5740\n                case BundleTooLargeError.code:\n                  throw new BundleTooLargeError(err)\n                // 5750\n                case AtomicReadyWalletRejectedUpgradeError.code:\n                  throw new AtomicReadyWalletRejectedUpgradeError(err)\n                // 5760\n                case AtomicityNotSupportedError.code:\n                  throw new AtomicityNotSupportedError(err)\n\n                // CAIP-25: User Rejected Error\n                // https://docs.walletconnect.com/2.0/specs/clients/sign/error-codes#rejected-caip-25\n                case 5000:\n                  throw new UserRejectedRequestError(err)\n\n                default:\n                  if (err_ instanceof BaseError) throw err_\n                  throw new UnknownRpcError(err as Error)\n              }\n            }\n          },\n          {\n            delay: ({ count, error }) => {\n              // If we find a Retry-After header, let's retry after the given time.\n              if (error && error instanceof HttpRequestError) {\n                const retryAfter = error?.headers?.get('Retry-After')\n                if (retryAfter?.match(/\\d/))\n                  return Number.parseInt(retryAfter) * 1000\n              }\n\n              // Otherwise, let's retry with an exponential backoff.\n              return ~~(1 << count) * retryDelay\n            },\n            retryCount,\n            shouldRetry: ({ error }) => shouldRetry(error),\n          },\n        ),\n      { enabled: dedupe, id: requestId },\n    )\n  }\n}\n\n/** @internal */\nexport function shouldRetry(error: Error) {\n  if ('code' in error && typeof error.code === 'number') {\n    if (error.code === -1) return true // Unknown error\n    if (error.code === LimitExceededRpcError.code) return true\n    if (error.code === InternalRpcError.code) return true\n    return false\n  }\n  if (error instanceof HttpRequestError && error.status) {\n    // Forbidden\n    if (error.status === 403) return true\n    // Request Timeout\n    if (error.status === 408) return true\n    // Request Entity Too Large\n    if (error.status === 413) return true\n    // Too Many Requests\n    if (error.status === 429) return true\n    // Internal Server Error\n    if (error.status === 500) return true\n    // Bad Gateway\n    if (error.status === 502) return true\n    // Service Unavailable\n    if (error.status === 503) return true\n    // Gateway Timeout\n    if (error.status === 504) return true\n    return false\n  }\n  return true\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { EIP1193RequestFn } from '../../types/eip1193.js'\nimport type { OneOf } from '../../types/utils.js'\nimport { buildRequest } from '../../utils/buildRequest.js'\nimport { uid as uid_ } from '../../utils/uid.js'\nimport type { ClientConfig } from '../createClient.js'\n\nexport type TransportConfig<\n  type extends string = string,\n  eip1193RequestFn extends EIP1193RequestFn = EIP1193RequestFn,\n> = {\n  /** The name of the transport. */\n  name: string\n  /** The key of the transport. */\n  key: string\n  /** Methods to include or exclude from executing RPC requests. */\n  methods?:\n    | OneOf<\n        | {\n            include?: string[] | undefined\n          }\n        | {\n            exclude?: string[] | undefined\n          }\n      >\n    | undefined\n  /** The JSON-RPC request function that matches the EIP-1193 request spec. */\n  request: eip1193RequestFn\n  /** The base delay (in ms) between retries. */\n  retryDelay?: number | undefined\n  /** The max number of times to retry. */\n  retryCount?: number | undefined\n  /** The timeout (in ms) for requests. */\n  timeout?: number | undefined\n  /** The type of the transport. */\n  type: type\n}\n\nexport type Transport<\n  type extends string = string,\n  rpcAttributes = Record<string, any>,\n  eip1193RequestFn extends EIP1193RequestFn = EIP1193RequestFn,\n> = <chain extends Chain | undefined = Chain>({\n  chain,\n}: {\n  chain?: chain | undefined\n  pollingInterval?: ClientConfig['pollingInterval'] | undefined\n  retryCount?: TransportConfig['retryCount'] | undefined\n  timeout?: TransportConfig['timeout'] | undefined\n}) => {\n  config: TransportConfig<type>\n  request: eip1193RequestFn\n  value?: rpcAttributes | undefined\n}\n\nexport type CreateTransportErrorType = ErrorType\n\n/**\n * @description Creates an transport intended to be used with a client.\n */\nexport function createTransport<\n  type extends string,\n  rpcAttributes extends Record<string, any>,\n>(\n  {\n    key,\n    methods,\n    name,\n    request,\n    retryCount = 3,\n    retryDelay = 150,\n    timeout,\n    type,\n  }: TransportConfig<type>,\n  value?: rpcAttributes | undefined,\n): ReturnType<Transport<type, rpcAttributes>> {\n  const uid = uid_()\n  return {\n    config: {\n      key,\n      methods,\n      name,\n      request,\n      retryCount,\n      retryDelay,\n      timeout,\n      type,\n    },\n    request: buildRequest(request, { methods, retryCount, retryDelay, uid }),\n    value,\n  }\n}\n","import { BaseError } from './base.js'\n\nexport type UrlRequiredErrorType = UrlRequiredError & {\n  name: 'UrlRequiredError'\n}\nexport class UrlRequiredError extends BaseError {\n  constructor() {\n    super(\n      'No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.',\n      {\n        docsPath: '/docs/clients/intro',\n        name: 'UrlRequiredError',\n      },\n    )\n  }\n}\n","import type { ErrorType } from '../../errors/utils.js'\n\nexport type WithTimeoutErrorType = ErrorType\n\nexport function withTimeout<data>(\n  fn: ({\n    signal,\n  }: { signal: AbortController['signal'] | null }) => Promise<data>,\n  {\n    errorInstance = new Error('timed out'),\n    timeout,\n    signal,\n  }: {\n    // The error instance to throw when the timeout is reached.\n    errorInstance?: Error | undefined\n    // The timeout (in ms).\n    timeout: number\n    // Whether or not the timeout should use an abort signal.\n    signal?: boolean | undefined\n  },\n): Promise<data> {\n  return new Promise((resolve, reject) => {\n    ;(async () => {\n      let timeoutId!: NodeJS.Timeout\n      try {\n        const controller = new AbortController()\n        if (timeout > 0) {\n          timeoutId = setTimeout(() => {\n            if (signal) {\n              controller.abort()\n            } else {\n              reject(errorInstance)\n            }\n          }, timeout) as NodeJS.Timeout // need to cast because bun globals.d.ts overrides @types/node\n        }\n        resolve(await fn({ signal: controller?.signal || null }))\n      } catch (err) {\n        if ((err as Error)?.name === 'AbortError') reject(errorInstance)\n        reject(err)\n      } finally {\n        clearTimeout(timeoutId)\n      }\n    })()\n  })\n}\n","function createIdStore() {\n  return {\n    current: 0,\n    take() {\n      return this.current++\n    },\n    reset() {\n      this.current = 0\n    },\n  }\n}\n\nexport const idCache = /*#__PURE__*/ createIdStore()\n","import {\n  HttpRequestError,\n  type HttpRequestErrorType as HttpRequestErrorType_,\n  TimeoutError,\n  type TimeoutErrorType,\n} from '../../errors/request.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { RpcRequest, RpcResponse } from '../../types/rpc.js'\nimport type { MaybePromise } from '../../types/utils.js'\nimport {\n  type WithTimeoutErrorType,\n  withTimeout,\n} from '../promise/withTimeout.js'\nimport { stringify } from '../stringify.js'\nimport { idCache } from './id.js'\n\nexport type HttpRpcClientOptions = {\n  /** Request configuration to pass to `fetch`. */\n  fetchOptions?: Omit<RequestInit, 'body'> | undefined\n  /** A callback to handle the request. */\n  onRequest?:\n    | ((\n        request: Request,\n        init: RequestInit,\n      ) => MaybePromise<\n        void | undefined | (RequestInit & { url?: string | undefined })\n      >)\n    | undefined\n  /** A callback to handle the response. */\n  onResponse?: ((response: Response) => Promise<void> | void) | undefined\n  /** The timeout (in ms) for the request. */\n  timeout?: number | undefined\n}\n\nexport type HttpRequestParameters<\n  body extends RpcRequest | RpcRequest[] = RpcRequest,\n> = {\n  /** The RPC request body. */\n  body: body\n  /** Request configuration to pass to `fetch`. */\n  fetchOptions?: HttpRpcClientOptions['fetchOptions'] | undefined\n  /** A callback to handle the response. */\n  onRequest?:\n    | ((\n        request: Request,\n        init: RequestInit,\n      ) => MaybePromise<\n        void | undefined | (RequestInit & { url?: string | undefined })\n      >)\n    | undefined\n  /** A callback to handle the response. */\n  onResponse?: ((response: Response) => Promise<void> | void) | undefined\n  /** The timeout (in ms) for the request. */\n  timeout?: HttpRpcClientOptions['timeout'] | undefined\n}\n\nexport type HttpRequestReturnType<\n  body extends RpcRequest | RpcRequest[] = RpcRequest,\n> = body extends RpcRequest[] ? RpcResponse[] : RpcResponse\n\nexport type HttpRequestErrorType =\n  | HttpRequestErrorType_\n  | TimeoutErrorType\n  | WithTimeoutErrorType\n  | ErrorType\n\nexport type HttpRpcClient = {\n  request<body extends RpcRequest | RpcRequest[]>(\n    params: HttpRequestParameters<body>,\n  ): Promise<HttpRequestReturnType<body>>\n}\n\nexport function getHttpRpcClient(\n  url: string,\n  options: HttpRpcClientOptions = {},\n): HttpRpcClient {\n  return {\n    async request(params) {\n      const {\n        body,\n        onRequest = options.onRequest,\n        onResponse = options.onResponse,\n        timeout = options.timeout ?? 10_000,\n      } = params\n\n      const fetchOptions = {\n        ...(options.fetchOptions ?? {}),\n        ...(params.fetchOptions ?? {}),\n      }\n\n      const { headers, method, signal: signal_ } = fetchOptions\n\n      try {\n        const response = await withTimeout(\n          async ({ signal }) => {\n            const init: RequestInit = {\n              ...fetchOptions,\n              body: Array.isArray(body)\n                ? stringify(\n                    body.map((body) => ({\n                      jsonrpc: '2.0',\n                      id: body.id ?? idCache.take(),\n                      ...body,\n                    })),\n                  )\n                : stringify({\n                    jsonrpc: '2.0',\n                    id: body.id ?? idCache.take(),\n                    ...body,\n                  }),\n              headers: {\n                'Content-Type': 'application/json',\n                ...headers,\n              },\n              method: method || 'POST',\n              signal: signal_ || (timeout > 0 ? signal : null),\n            }\n            const request = new Request(url, init)\n            const args = (await onRequest?.(request, init)) ?? { ...init, url }\n            const response = await fetch(args.url ?? url, args)\n            return response\n          },\n          {\n            errorInstance: new TimeoutError({ body, url }),\n            timeout,\n            signal: true,\n          },\n        )\n\n        if (onResponse) await onResponse(response)\n\n        let data: any\n        if (\n          response.headers.get('Content-Type')?.startsWith('application/json')\n        )\n          data = await response.json()\n        else {\n          data = await response.text()\n          try {\n            data = JSON.parse(data || '{}')\n          } catch (err) {\n            if (response.ok) throw err\n            data = { error: data }\n          }\n        }\n\n        if (!response.ok) {\n          throw new HttpRequestError({\n            body,\n            details: stringify(data.error) || response.statusText,\n            headers: response.headers,\n            status: response.status,\n            url,\n          })\n        }\n\n        return data\n      } catch (err) {\n        if (err instanceof HttpRequestError) throw err\n        if (err instanceof TimeoutError) throw err\n        throw new HttpRequestError({\n          body,\n          cause: err as Error,\n          url,\n        })\n      }\n    },\n  }\n}\n","import { RpcRequestError } from '../../errors/request.js'\nimport {\n  UrlRequiredError,\n  type UrlRequiredErrorType,\n} from '../../errors/transport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { EIP1193RequestFn, RpcSchema } from '../../types/eip1193.js'\nimport type { RpcRequest } from '../../types/rpc.js'\nimport { createBatchScheduler } from '../../utils/promise/createBatchScheduler.js'\nimport {\n  type HttpRpcClientOptions,\n  getHttpRpcClient,\n} from '../../utils/rpc/http.js'\n\nimport {\n  type CreateTransportErrorType,\n  type Transport,\n  type TransportConfig,\n  createTransport,\n} from './createTransport.js'\n\nexport type HttpTransportConfig<\n  rpcSchema extends RpcSchema | undefined = undefined,\n  raw extends boolean = false,\n> = {\n  /**\n   * Whether to enable Batch JSON-RPC.\n   * @link https://www.jsonrpc.org/specification#batch\n   */\n  batch?:\n    | boolean\n    | {\n        /** The maximum number of JSON-RPC requests to send in a batch. @default 1_000 */\n        batchSize?: number | undefined\n        /** The maximum number of milliseconds to wait before sending a batch. @default 0 */\n        wait?: number | undefined\n      }\n    | undefined\n  /**\n   * Request configuration to pass to `fetch`.\n   * @link https://developer.mozilla.org/en-US/docs/Web/API/fetch\n   */\n  fetchOptions?: HttpRpcClientOptions['fetchOptions'] | undefined\n  /** A callback to handle the response from `fetch`. */\n  onFetchRequest?: HttpRpcClientOptions['onRequest'] | undefined\n  /** A callback to handle the response from `fetch`. */\n  onFetchResponse?: HttpRpcClientOptions['onResponse'] | undefined\n  /** The key of the HTTP transport. */\n  key?: TransportConfig['key'] | undefined\n  /** Methods to include or exclude from executing RPC requests. */\n  methods?: TransportConfig['methods'] | undefined\n  /** The name of the HTTP transport. */\n  name?: TransportConfig['name'] | undefined\n  /** Whether to return JSON RPC errors as responses instead of throwing. */\n  raw?: raw | boolean | undefined\n  /** The max number of times to retry. */\n  retryCount?: TransportConfig['retryCount'] | undefined\n  /** The base delay (in ms) between retries. */\n  retryDelay?: TransportConfig['retryDelay'] | undefined\n  /** Typed JSON-RPC schema for the transport. */\n  rpcSchema?: rpcSchema | RpcSchema | undefined\n  /** The timeout (in ms) for the HTTP request. Default: 10_000 */\n  timeout?: TransportConfig['timeout'] | undefined\n}\n\nexport type HttpTransport<\n  rpcSchema extends RpcSchema | undefined = undefined,\n  raw extends boolean = false,\n> = Transport<\n  'http',\n  {\n    fetchOptions?: HttpTransportConfig['fetchOptions'] | undefined\n    url?: string | undefined\n  },\n  EIP1193RequestFn<rpcSchema, raw>\n>\n\nexport type HttpTransportErrorType =\n  | CreateTransportErrorType\n  | UrlRequiredErrorType\n  | ErrorType\n\n/**\n * @description Creates a HTTP transport that connects to a JSON-RPC API.\n */\nexport function http<\n  rpcSchema extends RpcSchema | undefined = undefined,\n  raw extends boolean = false,\n>(\n  /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */\n  url?: string | undefined,\n  config: HttpTransportConfig<rpcSchema, raw> = {},\n): HttpTransport<rpcSchema, raw> {\n  const {\n    batch,\n    fetchOptions,\n    key = 'http',\n    methods,\n    name = 'HTTP JSON-RPC',\n    onFetchRequest,\n    onFetchResponse,\n    retryDelay,\n    raw,\n  } = config\n  return ({ chain, retryCount: retryCount_, timeout: timeout_ }) => {\n    const { batchSize = 1000, wait = 0 } =\n      typeof batch === 'object' ? batch : {}\n    const retryCount = config.retryCount ?? retryCount_\n    const timeout = timeout_ ?? config.timeout ?? 10_000\n    const url_ = url || chain?.rpcUrls.default.http[0]\n    if (!url_) throw new UrlRequiredError()\n\n    const rpcClient = getHttpRpcClient(url_, {\n      fetchOptions,\n      onRequest: onFetchRequest,\n      onResponse: onFetchResponse,\n      timeout,\n    })\n\n    return createTransport(\n      {\n        key,\n        methods,\n        name,\n        async request({ method, params }) {\n          const body = { method, params }\n\n          const { schedule } = createBatchScheduler({\n            id: url_,\n            wait,\n            shouldSplitBatch(requests) {\n              return requests.length > batchSize\n            },\n            fn: (body: RpcRequest[]) =>\n              rpcClient.request({\n                body,\n              }),\n            sort: (a, b) => a.id - b.id,\n          })\n\n          const fn = async (body: RpcRequest) =>\n            batch\n              ? schedule(body)\n              : [\n                  await rpcClient.request({\n                    body,\n                  }),\n                ]\n\n          const [{ error, result }] = await fn(body)\n\n          if (raw) return { error, result }\n          if (error)\n            throw new RpcRequestError({\n              body,\n              error,\n              url: url_,\n            })\n          return result\n        },\n        retryCount,\n        retryDelay,\n        timeout,\n        type: 'http',\n      },\n      {\n        fetchOptions,\n        url: url_,\n      },\n    )\n  }\n}\n","import { panicReasons } from '../../constants/solidity.js'\nimport { BaseError } from '../../errors/base.js'\nimport { ContractFunctionRevertedError } from '../../errors/contract.js'\nimport type { ErrorType } from '../../errors/utils.js'\n\n/** @internal */\nexport type IsNullUniversalResolverErrorErrorType = ErrorType\n\n/*\n * @description Checks if error is a valid null result UniversalResolver error\n */\nexport function isNullUniversalResolverError(\n  err: unknown,\n  callType: 'resolve' | 'reverse',\n): boolean {\n  if (!(err instanceof BaseError)) return false\n  const cause = err.walk((e) => e instanceof ContractFunctionRevertedError)\n  if (!(cause instanceof ContractFunctionRevertedError)) return false\n  if (cause.data?.errorName === 'ResolverNotFound') return true\n  if (cause.data?.errorName === 'ResolverWildcardNotSupported') return true\n  if (cause.data?.errorName === 'ResolverNotContract') return true\n  if (cause.data?.errorName === 'ResolverError') return true\n  if (cause.data?.errorName === 'HttpError') return true\n  // Backwards compatibility for older UniversalResolver contracts\n  if (\n    cause.reason?.includes(\n      'Wildcard on non-extended resolvers is not supported',\n    )\n  )\n    return true\n  // No primary name set for address.\n  if (callType === 'reverse' && cause.reason === panicReasons[50]) return true\n  return false\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\nimport { type IsHexErrorType, isHex } from '../data/isHex.js'\n\nexport type EncodedLabelToLabelhashErrorType = IsHexErrorType | ErrorType\n\nexport function encodedLabelToLabelhash(label: string): Hex | null {\n  if (label.length !== 66) return null\n  if (label.indexOf('[') !== 0) return null\n  if (label.indexOf(']') !== 65) return null\n  const hash = `0x${label.slice(1, 65)}`\n  if (!isHex(hash)) return null\n  return hash\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray } from '../../types/misc.js'\nimport { type ConcatErrorType, concat } from '../data/concat.js'\nimport {\n  type StringToBytesErrorType,\n  type ToBytesErrorType,\n  stringToBytes,\n  toBytes,\n} from '../encoding/toBytes.js'\nimport { type BytesToHexErrorType, bytesToHex } from '../encoding/toHex.js'\nimport { type Keccak256ErrorType, keccak256 } from '../hash/keccak256.js'\nimport {\n  type EncodedLabelToLabelhashErrorType,\n  encodedLabelToLabelhash,\n} from './encodedLabelToLabelhash.js'\n\nexport type NamehashErrorType =\n  | BytesToHexErrorType\n  | EncodedLabelToLabelhashErrorType\n  | ToBytesErrorType\n  | Keccak256ErrorType\n  | StringToBytesErrorType\n  | ConcatErrorType\n  | ErrorType\n\n/**\n * @description Hashes ENS name\n *\n * - Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `namehash`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @example\n * namehash('wevm.eth')\n * '0x08c85f2f4059e930c45a6aeff9dcd3bd95dc3c5c1cddef6a0626b31152248560'\n *\n * @link https://eips.ethereum.org/EIPS/eip-137\n */\nexport function namehash(name: string) {\n  let result = new Uint8Array(32).fill(0) as ByteArray\n  if (!name) return bytesToHex(result)\n\n  const labels = name.split('.')\n  // Iterate in reverse order building up hash\n  for (let i = labels.length - 1; i >= 0; i -= 1) {\n    const hashFromEncodedLabel = encodedLabelToLabelhash(labels[i])\n    const hashed = hashFromEncodedLabel\n      ? toBytes(hashFromEncodedLabel)\n      : keccak256(stringToBytes(labels[i]), 'bytes')\n    result = keccak256(concat([result, hashed]), 'bytes')\n  }\n\n  return bytesToHex(result)\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\n\nexport type EncodeLabelhashErrorType = ErrorType\n\nexport function encodeLabelhash(hash: Hex): `[${string}]` {\n  return `[${hash.slice(2)}]`\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport {\n  type StringToBytesErrorType,\n  stringToBytes,\n} from '../encoding/toBytes.js'\nimport { type BytesToHexErrorType, bytesToHex } from '../encoding/toHex.js'\nimport { type Keccak256ErrorType, keccak256 } from '../hash/keccak256.js'\nimport {\n  type EncodedLabelToLabelhashErrorType,\n  encodedLabelToLabelhash,\n} from './encodedLabelToLabelhash.js'\n\nexport type LabelhashErrorType =\n  | BytesToHexErrorType\n  | EncodedLabelToLabelhashErrorType\n  | Keccak256ErrorType\n  | StringToBytesErrorType\n  | ErrorType\n\n/**\n * @description Hashes ENS label\n *\n * - Since ENS labels prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS labels](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `labelhash`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @example\n * labelhash('eth')\n * '0x4f5b812789fc606be1b3b16908db13fc7a9adf7ca72641f84d75b47069d3d7f0'\n */\nexport function labelhash(label: string) {\n  const result = new Uint8Array(32).fill(0)\n  if (!label) return bytesToHex(result)\n  return encodedLabelToLabelhash(label) || keccak256(stringToBytes(label))\n}\n","// Adapted from https://github.com/mafintosh/dns-packet\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray } from '../../types/misc.js'\nimport {\n  type StringToBytesErrorType,\n  stringToBytes,\n} from '../encoding/toBytes.js'\nimport {\n  type EncodeLabelhashErrorType,\n  encodeLabelhash,\n} from './encodeLabelhash.js'\nimport { type LabelhashErrorType, labelhash } from './labelhash.js'\n\nexport type PacketToBytesErrorType =\n  | EncodeLabelhashErrorType\n  | LabelhashErrorType\n  | StringToBytesErrorType\n  | ErrorType\n\n/*\n * @description Encodes a DNS packet into a ByteArray containing a UDP payload.\n *\n * @example\n * packetToBytes('awkweb.eth')\n * '0x0661776b7765620365746800'\n *\n * @see https://docs.ens.domains/resolution/names#dns\n *\n */\nexport function packetToBytes(packet: string): ByteArray {\n  // strip leading and trailing `.`\n  const value = packet.replace(/^\\.|\\.$/gm, '')\n  if (value.length === 0) return new Uint8Array(1)\n\n  const bytes = new Uint8Array(stringToBytes(value).byteLength + 2)\n\n  let offset = 0\n  const list = value.split('.')\n  for (let i = 0; i < list.length; i++) {\n    let encoded = stringToBytes(list[i])\n    // if the length is > 255, make the encoded label value a labelhash\n    // this is compatible with the universal resolver\n    if (encoded.byteLength > 255)\n      encoded = stringToBytes(encodeLabelhash(labelhash(list[i])))\n    bytes[offset] = encoded.length\n    bytes.set(encoded, offset + 1)\n    offset += encoded.length + 1\n  }\n\n  if (bytes.byteLength !== offset + 1) return bytes.slice(0, offset + 1)\n\n  return bytes\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  addressResolverAbi,\n  universalResolverResolveAbi,\n} from '../../constants/abis.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Prettify } from '../../types/utils.js'\nimport {\n  type DecodeFunctionResultErrorType,\n  decodeFunctionResult,\n} from '../../utils/abi/decodeFunctionResult.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport {\n  type GetChainContractAddressErrorType,\n  getChainContractAddress,\n} from '../../utils/chain/getChainContractAddress.js'\nimport { type TrimErrorType, trim } from '../../utils/data/trim.js'\nimport { type ToHexErrorType, toHex } from '../../utils/encoding/toHex.js'\nimport { isNullUniversalResolverError } from '../../utils/ens/errors.js'\nimport { localBatchGatewayUrl } from '../../utils/ens/localBatchGatewayRequest.js'\nimport { type NamehashErrorType, namehash } from '../../utils/ens/namehash.js'\nimport {\n  type PacketToBytesErrorType,\n  packetToBytes,\n} from '../../utils/ens/packetToBytes.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type ReadContractParameters,\n  readContract,\n} from '../public/readContract.js'\n\nexport type GetEnsAddressParameters = Prettify<\n  Pick<ReadContractParameters, 'blockNumber' | 'blockTag'> & {\n    /** ENSIP-9 compliant coinType used to resolve addresses for other chains */\n    coinType?: number | undefined\n    /** Universal Resolver gateway URLs to use for resolving CCIP-read requests. */\n    gatewayUrls?: string[] | undefined\n    /** Name to get the address for. */\n    name: string\n    /** Whether or not to throw errors propagated from the ENS Universal Resolver Contract. */\n    strict?: boolean | undefined\n    /** Address of ENS Universal Resolver Contract. */\n    universalResolverAddress?: Address | undefined\n  }\n>\n\nexport type GetEnsAddressReturnType = Address | null\n\nexport type GetEnsAddressErrorType =\n  | GetChainContractAddressErrorType\n  | EncodeFunctionDataErrorType\n  | NamehashErrorType\n  | ToHexErrorType\n  | PacketToBytesErrorType\n  | DecodeFunctionResultErrorType\n  | TrimErrorType\n  | ErrorType\n\n/**\n * Gets address for ENS name.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsAddress\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.\n *\n * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsAddressParameters}\n * @returns Address for ENS name or `null` if not found. {@link GetEnsAddressReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsAddress, normalize } from 'viem/ens'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const ensAddress = await getEnsAddress(client, {\n *   name: normalize('wevm.eth'),\n * })\n * // '0xd2135CfB216b74109775236E36d4b433F1DF507B'\n */\nexport async function getEnsAddress<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  parameters: GetEnsAddressParameters,\n): Promise<GetEnsAddressReturnType> {\n  const { blockNumber, blockTag, coinType, name, gatewayUrls, strict } =\n    parameters\n  const { chain } = client\n\n  const universalResolverAddress = (() => {\n    if (parameters.universalResolverAddress)\n      return parameters.universalResolverAddress\n    if (!chain)\n      throw new Error(\n        'client chain not configured. universalResolverAddress is required.',\n      )\n    return getChainContractAddress({\n      blockNumber,\n      chain,\n      contract: 'ensUniversalResolver',\n    })\n  })()\n\n  const tlds = chain?.ensTlds\n  if (tlds && !tlds.some((tld) => name.endsWith(tld))) return null\n\n  try {\n    const functionData = encodeFunctionData({\n      abi: addressResolverAbi,\n      functionName: 'addr',\n      ...(coinType != null\n        ? { args: [namehash(name), BigInt(coinType)] }\n        : { args: [namehash(name)] }),\n    })\n\n    const readContractParameters = {\n      address: universalResolverAddress,\n      abi: universalResolverResolveAbi,\n      functionName: 'resolve',\n      args: [\n        toHex(packetToBytes(name)),\n        functionData,\n        gatewayUrls ?? [localBatchGatewayUrl],\n      ],\n      blockNumber,\n      blockTag,\n    } as const\n\n    const readContractAction = getAction(client, readContract, 'readContract')\n\n    const res = await readContractAction(readContractParameters)\n\n    if (res[0] === '0x') return null\n\n    const address = decodeFunctionResult({\n      abi: addressResolverAbi,\n      args: coinType != null ? [namehash(name), BigInt(coinType)] : undefined,\n      functionName: 'addr',\n      data: res[0],\n    })\n\n    if (address === '0x') return null\n    if (trim(address) === '0x00') return null\n    return address\n  } catch (err) {\n    if (strict) throw err\n    if (isNullUniversalResolverError(err, 'resolve')) return null\n    throw err\n  }\n}\n","import { BaseError } from './base.js'\n\nexport type EnsAvatarInvalidMetadataErrorType =\n  EnsAvatarInvalidMetadataError & {\n    name: 'EnsAvatarInvalidMetadataError'\n  }\nexport class EnsAvatarInvalidMetadataError extends BaseError {\n  constructor({ data }: { data: any }) {\n    super(\n      'Unable to extract image from metadata. The metadata may be malformed or invalid.',\n      {\n        metaMessages: [\n          '- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.',\n          '',\n          `Provided data: ${JSON.stringify(data)}`,\n        ],\n        name: 'EnsAvatarInvalidMetadataError',\n      },\n    )\n  }\n}\n\nexport type EnsAvatarInvalidNftUriErrorType = EnsAvatarInvalidNftUriError & {\n  name: 'EnsAvatarInvalidNftUriError'\n}\nexport class EnsAvatarInvalidNftUriError extends BaseError {\n  constructor({ reason }: { reason: string }) {\n    super(`ENS NFT avatar URI is invalid. ${reason}`, {\n      name: 'EnsAvatarInvalidNftUriError',\n    })\n  }\n}\n\nexport type EnsAvatarUriResolutionErrorType = EnsAvatarUriResolutionError & {\n  name: 'EnsAvatarUriResolutionError'\n}\nexport class EnsAvatarUriResolutionError extends BaseError {\n  constructor({ uri }: { uri: string }) {\n    super(\n      `Unable to resolve ENS avatar URI \"${uri}\". The URI may be malformed, invalid, or does not respond with a valid image.`,\n      { name: 'EnsAvatarUriResolutionError' },\n    )\n  }\n}\n\nexport type EnsAvatarUnsupportedNamespaceErrorType =\n  EnsAvatarUnsupportedNamespaceError & {\n    name: 'EnsAvatarUnsupportedNamespaceError'\n  }\nexport class EnsAvatarUnsupportedNamespaceError extends BaseError {\n  constructor({ namespace }: { namespace: string }) {\n    super(\n      `ENS NFT avatar namespace \"${namespace}\" is not supported. Must be \"erc721\" or \"erc1155\".`,\n      { name: 'EnsAvatarUnsupportedNamespaceError' },\n    )\n  }\n}\n","import type { Address } from 'abitype'\n\nimport {\n  type ReadContractErrorType,\n  readContract,\n} from '../../../actions/public/readContract.js'\nimport type { Client } from '../../../clients/createClient.js'\nimport type { Transport } from '../../../clients/transports/createTransport.js'\nimport {\n  EnsAvatarInvalidMetadataError,\n  type EnsAvatarInvalidMetadataErrorType,\n  EnsAvatarInvalidNftUriError,\n  type EnsAvatarInvalidNftUriErrorType,\n  EnsAvatarUnsupportedNamespaceError,\n  type EnsAvatarUnsupportedNamespaceErrorType,\n  EnsAvatarUriResolutionError,\n  type EnsAvatarUriResolutionErrorType,\n} from '../../../errors/ens.js'\nimport type { ErrorType } from '../../../errors/utils.js'\nimport type { Chain } from '../../../types/chain.js'\nimport type { AssetGatewayUrls } from '../../../types/ens.js'\n\ntype UriItem = {\n  uri: string\n  isOnChain: boolean\n  isEncoded: boolean\n}\n\nconst networkRegex =\n  /(?<protocol>https?:\\/\\/[^\\/]*|ipfs:\\/|ipns:\\/|ar:\\/)?(?<root>\\/)?(?<subpath>ipfs\\/|ipns\\/)?(?<target>[\\w\\-.]+)(?<subtarget>\\/.*)?/\nconst ipfsHashRegex =\n  /^(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>\\/.*)?$/\nconst base64Regex = /^data:([a-zA-Z\\-/+]*);base64,([^\"].*)/\nconst dataURIRegex = /^data:([a-zA-Z\\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/\n\ntype IsImageUriErrorType = ErrorType\n\n/** @internal */\nexport async function isImageUri(uri: string) {\n  try {\n    const res = await fetch(uri, { method: 'HEAD' })\n    // retrieve content type header to check if content is image\n    if (res.status === 200) {\n      const contentType = res.headers.get('content-type')\n      return contentType?.startsWith('image/')\n    }\n    return false\n  } catch (error: any) {\n    // if error is not cors related then fail\n    if (typeof error === 'object' && typeof error.response !== 'undefined') {\n      return false\n    }\n    // fail in NodeJS, since the error is not cors but any other network issue\n    // biome-ignore lint/suspicious/noPrototypeBuiltins:\n    if (!globalThis.hasOwnProperty('Image')) return false\n    // in case of cors, use image api to validate if given url is an actual image\n    return new Promise((resolve) => {\n      const img = new Image()\n      img.onload = () => {\n        resolve(true)\n      }\n      img.onerror = () => {\n        resolve(false)\n      }\n      img.src = uri\n    })\n  }\n}\n\ntype GetGatewayErrorType = ErrorType\n\n/** @internal */\nexport function getGateway(custom: string | undefined, defaultGateway: string) {\n  if (!custom) return defaultGateway\n  if (custom.endsWith('/')) return custom.slice(0, -1)\n  return custom\n}\n\nexport type ResolveAvatarUriErrorType =\n  | GetGatewayErrorType\n  | EnsAvatarUriResolutionErrorType\n  | ErrorType\n\nexport function resolveAvatarUri({\n  uri,\n  gatewayUrls,\n}: {\n  uri: string\n  gatewayUrls?: AssetGatewayUrls | undefined\n}): UriItem {\n  const isEncoded = base64Regex.test(uri)\n  if (isEncoded) return { uri, isOnChain: true, isEncoded }\n\n  const ipfsGateway = getGateway(gatewayUrls?.ipfs, 'https://ipfs.io')\n  const arweaveGateway = getGateway(gatewayUrls?.arweave, 'https://arweave.net')\n\n  const networkRegexMatch = uri.match(networkRegex)\n  const {\n    protocol,\n    subpath,\n    target,\n    subtarget = '',\n  } = networkRegexMatch?.groups || {}\n\n  const isIPNS = protocol === 'ipns:/' || subpath === 'ipns/'\n  const isIPFS =\n    protocol === 'ipfs:/' || subpath === 'ipfs/' || ipfsHashRegex.test(uri)\n\n  if (uri.startsWith('http') && !isIPNS && !isIPFS) {\n    let replacedUri = uri\n    if (gatewayUrls?.arweave)\n      replacedUri = uri.replace(/https:\\/\\/arweave.net/g, gatewayUrls?.arweave)\n    return { uri: replacedUri, isOnChain: false, isEncoded: false }\n  }\n\n  if ((isIPNS || isIPFS) && target) {\n    return {\n      uri: `${ipfsGateway}/${isIPNS ? 'ipns' : 'ipfs'}/${target}${subtarget}`,\n      isOnChain: false,\n      isEncoded: false,\n    }\n  }\n\n  if (protocol === 'ar:/' && target) {\n    return {\n      uri: `${arweaveGateway}/${target}${subtarget || ''}`,\n      isOnChain: false,\n      isEncoded: false,\n    }\n  }\n\n  let parsedUri = uri.replace(dataURIRegex, '')\n  if (parsedUri.startsWith('<svg')) {\n    // if svg, base64 encode\n    parsedUri = `data:image/svg+xml;base64,${btoa(parsedUri)}`\n  }\n\n  if (parsedUri.startsWith('data:') || parsedUri.startsWith('{')) {\n    return {\n      uri: parsedUri,\n      isOnChain: true,\n      isEncoded: false,\n    }\n  }\n\n  throw new EnsAvatarUriResolutionError({ uri })\n}\n\nexport type GetJsonImageErrorType =\n  | EnsAvatarInvalidMetadataErrorType\n  | ErrorType\n\nexport function getJsonImage(data: any) {\n  // validation check for json data, must include one of theses properties\n  if (\n    typeof data !== 'object' ||\n    (!('image' in data) && !('image_url' in data) && !('image_data' in data))\n  ) {\n    throw new EnsAvatarInvalidMetadataError({ data })\n  }\n\n  return data.image || data.image_url || data.image_data\n}\n\nexport type GetMetadataAvatarUriErrorType =\n  | EnsAvatarUriResolutionErrorType\n  | ParseAvatarUriErrorType\n  | GetJsonImageErrorType\n  | ErrorType\n\nexport async function getMetadataAvatarUri({\n  gatewayUrls,\n  uri,\n}: {\n  gatewayUrls?: AssetGatewayUrls | undefined\n  uri: string\n}): Promise<string> {\n  try {\n    const res = await fetch(uri).then((res) => res.json())\n    const image = await parseAvatarUri({\n      gatewayUrls,\n      uri: getJsonImage(res),\n    })\n    return image\n  } catch {\n    throw new EnsAvatarUriResolutionError({ uri })\n  }\n}\n\nexport type ParseAvatarUriErrorType =\n  | ResolveAvatarUriErrorType\n  | IsImageUriErrorType\n  | EnsAvatarUriResolutionErrorType\n  | ErrorType\n\nexport async function parseAvatarUri({\n  gatewayUrls,\n  uri,\n}: {\n  gatewayUrls?: AssetGatewayUrls | undefined\n  uri: string\n}): Promise<string> {\n  const { uri: resolvedURI, isOnChain } = resolveAvatarUri({ uri, gatewayUrls })\n  if (isOnChain) return resolvedURI\n\n  // check if resolvedURI is an image, if it is return the url\n  const isImage = await isImageUri(resolvedURI)\n  if (isImage) return resolvedURI\n\n  throw new EnsAvatarUriResolutionError({ uri })\n}\n\ntype ParsedNft = {\n  chainID: number\n  namespace: string\n  contractAddress: Address\n  tokenID: string\n}\n\nexport type ParseNftUriErrorType = EnsAvatarInvalidNftUriErrorType | ErrorType\n\nexport function parseNftUri(uri_: string): ParsedNft {\n  let uri = uri_\n  // parse valid nft spec (CAIP-22/CAIP-29)\n  // @see: https://github.com/ChainAgnostic/CAIPs/tree/master/CAIPs\n  if (uri.startsWith('did:nft:')) {\n    // convert DID to CAIP\n    uri = uri.replace('did:nft:', '').replace(/_/g, '/')\n  }\n\n  const [reference, asset_namespace, tokenID] = uri.split('/')\n  const [eip_namespace, chainID] = reference.split(':')\n  const [erc_namespace, contractAddress] = asset_namespace.split(':')\n\n  if (!eip_namespace || eip_namespace.toLowerCase() !== 'eip155')\n    throw new EnsAvatarInvalidNftUriError({ reason: 'Only EIP-155 supported' })\n  if (!chainID)\n    throw new EnsAvatarInvalidNftUriError({ reason: 'Chain ID not found' })\n  if (!contractAddress)\n    throw new EnsAvatarInvalidNftUriError({\n      reason: 'Contract address not found',\n    })\n  if (!tokenID)\n    throw new EnsAvatarInvalidNftUriError({ reason: 'Token ID not found' })\n  if (!erc_namespace)\n    throw new EnsAvatarInvalidNftUriError({ reason: 'ERC namespace not found' })\n\n  return {\n    chainID: Number.parseInt(chainID),\n    namespace: erc_namespace.toLowerCase(),\n    contractAddress: contractAddress as Address,\n    tokenID,\n  }\n}\n\nexport type GetNftTokenUriErrorType =\n  | ReadContractErrorType\n  | EnsAvatarUnsupportedNamespaceErrorType\n  | ErrorType\n\nexport async function getNftTokenUri<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  { nft }: { nft: ParsedNft },\n) {\n  if (nft.namespace === 'erc721') {\n    return readContract(client, {\n      address: nft.contractAddress,\n      abi: [\n        {\n          name: 'tokenURI',\n          type: 'function',\n          stateMutability: 'view',\n          inputs: [{ name: 'tokenId', type: 'uint256' }],\n          outputs: [{ name: '', type: 'string' }],\n        },\n      ],\n      functionName: 'tokenURI',\n      args: [BigInt(nft.tokenID)],\n    })\n  }\n  if (nft.namespace === 'erc1155') {\n    return readContract(client, {\n      address: nft.contractAddress,\n      abi: [\n        {\n          name: 'uri',\n          type: 'function',\n          stateMutability: 'view',\n          inputs: [{ name: '_id', type: 'uint256' }],\n          outputs: [{ name: '', type: 'string' }],\n        },\n      ],\n      functionName: 'uri',\n      args: [BigInt(nft.tokenID)],\n    })\n  }\n  throw new EnsAvatarUnsupportedNamespaceError({ namespace: nft.namespace })\n}\n","import type { Client } from '../../../clients/createClient.js'\nimport type { Transport } from '../../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../../errors/utils.js'\nimport type { Chain } from '../../../types/chain.js'\nimport type { AssetGatewayUrls } from '../../../types/ens.js'\n\nimport {\n  type GetJsonImageErrorType,\n  type GetMetadataAvatarUriErrorType,\n  type GetNftTokenUriErrorType,\n  type ParseAvatarUriErrorType,\n  type ParseNftUriErrorType,\n  type ResolveAvatarUriErrorType,\n  getJsonImage,\n  getMetadataAvatarUri,\n  getNftTokenUri,\n  parseAvatarUri,\n  parseNftUri,\n  resolveAvatarUri,\n} from './utils.js'\n\nexport type ParseAvatarRecordErrorType =\n  | ParseNftAvatarUriErrorType\n  | ParseAvatarUriErrorType\n  | ErrorType\n\n/*\n * @description Parses an ENS avatar record.\n *\n * @example\n * parseAvatarRecord('eip155:1/erc1155:0xb32979486938aa9694bfc898f35dbed459f44424/10063')\n * 'https://ipfs.io/ipfs/QmSP4nq9fnN9dAiCj42ug9Wa79rqmQerZXZch82VqpiH7U/image.gif'\n *\n * @see https://docs.ens.domains/web/avatars\n *\n */\nexport async function parseAvatarRecord<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  {\n    gatewayUrls,\n    record,\n  }: {\n    gatewayUrls?: AssetGatewayUrls | undefined\n    record: string\n  },\n): Promise<string> {\n  if (/eip155:/i.test(record))\n    return parseNftAvatarUri(client, { gatewayUrls, record })\n  return parseAvatarUri({ uri: record, gatewayUrls })\n}\n\ntype ParseNftAvatarUriErrorType =\n  | ParseNftUriErrorType\n  | GetNftTokenUriErrorType\n  | ResolveAvatarUriErrorType\n  | ParseAvatarUriErrorType\n  | GetJsonImageErrorType\n  | GetMetadataAvatarUriErrorType\n  | ErrorType\n\nasync function parseNftAvatarUri<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  {\n    gatewayUrls,\n    record,\n  }: {\n    gatewayUrls?: AssetGatewayUrls | undefined\n    record: string\n  },\n): Promise<string> {\n  // parse NFT URI into properties\n  const nft = parseNftUri(record)\n  // fetch tokenURI from the NFT contract\n  const nftUri = await getNftTokenUri(client, { nft })\n  // resolve the URI from the fetched tokenURI\n  const {\n    uri: resolvedNftUri,\n    isOnChain,\n    isEncoded,\n  } = resolveAvatarUri({ uri: nftUri, gatewayUrls })\n\n  // if the resolved URI is on chain, return the data\n  if (\n    isOnChain &&\n    (resolvedNftUri.includes('data:application/json;base64,') ||\n      resolvedNftUri.startsWith('{'))\n  ) {\n    const encodedJson = isEncoded\n      ? // if it is encoded, decode it\n        atob(resolvedNftUri.replace('data:application/json;base64,', ''))\n      : // if it isn't encoded assume it is a JSON string, but it could be anything (it will error if it is)\n        resolvedNftUri\n\n    const decoded = JSON.parse(encodedJson)\n    return parseAvatarUri({ uri: getJsonImage(decoded), gatewayUrls })\n  }\n\n  let uriTokenId = nft.tokenID\n  if (nft.namespace === 'erc1155')\n    uriTokenId = uriTokenId.replace('0x', '').padStart(64, '0')\n\n  return getMetadataAvatarUri({\n    gatewayUrls,\n    uri: resolvedNftUri.replace(/(?:0x)?{id}/, uriTokenId),\n  })\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  textResolverAbi,\n  universalResolverResolveAbi,\n} from '../../constants/abis.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Prettify } from '../../types/utils.js'\nimport {\n  type DecodeFunctionResultErrorType,\n  decodeFunctionResult,\n} from '../../utils/abi/decodeFunctionResult.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport {\n  type GetChainContractAddressErrorType,\n  getChainContractAddress,\n} from '../../utils/chain/getChainContractAddress.js'\nimport { type ToHexErrorType, toHex } from '../../utils/encoding/toHex.js'\nimport { isNullUniversalResolverError } from '../../utils/ens/errors.js'\nimport { localBatchGatewayUrl } from '../../utils/ens/localBatchGatewayRequest.js'\nimport { type NamehashErrorType, namehash } from '../../utils/ens/namehash.js'\nimport {\n  type PacketToBytesErrorType,\n  packetToBytes,\n} from '../../utils/ens/packetToBytes.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type ReadContractErrorType,\n  type ReadContractParameters,\n  readContract,\n} from '../public/readContract.js'\n\nexport type GetEnsTextParameters = Prettify<\n  Pick<ReadContractParameters, 'blockNumber' | 'blockTag'> & {\n    /** ENS name to get Text for. */\n    name: string\n    /** Universal Resolver gateway URLs to use for resolving CCIP-read requests. */\n    gatewayUrls?: string[] | undefined\n    /** Text record to retrieve. */\n    key: string\n    /** Whether or not to throw errors propagated from the ENS Universal Resolver Contract. */\n    strict?: boolean | undefined\n    /** Address of ENS Universal Resolver Contract. */\n    universalResolverAddress?: Address | undefined\n  }\n>\n\nexport type GetEnsTextReturnType = string | null\n\nexport type GetEnsTextErrorType =\n  | GetChainContractAddressErrorType\n  | ReadContractErrorType\n  | ToHexErrorType\n  | PacketToBytesErrorType\n  | EncodeFunctionDataErrorType\n  | NamehashErrorType\n  | DecodeFunctionResultErrorType\n\n/**\n * Gets a text record for specified ENS name.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsResolver\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.\n *\n * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsTextParameters}\n * @returns Address for ENS resolver. {@link GetEnsTextReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsText, normalize } from 'viem/ens'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const twitterRecord = await getEnsText(client, {\n *   name: normalize('wevm.eth'),\n *   key: 'com.twitter',\n * })\n * // 'wevm_dev'\n */\nexport async function getEnsText<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  parameters: GetEnsTextParameters,\n): Promise<GetEnsTextReturnType> {\n  const { blockNumber, blockTag, key, name, gatewayUrls, strict } = parameters\n  const { chain } = client\n\n  const universalResolverAddress = (() => {\n    if (parameters.universalResolverAddress)\n      return parameters.universalResolverAddress\n    if (!chain)\n      throw new Error(\n        'client chain not configured. universalResolverAddress is required.',\n      )\n    return getChainContractAddress({\n      blockNumber,\n      chain,\n      contract: 'ensUniversalResolver',\n    })\n  })()\n\n  const tlds = chain?.ensTlds\n  if (tlds && !tlds.some((tld) => name.endsWith(tld))) return null\n\n  try {\n    const readContractParameters = {\n      address: universalResolverAddress,\n      abi: universalResolverResolveAbi,\n      functionName: 'resolve',\n      args: [\n        toHex(packetToBytes(name)),\n        encodeFunctionData({\n          abi: textResolverAbi,\n          functionName: 'text',\n          args: [namehash(name), key],\n        }),\n        gatewayUrls ?? [localBatchGatewayUrl],\n      ],\n      blockNumber,\n      blockTag,\n    } as const\n\n    const readContractAction = getAction(client, readContract, 'readContract')\n\n    const res = await readContractAction(readContractParameters)\n\n    if (res[0] === '0x') return null\n\n    const record = decodeFunctionResult({\n      abi: textResolverAbi,\n      functionName: 'text',\n      data: res[0],\n    })\n\n    return record === '' ? null : record\n  } catch (err) {\n    if (strict) throw err\n    if (isNullUniversalResolverError(err, 'resolve')) return null\n    throw err\n  }\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { AssetGatewayUrls } from '../../types/ens.js'\nimport type { Prettify } from '../../types/utils.js'\nimport {\n  type ParseAvatarRecordErrorType,\n  parseAvatarRecord,\n} from '../../utils/ens/avatar/parseAvatarRecord.js'\nimport { getAction } from '../../utils/getAction.js'\n\nimport {\n  type GetEnsTextErrorType,\n  type GetEnsTextParameters,\n  getEnsText,\n} from './getEnsText.js'\n\nexport type GetEnsAvatarParameters = Prettify<\n  Omit<GetEnsTextParameters, 'key'> & {\n    /** Gateway urls to resolve IPFS and/or Arweave assets. */\n    assetGatewayUrls?: AssetGatewayUrls | undefined\n  }\n>\n\nexport type GetEnsAvatarReturnType = string | null\n\nexport type GetEnsAvatarErrorType =\n  | GetEnsTextErrorType\n  | ParseAvatarRecordErrorType\n  | ErrorType\n\n/**\n * Gets the avatar of an ENS name.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsAvatar\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls [`getEnsText`](https://viem.sh/docs/ens/actions/getEnsText) with `key` set to `'avatar'`.\n *\n * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsAvatarParameters}\n * @returns Avatar URI or `null` if not found. {@link GetEnsAvatarReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsAvatar, normalize } from 'viem/ens'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const ensAvatar = await getEnsAvatar(client, {\n *   name: normalize('wevm.eth'),\n * })\n * // 'https://ipfs.io/ipfs/Qma8mnp6xV3J2cRNf3mTth5C8nV11CAnceVinc3y8jSbio'\n */\nexport async function getEnsAvatar<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  {\n    blockNumber,\n    blockTag,\n    assetGatewayUrls,\n    name,\n    gatewayUrls,\n    strict,\n    universalResolverAddress,\n  }: GetEnsAvatarParameters,\n): Promise<GetEnsAvatarReturnType> {\n  const record = await getAction(\n    client,\n    getEnsText,\n    'getEnsText',\n  )({\n    blockNumber,\n    blockTag,\n    key: 'avatar',\n    name,\n    universalResolverAddress,\n    gatewayUrls,\n    strict,\n  })\n  if (!record) return null\n  try {\n    return await parseAvatarRecord(client, {\n      record,\n      gatewayUrls: assetGatewayUrls,\n    })\n  } catch {\n    return null\n  }\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { universalResolverReverseAbi } from '../../constants/abis.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Prettify } from '../../types/utils.js'\nimport {\n  type GetChainContractAddressErrorType,\n  getChainContractAddress,\n} from '../../utils/chain/getChainContractAddress.js'\nimport { type ToHexErrorType, toHex } from '../../utils/encoding/toHex.js'\nimport { isNullUniversalResolverError } from '../../utils/ens/errors.js'\nimport {\n  type PacketToBytesErrorType,\n  packetToBytes,\n} from '../../utils/ens/packetToBytes.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type ReadContractErrorType,\n  type ReadContractParameters,\n  readContract,\n} from '../public/readContract.js'\n\nexport type GetEnsNameParameters = Prettify<\n  Pick<ReadContractParameters, 'blockNumber' | 'blockTag'> & {\n    /** Address to get ENS name for. */\n    address: Address\n    /** Universal Resolver gateway URLs to use for resolving CCIP-read requests. */\n    gatewayUrls?: string[] | undefined\n    /** Whether or not to throw errors propagated from the ENS Universal Resolver Contract. */\n    strict?: boolean | undefined\n    /** Address of ENS Universal Resolver Contract. */\n    universalResolverAddress?: Address | undefined\n  }\n>\n\nexport type GetEnsNameReturnType = string | null\n\nexport type GetEnsNameErrorType =\n  | GetChainContractAddressErrorType\n  | ReadContractErrorType\n  | ToHexErrorType\n  | PacketToBytesErrorType\n  | ErrorType\n\n/**\n * Gets primary name for specified address.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsName\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls `reverse(bytes)` on ENS Universal Resolver Contract to \"reverse resolve\" the address to the primary ENS name.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsNameParameters}\n * @returns Name or `null` if not found. {@link GetEnsNameReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsName } from 'viem/ens'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const ensName = await getEnsName(client, {\n *   address: '0xd2135CfB216b74109775236E36d4b433F1DF507B',\n * })\n * // 'wevm.eth'\n */\nexport async function getEnsName<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  {\n    address,\n    blockNumber,\n    blockTag,\n    gatewayUrls,\n    strict,\n    universalResolverAddress: universalResolverAddress_,\n  }: GetEnsNameParameters,\n): Promise<GetEnsNameReturnType> {\n  let universalResolverAddress = universalResolverAddress_\n  if (!universalResolverAddress) {\n    if (!client.chain)\n      throw new Error(\n        'client chain not configured. universalResolverAddress is required.',\n      )\n\n    universalResolverAddress = getChainContractAddress({\n      blockNumber,\n      chain: client.chain,\n      contract: 'ensUniversalResolver',\n    })\n  }\n\n  const reverseNode = `${address.toLowerCase().substring(2)}.addr.reverse`\n  try {\n    const readContractParameters = {\n      address: universalResolverAddress,\n      abi: universalResolverReverseAbi,\n      functionName: 'reverse',\n      args: [toHex(packetToBytes(reverseNode))],\n      blockNumber,\n      blockTag,\n    } as const\n\n    const readContractAction = getAction(client, readContract, 'readContract')\n\n    const [name, resolvedAddress] = gatewayUrls\n      ? await readContractAction({\n          ...readContractParameters,\n          args: [...readContractParameters.args, gatewayUrls],\n        })\n      : await readContractAction(readContractParameters)\n\n    if (address.toLowerCase() !== resolvedAddress.toLowerCase()) return null\n    return name\n  } catch (err) {\n    if (strict) throw err\n    if (isNullUniversalResolverError(err, 'reverse')) return null\n    throw err\n  }\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Prettify } from '../../types/utils.js'\nimport {\n  type GetChainContractAddressErrorType,\n  getChainContractAddress,\n} from '../../utils/chain/getChainContractAddress.js'\nimport { type ToHexErrorType, toHex } from '../../utils/encoding/toHex.js'\nimport {\n  type PacketToBytesErrorType,\n  packetToBytes,\n} from '../../utils/ens/packetToBytes.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type ReadContractParameters,\n  readContract,\n} from '../public/readContract.js'\n\nexport type GetEnsResolverParameters = Prettify<\n  Pick<ReadContractParameters, 'blockNumber' | 'blockTag'> & {\n    /** Name to get the address for. */\n    name: string\n    /** Address of ENS Universal Resolver Contract. */\n    universalResolverAddress?: Address | undefined\n  }\n>\n\nexport type GetEnsResolverReturnType = Address\n\nexport type GetEnsResolverErrorType =\n  | GetChainContractAddressErrorType\n  | ToHexErrorType\n  | PacketToBytesErrorType\n  | ErrorType\n\n/**\n * Gets resolver for ENS name.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsResolver\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls `findResolver(bytes)` on ENS Universal Resolver Contract to retrieve the resolver of an ENS name.\n *\n * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsResolverParameters}\n * @returns Address for ENS resolver. {@link GetEnsResolverReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsResolver, normalize } from 'viem/ens'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const resolverAddress = await getEnsResolver(client, {\n *   name: normalize('wevm.eth'),\n * })\n * // '0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41'\n */\nexport async function getEnsResolver<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  parameters: GetEnsResolverParameters,\n): Promise<GetEnsResolverReturnType> {\n  const { blockNumber, blockTag, name } = parameters\n  const { chain } = client\n\n  const universalResolverAddress = (() => {\n    if (parameters.universalResolverAddress)\n      return parameters.universalResolverAddress\n    if (!chain)\n      throw new Error(\n        'client chain not configured. universalResolverAddress is required.',\n      )\n    return getChainContractAddress({\n      blockNumber,\n      chain,\n      contract: 'ensUniversalResolver',\n    })\n  })()\n\n  const tlds = chain?.ensTlds\n  if (tlds && !tlds.some((tld) => name.endsWith(tld)))\n    throw new Error(\n      `${name} is not a valid ENS TLD (${tlds?.join(', ')}) for chain \"${chain.name}\" (id: ${chain.id}).`,\n    )\n\n  const [resolverAddress] = await getAction(\n    client,\n    readContract,\n    'readContract',\n  )({\n    address: universalResolverAddress,\n    abi: [\n      {\n        inputs: [{ type: 'bytes' }],\n        name: 'findResolver',\n        outputs: [{ type: 'address' }, { type: 'bytes32' }],\n        stateMutability: 'view',\n        type: 'function',\n      },\n    ],\n    functionName: 'findResolver',\n    args: [toHex(packetToBytes(name))],\n    blockNumber,\n    blockTag,\n  })\n  return resolverAddress\n}\n","import type { Address } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RpcTransactionRequest } from '../../types/rpc.js'\nimport type { AccessList, TransactionRequest } from '../../types/transaction.js'\nimport type { ExactPartial, Prettify, UnionOmit } from '../../types/utils.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport {\n  type GetCallErrorReturnType,\n  getCallError,\n} from '../../utils/errors/getCallError.js'\nimport { extract } from '../../utils/formatters/extract.js'\nimport {\n  type FormatTransactionRequestErrorType,\n  type FormattedTransactionRequest,\n  formatTransactionRequest,\n} from '../../utils/formatters/transactionRequest.js'\nimport { assertRequest } from '../../utils/transaction/assertRequest.js'\nimport type {\n  AssertRequestErrorType,\n  AssertRequestParameters,\n} from '../../utils/transaction/assertRequest.js'\n\nexport type CreateAccessListParameters<\n  chain extends Chain | undefined = Chain | undefined,\n> = UnionOmit<\n  FormattedTransactionRequest<chain>,\n  'from' | 'nonce' | 'accessList'\n> & {\n  /** Account attached to the call (msg.sender). */\n  account?: Account | Address | undefined\n} & (\n    | {\n        /** The balance of the account at a block number. */\n        blockNumber?: bigint | undefined\n        blockTag?: undefined\n      }\n    | {\n        blockNumber?: undefined\n        /**\n         * The balance of the account at a block tag.\n         * @default 'latest'\n         */\n        blockTag?: BlockTag | undefined\n      }\n  )\n\nexport type CreateAccessListReturnType = Prettify<{\n  accessList: AccessList\n  gasUsed: bigint\n}>\n\nexport type CreateAccessListErrorType = GetCallErrorReturnType<\n  | ParseAccountErrorType\n  | AssertRequestErrorType\n  | NumberToHexErrorType\n  | FormatTransactionRequestErrorType\n  | RequestErrorType\n>\n\n/**\n * Creates an EIP-2930 access list.\n *\n * - Docs: https://viem.sh/docs/actions/public/createAccessList\n * - JSON-RPC Methods: `eth_createAccessList`\n *\n * @param client - Client to use\n * @param parameters - {@link CreateAccessListParameters}\n * @returns The access list. {@link CreateAccessListReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createAccessList } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const data = await createAccessList(client, {\n *   account: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266',\n *   data: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * })\n */\nexport async function createAccessList<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  args: CreateAccessListParameters<chain>,\n): Promise<CreateAccessListReturnType> {\n  const {\n    account: account_ = client.account,\n    blockNumber,\n    blockTag = 'latest',\n    blobs,\n    data,\n    gas,\n    gasPrice,\n    maxFeePerBlobGas,\n    maxFeePerGas,\n    maxPriorityFeePerGas,\n    to,\n    value,\n    ...rest\n  } = args\n  const account = account_ ? parseAccount(account_) : undefined\n\n  try {\n    assertRequest(args as AssertRequestParameters)\n\n    const blockNumberHex =\n      typeof blockNumber === 'bigint' ? numberToHex(blockNumber) : undefined\n    const block = blockNumberHex || blockTag\n\n    const chainFormat = client.chain?.formatters?.transactionRequest?.format\n    const format = chainFormat || formatTransactionRequest\n\n    const request = format({\n      // Pick out extra data that might exist on the chain's transaction request type.\n      ...extract(rest, { format: chainFormat }),\n      from: account?.address,\n      blobs,\n      data,\n      gas,\n      gasPrice,\n      maxFeePerBlobGas,\n      maxFeePerGas,\n      maxPriorityFeePerGas,\n      to,\n      value,\n    } as TransactionRequest) as TransactionRequest\n\n    const response = await client.request({\n      method: 'eth_createAccessList',\n      params: [request as ExactPartial<RpcTransactionRequest>, block],\n    })\n    return {\n      accessList: response.accessList,\n      gasUsed: BigInt(response.gasUsed),\n    }\n  } catch (err) {\n    throw getCallError(err as ErrorType, {\n      ...args,\n      account,\n      chain: client.chain,\n    })\n  }\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport { createFilterRequestScope } from '../../utils/filters/createFilterRequestScope.js'\n\nexport type CreateBlockFilterReturnType = Filter<'block'>\n\nexport type CreateBlockFilterErrorType = RequestErrorType | ErrorType\n\n/**\n * Creates a [`Filter`](https://viem.sh/docs/glossary/types#filter) to listen for new block hashes that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n *\n * - Docs: https://viem.sh/docs/actions/public/createBlockFilter\n * - JSON-RPC Methods: [`eth_newBlockFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newBlockFilter)\n *\n * @param client - Client to use\n * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateBlockFilterReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createBlockFilter } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createBlockFilter(client)\n * // { id: \"0x345a6572337856574a76364e457a4366\", type: 'block' }\n */\nexport async function createBlockFilter<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n): Promise<CreateBlockFilterReturnType> {\n  const getRequest = createFilterRequestScope(client, {\n    method: 'eth_newBlockFilter',\n  })\n  const id = await client.request({\n    method: 'eth_newBlockFilter',\n  })\n  return { id, request: getRequest(id), type: 'block' }\n}\n","import type { AbiEvent, Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockNumber, BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  MaybeAbiEventName,\n  MaybeExtractEventArgsFromAbi,\n} from '../../types/contract.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { Hex, LogTopic } from '../../types/misc.js'\nimport type { Prettify } from '../../types/utils.js'\nimport {\n  type EncodeEventTopicsErrorType,\n  type EncodeEventTopicsParameters,\n  encodeEventTopics,\n} from '../../utils/abi/encodeEventTopics.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport { createFilterRequestScope } from '../../utils/filters/createFilterRequestScope.js'\n\nexport type CreateEventFilterParameters<\n  abiEvent extends AbiEvent | undefined = undefined,\n  abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  //\n  _eventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n  _args extends\n    | MaybeExtractEventArgsFromAbi<abiEvents, _eventName>\n    | undefined = undefined,\n> = {\n  address?: Address | Address[] | undefined\n  fromBlock?: fromBlock | BlockNumber | BlockTag | undefined\n  toBlock?: toBlock | BlockNumber | BlockTag | undefined\n} & (MaybeExtractEventArgsFromAbi<\n  abiEvents,\n  _eventName\n> extends infer eventFilterArgs\n  ?\n      | {\n          args:\n            | eventFilterArgs\n            | (_args extends eventFilterArgs ? _args : never)\n          event: abiEvent\n          events?: undefined\n          /**\n           * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n           * @default false\n           */\n          strict?: strict | undefined\n        }\n      | {\n          args?: undefined\n          event?: abiEvent | undefined\n          events?: undefined\n          /**\n           * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n           * @default false\n           */\n          strict?: strict | undefined\n        }\n      | {\n          args?: undefined\n          event?: undefined\n          events: abiEvents | undefined\n          /**\n           * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n           * @default false\n           */\n          strict?: strict | undefined\n        }\n      | {\n          args?: undefined\n          event?: undefined\n          events?: undefined\n          strict?: undefined\n        }\n  : {\n      args?: undefined\n      event?: undefined\n      events?: undefined\n      strict?: undefined\n    })\n\nexport type CreateEventFilterReturnType<\n  abiEvent extends AbiEvent | undefined = undefined,\n  abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  _eventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n  _args extends\n    | MaybeExtractEventArgsFromAbi<abiEvents, _eventName>\n    | undefined = undefined,\n> = Prettify<\n  Filter<'event', abiEvents, _eventName, _args, strict, fromBlock, toBlock>\n>\n\nexport type CreateEventFilterErrorType =\n  | EncodeEventTopicsErrorType\n  | RequestErrorType\n  | NumberToHexErrorType\n  | ErrorType\n\n/**\n * Creates a [`Filter`](https://viem.sh/docs/glossary/types#filter) to listen for new events that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n *\n * - Docs: https://viem.sh/docs/actions/public/createEventFilter\n * - JSON-RPC Methods: [`eth_newFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newfilter)\n *\n * @param client - Client to use\n * @param parameters - {@link CreateEventFilterParameters}\n * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateEventFilterReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createEventFilter } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createEventFilter(client, {\n *   address: '0xfba3912ca04dd458c843e2ee08967fc04f3579c2',\n * })\n */\nexport async function createEventFilter<\n  chain extends Chain | undefined,\n  const abiEvent extends AbiEvent | undefined = undefined,\n  const abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber<bigint> | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber<bigint> | BlockTag | undefined = undefined,\n  _eventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n  _args extends\n    | MaybeExtractEventArgsFromAbi<abiEvents, _eventName>\n    | undefined = undefined,\n>(\n  client: Client<Transport, chain>,\n  {\n    address,\n    args,\n    event,\n    events: events_,\n    fromBlock,\n    strict,\n    toBlock,\n  }: CreateEventFilterParameters<\n    abiEvent,\n    abiEvents,\n    strict,\n    fromBlock,\n    toBlock,\n    _eventName,\n    _args\n  > = {} as any,\n): Promise<\n  CreateEventFilterReturnType<\n    abiEvent,\n    abiEvents,\n    strict,\n    fromBlock,\n    toBlock,\n    _eventName,\n    _args\n  >\n> {\n  const events = events_ ?? (event ? [event] : undefined)\n\n  const getRequest = createFilterRequestScope(client, {\n    method: 'eth_newFilter',\n  })\n\n  let topics: LogTopic[] = []\n  if (events) {\n    const encoded = (events as AbiEvent[]).flatMap((event) =>\n      encodeEventTopics({\n        abi: [event],\n        eventName: (event as AbiEvent).name,\n        args,\n      } as EncodeEventTopicsParameters),\n    )\n    // TODO: Clean up type casting\n    topics = [encoded as LogTopic]\n    if (event) topics = topics[0] as LogTopic[]\n  }\n\n  const id: Hex = await client.request({\n    method: 'eth_newFilter',\n    params: [\n      {\n        address,\n        fromBlock:\n          typeof fromBlock === 'bigint' ? numberToHex(fromBlock) : fromBlock,\n        toBlock: typeof toBlock === 'bigint' ? numberToHex(toBlock) : toBlock,\n        ...(topics.length ? { topics } : {}),\n      },\n    ],\n  })\n\n  return {\n    abi: events,\n    args,\n    eventName: event ? (event as AbiEvent).name : undefined,\n    fromBlock,\n    id,\n    request: getRequest(id),\n    strict: Boolean(strict),\n    toBlock,\n    type: 'event',\n  } as unknown as CreateEventFilterReturnType<\n    abiEvent,\n    abiEvents,\n    strict,\n    fromBlock,\n    toBlock,\n    _eventName,\n    _args\n  >\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport { createFilterRequestScope } from '../../utils/filters/createFilterRequestScope.js'\n\nexport type CreatePendingTransactionFilterReturnType = Filter<'transaction'>\n\nexport type CreatePendingTransactionFilterErrorType =\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Creates a Filter to listen for new pending transaction hashes that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n *\n * - Docs: https://viem.sh/docs/actions/public/createPendingTransactionFilter\n * - JSON-RPC Methods: [`eth_newPendingTransactionFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newpendingtransactionfilter)\n *\n * @param client - Client to use\n * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateBlockFilterReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createPendingTransactionFilter } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createPendingTransactionFilter(client)\n * // { id: \"0x345a6572337856574a76364e457a4366\", type: 'transaction' }\n */\nexport async function createPendingTransactionFilter<\n  transport extends Transport,\n  chain extends Chain | undefined,\n>(\n  client: Client<transport, chain>,\n): Promise<CreatePendingTransactionFilterReturnType> {\n  const getRequest = createFilterRequestScope(client, {\n    method: 'eth_newPendingTransactionFilter',\n  })\n  const id = await client.request({\n    method: 'eth_newPendingTransactionFilter',\n  })\n  return { id, request: getRequest(id), type: 'transaction' }\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type GetBlobBaseFeeReturnType = bigint\n\nexport type GetBlobBaseFeeErrorType = RequestErrorType | ErrorType\n\n/**\n * Returns the base fee per blob gas in wei.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBlobBaseFee\n * - JSON-RPC Methods: [`eth_blobBaseFee`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blobBaseFee)\n *\n * @param client - Client to use\n * @returns The blob base fee (in wei). {@link GetBlobBaseFeeReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBlobBaseFee } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const blobBaseFee = await getBlobBaseFee(client)\n */\nexport async function getBlobBaseFee<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(\n  client: Client<Transport, chain, account>,\n): Promise<GetBlobBaseFeeReturnType> {\n  const baseFee = await client.request({\n    method: 'eth_blobBaseFee',\n  })\n  return BigInt(baseFee)\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { Quantity } from '../../types/rpc.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type HexToNumberErrorType,\n  hexToNumber,\n} from '../../utils/encoding/fromHex.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\n\nexport type GetBlockTransactionCountParameters =\n  | {\n      /** Hash of the block. */\n      blockHash?: Hash | undefined\n      blockNumber?: undefined\n      blockTag?: undefined\n    }\n  | {\n      blockHash?: undefined\n      /** The block number. */\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n  | {\n      blockHash?: undefined\n      blockNumber?: undefined\n      /** The block tag. Defaults to 'latest'. */\n      blockTag?: BlockTag | undefined\n    }\n\nexport type GetBlockTransactionCountReturnType = number\n\nexport type GetBlockTransactionCountErrorType =\n  | NumberToHexErrorType\n  | HexToNumberErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Returns the number of Transactions at a block number, hash, or tag.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBlockTransactionCount\n * - JSON-RPC Methods:\n *   - Calls [`eth_getBlockTransactionCountByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblocktransactioncountbynumber) for `blockNumber` & `blockTag`.\n *   - Calls [`eth_getBlockTransactionCountByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblocktransactioncountbyhash) for `blockHash`.\n *\n * @param client - Client to use\n * @param parameters - {@link GetBlockTransactionCountParameters}\n * @returns The block transaction count. {@link GetBlockTransactionCountReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBlockTransactionCount } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const count = await getBlockTransactionCount(client)\n */\nexport async function getBlockTransactionCount<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  {\n    blockHash,\n    blockNumber,\n    blockTag = 'latest',\n  }: GetBlockTransactionCountParameters = {},\n): Promise<GetBlockTransactionCountReturnType> {\n  const blockNumberHex =\n    blockNumber !== undefined ? numberToHex(blockNumber) : undefined\n\n  let count: Quantity\n  if (blockHash) {\n    count = await client.request(\n      {\n        method: 'eth_getBlockTransactionCountByHash',\n        params: [blockHash],\n      },\n      { dedupe: true },\n    )\n  } else {\n    count = await client.request(\n      {\n        method: 'eth_getBlockTransactionCountByNumber',\n        params: [blockNumberHex || blockTag],\n      },\n      { dedupe: Boolean(blockNumberHex) },\n    )\n  }\n\n  return hexToNumber(count)\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\n\nexport type GetCodeParameters = {\n  address: Address\n} & (\n  | {\n      blockNumber?: undefined\n      blockTag?: BlockTag | undefined\n    }\n  | {\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n)\n\nexport type GetCodeReturnType = Hex | undefined\n\nexport type GetCodeErrorType =\n  | NumberToHexErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Retrieves the bytecode at an address.\n *\n * - Docs: https://viem.sh/docs/contract/getCode\n * - JSON-RPC Methods: [`eth_getCode`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getcode)\n *\n * @param client - Client to use\n * @param parameters - {@link GetCodeParameters}\n * @returns The contract's bytecode. {@link GetCodeReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getCode } from 'viem/contract'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const code = await getCode(client, {\n *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * })\n */\nexport async function getCode<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  { address, blockNumber, blockTag = 'latest' }: GetCodeParameters,\n): Promise<GetCodeReturnType> {\n  const blockNumberHex =\n    blockNumber !== undefined ? numberToHex(blockNumber) : undefined\n  const hex = await client.request(\n    {\n      method: 'eth_getCode',\n      params: [address, blockNumberHex || blockTag],\n    },\n    { dedupe: Boolean(blockNumberHex) },\n  )\n  if (hex === '0x') return undefined\n  return hex\n}\n","import type { Address } from 'abitype'\nimport { BaseError } from './base.js'\n\nexport type Eip712DomainNotFoundErrorType = Eip712DomainNotFoundError & {\n  name: 'Eip712DomainNotFoundError'\n}\nexport class Eip712DomainNotFoundError extends BaseError {\n  constructor({ address }: { address: Address }) {\n    super(`No EIP-712 domain found on contract \"${address}\".`, {\n      metaMessages: [\n        'Ensure that:',\n        `- The contract is deployed at the address \"${address}\".`,\n        '- `eip712Domain()` function exists on the contract.',\n        '- `eip712Domain()` function matches signature to ERC-5267 specification.',\n      ],\n      name: 'Eip712DomainNotFoundError',\n    })\n  }\n}\n","import type { Address, TypedDataDomain } from 'abitype'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  Eip712DomainNotFoundError,\n  type Eip712DomainNotFoundErrorType,\n} from '../../errors/eip712.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { RequiredBy } from '../../types/utils.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type ReadContractErrorType,\n  type ReadContractParameters,\n  readContract,\n} from './readContract.js'\n\nexport type GetEip712DomainParameters = {\n  address: Address\n} & Pick<ReadContractParameters, 'factory' | 'factoryData'>\n\nexport type GetEip712DomainReturnType = {\n  domain: RequiredBy<\n    TypedDataDomain,\n    'chainId' | 'name' | 'verifyingContract' | 'salt' | 'version'\n  >\n  fields: Hex\n  extensions: readonly bigint[]\n}\n\nexport type GetEip712DomainErrorType =\n  | Eip712DomainNotFoundErrorType\n  | ReadContractErrorType\n  | ErrorType\n\n/**\n * Reads the EIP-712 domain from a contract, based on the ERC-5267 specification.\n *\n * @param client - A {@link Client} instance.\n * @param parameters - The parameters of the action. {@link GetEip712DomainParameters}\n * @returns The EIP-712 domain, fields, and extensions. {@link GetEip712DomainReturnType}\n *\n * @example\n * ```ts\n * import { createPublicClient, http, getEip712Domain } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n *\n * const domain = await getEip712Domain(client, {\n *   address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',\n * })\n * // {\n * //   domain: {\n * //     name: 'ExampleContract',\n * //     version: '1',\n * //     chainId: 1,\n * //     verifyingContract: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',\n * //   },\n * //   fields: '0x0f',\n * //   extensions: [],\n * // }\n * ```\n */\nexport async function getEip712Domain(\n  client: Client<Transport>,\n  parameters: GetEip712DomainParameters,\n): Promise<GetEip712DomainReturnType> {\n  const { address, factory, factoryData } = parameters\n\n  try {\n    const [\n      fields,\n      name,\n      version,\n      chainId,\n      verifyingContract,\n      salt,\n      extensions,\n    ] = await getAction(\n      client,\n      readContract,\n      'readContract',\n    )({\n      abi,\n      address,\n      functionName: 'eip712Domain',\n      factory,\n      factoryData,\n    })\n\n    return {\n      domain: {\n        name,\n        version,\n        chainId: Number(chainId),\n        verifyingContract,\n        salt,\n      },\n      extensions,\n      fields,\n    }\n  } catch (e) {\n    const error = e as ReadContractErrorType\n    if (\n      error.name === 'ContractFunctionExecutionError' &&\n      error.cause.name === 'ContractFunctionZeroDataError'\n    ) {\n      throw new Eip712DomainNotFoundError({ address })\n    }\n    throw error\n  }\n}\n\nconst abi = [\n  {\n    inputs: [],\n    name: 'eip712Domain',\n    outputs: [\n      { name: 'fields', type: 'bytes1' },\n      { name: 'name', type: 'string' },\n      { name: 'version', type: 'string' },\n      { name: 'chainId', type: 'uint256' },\n      { name: 'verifyingContract', type: 'address' },\n      { name: 'salt', type: 'bytes32' },\n      { name: 'extensions', type: 'uint256[]' },\n    ],\n    stateMutability: 'view',\n    type: 'function',\n  },\n] as const\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { FeeHistory } from '../../types/fee.js'\nimport type { RpcFeeHistory } from '../../types/rpc.js'\n\nexport type FormatFeeHistoryErrorType = ErrorType\n\nexport function formatFeeHistory(feeHistory: RpcFeeHistory): FeeHistory {\n  return {\n    baseFeePerGas: feeHistory.baseFeePerGas.map((value) => BigInt(value)),\n    gasUsedRatio: feeHistory.gasUsedRatio,\n    oldestBlock: BigInt(feeHistory.oldestBlock),\n    reward: feeHistory.reward?.map((reward) =>\n      reward.map((value) => BigInt(value)),\n    ),\n  }\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { FeeHistory } from '../../types/fee.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport {\n  type FormatFeeHistoryErrorType,\n  formatFeeHistory,\n} from '../../utils/formatters/feeHistory.js'\n\nexport type GetFeeHistoryParameters = {\n  /**\n   * Number of blocks in the requested range. Between 1 and 1024 blocks can be requested in a single query. Less than requested may be returned if not all blocks are available.\n   */\n  blockCount: number\n  /**\n   * A monotonically increasing list of percentile values to sample from each block's effective priority fees per gas in ascending order, weighted by gas used.\n   */\n  rewardPercentiles: number[]\n} & (\n  | {\n      blockNumber?: undefined\n      /**\n       * Highest number block of the requested range.\n       * @default 'latest'\n       */\n      blockTag?: BlockTag | undefined\n    }\n  | {\n      /** Highest number block of the requested range. */\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n)\nexport type GetFeeHistoryReturnType = FeeHistory\n\nexport type GetFeeHistoryErrorType =\n  | NumberToHexErrorType\n  | RequestErrorType\n  | FormatFeeHistoryErrorType\n\n/**\n * Returns a collection of historical gas information.\n *\n * - Docs: https://viem.sh/docs/actions/public/getFeeHistory\n * - JSON-RPC Methods: [`eth_feeHistory`](https://docs.alchemy.com/reference/eth-feehistory)\n *\n * @param client - Client to use\n * @param parameters - {@link GetFeeHistoryParameters}\n * @returns The gas estimate (in wei). {@link GetFeeHistoryReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getFeeHistory } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const feeHistory = await getFeeHistory(client, {\n *   blockCount: 4,\n *   rewardPercentiles: [25, 75],\n * })\n */\nexport async function getFeeHistory<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  {\n    blockCount,\n    blockNumber,\n    blockTag = 'latest',\n    rewardPercentiles,\n  }: GetFeeHistoryParameters,\n): Promise<GetFeeHistoryReturnType> {\n  const blockNumberHex =\n    typeof blockNumber === 'bigint' ? numberToHex(blockNumber) : undefined\n  const feeHistory = await client.request(\n    {\n      method: 'eth_feeHistory',\n      params: [\n        numberToHex(blockCount),\n        blockNumberHex || blockTag,\n        rewardPercentiles,\n      ],\n    },\n    { dedupe: Boolean(blockNumberHex) },\n  )\n  return formatFeeHistory(feeHistory)\n}\n","import type { Abi, AbiEvent, ExtractAbiEvent } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockNumber, BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { Log } from '../../types/log.js'\nimport type { DecodeEventLogErrorType } from '../../utils/abi/decodeEventLog.js'\nimport { parseEventLogs } from '../../utils/abi/parseEventLogs.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type FormatLogErrorType,\n  formatLog,\n} from '../../utils/formatters/log.js'\n\nexport type GetFilterLogsParameters<\n  abi extends Abi | readonly unknown[] | undefined = undefined,\n  eventName extends string | undefined = undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n> = {\n  filter: Filter<'event', abi, eventName, any, strict, fromBlock, toBlock>\n}\nexport type GetFilterLogsReturnType<\n  abi extends Abi | readonly unknown[] | undefined = undefined,\n  eventName extends string | undefined = undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  _AbiEvent extends AbiEvent | undefined = abi extends Abi\n    ? eventName extends string\n      ? ExtractAbiEvent<abi, eventName>\n      : undefined\n    : undefined,\n  _Pending extends boolean =\n    | (fromBlock extends 'pending' ? true : false)\n    | (toBlock extends 'pending' ? true : false),\n> = Log<bigint, number, _Pending, _AbiEvent, strict, abi, eventName>[]\n\nexport type GetFilterLogsErrorType =\n  | RequestErrorType\n  | DecodeEventLogErrorType\n  | FormatLogErrorType\n  | ErrorType\n\n/**\n * Returns a list of event logs since the filter was created.\n *\n * - Docs: https://viem.sh/docs/actions/public/getFilterLogs\n * - JSON-RPC Methods: [`eth_getFilterLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterlogs)\n *\n * `getFilterLogs` is only compatible with **event filters**.\n *\n * @param client - Client to use\n * @param parameters - {@link GetFilterLogsParameters}\n * @returns A list of event logs. {@link GetFilterLogsReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbiItem } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createEventFilter, getFilterLogs } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const filter = await createEventFilter(client, {\n *   address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n *   event: parseAbiItem('event Transfer(address indexed, address indexed, uint256)'),\n * })\n * const logs = await getFilterLogs(client, { filter })\n */\nexport async function getFilterLogs<\n  chain extends Chain | undefined,\n  const abi extends Abi | readonly unknown[] | undefined,\n  eventName extends string | undefined,\n  strict extends boolean | undefined = undefined,\n  fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n  toBlock extends BlockNumber | BlockTag | undefined = undefined,\n>(\n  _client: Client<Transport, chain>,\n  {\n    filter,\n  }: GetFilterLogsParameters<abi, eventName, strict, fromBlock, toBlock>,\n): Promise<\n  GetFilterLogsReturnType<abi, eventName, strict, fromBlock, toBlock>\n> {\n  const strict = filter.strict ?? false\n\n  const logs = await filter.request({\n    method: 'eth_getFilterLogs',\n    params: [filter.id],\n  })\n\n  const formattedLogs = logs.map((log) => formatLog(log))\n  if (!filter.abi)\n    return formattedLogs as GetFilterLogsReturnType<\n      abi,\n      eventName,\n      strict,\n      fromBlock,\n      toBlock\n    >\n  return parseEventLogs({\n    abi: filter.abi,\n    logs: formattedLogs,\n    strict,\n  }) as unknown as GetFilterLogsReturnType<\n    abi,\n    eventName,\n    strict,\n    fromBlock,\n    toBlock\n  >\n}\n","import type { Chain, ChainFormatters } from '../../types/chain.js'\nimport type { Assign, Prettify } from '../../types/utils.js'\n\nexport function defineChain<\n  formatters extends ChainFormatters,\n  const chain extends Chain<formatters>,\n>(chain: chain): Prettify<Assign<Chain<undefined>, chain>> {\n  return {\n    formatters: undefined,\n    fees: undefined,\n    serializers: undefined,\n    ...chain,\n  } as Assign<Chain<undefined>, chain>\n}\n","import type { TypedData } from 'abitype'\n\nimport { stringify } from '../utils/stringify.js'\nimport { BaseError } from './base.js'\n\nexport type InvalidDomainErrorType = InvalidDomainError & {\n  name: 'InvalidDomainError'\n}\nexport class InvalidDomainError extends BaseError {\n  constructor({ domain }: { domain: unknown }) {\n    super(`Invalid domain \"${stringify(domain)}\".`, {\n      metaMessages: ['Must be a valid EIP-712 domain.'],\n    })\n  }\n}\n\nexport type InvalidPrimaryTypeErrorType = InvalidPrimaryTypeError & {\n  name: 'InvalidPrimaryTypeError'\n}\nexport class InvalidPrimaryTypeError extends BaseError {\n  constructor({\n    primaryType,\n    types,\n  }: { primaryType: string; types: TypedData | Record<string, unknown> }) {\n    super(\n      `Invalid primary type \\`${primaryType}\\` must be one of \\`${JSON.stringify(Object.keys(types))}\\`.`,\n      {\n        docsPath: '/api/glossary/Errors#typeddatainvalidprimarytypeerror',\n        metaMessages: ['Check that the primary type is a key in `types`.'],\n      },\n    )\n  }\n}\n\nexport type InvalidStructTypeErrorType = InvalidStructTypeError & {\n  name: 'InvalidStructTypeError'\n}\nexport class InvalidStructTypeError extends BaseError {\n  constructor({ type }: { type: string }) {\n    super(`Struct type \"${type}\" is invalid.`, {\n      metaMessages: ['Struct type must not be a Solidity type.'],\n      name: 'InvalidStructTypeError',\n    })\n  }\n}\n","// Implementation forked and adapted from https://github.com/MetaMask/eth-sig-util/blob/main/src/sign-typed-data.ts\n\nimport type { AbiParameter, TypedData, TypedDataDomain } from 'abitype'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { TypedDataDefinition } from '../../types/typedData.js'\nimport {\n  type EncodeAbiParametersErrorType,\n  encodeAbiParameters,\n} from '../abi/encodeAbiParameters.js'\nimport { concat } from '../data/concat.js'\nimport { type ToHexErrorType, toHex } from '../encoding/toHex.js'\nimport { type Keccak256ErrorType, keccak256 } from '../hash/keccak256.js'\nimport {\n  type GetTypesForEIP712DomainErrorType,\n  type ValidateTypedDataErrorType,\n  getTypesForEIP712Domain,\n  validateTypedData,\n} from '../typedData.js'\n\ntype MessageTypeProperty = {\n  name: string\n  type: string\n}\n\nexport type HashTypedDataParameters<\n  typedData extends TypedData | Record<string, unknown> = TypedData,\n  primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData,\n> = TypedDataDefinition<typedData, primaryType>\n\nexport type HashTypedDataReturnType = Hex\n\nexport type HashTypedDataErrorType =\n  | GetTypesForEIP712DomainErrorType\n  | HashDomainErrorType\n  | HashStructErrorType\n  | ValidateTypedDataErrorType\n  | ErrorType\n\nexport function hashTypedData<\n  const typedData extends TypedData | Record<string, unknown>,\n  primaryType extends keyof typedData | 'EIP712Domain',\n>(\n  parameters: HashTypedDataParameters<typedData, primaryType>,\n): HashTypedDataReturnType {\n  const {\n    domain = {},\n    message,\n    primaryType,\n  } = parameters as HashTypedDataParameters\n  const types = {\n    EIP712Domain: getTypesForEIP712Domain({ domain }),\n    ...parameters.types,\n  }\n\n  // Need to do a runtime validation check on addresses, byte ranges, integer ranges, etc\n  // as we can't statically check this with TypeScript.\n  validateTypedData({\n    domain,\n    message,\n    primaryType,\n    types,\n  })\n\n  const parts: Hex[] = ['0x1901']\n  if (domain)\n    parts.push(\n      hashDomain({\n        domain,\n        types: types as Record<string, MessageTypeProperty[]>,\n      }),\n    )\n\n  if (primaryType !== 'EIP712Domain')\n    parts.push(\n      hashStruct({\n        data: message,\n        primaryType,\n        types: types as Record<string, MessageTypeProperty[]>,\n      }),\n    )\n\n  return keccak256(concat(parts))\n}\n\nexport type HashDomainErrorType = HashStructErrorType | ErrorType\n\nexport function hashDomain({\n  domain,\n  types,\n}: {\n  domain: TypedDataDomain\n  types: Record<string, MessageTypeProperty[]>\n}) {\n  return hashStruct({\n    data: domain,\n    primaryType: 'EIP712Domain',\n    types,\n  })\n}\n\nexport type HashStructErrorType =\n  | EncodeDataErrorType\n  | Keccak256ErrorType\n  | ErrorType\n\nexport function hashStruct({\n  data,\n  primaryType,\n  types,\n}: {\n  data: Record<string, unknown>\n  primaryType: string\n  types: Record<string, readonly MessageTypeProperty[]>\n}) {\n  const encoded = encodeData({\n    data,\n    primaryType,\n    types,\n  })\n  return keccak256(encoded)\n}\n\ntype EncodeDataErrorType =\n  | EncodeAbiParametersErrorType\n  | EncodeFieldErrorType\n  | HashTypeErrorType\n  | ErrorType\n\nfunction encodeData({\n  data,\n  primaryType,\n  types,\n}: {\n  data: Record<string, unknown>\n  primaryType: string\n  types: Record<string, readonly MessageTypeProperty[]>\n}) {\n  const encodedTypes: AbiParameter[] = [{ type: 'bytes32' }]\n  const encodedValues: unknown[] = [hashType({ primaryType, types })]\n\n  for (const field of types[primaryType]) {\n    const [type, value] = encodeField({\n      types,\n      name: field.name,\n      type: field.type,\n      value: data[field.name],\n    })\n    encodedTypes.push(type)\n    encodedValues.push(value)\n  }\n\n  return encodeAbiParameters(encodedTypes, encodedValues)\n}\n\ntype HashTypeErrorType =\n  | ToHexErrorType\n  | EncodeTypeErrorType\n  | Keccak256ErrorType\n  | ErrorType\n\nfunction hashType({\n  primaryType,\n  types,\n}: {\n  primaryType: string\n  types: Record<string, readonly MessageTypeProperty[]>\n}) {\n  const encodedHashType = toHex(encodeType({ primaryType, types }))\n  return keccak256(encodedHashType)\n}\n\ntype EncodeTypeErrorType = FindTypeDependenciesErrorType\n\nexport function encodeType({\n  primaryType,\n  types,\n}: {\n  primaryType: string\n  types: Record<string, readonly MessageTypeProperty[]>\n}) {\n  let result = ''\n  const unsortedDeps = findTypeDependencies({ primaryType, types })\n  unsortedDeps.delete(primaryType)\n\n  const deps = [primaryType, ...Array.from(unsortedDeps).sort()]\n  for (const type of deps) {\n    result += `${type}(${types[type]\n      .map(({ name, type: t }) => `${t} ${name}`)\n      .join(',')})`\n  }\n\n  return result\n}\n\ntype FindTypeDependenciesErrorType = ErrorType\n\nfunction findTypeDependencies(\n  {\n    primaryType: primaryType_,\n    types,\n  }: {\n    primaryType: string\n    types: Record<string, readonly MessageTypeProperty[]>\n  },\n  results: Set<string> = new Set(),\n): Set<string> {\n  const match = primaryType_.match(/^\\w*/u)\n  const primaryType = match?.[0]!\n  if (results.has(primaryType) || types[primaryType] === undefined) {\n    return results\n  }\n\n  results.add(primaryType)\n\n  for (const field of types[primaryType]) {\n    findTypeDependencies({ primaryType: field.type, types }, results)\n  }\n  return results\n}\n\ntype EncodeFieldErrorType =\n  | Keccak256ErrorType\n  | EncodeAbiParametersErrorType\n  | ToHexErrorType\n  | ErrorType\n\nfunction encodeField({\n  types,\n  name,\n  type,\n  value,\n}: {\n  types: Record<string, readonly MessageTypeProperty[]>\n  name: string\n  type: string\n  value: any\n}): [type: AbiParameter, value: any] {\n  if (types[type] !== undefined) {\n    return [\n      { type: 'bytes32' },\n      keccak256(encodeData({ data: value, primaryType: type, types })),\n    ]\n  }\n\n  if (type === 'bytes') {\n    const prepend = value.length % 2 ? '0' : ''\n    value = `0x${prepend + value.slice(2)}`\n    return [{ type: 'bytes32' }, keccak256(value)]\n  }\n\n  if (type === 'string') return [{ type: 'bytes32' }, keccak256(toHex(value))]\n\n  if (type.lastIndexOf(']') === type.length - 1) {\n    const parsedType = type.slice(0, type.lastIndexOf('['))\n    const typeValuePairs = (value as [AbiParameter, any][]).map((item) =>\n      encodeField({\n        name,\n        type: parsedType,\n        types,\n        value: item,\n      }),\n    )\n    return [\n      { type: 'bytes32' },\n      keccak256(\n        encodeAbiParameters(\n          typeValuePairs.map(([t]) => t),\n          typeValuePairs.map(([, v]) => v),\n        ),\n      ),\n    ]\n  }\n\n  return [{ type }, value]\n}\n","import type { TypedData, TypedDataDomain, TypedDataParameter } from 'abitype'\n\nimport { BytesSizeMismatchError } from '../errors/abi.js'\nimport { InvalidAddressError } from '../errors/address.js'\nimport {\n  InvalidDomainError,\n  InvalidPrimaryTypeError,\n  InvalidStructTypeError,\n} from '../errors/typedData.js'\nimport type { ErrorType } from '../errors/utils.js'\nimport type { Hex } from '../types/misc.js'\nimport type { TypedDataDefinition } from '../types/typedData.js'\nimport { type IsAddressErrorType, isAddress } from './address/isAddress.js'\nimport { type SizeErrorType, size } from './data/size.js'\nimport { type NumberToHexErrorType, numberToHex } from './encoding/toHex.js'\nimport { bytesRegex, integerRegex } from './regex.js'\nimport {\n  type HashDomainErrorType,\n  hashDomain,\n} from './signature/hashTypedData.js'\nimport { stringify } from './stringify.js'\n\nexport type SerializeTypedDataErrorType =\n  | HashDomainErrorType\n  | IsAddressErrorType\n  | NumberToHexErrorType\n  | SizeErrorType\n  | ErrorType\n\nexport function serializeTypedData<\n  const typedData extends TypedData | Record<string, unknown>,\n  primaryType extends keyof typedData | 'EIP712Domain',\n>(parameters: TypedDataDefinition<typedData, primaryType>) {\n  const {\n    domain: domain_,\n    message: message_,\n    primaryType,\n    types,\n  } = parameters as unknown as TypedDataDefinition\n\n  const normalizeData = (\n    struct: readonly TypedDataParameter[],\n    data_: Record<string, unknown>,\n  ) => {\n    const data = { ...data_ }\n    for (const param of struct) {\n      const { name, type } = param\n      if (type === 'address') data[name] = (data[name] as string).toLowerCase()\n    }\n    return data\n  }\n\n  const domain = (() => {\n    if (!types.EIP712Domain) return {}\n    if (!domain_) return {}\n    return normalizeData(types.EIP712Domain, domain_)\n  })()\n\n  const message = (() => {\n    if (primaryType === 'EIP712Domain') return undefined\n    return normalizeData(types[primaryType], message_)\n  })()\n\n  return stringify({ domain, message, primaryType, types })\n}\n\nexport type ValidateTypedDataErrorType =\n  | HashDomainErrorType\n  | IsAddressErrorType\n  | NumberToHexErrorType\n  | SizeErrorType\n  | ErrorType\n\nexport function validateTypedData<\n  const typedData extends TypedData | Record<string, unknown>,\n  primaryType extends keyof typedData | 'EIP712Domain',\n>(parameters: TypedDataDefinition<typedData, primaryType>) {\n  const { domain, message, primaryType, types } =\n    parameters as unknown as TypedDataDefinition\n\n  const validateData = (\n    struct: readonly TypedDataParameter[],\n    data: Record<string, unknown>,\n  ) => {\n    for (const param of struct) {\n      const { name, type } = param\n      const value = data[name]\n\n      const integerMatch = type.match(integerRegex)\n      if (\n        integerMatch &&\n        (typeof value === 'number' || typeof value === 'bigint')\n      ) {\n        const [_type, base, size_] = integerMatch\n        // If number cannot be cast to a sized hex value, it is out of range\n        // and will throw.\n        numberToHex(value, {\n          signed: base === 'int',\n          size: Number.parseInt(size_) / 8,\n        })\n      }\n\n      if (type === 'address' && typeof value === 'string' && !isAddress(value))\n        throw new InvalidAddressError({ address: value })\n\n      const bytesMatch = type.match(bytesRegex)\n      if (bytesMatch) {\n        const [_type, size_] = bytesMatch\n        if (size_ && size(value as Hex) !== Number.parseInt(size_))\n          throw new BytesSizeMismatchError({\n            expectedSize: Number.parseInt(size_),\n            givenSize: size(value as Hex),\n          })\n      }\n\n      const struct = types[type]\n      if (struct) {\n        validateReference(type)\n        validateData(struct, value as Record<string, unknown>)\n      }\n    }\n  }\n\n  // Validate domain types.\n  if (types.EIP712Domain && domain) {\n    if (typeof domain !== 'object') throw new InvalidDomainError({ domain })\n    validateData(types.EIP712Domain, domain)\n  }\n\n  // Validate message types.\n  if (primaryType !== 'EIP712Domain') {\n    if (types[primaryType]) validateData(types[primaryType], message)\n    else throw new InvalidPrimaryTypeError({ primaryType, types })\n  }\n}\n\nexport type GetTypesForEIP712DomainErrorType = ErrorType\n\nexport function getTypesForEIP712Domain({\n  domain,\n}: { domain?: TypedDataDomain | undefined }): TypedDataParameter[] {\n  return [\n    typeof domain?.name === 'string' && { name: 'name', type: 'string' },\n    domain?.version && { name: 'version', type: 'string' },\n    (typeof domain?.chainId === 'number' ||\n      typeof domain?.chainId === 'bigint') && {\n      name: 'chainId',\n      type: 'uint256',\n    },\n    domain?.verifyingContract && {\n      name: 'verifyingContract',\n      type: 'address',\n    },\n    domain?.salt && { name: 'salt', type: 'bytes32' },\n  ].filter(Boolean) as TypedDataParameter[]\n}\n\nexport type DomainSeparatorErrorType =\n  | GetTypesForEIP712DomainErrorType\n  | HashDomainErrorType\n  | ErrorType\n\nexport function domainSeparator({ domain }: { domain: TypedDataDomain }): Hex {\n  return hashDomain({\n    domain,\n    types: {\n      EIP712Domain: getTypesForEIP712Domain({ domain }),\n    },\n  })\n}\n\n/** @internal */\nfunction validateReference(type: string) {\n  // Struct type must not be a Solidity type.\n  if (\n    type === 'address' ||\n    type === 'bool' ||\n    type === 'string' ||\n    type.startsWith('bytes') ||\n    type.startsWith('uint') ||\n    type.startsWith('int')\n  )\n    throw new InvalidStructTypeError({ type })\n}\n","import { versionedHashVersionKzg } from '../../constants/kzg.js'\nimport { maxUint256 } from '../../constants/number.js'\nimport {\n  InvalidAddressError,\n  type InvalidAddressErrorType,\n} from '../../errors/address.js'\nimport { BaseError, type BaseErrorType } from '../../errors/base.js'\nimport {\n  EmptyBlobError,\n  type EmptyBlobErrorType,\n  InvalidVersionedHashSizeError,\n  type InvalidVersionedHashSizeErrorType,\n  InvalidVersionedHashVersionError,\n  type InvalidVersionedHashVersionErrorType,\n} from '../../errors/blob.js'\nimport {\n  InvalidChainIdError,\n  type InvalidChainIdErrorType,\n} from '../../errors/chain.js'\nimport {\n  FeeCapTooHighError,\n  type FeeCapTooHighErrorType,\n  TipAboveFeeCapError,\n  type TipAboveFeeCapErrorType,\n} from '../../errors/node.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type {\n  TransactionSerializableEIP1559,\n  TransactionSerializableEIP2930,\n  TransactionSerializableEIP4844,\n  TransactionSerializableEIP7702,\n  TransactionSerializableLegacy,\n} from '../../types/transaction.js'\nimport { type IsAddressErrorType, isAddress } from '../address/isAddress.js'\nimport { size } from '../data/size.js'\nimport { slice } from '../data/slice.js'\nimport { hexToNumber } from '../encoding/fromHex.js'\n\nexport type AssertTransactionEIP7702ErrorType =\n  | AssertTransactionEIP1559ErrorType\n  | InvalidAddressErrorType\n  | InvalidChainIdErrorType\n  | ErrorType\n\nexport function assertTransactionEIP7702(\n  transaction: TransactionSerializableEIP7702,\n) {\n  const { authorizationList } = transaction\n  if (authorizationList) {\n    for (const authorization of authorizationList) {\n      const { chainId } = authorization\n      const address = authorization.address\n      if (!isAddress(address)) throw new InvalidAddressError({ address })\n      if (chainId < 0) throw new InvalidChainIdError({ chainId })\n    }\n  }\n  assertTransactionEIP1559(transaction as {} as TransactionSerializableEIP1559)\n}\n\nexport type AssertTransactionEIP4844ErrorType =\n  | AssertTransactionEIP1559ErrorType\n  | EmptyBlobErrorType\n  | InvalidVersionedHashSizeErrorType\n  | InvalidVersionedHashVersionErrorType\n  | ErrorType\n\nexport function assertTransactionEIP4844(\n  transaction: TransactionSerializableEIP4844,\n) {\n  const { blobVersionedHashes } = transaction\n  if (blobVersionedHashes) {\n    if (blobVersionedHashes.length === 0) throw new EmptyBlobError()\n    for (const hash of blobVersionedHashes) {\n      const size_ = size(hash)\n      const version = hexToNumber(slice(hash, 0, 1))\n      if (size_ !== 32)\n        throw new InvalidVersionedHashSizeError({ hash, size: size_ })\n      if (version !== versionedHashVersionKzg)\n        throw new InvalidVersionedHashVersionError({\n          hash,\n          version,\n        })\n    }\n  }\n  assertTransactionEIP1559(transaction as {} as TransactionSerializableEIP1559)\n}\n\nexport type AssertTransactionEIP1559ErrorType =\n  | BaseErrorType\n  | IsAddressErrorType\n  | InvalidAddressErrorType\n  | InvalidChainIdErrorType\n  | FeeCapTooHighErrorType\n  | TipAboveFeeCapErrorType\n  | ErrorType\n\nexport function assertTransactionEIP1559(\n  transaction: TransactionSerializableEIP1559,\n) {\n  const { chainId, maxPriorityFeePerGas, maxFeePerGas, to } = transaction\n  if (chainId <= 0) throw new InvalidChainIdError({ chainId })\n  if (to && !isAddress(to)) throw new InvalidAddressError({ address: to })\n  if (maxFeePerGas && maxFeePerGas > maxUint256)\n    throw new FeeCapTooHighError({ maxFeePerGas })\n  if (\n    maxPriorityFeePerGas &&\n    maxFeePerGas &&\n    maxPriorityFeePerGas > maxFeePerGas\n  )\n    throw new TipAboveFeeCapError({ maxFeePerGas, maxPriorityFeePerGas })\n}\n\nexport type AssertTransactionEIP2930ErrorType =\n  | BaseErrorType\n  | IsAddressErrorType\n  | InvalidAddressErrorType\n  | InvalidChainIdErrorType\n  | FeeCapTooHighErrorType\n  | ErrorType\n\nexport function assertTransactionEIP2930(\n  transaction: TransactionSerializableEIP2930,\n) {\n  const { chainId, maxPriorityFeePerGas, gasPrice, maxFeePerGas, to } =\n    transaction\n  if (chainId <= 0) throw new InvalidChainIdError({ chainId })\n  if (to && !isAddress(to)) throw new InvalidAddressError({ address: to })\n  if (maxPriorityFeePerGas || maxFeePerGas)\n    throw new BaseError(\n      '`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.',\n    )\n  if (gasPrice && gasPrice > maxUint256)\n    throw new FeeCapTooHighError({ maxFeePerGas: gasPrice })\n}\n\nexport type AssertTransactionLegacyErrorType =\n  | BaseErrorType\n  | IsAddressErrorType\n  | InvalidAddressErrorType\n  | InvalidChainIdErrorType\n  | FeeCapTooHighErrorType\n  | ErrorType\n\nexport function assertTransactionLegacy(\n  transaction: TransactionSerializableLegacy,\n) {\n  const { chainId, maxPriorityFeePerGas, gasPrice, maxFeePerGas, to } =\n    transaction\n  if (to && !isAddress(to)) throw new InvalidAddressError({ address: to })\n  if (typeof chainId !== 'undefined' && chainId <= 0)\n    throw new InvalidChainIdError({ chainId })\n  if (maxPriorityFeePerGas || maxFeePerGas)\n    throw new BaseError(\n      '`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.',\n    )\n  if (gasPrice && gasPrice > maxUint256)\n    throw new FeeCapTooHighError({ maxFeePerGas: gasPrice })\n}\n","import {\n  InvalidAddressError,\n  type InvalidAddressErrorType,\n} from '../../errors/address.js'\nimport {\n  InvalidStorageKeySizeError,\n  type InvalidStorageKeySizeErrorType,\n} from '../../errors/transaction.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { AccessList } from '../../types/transaction.js'\nimport { type IsAddressErrorType, isAddress } from '../address/isAddress.js'\nimport type { RecursiveArray } from '../encoding/toRlp.js'\n\nexport type SerializeAccessListErrorType =\n  | InvalidStorageKeySizeErrorType\n  | InvalidAddressErrorType\n  | IsAddressErrorType\n  | ErrorType\n\n/*\n * Serialize an  EIP-2930 access list\n * @remarks\n * Use to create a transaction serializer with support for EIP-2930 access lists\n *\n * @param accessList - Array of objects of address and arrays of Storage Keys\n * @throws InvalidAddressError, InvalidStorageKeySizeError\n * @returns Array of hex strings\n */\nexport function serializeAccessList(\n  accessList?: AccessList | undefined,\n): RecursiveArray<Hex> {\n  if (!accessList || accessList.length === 0) return []\n\n  const serializedAccessList = []\n  for (let i = 0; i < accessList.length; i++) {\n    const { address, storageKeys } = accessList[i]\n\n    for (let j = 0; j < storageKeys.length; j++) {\n      if (storageKeys[j].length - 2 !== 64) {\n        throw new InvalidStorageKeySizeError({ storageKey: storageKeys[j] })\n      }\n    }\n\n    if (!isAddress(address, { strict: false })) {\n      throw new InvalidAddressError({ address })\n    }\n\n    serializedAccessList.push([address, storageKeys])\n  }\n  return serializedAccessList\n}\n","import {\n  InvalidLegacyVError,\n  type InvalidLegacyVErrorType,\n} from '../../errors/transaction.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type {\n  ByteArray,\n  Hex,\n  Signature,\n  SignatureLegacy,\n} from '../../types/misc.js'\nimport type {\n  TransactionSerializable,\n  TransactionSerializableEIP1559,\n  TransactionSerializableEIP2930,\n  TransactionSerializableEIP4844,\n  TransactionSerializableEIP7702,\n  TransactionSerializableGeneric,\n  TransactionSerializableLegacy,\n  TransactionSerialized,\n  TransactionSerializedEIP1559,\n  TransactionSerializedEIP2930,\n  TransactionSerializedEIP4844,\n  TransactionSerializedEIP7702,\n  TransactionSerializedLegacy,\n  TransactionType,\n} from '../../types/transaction.js'\nimport type { OneOf } from '../../types/utils.js'\nimport {\n  type SerializeAuthorizationListErrorType,\n  serializeAuthorizationList,\n} from '../authorization/serializeAuthorizationList.js'\nimport {\n  type BlobsToCommitmentsErrorType,\n  blobsToCommitments,\n} from '../blob/blobsToCommitments.js'\nimport {\n  blobsToProofs,\n  type blobsToProofsErrorType,\n} from '../blob/blobsToProofs.js'\nimport {\n  type CommitmentsToVersionedHashesErrorType,\n  commitmentsToVersionedHashes,\n} from '../blob/commitmentsToVersionedHashes.js'\nimport {\n  type ToBlobSidecarsErrorType,\n  toBlobSidecars,\n} from '../blob/toBlobSidecars.js'\nimport { type ConcatHexErrorType, concatHex } from '../data/concat.js'\nimport { trim } from '../data/trim.js'\nimport {\n  type NumberToHexErrorType,\n  bytesToHex,\n  numberToHex,\n} from '../encoding/toHex.js'\nimport { type ToRlpErrorType, toRlp } from '../encoding/toRlp.js'\n\nimport {\n  type AssertTransactionEIP1559ErrorType,\n  type AssertTransactionEIP2930ErrorType,\n  type AssertTransactionEIP4844ErrorType,\n  type AssertTransactionEIP7702ErrorType,\n  type AssertTransactionLegacyErrorType,\n  assertTransactionEIP1559,\n  assertTransactionEIP2930,\n  assertTransactionEIP4844,\n  assertTransactionEIP7702,\n  assertTransactionLegacy,\n} from './assertTransaction.js'\nimport {\n  type GetTransactionType,\n  type GetTransactionTypeErrorType,\n  getTransactionType,\n} from './getTransactionType.js'\nimport {\n  type SerializeAccessListErrorType,\n  serializeAccessList,\n} from './serializeAccessList.js'\n\nexport type SerializedTransactionReturnType<\n  transaction extends TransactionSerializable = TransactionSerializable,\n  ///\n  _transactionType extends TransactionType = GetTransactionType<transaction>,\n> = TransactionSerialized<_transactionType>\n\nexport type SerializeTransactionFn<\n  transaction extends TransactionSerializableGeneric = TransactionSerializable,\n  ///\n  _transactionType extends TransactionType = never,\n> = typeof serializeTransaction<\n  OneOf<TransactionSerializable | transaction>,\n  _transactionType\n>\n\nexport type SerializeTransactionErrorType =\n  | GetTransactionTypeErrorType\n  | SerializeTransactionEIP1559ErrorType\n  | SerializeTransactionEIP2930ErrorType\n  | SerializeTransactionEIP4844ErrorType\n  | SerializeTransactionEIP7702ErrorType\n  | SerializeTransactionLegacyErrorType\n  | ErrorType\n\nexport function serializeTransaction<\n  const transaction extends TransactionSerializable,\n  ///\n  _transactionType extends TransactionType = GetTransactionType<transaction>,\n>(\n  transaction: transaction,\n  signature?: Signature | undefined,\n): SerializedTransactionReturnType<transaction, _transactionType> {\n  const type = getTransactionType(transaction) as GetTransactionType\n\n  if (type === 'eip1559')\n    return serializeTransactionEIP1559(\n      transaction as TransactionSerializableEIP1559,\n      signature,\n    ) as SerializedTransactionReturnType<transaction>\n\n  if (type === 'eip2930')\n    return serializeTransactionEIP2930(\n      transaction as TransactionSerializableEIP2930,\n      signature,\n    ) as SerializedTransactionReturnType<transaction>\n\n  if (type === 'eip4844')\n    return serializeTransactionEIP4844(\n      transaction as TransactionSerializableEIP4844,\n      signature,\n    ) as SerializedTransactionReturnType<transaction>\n\n  if (type === 'eip7702')\n    return serializeTransactionEIP7702(\n      transaction as TransactionSerializableEIP7702,\n      signature,\n    ) as SerializedTransactionReturnType<transaction>\n\n  return serializeTransactionLegacy(\n    transaction as TransactionSerializableLegacy,\n    signature as SignatureLegacy,\n  ) as SerializedTransactionReturnType<transaction>\n}\n\ntype SerializeTransactionEIP7702ErrorType =\n  | AssertTransactionEIP7702ErrorType\n  | SerializeAuthorizationListErrorType\n  | ConcatHexErrorType\n  | InvalidLegacyVErrorType\n  | NumberToHexErrorType\n  | ToRlpErrorType\n  | SerializeAccessListErrorType\n  | ErrorType\n\nfunction serializeTransactionEIP7702(\n  transaction: TransactionSerializableEIP7702,\n  signature?: Signature | undefined,\n): TransactionSerializedEIP7702 {\n  const {\n    authorizationList,\n    chainId,\n    gas,\n    nonce,\n    to,\n    value,\n    maxFeePerGas,\n    maxPriorityFeePerGas,\n    accessList,\n    data,\n  } = transaction\n\n  assertTransactionEIP7702(transaction)\n\n  const serializedAccessList = serializeAccessList(accessList)\n  const serializedAuthorizationList =\n    serializeAuthorizationList(authorizationList)\n\n  return concatHex([\n    '0x04',\n    toRlp([\n      numberToHex(chainId),\n      nonce ? numberToHex(nonce) : '0x',\n      maxPriorityFeePerGas ? numberToHex(maxPriorityFeePerGas) : '0x',\n      maxFeePerGas ? numberToHex(maxFeePerGas) : '0x',\n      gas ? numberToHex(gas) : '0x',\n      to ?? '0x',\n      value ? numberToHex(value) : '0x',\n      data ?? '0x',\n      serializedAccessList,\n      serializedAuthorizationList,\n      ...toYParitySignatureArray(transaction, signature),\n    ]),\n  ]) as TransactionSerializedEIP7702\n}\n\ntype SerializeTransactionEIP4844ErrorType =\n  | AssertTransactionEIP4844ErrorType\n  | BlobsToCommitmentsErrorType\n  | CommitmentsToVersionedHashesErrorType\n  | blobsToProofsErrorType\n  | ToBlobSidecarsErrorType\n  | ConcatHexErrorType\n  | InvalidLegacyVErrorType\n  | NumberToHexErrorType\n  | ToRlpErrorType\n  | SerializeAccessListErrorType\n  | ErrorType\n\nfunction serializeTransactionEIP4844(\n  transaction: TransactionSerializableEIP4844,\n  signature?: Signature | undefined,\n): TransactionSerializedEIP4844 {\n  const {\n    chainId,\n    gas,\n    nonce,\n    to,\n    value,\n    maxFeePerBlobGas,\n    maxFeePerGas,\n    maxPriorityFeePerGas,\n    accessList,\n    data,\n  } = transaction\n\n  assertTransactionEIP4844(transaction)\n\n  let blobVersionedHashes = transaction.blobVersionedHashes\n  let sidecars = transaction.sidecars\n  // If `blobs` are passed, we will need to compute the KZG commitments & proofs.\n  if (\n    transaction.blobs &&\n    (typeof blobVersionedHashes === 'undefined' ||\n      typeof sidecars === 'undefined')\n  ) {\n    const blobs = (\n      typeof transaction.blobs[0] === 'string'\n        ? transaction.blobs\n        : (transaction.blobs as ByteArray[]).map((x) => bytesToHex(x))\n    ) as Hex[]\n    const kzg = transaction.kzg!\n    const commitments = blobsToCommitments({\n      blobs,\n      kzg,\n    })\n\n    if (typeof blobVersionedHashes === 'undefined')\n      blobVersionedHashes = commitmentsToVersionedHashes({\n        commitments,\n      })\n    if (typeof sidecars === 'undefined') {\n      const proofs = blobsToProofs({ blobs, commitments, kzg })\n      sidecars = toBlobSidecars({ blobs, commitments, proofs })\n    }\n  }\n\n  const serializedAccessList = serializeAccessList(accessList)\n\n  const serializedTransaction = [\n    numberToHex(chainId),\n    nonce ? numberToHex(nonce) : '0x',\n    maxPriorityFeePerGas ? numberToHex(maxPriorityFeePerGas) : '0x',\n    maxFeePerGas ? numberToHex(maxFeePerGas) : '0x',\n    gas ? numberToHex(gas) : '0x',\n    to ?? '0x',\n    value ? numberToHex(value) : '0x',\n    data ?? '0x',\n    serializedAccessList,\n    maxFeePerBlobGas ? numberToHex(maxFeePerBlobGas) : '0x',\n    blobVersionedHashes ?? [],\n    ...toYParitySignatureArray(transaction, signature),\n  ] as const\n\n  const blobs: Hex[] = []\n  const commitments: Hex[] = []\n  const proofs: Hex[] = []\n  if (sidecars)\n    for (let i = 0; i < sidecars.length; i++) {\n      const { blob, commitment, proof } = sidecars[i]\n      blobs.push(blob)\n      commitments.push(commitment)\n      proofs.push(proof)\n    }\n\n  return concatHex([\n    '0x03',\n    sidecars\n      ? // If sidecars are enabled, envelope turns into a \"wrapper\":\n        toRlp([serializedTransaction, blobs, commitments, proofs])\n      : // If sidecars are disabled, standard envelope is used:\n        toRlp(serializedTransaction),\n  ]) as TransactionSerializedEIP4844\n}\n\ntype SerializeTransactionEIP1559ErrorType =\n  | AssertTransactionEIP1559ErrorType\n  | ConcatHexErrorType\n  | InvalidLegacyVErrorType\n  | NumberToHexErrorType\n  | ToRlpErrorType\n  | SerializeAccessListErrorType\n  | ErrorType\n\nfunction serializeTransactionEIP1559(\n  transaction: TransactionSerializableEIP1559,\n  signature?: Signature | undefined,\n): TransactionSerializedEIP1559 {\n  const {\n    chainId,\n    gas,\n    nonce,\n    to,\n    value,\n    maxFeePerGas,\n    maxPriorityFeePerGas,\n    accessList,\n    data,\n  } = transaction\n\n  assertTransactionEIP1559(transaction)\n\n  const serializedAccessList = serializeAccessList(accessList)\n\n  const serializedTransaction = [\n    numberToHex(chainId),\n    nonce ? numberToHex(nonce) : '0x',\n    maxPriorityFeePerGas ? numberToHex(maxPriorityFeePerGas) : '0x',\n    maxFeePerGas ? numberToHex(maxFeePerGas) : '0x',\n    gas ? numberToHex(gas) : '0x',\n    to ?? '0x',\n    value ? numberToHex(value) : '0x',\n    data ?? '0x',\n    serializedAccessList,\n    ...toYParitySignatureArray(transaction, signature),\n  ]\n\n  return concatHex([\n    '0x02',\n    toRlp(serializedTransaction),\n  ]) as TransactionSerializedEIP1559\n}\n\ntype SerializeTransactionEIP2930ErrorType =\n  | AssertTransactionEIP2930ErrorType\n  | ConcatHexErrorType\n  | InvalidLegacyVErrorType\n  | NumberToHexErrorType\n  | ToRlpErrorType\n  | SerializeAccessListErrorType\n  | ErrorType\n\nfunction serializeTransactionEIP2930(\n  transaction: TransactionSerializableEIP2930,\n  signature?: Signature | undefined,\n): TransactionSerializedEIP2930 {\n  const { chainId, gas, data, nonce, to, value, accessList, gasPrice } =\n    transaction\n\n  assertTransactionEIP2930(transaction)\n\n  const serializedAccessList = serializeAccessList(accessList)\n\n  const serializedTransaction = [\n    numberToHex(chainId),\n    nonce ? numberToHex(nonce) : '0x',\n    gasPrice ? numberToHex(gasPrice) : '0x',\n    gas ? numberToHex(gas) : '0x',\n    to ?? '0x',\n    value ? numberToHex(value) : '0x',\n    data ?? '0x',\n    serializedAccessList,\n    ...toYParitySignatureArray(transaction, signature),\n  ]\n\n  return concatHex([\n    '0x01',\n    toRlp(serializedTransaction),\n  ]) as TransactionSerializedEIP2930\n}\n\ntype SerializeTransactionLegacyErrorType =\n  | AssertTransactionLegacyErrorType\n  | InvalidLegacyVErrorType\n  | NumberToHexErrorType\n  | ToRlpErrorType\n  | ErrorType\n\nfunction serializeTransactionLegacy(\n  transaction: TransactionSerializableLegacy,\n  signature?: SignatureLegacy | undefined,\n): TransactionSerializedLegacy {\n  const { chainId = 0, gas, data, nonce, to, value, gasPrice } = transaction\n\n  assertTransactionLegacy(transaction)\n\n  let serializedTransaction = [\n    nonce ? numberToHex(nonce) : '0x',\n    gasPrice ? numberToHex(gasPrice) : '0x',\n    gas ? numberToHex(gas) : '0x',\n    to ?? '0x',\n    value ? numberToHex(value) : '0x',\n    data ?? '0x',\n  ]\n\n  if (signature) {\n    const v = (() => {\n      // EIP-155 (inferred chainId)\n      if (signature.v >= 35n) {\n        const inferredChainId = (signature.v - 35n) / 2n\n        if (inferredChainId > 0) return signature.v\n        return 27n + (signature.v === 35n ? 0n : 1n)\n      }\n\n      // EIP-155 (explicit chainId)\n      if (chainId > 0)\n        return BigInt(chainId * 2) + BigInt(35n + signature.v - 27n)\n\n      // Pre-EIP-155 (no chainId)\n      const v = 27n + (signature.v === 27n ? 0n : 1n)\n      if (signature.v !== v) throw new InvalidLegacyVError({ v: signature.v })\n      return v\n    })()\n\n    const r = trim(signature.r)\n    const s = trim(signature.s)\n\n    serializedTransaction = [\n      ...serializedTransaction,\n      numberToHex(v),\n      r === '0x00' ? '0x' : r,\n      s === '0x00' ? '0x' : s,\n    ]\n  } else if (chainId > 0) {\n    serializedTransaction = [\n      ...serializedTransaction,\n      numberToHex(chainId),\n      '0x',\n      '0x',\n    ]\n  }\n\n  return toRlp(serializedTransaction) as TransactionSerializedLegacy\n}\n\nexport function toYParitySignatureArray(\n  transaction: TransactionSerializableGeneric,\n  signature_?: Signature | undefined,\n) {\n  const signature = signature_ ?? transaction\n  const { v, yParity } = signature\n\n  if (typeof signature.r === 'undefined') return []\n  if (typeof signature.s === 'undefined') return []\n  if (typeof v === 'undefined' && typeof yParity === 'undefined') return []\n\n  const r = trim(signature.r)\n  const s = trim(signature.s)\n\n  const yParity_ = (() => {\n    if (typeof yParity === 'number') return yParity ? numberToHex(1) : '0x'\n    if (v === 0n) return '0x'\n    if (v === 1n) return numberToHex(1)\n\n    return v === 27n ? '0x' : numberToHex(1)\n  })()\n\n  return [yParity_, r === '0x00' ? '0x' : r, s === '0x00' ? '0x' : s]\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type {\n  AuthorizationList,\n  SerializedAuthorizationList,\n} from '../../types/authorization.js'\nimport { toHex } from '../encoding/toHex.js'\nimport { toYParitySignatureArray } from '../transaction/serializeTransaction.js'\n\nexport type SerializeAuthorizationListReturnType = SerializedAuthorizationList\n\nexport type SerializeAuthorizationListErrorType = ErrorType\n\n/*\n * Serializes an EIP-7702 authorization list.\n */\nexport function serializeAuthorizationList(\n  authorizationList?: AuthorizationList<number, true> | undefined,\n): SerializeAuthorizationListReturnType {\n  if (!authorizationList || authorizationList.length === 0) return []\n\n  const serializedAuthorizationList = []\n  for (const authorization of authorizationList) {\n    const { chainId, nonce, ...signature } = authorization\n    const contractAddress = authorization.address\n    serializedAuthorizationList.push([\n      chainId ? toHex(chainId) : '0x',\n      contractAddress,\n      nonce ? toHex(nonce) : '0x',\n      ...toYParitySignatureArray({}, signature),\n    ])\n  }\n\n  return serializedAuthorizationList as {} as SerializeAuthorizationListReturnType\n}\n","export const presignMessagePrefix = '\\x19Ethereum Signed Message:\\n'\n","import { presignMessagePrefix } from '../../constants/strings.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Hex, SignableMessage } from '../../types/misc.js'\nimport { type ConcatErrorType, concat } from '../data/concat.js'\nimport { size } from '../data/size.js'\nimport {\n  type BytesToHexErrorType,\n  type StringToHexErrorType,\n  bytesToHex,\n  stringToHex,\n} from '../encoding/toHex.js'\n\nexport type ToPrefixedMessageErrorType =\n  | ConcatErrorType\n  | StringToHexErrorType\n  | BytesToHexErrorType\n  | ErrorType\n\nexport function toPrefixedMessage(message_: SignableMessage): Hex {\n  const message = (() => {\n    if (typeof message_ === 'string') return stringToHex(message_)\n    if (typeof message_.raw === 'string') return message_.raw\n    return bytesToHex(message_.raw)\n  })()\n  const prefix = stringToHex(`${presignMessagePrefix}${size(message)}`)\n  return concat([prefix, message])\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex, SignableMessage } from '../../types/misc.js'\nimport { type Keccak256ErrorType, keccak256 } from '../hash/keccak256.js'\nimport { toPrefixedMessage } from './toPrefixedMessage.js'\n\ntype To = 'hex' | 'bytes'\n\nexport type HashMessageReturnType<to extends To> =\n  | (to extends 'bytes' ? ByteArray : never)\n  | (to extends 'hex' ? Hex : never)\n\nexport type HashMessageErrorType = Keccak256ErrorType | ErrorType\n\nexport function hashMessage<to extends To = 'hex'>(\n  message: SignableMessage,\n  to_?: to | undefined,\n): HashMessageReturnType<to> {\n  return keccak256(toPrefixedMessage(message), to_)\n}\n","export const erc6492MagicBytes =\n  '0x6492649264926492649264926492649264926492649264926492649264926492' as const\n\nexport const zeroHash =\n  '0x0000000000000000000000000000000000000000000000000000000000000000' as const\n","import { erc6492MagicBytes } from '../../constants/bytes.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\nimport { type SliceHexErrorType, sliceHex } from '../data/slice.js'\n\nexport type IsErc6492SignatureParameters = Hex\nexport type IsErc6492SignatureReturnType = boolean\nexport type IsErc6492SignatureErrorType = SliceHexErrorType | ErrorType\n\n/** Whether or not the signature is an ERC-6492 formatted signature. */\nexport function isErc6492Signature(\n  signature: IsErc6492SignatureParameters,\n): IsErc6492SignatureReturnType {\n  return sliceHex(signature, -32) === erc6492MagicBytes\n}\n","import type { Address } from 'abitype'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { OneOf, Prettify } from '../../types/utils.js'\nimport {\n  type DecodeAbiParametersErrorType,\n  decodeAbiParameters,\n} from '../abi/decodeAbiParameters.js'\nimport {\n  type IsErc6492SignatureErrorType,\n  isErc6492Signature,\n} from './isErc6492Signature.js'\n\nexport type ParseErc6492SignatureParameters = Hex\n\nexport type ParseErc6492SignatureReturnType = Prettify<\n  OneOf<\n    | {\n        /**\n         * The ERC-4337 Account Factory or preparation address to use for counterfactual verification.\n         * `undefined` if the signature is not in ERC-6492 format.\n         */\n        address: Address\n        /**\n         * Calldata to pass to deploy account (if not deployed) for counterfactual verification.\n         * `undefined` if the signature is not in ERC-6492 format.\n         */\n        data: Hex\n        /** The original signature. */\n        signature: Hex\n      }\n    | {\n        /** The original signature. */\n        signature: Hex\n      }\n  >\n>\n\nexport type ParseErc6492SignatureErrorType =\n  | IsErc6492SignatureErrorType\n  | DecodeAbiParametersErrorType\n  | ErrorType\n\n/**\n * @description Parses a hex-formatted ERC-6492 flavoured signature.\n * If the signature is not in ERC-6492 format, then the underlying (original) signature is returned.\n *\n * @param signature ERC-6492 signature in hex format.\n * @returns The parsed ERC-6492 signature.\n *\n * @example\n * parseSignature('0x000000000000000000000000cafebabecafebabecafebabecafebabecafebabe000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004deadbeef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041a461f509887bd19e312c0c58467ce8ff8e300d3c1a90b608a760c5b80318eaf15fe57c96f9175d6cd4daad4663763baa7e78836e067d0163e9a2ccf2ff753f5b1b000000000000000000000000000000000000000000000000000000000000006492649264926492649264926492649264926492649264926492649264926492')\n * // { address: '0x...', data: '0x...', signature: '0x...' }\n */\nexport function parseErc6492Signature(\n  signature: ParseErc6492SignatureParameters,\n): ParseErc6492SignatureReturnType {\n  if (!isErc6492Signature(signature)) return { signature }\n\n  const [address, data, signature_] = decodeAbiParameters(\n    [{ type: 'address' }, { type: 'bytes' }, { type: 'bytes' }],\n    signature,\n  )\n  return { address, data, signature: signature_ }\n}\n","import type { Address } from 'abitype'\nimport { erc6492MagicBytes } from '../../constants/bytes.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex } from '../../types/misc.js'\nimport { encodeAbiParameters } from '../abi/encodeAbiParameters.js'\nimport { concatHex } from '../data/concat.js'\nimport { hexToBytes } from '../encoding/toBytes.js'\n\ntype To = 'bytes' | 'hex'\n\nexport type SerializeErc6492SignatureParameters<to extends To = 'hex'> = {\n  /** The ERC-4337 Account Factory address to use for counterfactual verification. */\n  address: Address\n  /** Calldata to pass to deploy account (if not deployed) for counterfactual verification. */\n  data: Hex\n  /** The original signature. */\n  signature: Hex\n  to?: to | To | undefined\n}\n\nexport type SerializeErc6492SignatureReturnType<to extends To = 'hex'> =\n  | (to extends 'hex' ? Hex : never)\n  | (to extends 'bytes' ? ByteArray : never)\n\nexport type SerializeErc6492SignatureErrorType = ErrorType\n\n/**\n * @description Serializes a ERC-6492 flavoured signature into hex format.\n *\n * @param signature ERC-6492 signature in object format.\n * @returns ERC-6492 signature in hex format.\n *\n * @example\n * serializeSignature({ address: '0x...', data: '0x...', signature: '0x...' })\n * // '0x000000000000000000000000cafebabecafebabecafebabecafebabecafebabe000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004deadbeef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041a461f509887bd19e312c0c58467ce8ff8e300d3c1a90b608a760c5b80318eaf15fe57c96f9175d6cd4daad4663763baa7e78836e067d0163e9a2ccf2ff753f5b1b000000000000000000000000000000000000000000000000000000000000006492649264926492649264926492649264926492649264926492649264926492'\n */\nexport function serializeErc6492Signature<to extends To = 'hex'>(\n  parameters: SerializeErc6492SignatureParameters<to>,\n): SerializeErc6492SignatureReturnType<to> {\n  const { address, data, signature, to = 'hex' } = parameters\n  const signature_ = concatHex([\n    encodeAbiParameters(\n      [{ type: 'address' }, { type: 'bytes' }, { type: 'bytes' }],\n      [address, data, signature],\n    ),\n    erc6492MagicBytes,\n  ])\n\n  if (to === 'hex') return signature_ as SerializeErc6492SignatureReturnType<to>\n  return hexToBytes(signature_) as SerializeErc6492SignatureReturnType<to>\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Proof } from '../../types/proof.js'\nimport type { RpcProof } from '../../types/rpc.js'\nimport type { ExactPartial } from '../../types/utils.js'\nimport { hexToNumber } from '../index.js'\n\nexport type FormatProofErrorType = ErrorType\n\nfunction formatStorageProof(storageProof: RpcProof['storageProof']) {\n  return storageProof.map((proof) => ({\n    ...proof,\n    value: BigInt(proof.value),\n  }))\n}\n\nexport function formatProof(proof: ExactPartial<RpcProof>) {\n  return {\n    ...proof,\n    balance: proof.balance ? BigInt(proof.balance) : undefined,\n    nonce: proof.nonce ? hexToNumber(proof.nonce) : undefined,\n    storageProof: proof.storageProof\n      ? formatStorageProof(proof.storageProof)\n      : undefined,\n  } as Proof\n}\n","import type { Address } from 'abitype'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { Proof } from '../../types/proof.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport {\n  type FormatProofErrorType,\n  formatProof,\n} from '../../utils/formatters/proof.js'\n\nexport type GetProofParameters = {\n  /** Account address. */\n  address: Address\n  /** Array of storage-keys that should be proofed and included. */\n  storageKeys: Hash[]\n} & (\n  | {\n      /** The block number. */\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n  | {\n      blockNumber?: undefined\n      /**\n       * The block tag.\n       * @default 'latest'\n       */\n      blockTag?: BlockTag | undefined\n    }\n)\n\nexport type GetProofReturnType = Proof\n\nexport type GetProofErrorType =\n  | NumberToHexErrorType\n  | FormatProofErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Returns the account and storage values of the specified account including the Merkle-proof.\n *\n * - Docs: https://viem.sh/docs/actions/public/getProof\n * - JSON-RPC Methods:\n *   - Calls [`eth_getProof`](https://eips.ethereum.org/EIPS/eip-1186)\n *\n * @param client - Client to use\n * @param parameters - {@link GetProofParameters}\n * @returns Proof data. {@link GetProofReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getProof } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const block = await getProof(client, {\n *  address: '0x...',\n *  storageKeys: ['0x...'],\n * })\n */\nexport async function getProof<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  {\n    address,\n    blockNumber,\n    blockTag: blockTag_,\n    storageKeys,\n  }: GetProofParameters,\n): Promise<GetProofReturnType> {\n  const blockTag = blockTag_ ?? 'latest'\n\n  const blockNumberHex =\n    blockNumber !== undefined ? numberToHex(blockNumber) : undefined\n\n  const proof = await client.request({\n    method: 'eth_getProof',\n    params: [address, storageKeys, blockNumberHex || blockTag],\n  })\n\n  return formatProof(proof)\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\n\nexport type GetStorageAtParameters = {\n  address: Address\n  slot: Hex\n} & (\n  | {\n      blockNumber?: undefined\n      blockTag?: BlockTag | undefined\n    }\n  | {\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n)\n\nexport type GetStorageAtReturnType = Hex | undefined\n\nexport type GetStorageAtErrorType =\n  | NumberToHexErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Returns the value from a storage slot at a given address.\n *\n * - Docs: https://viem.sh/docs/contract/getStorageAt\n * - JSON-RPC Methods: [`eth_getStorageAt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getstorageat)\n *\n * @param client - Client to use\n * @param parameters - {@link GetStorageAtParameters}\n * @returns The value of the storage slot. {@link GetStorageAtReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getStorageAt } from 'viem/contract'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const code = await getStorageAt(client, {\n *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *   slot: toHex(0),\n * })\n */\nexport async function getStorageAt<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  { address, blockNumber, blockTag = 'latest', slot }: GetStorageAtParameters,\n): Promise<GetStorageAtReturnType> {\n  const blockNumberHex =\n    blockNumber !== undefined ? numberToHex(blockNumber) : undefined\n  const data = await client.request({\n    method: 'eth_getStorageAt',\n    params: [address, slot, blockNumberHex || blockTag],\n  })\n  return data\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  TransactionNotFoundError,\n  type TransactionNotFoundErrorType,\n} from '../../errors/transaction.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { RpcTransaction } from '../../types/rpc.js'\nimport type { Prettify } from '../../types/utils.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport {\n  type FormattedTransaction,\n  formatTransaction,\n} from '../../utils/formatters/transaction.js'\n\nexport type GetTransactionParameters<blockTag extends BlockTag = 'latest'> =\n  | {\n      /** The block hash */\n      blockHash: Hash\n      blockNumber?: undefined\n      blockTag?: undefined\n      hash?: undefined\n      /** The index of the transaction on the block. */\n      index: number\n    }\n  | {\n      blockHash?: undefined\n      /** The block number */\n      blockNumber: bigint\n      blockTag?: undefined\n      hash?: undefined\n      /** The index of the transaction on the block. */\n      index: number\n    }\n  | {\n      blockHash?: undefined\n      blockNumber?: undefined\n      /** The block tag. */\n      blockTag: blockTag | BlockTag\n      hash?: undefined\n      /** The index of the transaction on the block. */\n      index: number\n    }\n  | {\n      blockHash?: undefined\n      blockNumber?: undefined\n      blockTag?: undefined\n      /** The hash of the transaction. */\n      hash: Hash\n      index?: number | undefined\n    }\n\nexport type GetTransactionReturnType<\n  chain extends Chain | undefined = undefined,\n  blockTag extends BlockTag = 'latest',\n> = Prettify<FormattedTransaction<chain, blockTag>>\n\nexport type GetTransactionErrorType =\n  | TransactionNotFoundErrorType\n  | NumberToHexErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Returns information about a [Transaction](https://viem.sh/docs/glossary/terms#transaction) given a hash or block identifier.\n *\n * - Docs: https://viem.sh/docs/actions/public/getTransaction\n * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n * - JSON-RPC Methods: [`eth_getTransactionByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionByHash)\n *\n * @param client - Client to use\n * @param parameters - {@link GetTransactionParameters}\n * @returns The transaction information. {@link GetTransactionReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getTransaction } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const transaction = await getTransaction(client, {\n *   hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nexport async function getTransaction<\n  chain extends Chain | undefined,\n  blockTag extends BlockTag = 'latest',\n>(\n  client: Client<Transport, chain>,\n  {\n    blockHash,\n    blockNumber,\n    blockTag: blockTag_,\n    hash,\n    index,\n  }: GetTransactionParameters<blockTag>,\n): Promise<GetTransactionReturnType<chain, blockTag>> {\n  const blockTag = blockTag_ || 'latest'\n\n  const blockNumberHex =\n    blockNumber !== undefined ? numberToHex(blockNumber) : undefined\n\n  let transaction: RpcTransaction | null = null\n  if (hash) {\n    transaction = await client.request(\n      {\n        method: 'eth_getTransactionByHash',\n        params: [hash],\n      },\n      { dedupe: true },\n    )\n  } else if (blockHash) {\n    transaction = await client.request(\n      {\n        method: 'eth_getTransactionByBlockHashAndIndex',\n        params: [blockHash, numberToHex(index)],\n      },\n      { dedupe: true },\n    )\n  } else if (blockNumberHex || blockTag) {\n    transaction = await client.request(\n      {\n        method: 'eth_getTransactionByBlockNumberAndIndex',\n        params: [blockNumberHex || blockTag, numberToHex(index)],\n      },\n      { dedupe: Boolean(blockNumberHex) },\n    )\n  }\n\n  if (!transaction)\n    throw new TransactionNotFoundError({\n      blockHash,\n      blockNumber,\n      blockTag,\n      hash,\n      index,\n    })\n\n  const format =\n    client.chain?.formatters?.transaction?.format || formatTransaction\n  return format(transaction)\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { FormattedTransactionReceipt } from '../../utils/formatters/transactionReceipt.js'\nimport { getAction } from '../../utils/getAction.js'\n\nimport {\n  type GetBlockNumberErrorType,\n  getBlockNumber,\n} from './getBlockNumber.js'\nimport {\n  type GetTransactionErrorType,\n  getTransaction,\n} from './getTransaction.js'\n\nexport type GetTransactionConfirmationsParameters<\n  chain extends Chain | undefined = Chain,\n> =\n  | {\n      /** The transaction hash. */\n      hash: Hash\n      transactionReceipt?: undefined\n    }\n  | {\n      hash?: undefined\n      /** The transaction receipt. */\n      transactionReceipt: FormattedTransactionReceipt<chain>\n    }\n\nexport type GetTransactionConfirmationsReturnType = bigint\n\nexport type GetTransactionConfirmationsErrorType =\n  | GetBlockNumberErrorType\n  | GetTransactionErrorType\n  | ErrorType\n\n/**\n * Returns the number of blocks passed (confirmations) since the transaction was processed on a block.\n *\n * - Docs: https://viem.sh/docs/actions/public/getTransactionConfirmations\n * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n * - JSON-RPC Methods: [`eth_getTransactionConfirmations`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionConfirmations)\n *\n * @param client - Client to use\n * @param parameters - {@link GetTransactionConfirmationsParameters}\n * @returns The number of blocks passed since the transaction was processed. If confirmations is 0, then the Transaction has not been confirmed & processed yet. {@link GetTransactionConfirmationsReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getTransactionConfirmations } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const confirmations = await getTransactionConfirmations(client, {\n *   hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nexport async function getTransactionConfirmations<\n  chain extends Chain | undefined,\n>(\n  client: Client<Transport, chain>,\n  { hash, transactionReceipt }: GetTransactionConfirmationsParameters<chain>,\n): Promise<GetTransactionConfirmationsReturnType> {\n  const [blockNumber, transaction] = await Promise.all([\n    getAction(client, getBlockNumber, 'getBlockNumber')({}),\n    hash\n      ? getAction(client, getTransaction, 'getTransaction')({ hash })\n      : undefined,\n  ])\n  const transactionBlockNumber =\n    transactionReceipt?.blockNumber || transaction?.blockNumber\n  if (!transactionBlockNumber) return 0n\n  return blockNumber - transactionBlockNumber! + 1n\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  TransactionReceiptNotFoundError,\n  type TransactionReceiptNotFoundErrorType,\n} from '../../errors/transaction.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type FormattedTransactionReceipt,\n  formatTransactionReceipt,\n} from '../../utils/formatters/transactionReceipt.js'\n\nexport type GetTransactionReceiptParameters = {\n  /** The hash of the transaction. */\n  hash: Hash\n}\n\nexport type GetTransactionReceiptReturnType<\n  chain extends Chain | undefined = undefined,\n> = FormattedTransactionReceipt<chain>\n\nexport type GetTransactionReceiptErrorType =\n  | RequestErrorType\n  | TransactionReceiptNotFoundErrorType\n  | ErrorType\n\n/**\n * Returns the [Transaction Receipt](https://viem.sh/docs/glossary/terms#transaction-receipt) given a [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash.\n *\n * - Docs: https://viem.sh/docs/actions/public/getTransactionReceipt\n * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n * - JSON-RPC Methods: [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gettransactionreceipt)\n *\n * @param client - Client to use\n * @param parameters - {@link GetTransactionReceiptParameters}\n * @returns The transaction receipt. {@link GetTransactionReceiptReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getTransactionReceipt } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const transactionReceipt = await getTransactionReceipt(client, {\n *   hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nexport async function getTransactionReceipt<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  { hash }: GetTransactionReceiptParameters,\n) {\n  const receipt = await client.request(\n    {\n      method: 'eth_getTransactionReceipt',\n      params: [hash],\n    },\n    { dedupe: true },\n  )\n\n  if (!receipt) throw new TransactionReceiptNotFoundError({ hash })\n\n  const format =\n    client.chain?.formatters?.transactionReceipt?.format ||\n    formatTransactionReceipt\n  return format(receipt) as GetTransactionReceiptReturnType<chain>\n}\n","import type { AbiStateMutability, Address, Narrow } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { multicall3Abi } from '../../constants/abis.js'\nimport { AbiDecodingZeroDataError } from '../../errors/abi.js'\nimport { BaseError } from '../../errors/base.js'\nimport { RawContractError } from '../../errors/contract.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { ContractFunctionParameters } from '../../types/contract.js'\nimport type { Hex } from '../../types/misc.js'\nimport type {\n  MulticallContracts,\n  MulticallResults,\n} from '../../types/multicall.js'\nimport {\n  type DecodeFunctionResultErrorType,\n  decodeFunctionResult,\n} from '../../utils/abi/decodeFunctionResult.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport {\n  type GetChainContractAddressErrorType,\n  getChainContractAddress,\n} from '../../utils/chain/getChainContractAddress.js'\nimport {\n  type GetContractErrorReturnType,\n  getContractError,\n} from '../../utils/errors/getContractError.js'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport { getAction } from '../../utils/getAction.js'\nimport type { CallParameters } from './call.js'\nimport { type ReadContractErrorType, readContract } from './readContract.js'\n\nexport type MulticallParameters<\n  contracts extends readonly unknown[] = readonly ContractFunctionParameters[],\n  allowFailure extends boolean = true,\n  options extends {\n    optional?: boolean\n    properties?: Record<string, any>\n  } = {},\n> = Pick<CallParameters, 'blockNumber' | 'blockTag' | 'stateOverride'> & {\n  account?: Address | undefined\n  allowFailure?: allowFailure | boolean | undefined\n  batchSize?: number | undefined\n  contracts: MulticallContracts<\n    Narrow<contracts>,\n    { mutability: AbiStateMutability } & options\n  >\n  multicallAddress?: Address | undefined\n}\n\nexport type MulticallReturnType<\n  contracts extends readonly unknown[] = readonly ContractFunctionParameters[],\n  allowFailure extends boolean = true,\n  options extends {\n    error?: Error\n  } = { error: Error },\n> = MulticallResults<\n  Narrow<contracts>,\n  allowFailure,\n  { mutability: AbiStateMutability } & options\n>\n\nexport type MulticallErrorType =\n  | GetChainContractAddressErrorType\n  | ReadContractErrorType\n  | GetContractErrorReturnType<\n      EncodeFunctionDataErrorType | DecodeFunctionResultErrorType\n    >\n  | ErrorType\n\n/**\n * Similar to [`readContract`](https://viem.sh/docs/contract/readContract), but batches up multiple functions on a contract in a single RPC call via the [`multicall3` contract](https://github.com/mds1/multicall).\n *\n * - Docs: https://viem.sh/docs/contract/multicall\n *\n * @param client - Client to use\n * @param parameters - {@link MulticallParameters}\n * @returns An array of results with accompanying status. {@link MulticallReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { multicall } from 'viem/contract'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const abi = parseAbi([\n *   'function balanceOf(address) view returns (uint256)',\n *   'function totalSupply() view returns (uint256)',\n * ])\n * const results = await multicall(client, {\n *   contracts: [\n *     {\n *       address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *       abi,\n *       functionName: 'balanceOf',\n *       args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n *     },\n *     {\n *       address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n *       abi,\n *       functionName: 'totalSupply',\n *     },\n *   ],\n * })\n * // [{ result: 424122n, status: 'success' }, { result: 1000000n, status: 'success' }]\n */\nexport async function multicall<\n  const contracts extends readonly unknown[],\n  chain extends Chain | undefined,\n  allowFailure extends boolean = true,\n>(\n  client: Client<Transport, chain>,\n  parameters: MulticallParameters<contracts, allowFailure>,\n): Promise<MulticallReturnType<contracts, allowFailure>> {\n  const {\n    account,\n    allowFailure = true,\n    batchSize: batchSize_,\n    blockNumber,\n    blockTag,\n    multicallAddress: multicallAddress_,\n    stateOverride,\n  } = parameters\n  const contracts = parameters.contracts as ContractFunctionParameters[]\n\n  const batchSize =\n    batchSize_ ??\n    ((typeof client.batch?.multicall === 'object' &&\n      client.batch.multicall.batchSize) ||\n      1_024)\n\n  let multicallAddress = multicallAddress_\n  if (!multicallAddress) {\n    if (!client.chain)\n      throw new Error(\n        'client chain not configured. multicallAddress is required.',\n      )\n\n    multicallAddress = getChainContractAddress({\n      blockNumber,\n      chain: client.chain,\n      contract: 'multicall3',\n    })\n  }\n\n  type Aggregate3Calls = {\n    allowFailure: boolean\n    callData: Hex\n    target: Address\n  }[]\n\n  const chunkedCalls: Aggregate3Calls[] = [[]]\n  let currentChunk = 0\n  let currentChunkSize = 0\n  for (let i = 0; i < contracts.length; i++) {\n    const { abi, address, args, functionName } = contracts[i]\n    try {\n      const callData = encodeFunctionData({ abi, args, functionName })\n\n      currentChunkSize += (callData.length - 2) / 2\n      // Check to see if we need to create a new chunk.\n      if (\n        // Check if batching is enabled.\n        batchSize > 0 &&\n        // Check if the current size of the batch exceeds the size limit.\n        currentChunkSize > batchSize &&\n        // Check if the current chunk is not already empty.\n        chunkedCalls[currentChunk].length > 0\n      ) {\n        currentChunk++\n        currentChunkSize = (callData.length - 2) / 2\n        chunkedCalls[currentChunk] = []\n      }\n\n      chunkedCalls[currentChunk] = [\n        ...chunkedCalls[currentChunk],\n        {\n          allowFailure: true,\n          callData,\n          target: address,\n        },\n      ]\n    } catch (err) {\n      const error = getContractError(err as BaseError, {\n        abi,\n        address,\n        args,\n        docsPath: '/docs/contract/multicall',\n        functionName,\n        sender: account,\n      })\n      if (!allowFailure) throw error\n      chunkedCalls[currentChunk] = [\n        ...chunkedCalls[currentChunk],\n        {\n          allowFailure: true,\n          callData: '0x' as Hex,\n          target: address,\n        },\n      ]\n    }\n  }\n\n  const aggregate3Results = await Promise.allSettled(\n    chunkedCalls.map((calls) =>\n      getAction(\n        client,\n        readContract,\n        'readContract',\n      )({\n        abi: multicall3Abi,\n        account,\n        address: multicallAddress!,\n        args: [calls],\n        blockNumber,\n        blockTag,\n        functionName: 'aggregate3',\n        stateOverride,\n      }),\n    ),\n  )\n\n  const results = []\n  for (let i = 0; i < aggregate3Results.length; i++) {\n    const result = aggregate3Results[i]\n\n    // If an error occurred in a `readContract` invocation (ie. network error),\n    // then append the failure reason to each contract result.\n    if (result.status === 'rejected') {\n      if (!allowFailure) throw result.reason\n      for (let j = 0; j < chunkedCalls[i].length; j++) {\n        results.push({\n          status: 'failure',\n          error: result.reason,\n          result: undefined,\n        })\n      }\n      continue\n    }\n\n    // If the `readContract` call was successful, then decode the results.\n    const aggregate3Result = result.value\n    for (let j = 0; j < aggregate3Result.length; j++) {\n      // Extract the response from `readContract`\n      const { returnData, success } = aggregate3Result[j]\n\n      // Extract the request call data from the original call.\n      const { callData } = chunkedCalls[i][j]\n\n      // Extract the contract config for this call from the `contracts` argument\n      // for decoding.\n      const { abi, address, functionName, args } = contracts[\n        results.length\n      ] as ContractFunctionParameters\n\n      try {\n        if (callData === '0x') throw new AbiDecodingZeroDataError()\n        if (!success) throw new RawContractError({ data: returnData })\n        const result = decodeFunctionResult({\n          abi,\n          args,\n          data: returnData,\n          functionName,\n        })\n        results.push(allowFailure ? { result, status: 'success' } : result)\n      } catch (err) {\n        const error = getContractError(err as BaseError, {\n          abi,\n          address,\n          args,\n          docsPath: '/docs/contract/multicall',\n          functionName,\n        })\n        if (!allowFailure) throw error\n        results.push({ error, result: undefined, status: 'failure' })\n      }\n    }\n  }\n\n  if (results.length !== contracts.length)\n    throw new BaseError('multicall results mismatch')\n  return results as MulticallReturnType<contracts, allowFailure>\n}\n","import type { Abi, AbiStateMutability, Address, Narrow } from 'abitype'\nimport * as BlockOverrides from 'ox/BlockOverrides'\n\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { AbiDecodingZeroDataError } from '../../errors/abi.js'\nimport type { BaseError } from '../../errors/base.js'\nimport { RawContractError } from '../../errors/contract.js'\nimport { UnknownNodeError } from '../../errors/node.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account } from '../../types/account.js'\nimport type { Block, BlockTag } from '../../types/block.js'\nimport type { Call, Calls } from '../../types/calls.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Log } from '../../types/log.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { MulticallResults } from '../../types/multicall.js'\nimport type { StateOverride } from '../../types/stateOverride.js'\nimport type { TransactionRequest } from '../../types/transaction.js'\nimport type { ExactPartial, UnionOmit } from '../../types/utils.js'\nimport {\n  type DecodeFunctionResultErrorType,\n  decodeFunctionResult,\n} from '../../utils/abi/decodeFunctionResult.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport { concat } from '../../utils/data/concat.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport { getContractError } from '../../utils/errors/getContractError.js'\nimport {\n  type GetNodeErrorReturnType,\n  getNodeError,\n} from '../../utils/errors/getNodeError.js'\nimport {\n  type FormatBlockErrorType,\n  formatBlock,\n} from '../../utils/formatters/block.js'\nimport { formatLog } from '../../utils/formatters/log.js'\nimport {\n  type FormatTransactionRequestErrorType,\n  formatTransactionRequest,\n} from '../../utils/formatters/transactionRequest.js'\nimport {\n  type SerializeStateOverrideErrorType,\n  serializeStateOverride,\n} from '../../utils/stateOverride.js'\nimport {\n  type AssertRequestErrorType,\n  assertRequest,\n} from '../../utils/transaction/assertRequest.js'\n\ntype CallExtraProperties = ExactPartial<\n  UnionOmit<\n    TransactionRequest,\n    'blobs' | 'data' | 'kzg' | 'to' | 'sidecars' | 'value'\n  >\n> & {\n  /** Account attached to the call (msg.sender). */\n  account?: Account | Address | undefined\n  /** Recipient. `null` if contract deployment. */\n  to?: Address | null | undefined\n}\n\nexport type SimulateBlocksParameters<\n  calls extends readonly unknown[] = readonly unknown[],\n> = {\n  /** Blocks to simulate. */\n  blocks: readonly {\n    /** Block overrides. */\n    blockOverrides?: BlockOverrides.BlockOverrides | undefined\n    /** Calls to execute. */\n    calls: Calls<Narrow<calls>, CallExtraProperties>\n    /** State overrides. */\n    stateOverrides?: StateOverride | undefined\n  }[]\n  /** Whether to return the full transactions. */\n  returnFullTransactions?: boolean | undefined\n  /** Whether to trace transfers. */\n  traceTransfers?: boolean | undefined\n  /** Whether to enable validation mode. */\n  validation?: boolean | undefined\n} & (\n  | {\n      /** The balance of the account at a block number. */\n      blockNumber?: bigint | undefined\n      blockTag?: undefined\n    }\n  | {\n      blockNumber?: undefined\n      /**\n       * The balance of the account at a block tag.\n       * @default 'latest'\n       */\n      blockTag?: BlockTag | undefined\n    }\n)\n\nexport type SimulateBlocksReturnType<\n  calls extends readonly unknown[] = readonly unknown[],\n> = readonly (Block & {\n  calls: MulticallResults<\n    Narrow<calls>,\n    true,\n    {\n      extraProperties: {\n        data: Hex\n        gasUsed: bigint\n        logs?: Log[] | undefined\n      }\n      error: Error\n      mutability: AbiStateMutability\n    }\n  >\n})[]\n\nexport type SimulateBlocksErrorType =\n  | AssertRequestErrorType\n  | DecodeFunctionResultErrorType\n  | EncodeFunctionDataErrorType\n  | FormatBlockErrorType\n  | FormatTransactionRequestErrorType\n  | GetNodeErrorReturnType\n  | ParseAccountErrorType\n  | SerializeStateOverrideErrorType\n  | NumberToHexErrorType\n  | ErrorType\n\n/**\n * Simulates a set of calls on block(s) with optional block and state overrides.\n *\n * @example\n * ```ts\n * import { createClient, http, parseEther } from 'viem'\n * import { simulate } from 'viem/actions'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n *\n * const result = await simulate(client, {\n *   blocks: [{\n *     blockOverrides: {\n *       number: 69420n,\n *     },\n *     calls: [{\n *       {\n *         account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n *         data: '0xdeadbeef',\n *         to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *       },\n *       {\n *         account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n *         to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *         value: parseEther('1'),\n *       },\n *     }],\n *     stateOverrides: [{\n *       address: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n *       balance: parseEther('10'),\n *     }],\n *   }]\n * })\n * ```\n *\n * @param client - Client to use.\n * @param parameters - {@link SimulateBlocksParameters}\n * @returns Simulated blocks. {@link SimulateBlocksReturnType}\n */\nexport async function simulateBlocks<\n  chain extends Chain | undefined,\n  const calls extends readonly unknown[],\n>(\n  client: Client<Transport, chain>,\n  parameters: SimulateBlocksParameters<calls>,\n): Promise<SimulateBlocksReturnType<calls>> {\n  const {\n    blockNumber,\n    blockTag = 'latest',\n    blocks,\n    returnFullTransactions,\n    traceTransfers,\n    validation,\n  } = parameters\n\n  try {\n    const blockStateCalls = []\n    for (const block of blocks) {\n      const blockOverrides = block.blockOverrides\n        ? BlockOverrides.toRpc(block.blockOverrides)\n        : undefined\n      const calls = block.calls.map((call_) => {\n        const call = call_ as Call<unknown, CallExtraProperties>\n        const account = call.account ? parseAccount(call.account) : undefined\n        const data = call.abi ? encodeFunctionData(call) : call.data\n        const request = {\n          ...call,\n          data: call.dataSuffix\n            ? concat([data || '0x', call.dataSuffix])\n            : data,\n          from: call.from ?? account?.address,\n        } as const\n        assertRequest(request)\n        return formatTransactionRequest(request)\n      })\n      const stateOverrides = block.stateOverrides\n        ? serializeStateOverride(block.stateOverrides)\n        : undefined\n\n      blockStateCalls.push({\n        blockOverrides,\n        calls,\n        stateOverrides,\n      })\n    }\n\n    const blockNumberHex =\n      typeof blockNumber === 'bigint' ? numberToHex(blockNumber) : undefined\n    const block = blockNumberHex || blockTag\n\n    const result = await client.request({\n      method: 'eth_simulateV1',\n      params: [\n        { blockStateCalls, returnFullTransactions, traceTransfers, validation },\n        block,\n      ],\n    })\n\n    return result.map((block, i) => ({\n      ...formatBlock(block),\n      calls: block.calls.map((call, j) => {\n        const { abi, args, functionName, to } = blocks[i].calls[j] as Call<\n          unknown,\n          CallExtraProperties\n        >\n\n        const data = call.error?.data ?? call.returnData\n        const gasUsed = BigInt(call.gasUsed)\n        const logs = call.logs?.map((log) => formatLog(log))\n        const status = call.status === '0x1' ? 'success' : 'failure'\n\n        const result =\n          abi && status === 'success' && data !== '0x'\n            ? decodeFunctionResult({\n                abi,\n                data,\n                functionName,\n              })\n            : null\n\n        const error = (() => {\n          if (status === 'success') return undefined\n\n          let error = undefined\n          if (call.error?.data === '0x') error = new AbiDecodingZeroDataError()\n          else if (call.error) error = new RawContractError(call.error)\n\n          if (!error) return undefined\n          return getContractError(error, {\n            abi: (abi ?? []) as Abi,\n            address: to ?? '0x',\n            args,\n            functionName: functionName ?? '<unknown>',\n          })\n        })()\n\n        return {\n          data,\n          gasUsed,\n          logs,\n          status,\n          ...(status === 'success'\n            ? {\n                result,\n              }\n            : {\n                error,\n              }),\n        }\n      }),\n    })) as unknown as SimulateBlocksReturnType<calls>\n  } catch (e) {\n    const cause = e as BaseError\n    const error = getNodeError(cause, {})\n    if (error instanceof UnknownNodeError) throw cause\n    throw error\n  }\n}\n","import { ripemd160 as noble_ripemd160 } from '@noble/hashes/ripemd160'\nimport { keccak_256 as noble_keccak256 } from '@noble/hashes/sha3'\nimport { sha256 as noble_sha256 } from '@noble/hashes/sha256'\nimport * as Bytes from './Bytes.js'\nimport type * as Errors from './Errors.js'\nimport * as Hex from './Hex.js'\n\n/**\n * Calculates the [Keccak256](https://en.wikipedia.org/wiki/SHA-3) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `keccak_256` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.keccak256('0xdeadbeef')\n * // @log: '0xd4fd4e189132273036449fc9e11198c739161b4c0116a9a2dccdfa1c492006f1'\n * ```\n *\n * @example\n * ### Calculate Hash of a String\n *\n * ```ts twoslash\n * import { Hash, Hex } from 'ox'\n *\n * Hash.keccak256(Hex.fromString('hello world'))\n * // @log: '0x3ea2f1d0abf3fc66cf29eebb70cbd4e7fe762ef8a09bcc06c8edf641230afec0'\n * ```\n *\n * @example\n * ### Configure Return Type\n *\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.keccak256('0xdeadbeef', { as: 'Bytes' })\n * // @log: Uint8Array [...]\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Keccak256 hash.\n */\nexport function keccak256<\n  value extends Hex.Hex | Bytes.Bytes,\n  as extends 'Hex' | 'Bytes' =\n    | (value extends Hex.Hex ? 'Hex' : never)\n    | (value extends Bytes.Bytes ? 'Bytes' : never),\n>(\n  value: value | Hex.Hex | Bytes.Bytes,\n  options: keccak256.Options<as> = {},\n): keccak256.ReturnType<as> {\n  const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options\n  const bytes = noble_keccak256(Bytes.from(value))\n  if (as === 'Bytes') return bytes as never\n  return Hex.fromBytes(bytes) as never\n}\n\nexport declare namespace keccak256 {\n  type Options<as extends 'Hex' | 'Bytes' = 'Hex' | 'Bytes'> = {\n    /** The return type. @default 'Hex' */\n    as?: as | 'Hex' | 'Bytes' | undefined\n  }\n\n  type ReturnType<as extends 'Hex' | 'Bytes' = 'Hex' | 'Bytes'> =\n    | (as extends 'Bytes' ? Bytes.Bytes : never)\n    | (as extends 'Hex' ? Hex.Hex : never)\n\n  type ErrorType =\n    | Bytes.from.ErrorType\n    | Hex.fromBytes.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Calculates the [Ripemd160](https://en.wikipedia.org/wiki/RIPEMD) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `ripemd160` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.ripemd160('0xdeadbeef')\n * // '0x226821c2f5423e11fe9af68bd285c249db2e4b5a'\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Ripemd160 hash.\n */\nexport function ripemd160<\n  value extends Hex.Hex | Bytes.Bytes,\n  as extends 'Hex' | 'Bytes' =\n    | (value extends Hex.Hex ? 'Hex' : never)\n    | (value extends Bytes.Bytes ? 'Bytes' : never),\n>(\n  value: value | Hex.Hex | Bytes.Bytes,\n  options: ripemd160.Options<as> = {},\n): ripemd160.ReturnType<as> {\n  const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options\n  const bytes = noble_ripemd160(Bytes.from(value))\n  if (as === 'Bytes') return bytes as never\n  return Hex.fromBytes(bytes) as never\n}\n\nexport declare namespace ripemd160 {\n  type Options<as extends 'Hex' | 'Bytes' = 'Hex' | 'Bytes'> = {\n    /** The return type. @default 'Hex' */\n    as?: as | 'Hex' | 'Bytes' | undefined\n  }\n\n  type ReturnType<as extends 'Hex' | 'Bytes' = 'Hex' | 'Bytes'> =\n    | (as extends 'Bytes' ? Bytes.Bytes : never)\n    | (as extends 'Hex' ? Hex.Hex : never)\n\n  type ErrorType =\n    | Bytes.from.ErrorType\n    | Hex.fromBytes.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Calculates the [Sha256](https://en.wikipedia.org/wiki/SHA-256) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `sha256` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.sha256('0xdeadbeef')\n * // '0x5f78c33274e43fa9de5659265c1d917e25c03722dcb0b8d27db8d5feaa813953'\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Sha256 hash.\n */\nexport function sha256<\n  value extends Hex.Hex | Bytes.Bytes,\n  as extends 'Hex' | 'Bytes' =\n    | (value extends Hex.Hex ? 'Hex' : never)\n    | (value extends Bytes.Bytes ? 'Bytes' : never),\n>(\n  value: value | Hex.Hex | Bytes.Bytes,\n  options: sha256.Options<as> = {},\n): sha256.ReturnType<as> {\n  const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options\n  const bytes = noble_sha256(Bytes.from(value))\n  if (as === 'Bytes') return bytes as never\n  return Hex.fromBytes(bytes) as never\n}\n\nexport declare namespace sha256 {\n  type Options<as extends 'Hex' | 'Bytes' = 'Hex'> = {\n    /** The return type. @default 'Hex' */\n    as?: as | 'Hex' | 'Bytes' | undefined\n  }\n\n  type ReturnType<as extends 'Hex' | 'Bytes' = 'Hex'> =\n    | (as extends 'Bytes' ? Bytes.Bytes : never)\n    | (as extends 'Hex' ? Hex.Hex : never)\n\n  type ErrorType =\n    | Bytes.from.ErrorType\n    | Hex.fromBytes.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Checks if a string is a valid hash value.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.validate('0x')\n * // @log: false\n *\n * Hash.validate('0x3ea2f1d0abf3fc66cf29eebb70cbd4e7fe762ef8a09bcc06c8edf641230afec0')\n * // @log: true\n * ```\n *\n * @param value - Value to check.\n * @returns Whether the value is a valid hash.\n */\nexport function validate(value: string): value is Hex.Hex {\n  return Hex.validate(value) && Hex.size(value) === 32\n}\n\nexport declare namespace validate {\n  type ErrorType =\n    | Hex.validate.ErrorType\n    | Hex.size.ErrorType\n    | Errors.GlobalErrorType\n}\n","/**\n * @internal\n *\n * Map with a LRU (Least recently used) policy.\n * @see https://en.wikipedia.org/wiki/Cache_replacement_policies#LRU\n */\nexport class LruMap<value = unknown> extends Map<string, value> {\n  maxSize: number\n\n  constructor(size: number) {\n    super()\n    this.maxSize = size\n  }\n\n  override get(key: string) {\n    const value = super.get(key)\n\n    if (super.has(key) && value !== undefined) {\n      this.delete(key)\n      super.set(key, value)\n    }\n\n    return value\n  }\n\n  override set(key: string, value: value) {\n    super.set(key, value)\n    if (this.maxSize && this.size > this.maxSize) {\n      const firstKey = this.keys().next().value\n      if (firstKey) this.delete(firstKey)\n    }\n    return this\n  }\n}\n","import type * as Address from './Address.js'\nimport { LruMap } from './internal/lru.js'\n\nconst caches = {\n  checksum: /*#__PURE__*/ new LruMap<Address.Address>(8192),\n}\n\nexport const checksum = caches.checksum\n\n/**\n * Clears all global caches.\n *\n * @example\n * ```ts\n * import { Caches } from 'ox'\n * Caches.clear()\n * ```\n */\nexport function clear() {\n  for (const cache of Object.values(caches)) cache.clear()\n}\n","import type { Address as abitype_Address } from 'abitype'\nimport * as Bytes from './Bytes.js'\nimport * as Caches from './Caches.js'\nimport * as Errors from './Errors.js'\nimport * as Hash from './Hash.js'\nimport * as PublicKey from './PublicKey.js'\n\nconst addressRegex = /*#__PURE__*/ /^0x[a-fA-F0-9]{40}$/\n\n/** Root type for Address. */\nexport type Address = abitype_Address\n\n/**\n * Asserts that the given value is a valid {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.assert('0xA0Cf798816D4b9b9866b5330EEa46a18382f251e')\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.assert('0xdeadbeef')\n * // @error: InvalidAddressError: Address \"0xdeadbeef\" is invalid.\n * ```\n *\n * @param value - Value to assert if it is a valid address.\n * @param options - Assertion options.\n */\nexport function assert(\n  value: string,\n  options: assert.Options = {},\n): asserts value is Address {\n  const { strict = true } = options\n\n  if (!addressRegex.test(value))\n    throw new InvalidAddressError({\n      address: value,\n      cause: new InvalidInputError(),\n    })\n\n  if (strict) {\n    if (value.toLowerCase() === value) return\n    if (checksum(value as Address) !== value)\n      throw new InvalidAddressError({\n        address: value,\n        cause: new InvalidChecksumError(),\n      })\n  }\n}\n\nexport declare namespace assert {\n  type Options = {\n    /**\n     * Enables strict mode. Whether or not to compare the address against its checksum.\n     *\n     * @default true\n     */\n    strict?: boolean | undefined\n  }\n\n  type ErrorType = InvalidAddressError | Errors.GlobalErrorType\n}\n\n/**\n * Computes the checksum address for the given {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.checksum('0xa0cf798816d4b9b9866b5330eea46a18382f251e')\n * // @log: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'\n * ```\n *\n * @param address - The address to compute the checksum for.\n * @returns The checksummed address.\n */\nexport function checksum(address: string): Address {\n  if (Caches.checksum.has(address)) return Caches.checksum.get(address)!\n\n  assert(address, { strict: false })\n\n  const hexAddress = address.substring(2).toLowerCase()\n  const hash = Hash.keccak256(Bytes.fromString(hexAddress), { as: 'Bytes' })\n\n  const characters = hexAddress.split('')\n  for (let i = 0; i < 40; i += 2) {\n    if (hash[i >> 1]! >> 4 >= 8 && characters[i]) {\n      characters[i] = characters[i]!.toUpperCase()\n    }\n    if ((hash[i >> 1]! & 0x0f) >= 8 && characters[i + 1]) {\n      characters[i + 1] = characters[i + 1]!.toUpperCase()\n    }\n  }\n\n  const result = `0x${characters.join('')}` as const\n  Caches.checksum.set(address, result)\n  return result\n}\n\nexport declare namespace checksum {\n  type ErrorType =\n    | assert.ErrorType\n    | Hash.keccak256.ErrorType\n    | Bytes.fromString.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Converts a stringified address to a typed (checksummed) {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.from('0xa0cf798816d4b9b9866b5330eea46a18382f251e')\n * // @log: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.from('0xa0cf798816d4b9b9866b5330eea46a18382f251e', {\n *   checksum: false\n * })\n * // @log: '0xa0cf798816d4b9b9866b5330eea46a18382f251e'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.from('hello')\n * // @error: InvalidAddressError: Address \"0xa\" is invalid.\n * ```\n *\n * @param address - An address string to convert to a typed Address.\n * @param options - Conversion options.\n * @returns The typed Address.\n */\nexport function from(address: string, options: from.Options = {}): Address {\n  const { checksum: checksumVal = false } = options\n  assert(address)\n  if (checksumVal) return checksum(address)\n  return address as Address\n}\n\nexport declare namespace from {\n  type Options = {\n    /**\n     * Whether to checksum the address.\n     *\n     * @default false\n     */\n    checksum?: boolean | undefined\n  }\n\n  type ErrorType =\n    | assert.ErrorType\n    | checksum.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Converts an ECDSA public key to an {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address, PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from(\n *   '0x048318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5',\n * )\n * const address = Address.fromPublicKey(publicKey)\n * // @log: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266'\n * ```\n *\n * @param publicKey - The ECDSA public key to convert to an {@link ox#Address.Address}.\n * @param options - Conversion options.\n * @returns The {@link ox#Address.Address} corresponding to the public key.\n */\nexport function fromPublicKey(\n  publicKey: PublicKey.PublicKey,\n  options: fromPublicKey.Options = {},\n): Address {\n  const address = Hash.keccak256(\n    `0x${PublicKey.toHex(publicKey).slice(4)}`,\n  ).substring(26)\n  return from(`0x${address}`, options)\n}\n\nexport declare namespace fromPublicKey {\n  type Options = {\n    /**\n     * Whether to checksum the address.\n     *\n     * @default false\n     */\n    checksum?: boolean | undefined\n  }\n\n  type ErrorType =\n    | Hash.keccak256.ErrorType\n    | PublicKey.toHex.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Checks if two {@link ox#Address.Address} are equal.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.isEqual(\n *   '0xa0cf798816d4b9b9866b5330eea46a18382f251e',\n *   '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'\n * )\n * // @log: true\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.isEqual(\n *   '0xa0cf798816d4b9b9866b5330eea46a18382f251e',\n *   '0xA0Cf798816D4b9b9866b5330EEa46a18382f251f'\n * )\n * // @log: false\n * ```\n *\n * @param addressA - The first address to compare.\n * @param addressB - The second address to compare.\n * @returns Whether the addresses are equal.\n */\nexport function isEqual(addressA: Address, addressB: Address): boolean {\n  assert(addressA, { strict: false })\n  assert(addressB, { strict: false })\n  return addressA.toLowerCase() === addressB.toLowerCase()\n}\n\nexport declare namespace isEqual {\n  type ErrorType = assert.ErrorType | Errors.GlobalErrorType\n}\n\n/**\n * Checks if the given address is a valid {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.validate('0xA0Cf798816D4b9b9866b5330EEa46a18382f251e')\n * // @log: true\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.validate('0xdeadbeef')\n * // @log: false\n * ```\n *\n * @param address - Value to check if it is a valid address.\n * @param options - Check options.\n * @returns Whether the address is a valid address.\n */\nexport function validate(\n  address: string,\n  options: validate.Options = {},\n): address is Address {\n  const { strict = true } = options ?? {}\n  try {\n    assert(address, { strict })\n    return true\n  } catch {\n    return false\n  }\n}\n\nexport declare namespace validate {\n  type Options = {\n    /**\n     * Enables strict mode. Whether or not to compare the address against its checksum.\n     *\n     * @default true\n     */\n    strict?: boolean | undefined\n  }\n}\n\n/**\n * Thrown when an address is invalid.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.from('0x123')\n * // @error: Address.InvalidAddressError: Address `0x123` is invalid.\n * ```\n */\nexport class InvalidAddressError<\n  cause extends InvalidInputError | InvalidChecksumError =\n    | InvalidInputError\n    | InvalidChecksumError,\n> extends Errors.BaseError<cause> {\n  override readonly name = 'Address.InvalidAddressError'\n\n  constructor({ address, cause }: { address: string; cause: cause }) {\n    super(`Address \"${address}\" is invalid.`, {\n      cause,\n    })\n  }\n}\n\n/** Thrown when an address is not a 20 byte (40 hexadecimal character) value. */\nexport class InvalidInputError extends Errors.BaseError {\n  override readonly name = 'Address.InvalidInputError'\n\n  constructor() {\n    super('Address is not a 20 byte (40 hexadecimal character) value.')\n  }\n}\n\n/** Thrown when an address does not match its checksum counterpart. */\nexport class InvalidChecksumError extends Errors.BaseError {\n  override readonly name = 'Address.InvalidChecksumError'\n\n  constructor() {\n    super('Address does not match its checksum counterpart.')\n  }\n}\n","import type * as abitype from 'abitype'\nimport type * as Abi from '../Abi.js'\nimport type * as AbiItem from '../AbiItem.js'\nimport type * as AbiParameters from '../AbiParameters.js'\nimport * as Address from '../Address.js'\nimport * as Errors from '../Errors.js'\nimport type {\n  Compute,\n  IsNever,\n  IsUnion,\n  TypeErrorMessage,\n  UnionToTuple,\n} from './types.js'\n\n/** @internal */\nexport type ExtractArgs<\n  abi extends Abi.Abi | readonly unknown[] = Abi.Abi,\n  name extends AbiItem.Name<abi> = AbiItem.Name<abi>,\n> = abitype.AbiParametersToPrimitiveTypes<\n  AbiItem.FromAbi<abi extends Abi.Abi ? abi : Abi.Abi, name>['inputs'],\n  'inputs'\n> extends infer args\n  ? [args] extends [never]\n    ? readonly unknown[]\n    : args\n  : readonly unknown[]\n\n/** @internal */\nexport type ExtractForArgs<\n  abi extends Abi.Abi,\n  name extends AbiItem.Name<abi>,\n  args extends ExtractArgs<abi, name>,\n> = IsUnion<name> extends true\n  ? {\n      [key in keyof abi]: abi[key] extends { name: name } ? abi[key] : never\n    }[number]\n  : AbiItem.FromAbi<abi, name> extends infer abiItem extends AbiItem.AbiItem & {\n        inputs: readonly abitype.AbiParameter[]\n      }\n    ? IsUnion<abiItem> extends true // narrow overloads using `args` by converting to tuple and filtering out overloads that don't match\n      ? UnionToTuple<abiItem> extends infer abiItems extends\n          readonly (AbiItem.AbiItem & {\n            inputs: readonly abitype.AbiParameter[]\n          })[]\n        ? IsNever<TupleToUnion<abiItems, abi, name, args>> extends true\n          ? Compute<\n              abiItems[0] & {\n                readonly overloads: UnionToTuple<\n                  Exclude<abiItems[number], abiItems[0]>\n                >\n              }\n            >\n          : TupleToUnion<abiItems, abi, name, args> // convert back to union (removes `never` tuple entries: `['foo', never, 'bar'][number]` => `'foo' | 'bar'`)\n        : never\n      : abiItem\n    : never\n\n/** @internal */\nexport type TupleToUnion<\n  abiItems extends readonly {\n    inputs: readonly abitype.AbiParameter[]\n  }[],\n  abi extends Abi.Abi,\n  name extends AbiItem.Name<abi>,\n  args extends ExtractArgs<abi, name>,\n> = {\n  [k in keyof abiItems]: (\n    readonly [] extends args\n      ? readonly [] // fallback to `readonly []` if `args` has no value (e.g. `args` property not provided)\n      : args\n  ) extends abitype.AbiParametersToPrimitiveTypes<\n    abiItems[k]['inputs'],\n    'inputs'\n  >\n    ? abiItems[k]\n    : never\n}[number]\n\n/** @internal */\nexport type ErrorSignature<\n  name extends string = string,\n  parameters extends string = string,\n> = `error ${name}(${parameters})`\n\n/** @internal */\nexport type IsErrorSignature<signature extends string> =\n  signature extends ErrorSignature<infer name> ? IsName<name> : false\n\n/** @internal */\nexport type EventSignature<\n  name extends string = string,\n  parameters extends string = string,\n> = `event ${name}(${parameters})`\n\n/** @internal */\nexport type IsEventSignature<signature extends string> =\n  signature extends EventSignature<infer name> ? IsName<name> : false\n\n/** @internal */\nexport type FunctionSignature<\n  name extends string = string,\n  tail extends string = string,\n> = `function ${name}(${tail}`\nexport type IsFunctionSignature<signature> =\n  signature extends FunctionSignature<infer name>\n    ? IsName<name> extends true\n      ? signature extends ValidFunctionSignatures\n        ? true\n        : // Check that `Parameters` is not absorbing other types (e.g. `returns`)\n          signature extends `function ${string}(${infer parameters})`\n          ? parameters extends InvalidFunctionParameters\n            ? false\n            : true\n          : false\n      : false\n    : false\n/** @internal */\nexport type Scope = 'public' | 'external' // `internal` or `private` functions wouldn't make it to ABI so can ignore\n\n/** @internal */\nexport type Returns = `returns (${string})` | `returns(${string})`\n\n// Almost all valid function signatures, except `function ${string}(${infer parameters})` since `parameters` can absorb returns\n/** @internal */\nexport type ValidFunctionSignatures =\n  | `function ${string}()`\n  // basic\n  | `function ${string}() ${Returns}`\n  | `function ${string}() ${abitype.AbiStateMutability}`\n  | `function ${string}() ${Scope}`\n  // combinations\n  | `function ${string}() ${abitype.AbiStateMutability} ${Returns}`\n  | `function ${string}() ${Scope} ${Returns}`\n  | `function ${string}() ${Scope} ${abitype.AbiStateMutability}`\n  | `function ${string}() ${Scope} ${abitype.AbiStateMutability} ${Returns}`\n  // Parameters\n  | `function ${string}(${string}) ${Returns}`\n  | `function ${string}(${string}) ${abitype.AbiStateMutability}`\n  | `function ${string}(${string}) ${Scope}`\n  | `function ${string}(${string}) ${abitype.AbiStateMutability} ${Returns}`\n  | `function ${string}(${string}) ${Scope} ${Returns}`\n  | `function ${string}(${string}) ${Scope} ${abitype.AbiStateMutability}`\n  | `function ${string}(${string}) ${Scope} ${abitype.AbiStateMutability} ${Returns}`\n\n/** @internal */\nexport type StructSignature<\n  name extends string = string,\n  properties extends string = string,\n> = `struct ${name} {${properties}}`\n\n/** @internal */\nexport type IsStructSignature<signature extends string> =\n  signature extends StructSignature<infer name> ? IsName<name> : false\n\n/** @internal */\nexport type ConstructorSignature<tail extends string = string> =\n  `constructor(${tail}`\n\n/** @internal */\nexport type IsConstructorSignature<signature> =\n  signature extends ConstructorSignature\n    ? signature extends ValidConstructorSignatures\n      ? true\n      : false\n    : false\n\n/** @internal */\nexport type ValidConstructorSignatures =\n  | `constructor(${string})`\n  | `constructor(${string}) payable`\n\n/** @internal */\nexport type FallbackSignature<abiStateMutability extends '' | ' payable' = ''> =\n  `fallback() external${abiStateMutability}`\n\n/** @internal */\nexport type ReceiveSignature = 'receive() external payable'\n\n// TODO: Maybe use this for signature validation one day\n// https://twitter.com/devanshj__/status/1610423724708343808\n/** @internal */\nexport type IsSignature<type extends string> =\n  | (IsErrorSignature<type> extends true ? true : never)\n  | (IsEventSignature<type> extends true ? true : never)\n  | (IsFunctionSignature<type> extends true ? true : never)\n  | (IsStructSignature<type> extends true ? true : never)\n  | (IsConstructorSignature<type> extends true ? true : never)\n  | (type extends FallbackSignature ? true : never)\n  | (type extends ReceiveSignature ? true : never) extends infer condition\n  ? [condition] extends [never]\n    ? false\n    : true\n  : false\n\n/** @internal */\nexport type Signature<\n  string1 extends string,\n  string2 extends string | unknown = unknown,\n> = IsSignature<string1> extends true\n  ? string1\n  : string extends string1 // if exactly `string` (not narrowed), then pass through as valid\n    ? string1\n    : TypeErrorMessage<`Signature \"${string1}\" is invalid${string2 extends string\n        ? ` at position ${string2}`\n        : ''}.`>\n\n/** @internal */\nexport type Signatures<signatures extends readonly string[]> = {\n  [key in keyof signatures]: Signature<signatures[key], key>\n}\n\n/** @internal */\nexport type IsName<name extends string> = name extends ''\n  ? false\n  : ValidateName<name> extends name\n    ? true\n    : false\n\n/** @internal */\nexport type ValidateName<\n  name extends string,\n  checkCharacters extends boolean = false,\n> = name extends `${string}${' '}${string}`\n  ? TypeErrorMessage<`Identifier \"${name}\" cannot contain whitespace.`>\n  : IsSolidityKeyword<name> extends true\n    ? TypeErrorMessage<`\"${name}\" is a protected Solidity keyword.`>\n    : name extends `${number}`\n      ? TypeErrorMessage<`Identifier \"${name}\" cannot be a number string.`>\n      : name extends `${number}${string}`\n        ? TypeErrorMessage<`Identifier \"${name}\" cannot start with a number.`>\n        : checkCharacters extends true\n          ? IsValidCharacter<name> extends true\n            ? name\n            : TypeErrorMessage<`\"${name}\" contains invalid character.`>\n          : name\n\n/** @internal */\nexport type IsSolidityKeyword<type extends string> =\n  type extends SolidityKeywords ? true : false\n\n/** @internal */\nexport type SolidityKeywords =\n  | 'after'\n  | 'alias'\n  | 'anonymous'\n  | 'apply'\n  | 'auto'\n  | 'byte'\n  | 'calldata'\n  | 'case'\n  | 'catch'\n  | 'constant'\n  | 'copyof'\n  | 'default'\n  | 'defined'\n  | 'error'\n  | 'event'\n  | 'external'\n  | 'false'\n  | 'final'\n  | 'function'\n  | 'immutable'\n  | 'implements'\n  | 'in'\n  | 'indexed'\n  | 'inline'\n  | 'internal'\n  | 'let'\n  | 'mapping'\n  | 'match'\n  | 'memory'\n  | 'mutable'\n  | 'null'\n  | 'of'\n  | 'override'\n  | 'partial'\n  | 'private'\n  | 'promise'\n  | 'public'\n  | 'pure'\n  | 'reference'\n  | 'relocatable'\n  | 'return'\n  | 'returns'\n  | 'sizeof'\n  | 'static'\n  | 'storage'\n  | 'struct'\n  | 'super'\n  | 'supports'\n  | 'switch'\n  | 'this'\n  | 'true'\n  | 'try'\n  | 'typedef'\n  | 'typeof'\n  | 'var'\n  | 'view'\n  | 'virtual'\n  | `address${`[${string}]` | ''}`\n  | `bool${`[${string}]` | ''}`\n  | `string${`[${string}]` | ''}`\n  | `tuple${`[${string}]` | ''}`\n  | `bytes${number | ''}${`[${string}]` | ''}`\n  | `${'u' | ''}int${number | ''}${`[${string}]` | ''}`\n\n/** @internal */\nexport type IsValidCharacter<character extends string> =\n  character extends `${ValidCharacters}${infer tail}`\n    ? tail extends ''\n      ? true\n      : IsValidCharacter<tail>\n    : false\n\n// biome-ignore format: no formatting\n/** @internal */\nexport type ValidCharacters =\n  // uppercase letters\n  | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z'\n  // lowercase letters\n  | 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z'\n  // numbers\n  | '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'\n  // special characters\n  | '_' | '$'\n\n// Template string inference can absorb `returns`:\n// type Result = `function foo(string) return s (uint256)` extends `function ${string}(${infer Parameters})` ? Parameters : never\n// //   ^? type Result = \"string ) return s (uint256\"\n// So we need to validate against `returns` keyword with all combinations of whitespace\n/** @internal */\nexport type InvalidFunctionParameters =\n  | `${string}${MangledReturns} (${string}`\n  | `${string}) ${MangledReturns}${string}`\n  | `${string})${string}${MangledReturns}${string}(${string}`\n\n// r_e_t_u_r_n_s\n/** @internal */\nexport type MangledReturns =\n  // Single\n  | `r${string}eturns`\n  | `re${string}turns`\n  | `ret${string}urns`\n  | `retu${string}rns`\n  | `retur${string}ns`\n  | `return${string}s`\n  // Double\n  // `r_e*`\n  | `r${string}e${string}turns`\n  | `r${string}et${string}urns`\n  | `r${string}etu${string}rns`\n  | `r${string}etur${string}ns`\n  | `r${string}eturn${string}s`\n  // `re_t*`\n  | `re${string}t${string}urns`\n  | `re${string}tu${string}rns`\n  | `re${string}tur${string}ns`\n  | `re${string}turn${string}s`\n  // `ret_u*`\n  | `ret${string}u${string}rns`\n  | `ret${string}ur${string}ns`\n  | `ret${string}urn${string}s`\n  // `retu_r*`\n  | `retu${string}r${string}ns`\n  | `retu${string}rn${string}s`\n  // `retur_n*`\n  | `retur${string}n${string}s`\n  // Triple\n  // `r_e_t*`\n  | `r${string}e${string}t${string}urns`\n  | `r${string}e${string}tu${string}rns`\n  | `r${string}e${string}tur${string}ns`\n  | `r${string}e${string}turn${string}s`\n  // `re_t_u*`\n  | `re${string}t${string}u${string}rns`\n  | `re${string}t${string}ur${string}ns`\n  | `re${string}t${string}urn${string}s`\n  // `ret_u_r*`\n  | `ret${string}u${string}r${string}ns`\n  | `ret${string}u${string}rn${string}s`\n  // `retu_r_n*`\n  | `retu${string}r${string}n${string}s`\n  // Quadruple\n  // `r_e_t_u*`\n  | `r${string}e${string}t${string}u${string}rns`\n  | `r${string}e${string}t${string}ur${string}ns`\n  | `r${string}e${string}t${string}urn${string}s`\n  // `re_t_u_r*`\n  | `re${string}t${string}u${string}r${string}ns`\n  | `re${string}t${string}u${string}rn${string}s`\n  // `ret_u_r_n*`\n  | `ret${string}u${string}r${string}n${string}s`\n  // Quintuple\n  // `r_e_t_u_r*`\n  | `r${string}e${string}t${string}u${string}r${string}ns`\n  | `r${string}e${string}t${string}u${string}rn${string}s`\n  // `re_t_u_r_n*`\n  | `re${string}t${string}u${string}r${string}n${string}s`\n  // Sextuple\n  // `r_e_t_u_r_n_s`\n  | `r${string}e${string}t${string}u${string}r${string}n${string}s`\n\n/** @internal */\nexport type Widen<type> =\n  | ([unknown] extends [type] ? unknown : never)\n  | (type extends Function ? type : never)\n  | (type extends abitype.ResolvedRegister['bigIntType'] ? bigint : never)\n  | (type extends boolean ? boolean : never)\n  | (type extends abitype.ResolvedRegister['intType'] ? number : never)\n  | (type extends string\n      ? type extends abitype.ResolvedRegister['addressType']\n        ? abitype.ResolvedRegister['addressType']\n        : type extends abitype.ResolvedRegister['bytesType']['inputs']\n          ? abitype.ResolvedRegister['bytesType']\n          : string\n      : never)\n  | (type extends readonly [] ? readonly [] : never)\n  | (type extends Record<string, unknown>\n      ? { [K in keyof type]: Widen<type[K]> }\n      : never)\n  | (type extends { length: number }\n      ? {\n          [K in keyof type]: Widen<type[K]>\n        } extends infer Val extends readonly unknown[]\n        ? readonly [...Val]\n        : never\n      : never)\n\n/** @internal */\nexport function normalizeSignature(signature: string): string {\n  let active = true\n  let current = ''\n  let level = 0\n  let result = ''\n  let valid = false\n\n  for (let i = 0; i < signature.length; i++) {\n    const char = signature[i]!\n\n    // If the character is a separator, we want to reactivate.\n    if (['(', ')', ','].includes(char)) active = true\n\n    // If the character is a \"level\" token, we want to increment/decrement.\n    if (char === '(') level++\n    if (char === ')') level--\n\n    // If we aren't active, we don't want to mutate the result.\n    if (!active) continue\n\n    // If level === 0, we are at the definition level.\n    if (level === 0) {\n      if (char === ' ' && ['event', 'function', 'error', ''].includes(result))\n        result = ''\n      else {\n        result += char\n\n        // If we are at the end of the definition, we must be finished.\n        if (char === ')') {\n          valid = true\n          break\n        }\n      }\n\n      continue\n    }\n\n    // Ignore spaces\n    if (char === ' ') {\n      // If the previous character is a separator, and the current section isn't empty, we want to deactivate.\n      if (signature[i - 1] !== ',' && current !== ',' && current !== ',(') {\n        current = ''\n        active = false\n      }\n      continue\n    }\n\n    result += char\n    current += char\n  }\n\n  if (!valid) throw new Errors.BaseError('Unable to normalize signature.')\n\n  return result\n}\n\n/** @internal */\nexport declare namespace normalizeSignature {\n  export type ErrorType = Errors.BaseError | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function isArgOfType(\n  arg: unknown,\n  abiParameter: AbiParameters.Parameter,\n): boolean {\n  const argType = typeof arg\n  const abiParameterType = abiParameter.type\n  switch (abiParameterType) {\n    case 'address':\n      return Address.validate(arg as Address.Address, { strict: false })\n    case 'bool':\n      return argType === 'boolean'\n    case 'function':\n      return argType === 'string'\n    case 'string':\n      return argType === 'string'\n    default: {\n      if (abiParameterType === 'tuple' && 'components' in abiParameter)\n        return Object.values(abiParameter.components).every(\n          (component, index) => {\n            return isArgOfType(\n              Object.values(arg as unknown[] | Record<string, unknown>)[index],\n              component as AbiParameters.Parameter,\n            )\n          },\n        )\n\n      // `(u)int<M>`: (un)signed integer type of `M` bits, `0 < M <= 256`, `M % 8 == 0`\n      // https://regexr.com/6v8hp\n      if (\n        /^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(\n          abiParameterType,\n        )\n      )\n        return argType === 'number' || argType === 'bigint'\n\n      // `bytes<M>`: binary type of `M` bytes, `0 < M <= 32`\n      // https://regexr.com/6va55\n      if (/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(abiParameterType))\n        return argType === 'string' || arg instanceof Uint8Array\n\n      // fixed-length (`<type>[M]`) and dynamic (`<type>[]`) arrays\n      // https://regexr.com/6va6i\n      if (/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(abiParameterType)) {\n        return (\n          Array.isArray(arg) &&\n          arg.every((x: unknown) =>\n            isArgOfType(x, {\n              ...abiParameter,\n              // Pop off `[]` or `[M]` from end of type\n              type: abiParameterType.replace(/(\\[[0-9]{0,}\\])$/, ''),\n            } as AbiParameters.Parameter),\n          )\n        )\n      }\n\n      return false\n    }\n  }\n}\n\n/** @internal */\nexport function getAmbiguousTypes(\n  sourceParameters: readonly AbiParameters.Parameter[],\n  targetParameters: readonly AbiParameters.Parameter[],\n  args: ExtractArgs,\n): AbiParameters.Parameter['type'][] | undefined {\n  for (const parameterIndex in sourceParameters) {\n    const sourceParameter = sourceParameters[parameterIndex]!\n    const targetParameter = targetParameters[parameterIndex]!\n\n    if (\n      sourceParameter.type === 'tuple' &&\n      targetParameter.type === 'tuple' &&\n      'components' in sourceParameter &&\n      'components' in targetParameter\n    )\n      return getAmbiguousTypes(\n        sourceParameter.components,\n        targetParameter.components,\n        (args as any)[parameterIndex],\n      )\n\n    const types = [sourceParameter.type, targetParameter.type]\n\n    const ambiguous = (() => {\n      if (types.includes('address') && types.includes('bytes20')) return true\n      if (types.includes('address') && types.includes('string'))\n        return Address.validate(args[parameterIndex] as Address.Address, {\n          strict: false,\n        })\n      if (types.includes('address') && types.includes('bytes'))\n        return Address.validate(args[parameterIndex] as Address.Address, {\n          strict: false,\n        })\n      return false\n    })()\n\n    if (ambiguous) return types\n  }\n\n  return\n}\n","import * as abitype from 'abitype'\nimport type * as Abi from './Abi.js'\nimport * as Errors from './Errors.js'\nimport * as Hash from './Hash.js'\nimport * as Hex from './Hex.js'\nimport * as internal from './internal/abiItem.js'\nimport type { UnionCompute } from './internal/types.js'\n\n/** Root type for an item on an {@link ox#Abi.Abi}. */\nexport type AbiItem = Abi.Abi[number]\n\n/**\n * Extracts an {@link ox#AbiItem.AbiItem} item from an {@link ox#Abi.Abi}, given a name.\n *\n * @example\n * ```ts twoslash\n * import { Abi, AbiItem } from 'ox'\n *\n * const abi = Abi.from([\n *   'error Foo(string)',\n *   'function foo(string)',\n *   'event Bar(uint256)',\n * ])\n *\n * type Foo = AbiItem.FromAbi<typeof abi, 'Foo'>\n * //   ^?\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n */\nexport type FromAbi<\n  abi extends Abi.Abi,\n  name extends ExtractNames<abi>,\n> = Extract<abi[number], { name: name }>\n\n/**\n * Extracts the names of all {@link ox#AbiItem.AbiItem} items in an {@link ox#Abi.Abi}.\n *\n * @example\n * ```ts twoslash\n * import { Abi, AbiItem } from 'ox'\n *\n * const abi = Abi.from([\n *   'error Foo(string)',\n *   'function foo(string)',\n *   'event Bar(uint256)',\n * ])\n *\n * type names = AbiItem.Name<typeof abi>\n * //   ^?\n *\n * ```\n */\nexport type Name<abi extends Abi.Abi | readonly unknown[] = Abi.Abi> =\n  abi extends Abi.Abi ? ExtractNames<abi> : string\n\nexport type ExtractNames<abi extends Abi.Abi> = Extract<\n  abi[number],\n  { name: string }\n>['name']\n\n/**\n * Formats an {@link ox#AbiItem.AbiItem} into a **Human Readable ABI Item**.\n *\n * @example\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const formatted = AbiItem.format({\n *   type: 'function',\n *   name: 'approve',\n *   stateMutability: 'nonpayable',\n *   inputs: [\n *     {\n *       name: 'spender',\n *       type: 'address',\n *     },\n *     {\n *       name: 'amount',\n *       type: 'uint256',\n *     },\n *   ],\n *   outputs: [{ type: 'bool' }],\n * })\n *\n * formatted\n * //    ^?\n *\n *\n * ```\n *\n * @param abiItem - The ABI Item to format.\n * @returns The formatted ABI Item  .\n */\nexport function format<const abiItem extends AbiItem>(\n  abiItem: abiItem | AbiItem,\n): abitype.FormatAbiItem<abiItem> {\n  return abitype.formatAbiItem(abiItem) as never\n}\n\nexport declare namespace format {\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/**\n * Parses an arbitrary **JSON ABI Item** or **Human Readable ABI Item** into a typed {@link ox#AbiItem.AbiItem}.\n *\n * @example\n * ### JSON ABIs\n *\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const abiItem = AbiItem.from({\n *   type: 'function',\n *   name: 'approve',\n *   stateMutability: 'nonpayable',\n *   inputs: [\n *     {\n *       name: 'spender',\n *       type: 'address',\n *     },\n *     {\n *       name: 'amount',\n *       type: 'uint256',\n *     },\n *   ],\n *   outputs: [{ type: 'bool' }],\n * })\n *\n * abiItem\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Human Readable ABIs\n *\n * A Human Readable ABI can be parsed into a typed ABI object:\n *\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const abiItem = AbiItem.from(\n *   'function approve(address spender, uint256 amount) returns (bool)' // [!code hl]\n * )\n *\n * abiItem\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * It is possible to specify `struct`s along with your definitions:\n *\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const abiItem = AbiItem.from([\n *   'struct Foo { address spender; uint256 amount; }', // [!code hl]\n *   'function approve(Foo foo) returns (bool)',\n * ])\n *\n * abiItem\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n *\n *\n * @param abiItem - The ABI Item to parse.\n * @returns The typed ABI Item.\n */\nexport function from<\n  const abiItem extends AbiItem | string | readonly string[],\n>(\n  abiItem: (abiItem | AbiItem | string | readonly string[]) &\n    (\n      | (abiItem extends string ? internal.Signature<abiItem> : never)\n      | (abiItem extends readonly string[]\n          ? internal.Signatures<abiItem>\n          : never)\n      | AbiItem\n    ),\n  options: from.Options = {},\n): from.ReturnType<abiItem> {\n  const { prepare = true } = options\n  const item = (() => {\n    if (Array.isArray(abiItem)) return abitype.parseAbiItem(abiItem)\n    if (typeof abiItem === 'string')\n      return abitype.parseAbiItem(abiItem as never)\n    return abiItem\n  })() as AbiItem\n  return {\n    ...item,\n    ...(prepare ? { hash: getSignatureHash(item) } : {}),\n  } as never\n}\n\nexport declare namespace from {\n  type Options = {\n    /**\n     * Whether or not to prepare the extracted item (optimization for encoding performance).\n     * When `true`, the `hash` property is computed and included in the returned value.\n     *\n     * @default true\n     */\n    prepare?: boolean | undefined\n  }\n\n  type ReturnType<abiItem extends AbiItem | string | readonly string[]> =\n    abiItem extends string\n      ? abitype.ParseAbiItem<abiItem>\n      : abiItem extends readonly string[]\n        ? abitype.ParseAbiItem<abiItem>\n        : abiItem\n\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/**\n * Extracts an {@link ox#AbiItem.AbiItem} from an {@link ox#Abi.Abi} given a name and optional arguments.\n *\n * @example\n * ABI Items can be extracted by their name using the `name` option:\n *\n * ```ts twoslash\n * import { Abi, AbiItem } from 'ox'\n *\n * const abi = Abi.from([\n *   'function foo()',\n *   'event Transfer(address owner, address to, uint256 tokenId)',\n *   'function bar(string a) returns (uint256 x)',\n * ])\n *\n * const item = AbiItem.fromAbi(abi, 'Transfer') // [!code focus]\n * //    ^?\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Extracting by Selector\n *\n * ABI Items can be extract by their selector when {@link ox#Hex.Hex} is provided to `name`.\n *\n * ```ts twoslash\n * import { Abi, AbiItem } from 'ox'\n *\n * const abi = Abi.from([\n *   'function foo()',\n *   'event Transfer(address owner, address to, uint256 tokenId)',\n *   'function bar(string a) returns (uint256 x)',\n * ])\n * const item = AbiItem.fromAbi(abi, '0x095ea7b3') // [!code focus]\n * //    ^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * :::note\n *\n * Extracting via a hex selector is useful when extracting an ABI Item from an `eth_call` RPC response,\n * a Transaction `input`, or from Event Log `topics`.\n *\n * :::\n *\n * @param abi - The ABI to extract from.\n * @param name - The name (or selector) of the ABI item to extract.\n * @param options - Extraction options.\n * @returns The ABI item.\n */\nexport function fromAbi<\n  const abi extends Abi.Abi | readonly unknown[],\n  name extends Name<abi>,\n  const args extends internal.ExtractArgs<abi, name> | undefined = undefined,\n  //\n  allNames = Name<abi>,\n>(\n  abi: abi | Abi.Abi | readonly unknown[],\n  name: Hex.Hex | (name extends allNames ? name : never),\n  options?: fromAbi.Options<abi, name, args>,\n): fromAbi.ReturnType<abi, name, args> {\n  const { args = [], prepare = true } = (options ??\n    {}) as unknown as fromAbi.Options\n\n  const isSelector = Hex.validate(name, { strict: false })\n  const abiItems = (abi as Abi.Abi).filter((abiItem) => {\n    if (isSelector) {\n      if (abiItem.type === 'function' || abiItem.type === 'error')\n        return getSelector(abiItem) === Hex.slice(name, 0, 4)\n      if (abiItem.type === 'event') return getSignatureHash(abiItem) === name\n      return false\n    }\n    return 'name' in abiItem && abiItem.name === name\n  })\n\n  if (abiItems.length === 0) throw new NotFoundError({ name: name as string })\n  if (abiItems.length === 1)\n    return {\n      ...abiItems[0],\n      ...(prepare ? { hash: getSignatureHash(abiItems[0]!) } : {}),\n    } as never\n\n  let matchedAbiItem: AbiItem | undefined = undefined\n  for (const abiItem of abiItems) {\n    if (!('inputs' in abiItem)) continue\n    if (!args || args.length === 0) {\n      if (!abiItem.inputs || abiItem.inputs.length === 0)\n        return {\n          ...abiItem,\n          ...(prepare ? { hash: getSignatureHash(abiItem) } : {}),\n        } as never\n      continue\n    }\n    if (!abiItem.inputs) continue\n    if (abiItem.inputs.length === 0) continue\n    if (abiItem.inputs.length !== args.length) continue\n    const matched = args.every((arg, index) => {\n      const abiParameter = 'inputs' in abiItem && abiItem.inputs![index]\n      if (!abiParameter) return false\n      return internal.isArgOfType(arg, abiParameter)\n    })\n    if (matched) {\n      // Check for ambiguity against already matched parameters (e.g. `address` vs `bytes20`).\n      if (\n        matchedAbiItem &&\n        'inputs' in matchedAbiItem &&\n        matchedAbiItem.inputs\n      ) {\n        const ambiguousTypes = internal.getAmbiguousTypes(\n          abiItem.inputs,\n          matchedAbiItem.inputs,\n          args as readonly unknown[],\n        )\n        if (ambiguousTypes)\n          throw new AmbiguityError(\n            {\n              abiItem,\n              type: ambiguousTypes[0]!,\n            },\n            {\n              abiItem: matchedAbiItem,\n              type: ambiguousTypes[1]!,\n            },\n          )\n      }\n\n      matchedAbiItem = abiItem\n    }\n  }\n\n  const abiItem = (() => {\n    if (matchedAbiItem) return matchedAbiItem\n    const [abiItem, ...overloads] = abiItems\n    return { ...abiItem!, overloads }\n  })()\n\n  if (!abiItem) throw new NotFoundError({ name: name as string })\n  return {\n    ...abiItem,\n    ...(prepare ? { hash: getSignatureHash(abiItem) } : {}),\n  } as never\n}\n\nexport declare namespace fromAbi {\n  type Options<\n    abi extends Abi.Abi | readonly unknown[] = Abi.Abi,\n    name extends Name<abi> = Name<abi>,\n    args extends\n      | internal.ExtractArgs<abi, name>\n      | undefined = internal.ExtractArgs<abi, name>,\n    ///\n    allArgs = internal.ExtractArgs<abi, name>,\n  > = {\n    /**\n     * Whether or not to prepare the extracted item (optimization for encoding performance).\n     * When `true`, the `hash` property is computed and included in the returned value.\n     *\n     * @default true\n     */\n    prepare?: boolean | undefined\n  } & UnionCompute<\n    readonly [] extends allArgs\n      ? {\n          args?:\n            | allArgs // show all options\n            // infer value, widen inferred value of `args` conditionally to match `allArgs`\n            | (abi extends Abi.Abi\n                ? args extends allArgs\n                  ? internal.Widen<args>\n                  : never\n                : never)\n            | undefined\n        }\n      : {\n          args?:\n            | allArgs // show all options\n            | (internal.Widen<args> & (args extends allArgs ? unknown : never)) // infer value, widen inferred value of `args` match `allArgs` (e.g. avoid union `args: readonly [123n] | readonly [bigint]`)\n            | undefined\n        }\n  >\n\n  type ReturnType<\n    abi extends Abi.Abi | readonly unknown[] = Abi.Abi,\n    name extends Name<abi> = Name<abi>,\n    args extends\n      | internal.ExtractArgs<abi, name>\n      | undefined = internal.ExtractArgs<abi, name>,\n    fallback = AbiItem,\n  > = abi extends Abi.Abi\n    ? Abi.Abi extends abi\n      ? fallback\n      : internal.ExtractForArgs<\n          abi,\n          name,\n          args extends internal.ExtractArgs<abi, name>\n            ? args\n            : internal.ExtractArgs<abi, name>\n        >\n    : fallback\n\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/**\n * Computes the [4-byte selector](https://solidity-by-example.org/function-selector/) for an {@link ox#AbiItem.AbiItem}.\n *\n * Useful for computing function selectors for calldata.\n *\n * @example\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const selector = AbiItem.getSelector('function ownerOf(uint256 tokenId)')\n * // @log: '0x6352211e'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const selector = AbiItem.getSelector({\n *   inputs: [{ type: 'uint256' }],\n *   name: 'ownerOf',\n *   outputs: [],\n *   stateMutability: 'view',\n *   type: 'function'\n * })\n * // @log: '0x6352211e'\n * ```\n *\n * @param abiItem - The ABI item to compute the selector for. Can be a signature or an ABI item for an error, event, function, etc.\n * @returns The first 4 bytes of the {@link ox#Hash.(keccak256:function)} hash of the function signature.\n */\nexport function getSelector(abiItem: string | AbiItem): Hex.Hex {\n  return Hex.slice(getSignatureHash(abiItem), 0, 4)\n}\n\nexport declare namespace getSelector {\n  type ErrorType =\n    | getSignatureHash.ErrorType\n    | Hex.slice.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Computes the stringified signature for a given {@link ox#AbiItem.AbiItem}.\n *\n * @example\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const signature = AbiItem.getSignature('function ownerOf(uint256 tokenId)')\n * // @log: 'ownerOf(uint256)'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const signature = AbiItem.getSignature({\n *   name: 'ownerOf',\n *   type: 'function',\n *   inputs: [{ name: 'tokenId', type: 'uint256' }],\n *   outputs: [],\n *   stateMutability: 'view',\n * })\n * // @log: 'ownerOf(uint256)'\n * ```\n *\n * @param abiItem - The ABI Item to compute the signature for.\n * @returns The stringified signature of the ABI Item.\n */\nexport function getSignature(abiItem: string | AbiItem): string {\n  const signature = (() => {\n    if (typeof abiItem === 'string') return abiItem\n    return abitype.formatAbiItem(abiItem)\n  })()\n  return internal.normalizeSignature(signature)\n}\n\nexport declare namespace getSignature {\n  type ErrorType =\n    | internal.normalizeSignature.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Computes the signature hash for an {@link ox#AbiItem.AbiItem}.\n *\n * Useful for computing Event Topic values.\n *\n * @example\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const hash = AbiItem.getSignatureHash('event Transfer(address indexed from, address indexed to, uint256 amount)')\n * // @log: '0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const hash = AbiItem.getSignatureHash({\n *   name: 'Transfer',\n *   type: 'event',\n *   inputs: [\n *     { name: 'from', type: 'address', indexed: true },\n *     { name: 'to', type: 'address', indexed: true },\n *     { name: 'amount', type: 'uint256', indexed: false },\n *   ],\n * })\n * // @log: '0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef'\n * ```\n *\n * @param abiItem - The ABI Item to compute the signature hash for.\n * @returns The {@link ox#Hash.(keccak256:function)} hash of the ABI item's signature.\n */\nexport function getSignatureHash(abiItem: string | AbiItem): Hex.Hex {\n  if (typeof abiItem !== 'string' && 'hash' in abiItem && abiItem.hash)\n    return abiItem.hash as Hex.Hex\n  return Hash.keccak256(Hex.fromString(getSignature(abiItem)))\n}\n\nexport declare namespace getSignatureHash {\n  type ErrorType =\n    | getSignature.ErrorType\n    | Hash.keccak256.ErrorType\n    | Hex.fromString.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * Throws when ambiguous types are found on overloaded ABI items.\n *\n * @example\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from(['function foo(address)', 'function foo(bytes20)'])\n * AbiFunction.fromAbi(foo, 'foo', {\n *   args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n * })\n * // @error: AbiItem.AmbiguityError: Found ambiguous types in overloaded ABI Items.\n * // @error: `bytes20` in `foo(bytes20)`, and\n * // @error: `address` in `foo(address)`\n * // @error: These types encode differently and cannot be distinguished at runtime.\n * // @error: Remove one of the ambiguous items in the ABI.\n * ```\n *\n * ### Solution\n *\n * Remove one of the ambiguous types from the ABI.\n *\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n *   'function foo(address)',\n *   'function foo(bytes20)' // [!code --]\n * ])\n * AbiFunction.fromAbi(foo, 'foo', {\n *   args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n * })\n * // @error: AbiItem.AmbiguityError: Found ambiguous types in overloaded ABI Items.\n * // @error: `bytes20` in `foo(bytes20)`, and\n * // @error: `address` in `foo(address)`\n * // @error: These types encode differently and cannot be distinguished at runtime.\n * // @error: Remove one of the ambiguous items in the ABI.\n * ```\n */\nexport class AmbiguityError extends Errors.BaseError {\n  override readonly name = 'AbiItem.AmbiguityError'\n  constructor(\n    x: { abiItem: Abi.Abi[number]; type: string },\n    y: { abiItem: Abi.Abi[number]; type: string },\n  ) {\n    super('Found ambiguous types in overloaded ABI Items.', {\n      metaMessages: [\n        // TODO: abitype to add support for signature-formatted ABI items.\n        `\\`${x.type}\\` in \\`${internal.normalizeSignature(abitype.formatAbiItem(x.abiItem))}\\`, and`,\n        `\\`${y.type}\\` in \\`${internal.normalizeSignature(abitype.formatAbiItem(y.abiItem))}\\``,\n        '',\n        'These types encode differently and cannot be distinguished at runtime.',\n        'Remove one of the ambiguous items in the ABI.',\n      ],\n    })\n  }\n}\n\n/**\n * Throws when an ABI item is not found in the ABI.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n *   'function foo(address)',\n *   'function bar(uint)'\n * ])\n * AbiFunction.fromAbi(foo, 'baz')\n * // @error: AbiItem.NotFoundError: ABI function with name \"baz\" not found.\n * ```\n *\n * ### Solution\n *\n * Ensure the ABI item exists on the ABI.\n *\n * ```ts twoslash\n * // @noErrors\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n *   'function foo(address)',\n *   'function bar(uint)',\n *   'function baz(bool)' // [!code ++]\n * ])\n * AbiFunction.fromAbi(foo, 'baz')\n * ```\n */\nexport class NotFoundError extends Errors.BaseError {\n  override readonly name = 'AbiItem.NotFoundError'\n  constructor({\n    name,\n    data,\n    type = 'item',\n  }: {\n    name?: string | undefined\n    data?: Hex.Hex | undefined\n    type?: string | undefined\n  }) {\n    const selector = (() => {\n      if (name) return ` with name \"${name}\"`\n      if (data) return ` with data \"${data}\"`\n      return ''\n    })()\n    super(`ABI ${type}${selector} not found.`)\n  }\n}\n\n/**\n * Throws when the selector size is invalid.\n *\n * @example\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n *   'function foo(address)',\n *   'function bar(uint)'\n * ])\n * AbiFunction.fromAbi(foo, '0xaaa')\n * // @error: AbiItem.InvalidSelectorSizeError: Selector size is invalid. Expected 4 bytes. Received 2 bytes (\"0xaaa\").\n * ```\n *\n * ### Solution\n *\n * Ensure the selector size is 4 bytes.\n *\n * ```ts twoslash\n * // @noErrors\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n *   'function foo(address)',\n *   'function bar(uint)'\n * ])\n * AbiFunction.fromAbi(foo, '0x7af82b1a')\n * ```\n */\nexport class InvalidSelectorSizeError extends Errors.BaseError {\n  override readonly name = 'AbiItem.InvalidSelectorSizeError'\n  constructor({ data }: { data: Hex.Hex }) {\n    super(\n      `Selector size is invalid. Expected 4 bytes. Received ${Hex.size(data)} bytes (\"${data}\").`,\n    )\n  }\n}\n","export const arrayRegex = /^(.*)\\[([0-9]*)\\]$/\n\n// `bytes<M>`: binary type of `M` bytes, `0 < M <= 32`\n// https://regexr.com/6va55\nexport const bytesRegex = /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/\n\n// `(u)int<M>`: (un)signed integer type of `M` bits, `0 < M <= 256`, `M % 8 == 0`\n// https://regexr.com/6v8hp\nexport const integerRegex =\n  /^(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)?$/\n\nexport const maxInt8 = 2n ** (8n - 1n) - 1n\nexport const maxInt16 = 2n ** (16n - 1n) - 1n\nexport const maxInt24 = 2n ** (24n - 1n) - 1n\nexport const maxInt32 = 2n ** (32n - 1n) - 1n\nexport const maxInt40 = 2n ** (40n - 1n) - 1n\nexport const maxInt48 = 2n ** (48n - 1n) - 1n\nexport const maxInt56 = 2n ** (56n - 1n) - 1n\nexport const maxInt64 = 2n ** (64n - 1n) - 1n\nexport const maxInt72 = 2n ** (72n - 1n) - 1n\nexport const maxInt80 = 2n ** (80n - 1n) - 1n\nexport const maxInt88 = 2n ** (88n - 1n) - 1n\nexport const maxInt96 = 2n ** (96n - 1n) - 1n\nexport const maxInt104 = 2n ** (104n - 1n) - 1n\nexport const maxInt112 = 2n ** (112n - 1n) - 1n\nexport const maxInt120 = 2n ** (120n - 1n) - 1n\nexport const maxInt128 = 2n ** (128n - 1n) - 1n\nexport const maxInt136 = 2n ** (136n - 1n) - 1n\nexport const maxInt144 = 2n ** (144n - 1n) - 1n\nexport const maxInt152 = 2n ** (152n - 1n) - 1n\nexport const maxInt160 = 2n ** (160n - 1n) - 1n\nexport const maxInt168 = 2n ** (168n - 1n) - 1n\nexport const maxInt176 = 2n ** (176n - 1n) - 1n\nexport const maxInt184 = 2n ** (184n - 1n) - 1n\nexport const maxInt192 = 2n ** (192n - 1n) - 1n\nexport const maxInt200 = 2n ** (200n - 1n) - 1n\nexport const maxInt208 = 2n ** (208n - 1n) - 1n\nexport const maxInt216 = 2n ** (216n - 1n) - 1n\nexport const maxInt224 = 2n ** (224n - 1n) - 1n\nexport const maxInt232 = 2n ** (232n - 1n) - 1n\nexport const maxInt240 = 2n ** (240n - 1n) - 1n\nexport const maxInt248 = 2n ** (248n - 1n) - 1n\nexport const maxInt256 = 2n ** (256n - 1n) - 1n\n\nexport const minInt8 = -(2n ** (8n - 1n))\nexport const minInt16 = -(2n ** (16n - 1n))\nexport const minInt24 = -(2n ** (24n - 1n))\nexport const minInt32 = -(2n ** (32n - 1n))\nexport const minInt40 = -(2n ** (40n - 1n))\nexport const minInt48 = -(2n ** (48n - 1n))\nexport const minInt56 = -(2n ** (56n - 1n))\nexport const minInt64 = -(2n ** (64n - 1n))\nexport const minInt72 = -(2n ** (72n - 1n))\nexport const minInt80 = -(2n ** (80n - 1n))\nexport const minInt88 = -(2n ** (88n - 1n))\nexport const minInt96 = -(2n ** (96n - 1n))\nexport const minInt104 = -(2n ** (104n - 1n))\nexport const minInt112 = -(2n ** (112n - 1n))\nexport const minInt120 = -(2n ** (120n - 1n))\nexport const minInt128 = -(2n ** (128n - 1n))\nexport const minInt136 = -(2n ** (136n - 1n))\nexport const minInt144 = -(2n ** (144n - 1n))\nexport const minInt152 = -(2n ** (152n - 1n))\nexport const minInt160 = -(2n ** (160n - 1n))\nexport const minInt168 = -(2n ** (168n - 1n))\nexport const minInt176 = -(2n ** (176n - 1n))\nexport const minInt184 = -(2n ** (184n - 1n))\nexport const minInt192 = -(2n ** (192n - 1n))\nexport const minInt200 = -(2n ** (200n - 1n))\nexport const minInt208 = -(2n ** (208n - 1n))\nexport const minInt216 = -(2n ** (216n - 1n))\nexport const minInt224 = -(2n ** (224n - 1n))\nexport const minInt232 = -(2n ** (232n - 1n))\nexport const minInt240 = -(2n ** (240n - 1n))\nexport const minInt248 = -(2n ** (248n - 1n))\nexport const minInt256 = -(2n ** (256n - 1n))\n\nexport const maxUint8 = 2n ** 8n - 1n\nexport const maxUint16 = 2n ** 16n - 1n\nexport const maxUint24 = 2n ** 24n - 1n\nexport const maxUint32 = 2n ** 32n - 1n\nexport const maxUint40 = 2n ** 40n - 1n\nexport const maxUint48 = 2n ** 48n - 1n\nexport const maxUint56 = 2n ** 56n - 1n\nexport const maxUint64 = 2n ** 64n - 1n\nexport const maxUint72 = 2n ** 72n - 1n\nexport const maxUint80 = 2n ** 80n - 1n\nexport const maxUint88 = 2n ** 88n - 1n\nexport const maxUint96 = 2n ** 96n - 1n\nexport const maxUint104 = 2n ** 104n - 1n\nexport const maxUint112 = 2n ** 112n - 1n\nexport const maxUint120 = 2n ** 120n - 1n\nexport const maxUint128 = 2n ** 128n - 1n\nexport const maxUint136 = 2n ** 136n - 1n\nexport const maxUint144 = 2n ** 144n - 1n\nexport const maxUint152 = 2n ** 152n - 1n\nexport const maxUint160 = 2n ** 160n - 1n\nexport const maxUint168 = 2n ** 168n - 1n\nexport const maxUint176 = 2n ** 176n - 1n\nexport const maxUint184 = 2n ** 184n - 1n\nexport const maxUint192 = 2n ** 192n - 1n\nexport const maxUint200 = 2n ** 200n - 1n\nexport const maxUint208 = 2n ** 208n - 1n\nexport const maxUint216 = 2n ** 216n - 1n\nexport const maxUint224 = 2n ** 224n - 1n\nexport const maxUint232 = 2n ** 232n - 1n\nexport const maxUint240 = 2n ** 240n - 1n\nexport const maxUint248 = 2n ** 248n - 1n\nexport const maxUint256 = 2n ** 256n - 1n\n","import type {\n  AbiParameter,\n  AbiParameterKind,\n  AbiParameterToPrimitiveType,\n  AbiParametersToPrimitiveTypes,\n} from 'abitype'\nimport * as AbiParameters from '../AbiParameters.js'\nimport * as Address from '../Address.js'\nimport * as Bytes from '../Bytes.js'\nimport * as Errors from '../Errors.js'\nimport * as Hex from '../Hex.js'\nimport { integerRegex } from '../Solidity.js'\nimport type * as Cursor from './cursor.js'\nimport type { Compute, IsNarrowable, UnionToIntersection } from './types.js'\n\n/** @internal */\nexport type ParameterToPrimitiveType<\n  abiParameter extends AbiParameter | { name: string; type: unknown },\n  abiParameterKind extends AbiParameterKind = AbiParameterKind,\n> = AbiParameterToPrimitiveType<abiParameter, abiParameterKind>\n\n/** @internal */\nexport type PreparedParameter = { dynamic: boolean; encoded: Hex.Hex }\n\n/** @internal */\nexport type ToObject<\n  parameters extends readonly AbiParameter[],\n  kind extends AbiParameterKind = AbiParameterKind,\n> = IsNarrowable<parameters, AbiParameters.AbiParameters> extends true\n  ? Compute<\n      UnionToIntersection<\n        {\n          [index in keyof parameters]: parameters[index] extends {\n            name: infer name extends string\n          }\n            ? {\n                [key in name]: AbiParameterToPrimitiveType<\n                  parameters[index],\n                  kind\n                >\n              }\n            : {\n                [key in index]: AbiParameterToPrimitiveType<\n                  parameters[index],\n                  kind\n                >\n              }\n        }[number]\n      >\n    >\n  : unknown\n\n/** @internal */\nexport type ToPrimitiveTypes<\n  abiParameters extends readonly AbiParameter[],\n  abiParameterKind extends AbiParameterKind = AbiParameterKind,\n> = AbiParametersToPrimitiveTypes<abiParameters, abiParameterKind>\n\n/** @internal */\nexport type Tuple = ParameterToPrimitiveType<TupleAbiParameter>\n\n/** @internal */\nexport function decodeParameter(\n  cursor: Cursor.Cursor,\n  param: AbiParameters.Parameter,\n  options: { checksumAddress?: boolean | undefined; staticPosition: number },\n) {\n  const { checksumAddress, staticPosition } = options\n  const arrayComponents = getArrayComponents(param.type)\n  if (arrayComponents) {\n    const [length, type] = arrayComponents\n    return decodeArray(\n      cursor,\n      { ...param, type },\n      { checksumAddress, length, staticPosition },\n    )\n  }\n  if (param.type === 'tuple')\n    return decodeTuple(cursor, param as TupleAbiParameter, {\n      checksumAddress,\n      staticPosition,\n    })\n  if (param.type === 'address')\n    return decodeAddress(cursor, { checksum: checksumAddress })\n  if (param.type === 'bool') return decodeBool(cursor)\n  if (param.type.startsWith('bytes'))\n    return decodeBytes(cursor, param, { staticPosition })\n  if (param.type.startsWith('uint') || param.type.startsWith('int'))\n    return decodeNumber(cursor, param)\n  if (param.type === 'string') return decodeString(cursor, { staticPosition })\n  throw new AbiParameters.InvalidTypeError(param.type)\n}\n\nexport declare namespace decodeParameter {\n  type ErrorType =\n    | decodeArray.ErrorType\n    | decodeTuple.ErrorType\n    | decodeAddress.ErrorType\n    | decodeBool.ErrorType\n    | decodeBytes.ErrorType\n    | decodeNumber.ErrorType\n    | decodeString.ErrorType\n    | AbiParameters.InvalidTypeError\n    | Errors.GlobalErrorType\n}\n\nconst sizeOfLength = 32\nconst sizeOfOffset = 32\n\n/** @internal */\nexport function decodeAddress(\n  cursor: Cursor.Cursor,\n  options: { checksum?: boolean | undefined } = {},\n) {\n  const { checksum = false } = options\n  const value = cursor.readBytes(32)\n  const wrap = (address: Hex.Hex) =>\n    checksum ? Address.checksum(address) : address\n  return [wrap(Hex.fromBytes(Bytes.slice(value, -20))), 32]\n}\n\nexport declare namespace decodeAddress {\n  type ErrorType =\n    | Hex.fromBytes.ErrorType\n    | Bytes.slice.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function decodeArray(\n  cursor: Cursor.Cursor,\n  param: AbiParameters.Parameter,\n  options: {\n    checksumAddress?: boolean | undefined\n    length: number | null\n    staticPosition: number\n  },\n) {\n  const { checksumAddress, length, staticPosition } = options\n\n  // If the length of the array is not known in advance (dynamic array),\n  // this means we will need to wonder off to the pointer and decode.\n  if (!length) {\n    // Dealing with a dynamic type, so get the offset of the array data.\n    const offset = Bytes.toNumber(cursor.readBytes(sizeOfOffset))\n\n    // Start is the static position of current slot + offset.\n    const start = staticPosition + offset\n    const startOfData = start + sizeOfLength\n\n    // Get the length of the array from the offset.\n    cursor.setPosition(start)\n    const length = Bytes.toNumber(cursor.readBytes(sizeOfLength))\n\n    // Check if the array has any dynamic children.\n    const dynamicChild = hasDynamicChild(param)\n\n    let consumed = 0\n    const value: unknown[] = []\n    for (let i = 0; i < length; ++i) {\n      // If any of the children is dynamic, then all elements will be offset pointer, thus size of one slot (32 bytes).\n      // Otherwise, elements will be the size of their encoding (consumed bytes).\n      cursor.setPosition(startOfData + (dynamicChild ? i * 32 : consumed))\n      const [data, consumed_] = decodeParameter(cursor, param, {\n        checksumAddress,\n        staticPosition: startOfData,\n      })\n      consumed += consumed_\n      value.push(data)\n    }\n\n    // As we have gone wondering, restore to the original position + next slot.\n    cursor.setPosition(staticPosition + 32)\n    return [value, 32]\n  }\n\n  // If the length of the array is known in advance,\n  // and the length of an element deeply nested in the array is not known,\n  // we need to decode the offset of the array data.\n  if (hasDynamicChild(param)) {\n    // Dealing with dynamic types, so get the offset of the array data.\n    const offset = Bytes.toNumber(cursor.readBytes(sizeOfOffset))\n\n    // Start is the static position of current slot + offset.\n    const start = staticPosition + offset\n\n    const value: unknown[] = []\n    for (let i = 0; i < length; ++i) {\n      // Move cursor along to the next slot (next offset pointer).\n      cursor.setPosition(start + i * 32)\n      const [data] = decodeParameter(cursor, param, {\n        checksumAddress,\n        staticPosition: start,\n      })\n      value.push(data)\n    }\n\n    // As we have gone wondering, restore to the original position + next slot.\n    cursor.setPosition(staticPosition + 32)\n    return [value, 32]\n  }\n\n  // If the length of the array is known in advance and the array is deeply static,\n  // then we can just decode each element in sequence.\n  let consumed = 0\n  const value: unknown[] = []\n  for (let i = 0; i < length; ++i) {\n    const [data, consumed_] = decodeParameter(cursor, param, {\n      checksumAddress,\n      staticPosition: staticPosition + consumed,\n    })\n    consumed += consumed_\n    value.push(data)\n  }\n  return [value, consumed]\n}\n\nexport declare namespace decodeArray {\n  type ErrorType = Bytes.toNumber.ErrorType | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function decodeBool(cursor: Cursor.Cursor) {\n  return [Bytes.toBoolean(cursor.readBytes(32), { size: 32 }), 32]\n}\n\nexport declare namespace decodeBool {\n  type ErrorType = Bytes.toBoolean.ErrorType | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function decodeBytes(\n  cursor: Cursor.Cursor,\n  param: AbiParameters.Parameter,\n  { staticPosition }: { staticPosition: number },\n) {\n  const [_, size] = param.type.split('bytes')\n  if (!size) {\n    // Dealing with dynamic types, so get the offset of the bytes data.\n    const offset = Bytes.toNumber(cursor.readBytes(32))\n\n    // Set position of the cursor to start of bytes data.\n    cursor.setPosition(staticPosition + offset)\n\n    const length = Bytes.toNumber(cursor.readBytes(32))\n\n    // If there is no length, we have zero data.\n    if (length === 0) {\n      // As we have gone wondering, restore to the original position + next slot.\n      cursor.setPosition(staticPosition + 32)\n      return ['0x', 32]\n    }\n\n    const data = cursor.readBytes(length)\n\n    // As we have gone wondering, restore to the original position + next slot.\n    cursor.setPosition(staticPosition + 32)\n    return [Hex.fromBytes(data), 32]\n  }\n\n  const value = Hex.fromBytes(cursor.readBytes(Number.parseInt(size), 32))\n  return [value, 32]\n}\n\nexport declare namespace decodeBytes {\n  type ErrorType =\n    | Hex.fromBytes.ErrorType\n    | Bytes.toNumber.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function decodeNumber(\n  cursor: Cursor.Cursor,\n  param: AbiParameters.Parameter,\n) {\n  const signed = param.type.startsWith('int')\n  const size = Number.parseInt(param.type.split('int')[1] || '256')\n  const value = cursor.readBytes(32)\n  return [\n    size > 48\n      ? Bytes.toBigInt(value, { signed })\n      : Bytes.toNumber(value, { signed }),\n    32,\n  ]\n}\n\nexport declare namespace decodeNumber {\n  type ErrorType =\n    | Bytes.toNumber.ErrorType\n    | Bytes.toBigInt.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport type TupleAbiParameter = AbiParameters.Parameter & {\n  components: readonly AbiParameters.Parameter[]\n}\n\n/** @internal */\nexport function decodeTuple(\n  cursor: Cursor.Cursor,\n  param: TupleAbiParameter,\n  options: { checksumAddress?: boolean | undefined; staticPosition: number },\n) {\n  const { checksumAddress, staticPosition } = options\n\n  // Tuples can have unnamed components (i.e. they are arrays), so we must\n  // determine whether the tuple is named or unnamed. In the case of a named\n  // tuple, the value will be an object where each property is the name of the\n  // component. In the case of an unnamed tuple, the value will be an array.\n  const hasUnnamedChild =\n    param.components.length === 0 || param.components.some(({ name }) => !name)\n\n  // Initialize the value to an object or an array, depending on whether the\n  // tuple is named or unnamed.\n  const value: any = hasUnnamedChild ? [] : {}\n  let consumed = 0\n\n  // If the tuple has a dynamic child, we must first decode the offset to the\n  // tuple data.\n  if (hasDynamicChild(param)) {\n    // Dealing with dynamic types, so get the offset of the tuple data.\n    const offset = Bytes.toNumber(cursor.readBytes(sizeOfOffset))\n\n    // Start is the static position of referencing slot + offset.\n    const start = staticPosition + offset\n\n    for (let i = 0; i < param.components.length; ++i) {\n      const component = param.components[i]!\n      cursor.setPosition(start + consumed)\n      const [data, consumed_] = decodeParameter(cursor, component, {\n        checksumAddress,\n        staticPosition: start,\n      })\n      consumed += consumed_\n      value[hasUnnamedChild ? i : component?.name!] = data\n    }\n\n    // As we have gone wondering, restore to the original position + next slot.\n    cursor.setPosition(staticPosition + 32)\n    return [value, 32]\n  }\n\n  // If the tuple has static children, we can just decode each component\n  // in sequence.\n  for (let i = 0; i < param.components.length; ++i) {\n    const component = param.components[i]!\n    const [data, consumed_] = decodeParameter(cursor, component, {\n      checksumAddress,\n      staticPosition,\n    })\n    value[hasUnnamedChild ? i : component?.name!] = data\n    consumed += consumed_\n  }\n  return [value, consumed]\n}\n\nexport declare namespace decodeTuple {\n  type ErrorType = Bytes.toNumber.ErrorType | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function decodeString(\n  cursor: Cursor.Cursor,\n  { staticPosition }: { staticPosition: number },\n) {\n  // Get offset to start of string data.\n  const offset = Bytes.toNumber(cursor.readBytes(32))\n\n  // Start is the static position of current slot + offset.\n  const start = staticPosition + offset\n  cursor.setPosition(start)\n\n  const length = Bytes.toNumber(cursor.readBytes(32))\n\n  // If there is no length, we have zero data (empty string).\n  if (length === 0) {\n    cursor.setPosition(staticPosition + 32)\n    return ['', 32]\n  }\n\n  const data = cursor.readBytes(length, 32)\n  const value = Bytes.toString(Bytes.trimLeft(data))\n\n  // As we have gone wondering, restore to the original position + next slot.\n  cursor.setPosition(staticPosition + 32)\n\n  return [value, 32]\n}\n\nexport declare namespace decodeString {\n  type ErrorType =\n    | Bytes.toNumber.ErrorType\n    | Bytes.toString.ErrorType\n    | Bytes.trimLeft.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function prepareParameters<\n  const parameters extends AbiParameters.AbiParameters,\n>({\n  checksumAddress,\n  parameters,\n  values,\n}: {\n  checksumAddress?: boolean | undefined\n  parameters: parameters\n  values: parameters extends AbiParameters.AbiParameters\n    ? ToPrimitiveTypes<parameters>\n    : never\n}) {\n  const preparedParameters: PreparedParameter[] = []\n  for (let i = 0; i < parameters.length; i++) {\n    preparedParameters.push(\n      prepareParameter({\n        checksumAddress,\n        parameter: parameters[i]!,\n        value: values[i],\n      }),\n    )\n  }\n  return preparedParameters\n}\n\n/** @internal */\nexport declare namespace prepareParameters {\n  type ErrorType = prepareParameter.ErrorType | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function prepareParameter<\n  const parameter extends AbiParameters.Parameter,\n>({\n  checksumAddress = false,\n  parameter: parameter_,\n  value,\n}: {\n  parameter: parameter\n  value: parameter extends AbiParameters.Parameter\n    ? ParameterToPrimitiveType<parameter>\n    : never\n  checksumAddress?: boolean | undefined\n}): PreparedParameter {\n  const parameter = parameter_ as AbiParameters.Parameter\n\n  const arrayComponents = getArrayComponents(parameter.type)\n  if (arrayComponents) {\n    const [length, type] = arrayComponents\n    return encodeArray(value, {\n      checksumAddress,\n      length,\n      parameter: {\n        ...parameter,\n        type,\n      },\n    })\n  }\n  if (parameter.type === 'tuple') {\n    return encodeTuple(value as unknown as Tuple, {\n      checksumAddress,\n      parameter: parameter as TupleAbiParameter,\n    })\n  }\n  if (parameter.type === 'address') {\n    return encodeAddress(value as unknown as Hex.Hex, {\n      checksum: checksumAddress,\n    })\n  }\n  if (parameter.type === 'bool') {\n    return encodeBoolean(value as unknown as boolean)\n  }\n  if (parameter.type.startsWith('uint') || parameter.type.startsWith('int')) {\n    const signed = parameter.type.startsWith('int')\n    const [, , size = '256'] = integerRegex.exec(parameter.type) ?? []\n    return encodeNumber(value as unknown as number, {\n      signed,\n      size: Number(size),\n    })\n  }\n  if (parameter.type.startsWith('bytes')) {\n    return encodeBytes(value as unknown as Hex.Hex, { type: parameter.type })\n  }\n  if (parameter.type === 'string') {\n    return encodeString(value as unknown as string)\n  }\n  throw new AbiParameters.InvalidTypeError(parameter.type)\n}\n\n/** @internal */\nexport declare namespace prepareParameter {\n  type ErrorType =\n    | encodeArray.ErrorType\n    | encodeTuple.ErrorType\n    | encodeAddress.ErrorType\n    | encodeBoolean.ErrorType\n    | encodeBytes.ErrorType\n    | encodeString.ErrorType\n    | AbiParameters.InvalidTypeError\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function encode(preparedParameters: PreparedParameter[]): Hex.Hex {\n  // 1. Compute the size of the static part of the parameters.\n  let staticSize = 0\n  for (let i = 0; i < preparedParameters.length; i++) {\n    const { dynamic, encoded } = preparedParameters[i]!\n    if (dynamic) staticSize += 32\n    else staticSize += Hex.size(encoded)\n  }\n\n  // 2. Split the parameters into static and dynamic parts.\n  const staticParameters: Hex.Hex[] = []\n  const dynamicParameters: Hex.Hex[] = []\n  let dynamicSize = 0\n  for (let i = 0; i < preparedParameters.length; i++) {\n    const { dynamic, encoded } = preparedParameters[i]!\n    if (dynamic) {\n      staticParameters.push(\n        Hex.fromNumber(staticSize + dynamicSize, { size: 32 }),\n      )\n      dynamicParameters.push(encoded)\n      dynamicSize += Hex.size(encoded)\n    } else {\n      staticParameters.push(encoded)\n    }\n  }\n\n  // 3. Concatenate static and dynamic parts.\n  return Hex.concat(...staticParameters, ...dynamicParameters)\n}\n\n/** @internal */\nexport declare namespace encode {\n  type ErrorType =\n    | Hex.concat.ErrorType\n    | Hex.fromNumber.ErrorType\n    | Hex.size.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function encodeAddress(\n  value: Hex.Hex,\n  options: { checksum: boolean },\n): PreparedParameter {\n  const { checksum = false } = options\n  Address.assert(value, { strict: checksum })\n  return {\n    dynamic: false,\n    encoded: Hex.padLeft(value.toLowerCase() as Hex.Hex),\n  }\n}\n\n/** @internal */\nexport declare namespace encodeAddress {\n  type ErrorType =\n    | Address.assert.ErrorType\n    | Hex.padLeft.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function encodeArray<const parameter extends AbiParameters.Parameter>(\n  value: ParameterToPrimitiveType<parameter>,\n  options: {\n    checksumAddress?: boolean | undefined\n    length: number | null\n    parameter: parameter\n  },\n): PreparedParameter {\n  const { checksumAddress, length, parameter } = options\n\n  const dynamic = length === null\n\n  if (!Array.isArray(value)) throw new AbiParameters.InvalidArrayError(value)\n  if (!dynamic && value.length !== length)\n    throw new AbiParameters.ArrayLengthMismatchError({\n      expectedLength: length!,\n      givenLength: value.length,\n      type: `${parameter.type}[${length}]`,\n    })\n\n  let dynamicChild = false\n  const preparedParameters: PreparedParameter[] = []\n  for (let i = 0; i < value.length; i++) {\n    const preparedParam = prepareParameter({\n      checksumAddress,\n      parameter,\n      value: value[i],\n    })\n    if (preparedParam.dynamic) dynamicChild = true\n    preparedParameters.push(preparedParam)\n  }\n\n  if (dynamic || dynamicChild) {\n    const data = encode(preparedParameters)\n    if (dynamic) {\n      const length = Hex.fromNumber(preparedParameters.length, { size: 32 })\n      return {\n        dynamic: true,\n        encoded:\n          preparedParameters.length > 0 ? Hex.concat(length, data) : length,\n      }\n    }\n    if (dynamicChild) return { dynamic: true, encoded: data }\n  }\n  return {\n    dynamic: false,\n    encoded: Hex.concat(...preparedParameters.map(({ encoded }) => encoded)),\n  }\n}\n\n/** @internal */\nexport declare namespace encodeArray {\n  type ErrorType =\n    | AbiParameters.InvalidArrayError\n    | AbiParameters.ArrayLengthMismatchError\n    | Hex.concat.ErrorType\n    | Hex.fromNumber.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function encodeBytes(\n  value: Hex.Hex,\n  { type }: { type: string },\n): PreparedParameter {\n  const [, parametersize] = type.split('bytes')\n  const bytesSize = Hex.size(value)\n  if (!parametersize) {\n    let value_ = value\n    // If the size is not divisible by 32 bytes, pad the end\n    // with empty bytes to the ceiling 32 bytes.\n    if (bytesSize % 32 !== 0)\n      value_ = Hex.padRight(value_, Math.ceil((value.length - 2) / 2 / 32) * 32)\n    return {\n      dynamic: true,\n      encoded: Hex.concat(\n        Hex.padLeft(Hex.fromNumber(bytesSize, { size: 32 })),\n        value_,\n      ),\n    }\n  }\n  if (bytesSize !== Number.parseInt(parametersize))\n    throw new AbiParameters.BytesSizeMismatchError({\n      expectedSize: Number.parseInt(parametersize),\n      value,\n    })\n  return { dynamic: false, encoded: Hex.padRight(value) }\n}\n\n/** @internal */\nexport declare namespace encodeBytes {\n  type ErrorType =\n    | Hex.padLeft.ErrorType\n    | Hex.padRight.ErrorType\n    | Hex.fromNumber.ErrorType\n    | Hex.slice.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function encodeBoolean(value: boolean): PreparedParameter {\n  if (typeof value !== 'boolean')\n    throw new Errors.BaseError(\n      `Invalid boolean value: \"${value}\" (type: ${typeof value}). Expected: \\`true\\` or \\`false\\`.`,\n    )\n  return { dynamic: false, encoded: Hex.padLeft(Hex.fromBoolean(value)) }\n}\n\n/** @internal */\nexport declare namespace encodeBoolean {\n  type ErrorType =\n    | Hex.padLeft.ErrorType\n    | Hex.fromBoolean.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function encodeNumber(\n  value: number,\n  { signed, size }: { signed: boolean; size: number },\n): PreparedParameter {\n  if (typeof size === 'number') {\n    const max = 2n ** (BigInt(size) - (signed ? 1n : 0n)) - 1n\n    const min = signed ? -max - 1n : 0n\n    if (value > max || value < min)\n      throw new Hex.IntegerOutOfRangeError({\n        max: max.toString(),\n        min: min.toString(),\n        signed,\n        size: size / 8,\n        value: value.toString(),\n      })\n  }\n  return {\n    dynamic: false,\n    encoded: Hex.fromNumber(value, {\n      size: 32,\n      signed,\n    }),\n  }\n}\n\n/** @internal */\nexport declare namespace encodeNumber {\n  type ErrorType = Hex.fromNumber.ErrorType | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function encodeString(value: string): PreparedParameter {\n  const hexValue = Hex.fromString(value)\n  const partsLength = Math.ceil(Hex.size(hexValue) / 32)\n  const parts: Hex.Hex[] = []\n  for (let i = 0; i < partsLength; i++) {\n    parts.push(Hex.padRight(Hex.slice(hexValue, i * 32, (i + 1) * 32)))\n  }\n  return {\n    dynamic: true,\n    encoded: Hex.concat(\n      Hex.padRight(Hex.fromNumber(Hex.size(hexValue), { size: 32 })),\n      ...parts,\n    ),\n  }\n}\n\n/** @internal */\nexport declare namespace encodeString {\n  type ErrorType =\n    | Hex.fromNumber.ErrorType\n    | Hex.padRight.ErrorType\n    | Hex.slice.ErrorType\n    | Hex.size.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function encodeTuple<\n  const parameter extends AbiParameters.Parameter & {\n    components: readonly AbiParameters.Parameter[]\n  },\n>(\n  value: ParameterToPrimitiveType<parameter>,\n  options: {\n    checksumAddress?: boolean | undefined\n    parameter: parameter\n  },\n): PreparedParameter {\n  const { checksumAddress, parameter } = options\n\n  let dynamic = false\n  const preparedParameters: PreparedParameter[] = []\n  for (let i = 0; i < parameter.components.length; i++) {\n    const param_ = parameter.components[i]!\n    const index = Array.isArray(value) ? i : param_.name\n    const preparedParam = prepareParameter({\n      checksumAddress,\n      parameter: param_,\n      value: (value as any)[index!] as readonly unknown[],\n    })\n    preparedParameters.push(preparedParam)\n    if (preparedParam.dynamic) dynamic = true\n  }\n  return {\n    dynamic,\n    encoded: dynamic\n      ? encode(preparedParameters)\n      : Hex.concat(...preparedParameters.map(({ encoded }) => encoded)),\n  }\n}\n\n/** @internal */\nexport declare namespace encodeTuple {\n  type ErrorType = Hex.concat.ErrorType | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function getArrayComponents(\n  type: string,\n): [length: number | null, innerType: string] | undefined {\n  const matches = type.match(/^(.*)\\[(\\d+)?\\]$/)\n  return matches\n    ? // Return `null` if the array is dynamic.\n      [matches[2]! ? Number(matches[2]!) : null, matches[1]!]\n    : undefined\n}\n\n/** @internal */\nexport function hasDynamicChild(param: AbiParameters.Parameter) {\n  const { type } = param\n  if (type === 'string') return true\n  if (type === 'bytes') return true\n  if (type.endsWith('[]')) return true\n\n  if (type === 'tuple') return (param as any).components?.some(hasDynamicChild)\n\n  const arrayComponents = getArrayComponents(param.type)\n  if (\n    arrayComponents &&\n    hasDynamicChild({\n      ...param,\n      type: arrayComponents[1],\n    } as AbiParameters.Parameter)\n  )\n    return true\n\n  return false\n}\n","import * as abitype from 'abitype'\nimport * as Address from './Address.js'\nimport * as Bytes from './Bytes.js'\nimport * as Errors from './Errors.js'\nimport * as Hex from './Hex.js'\nimport * as Solidity from './Solidity.js'\nimport * as internal from './internal/abiParameters.js'\nimport * as Cursor from './internal/cursor.js'\n\n/** Root type for ABI parameters. */\nexport type AbiParameters = readonly abitype.AbiParameter[]\n\n/** A parameter on an {@link ox#AbiParameters.AbiParameters}. */\nexport type Parameter = abitype.AbiParameter\n\n/** A packed ABI type. */\nexport type PackedAbiType =\n  | abitype.SolidityAddress\n  | abitype.SolidityBool\n  | abitype.SolidityBytes\n  | abitype.SolidityInt\n  | abitype.SolidityString\n  | abitype.SolidityArrayWithoutTuple\n\n/**\n * Decodes ABI-encoded data into its respective primitive values based on ABI Parameters.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const data = AbiParameters.decode(\n *   AbiParameters.from(['string', 'uint', 'bool']),\n *   '0x000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000001a4000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000057761676d69000000000000000000000000000000000000000000000000000000',\n * )\n * // @log: ['wagmi', 420n, true]\n * ```\n *\n * @example\n * ### JSON Parameters\n *\n * You can pass **JSON ABI** Parameters:\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const data = AbiParameters.decode(\n *   [\n *     { name: 'x', type: 'string' },\n *     { name: 'y', type: 'uint' },\n *     { name: 'z', type: 'bool' },\n *   ],\n *   '0x000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000001a4000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000057761676d69000000000000000000000000000000000000000000000000000000',\n * )\n * // @log: ['wagmi', 420n, true]\n * ```\n *\n * @param parameters - The set of ABI parameters to decode, in the shape of the `inputs` or `outputs` attribute of an ABI Item. These parameters must include valid [ABI types](https://docs.soliditylang.org/en/latest/types.html).\n * @param data - ABI encoded data.\n * @param options - Decoding options.\n * @returns Array of decoded values.\n */\nexport function decode<\n  const parameters extends AbiParameters,\n  as extends 'Object' | 'Array' = 'Array',\n>(\n  parameters: parameters,\n  data: Bytes.Bytes | Hex.Hex,\n  options?: decode.Options<as>,\n): decode.ReturnType<parameters, as>\n\n// eslint-disable-next-line jsdoc/require-jsdoc\nexport function decode(\n  parameters: AbiParameters,\n  data: Bytes.Bytes | Hex.Hex,\n  options: {\n    as?: 'Array' | 'Object' | undefined\n    checksumAddress?: boolean | undefined\n  } = {},\n): readonly unknown[] | Record<string, unknown> {\n  const { as = 'Array', checksumAddress = false } = options\n\n  const bytes = typeof data === 'string' ? Bytes.fromHex(data) : data\n  const cursor = Cursor.create(bytes)\n\n  if (Bytes.size(bytes) === 0 && parameters.length > 0)\n    throw new ZeroDataError()\n  if (Bytes.size(bytes) && Bytes.size(bytes) < 32)\n    throw new DataSizeTooSmallError({\n      data: typeof data === 'string' ? data : Hex.fromBytes(data),\n      parameters: parameters as readonly Parameter[],\n      size: Bytes.size(bytes),\n    })\n\n  let consumed = 0\n  const values: any = as === 'Array' ? [] : {}\n  for (let i = 0; i < parameters.length; ++i) {\n    const param = parameters[i] as Parameter\n    cursor.setPosition(consumed)\n    const [data, consumed_] = internal.decodeParameter(cursor, param, {\n      checksumAddress,\n      staticPosition: 0,\n    })\n    consumed += consumed_\n    if (as === 'Array') values.push(data)\n    else values[param.name ?? i] = data\n  }\n  return values\n}\n\nexport declare namespace decode {\n  type Options<as extends 'Object' | 'Array'> = {\n    /**\n     * Whether the decoded values should be returned as an `Object` or `Array`.\n     *\n     * @default \"Array\"\n     */\n    as?: as | 'Object' | 'Array' | undefined\n    /**\n     * Whether decoded addresses should be checksummed.\n     *\n     * @default false\n     */\n    checksumAddress?: boolean | undefined\n  }\n\n  type ReturnType<\n    parameters extends AbiParameters = AbiParameters,\n    as extends 'Object' | 'Array' = 'Array',\n  > = parameters extends readonly []\n    ? as extends 'Object'\n      ? {}\n      : []\n    : as extends 'Object'\n      ? internal.ToObject<parameters>\n      : internal.ToPrimitiveTypes<parameters>\n\n  type ErrorType =\n    | Bytes.fromHex.ErrorType\n    | internal.decodeParameter.ErrorType\n    | ZeroDataError\n    | DataSizeTooSmallError\n    | Errors.GlobalErrorType\n}\n\n/**\n * Encodes primitive values into ABI encoded data as per the [Application Binary Interface (ABI) Specification](https://docs.soliditylang.org/en/latest/abi-spec).\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const data = AbiParameters.encode(\n *   AbiParameters.from(['string', 'uint', 'bool']),\n *   ['wagmi', 420n, true],\n * )\n * ```\n *\n * @example\n * ### JSON Parameters\n *\n * Specify **JSON ABI** Parameters as schema:\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const data = AbiParameters.encode(\n *   [\n *     { type: 'string', name: 'name' },\n *     { type: 'uint', name: 'age' },\n *     { type: 'bool', name: 'isOwner' },\n *   ],\n *   ['wagmi', 420n, true],\n * )\n * ```\n *\n * @param parameters - The set of ABI parameters to encode, in the shape of the `inputs` or `outputs` attribute of an ABI Item. These parameters must include valid [ABI types](https://docs.soliditylang.org/en/latest/types.html).\n * @param values - The set of primitive values that correspond to the ABI types defined in `parameters`.\n * @returns ABI encoded data.\n */\nexport function encode<\n  const parameters extends AbiParameters | readonly unknown[],\n>(\n  parameters: parameters,\n  values: parameters extends AbiParameters\n    ? internal.ToPrimitiveTypes<parameters>\n    : never,\n  options?: encode.Options,\n): Hex.Hex {\n  const { checksumAddress = false } = options ?? {}\n\n  if (parameters.length !== values.length)\n    throw new LengthMismatchError({\n      expectedLength: parameters.length as number,\n      givenLength: values.length as any,\n    })\n  // Prepare the parameters to determine dynamic types to encode.\n  const preparedParameters = internal.prepareParameters({\n    checksumAddress,\n    parameters: parameters as readonly Parameter[],\n    values: values as any,\n  })\n  const data = internal.encode(preparedParameters)\n  if (data.length === 0) return '0x'\n  return data\n}\n\nexport declare namespace encode {\n  type ErrorType =\n    | LengthMismatchError\n    | internal.encode.ErrorType\n    | internal.prepareParameters.ErrorType\n    | Errors.GlobalErrorType\n\n  type Options = {\n    /**\n     * Whether addresses should be checked against their checksum.\n     *\n     * @default false\n     */\n    checksumAddress?: boolean | undefined\n  }\n}\n\n/**\n * Encodes an array of primitive values to a [packed ABI encoding](https://docs.soliditylang.org/en/latest/abi-spec.html#non-standard-packed-mode).\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const encoded = AbiParameters.encodePacked(\n *   ['address', 'string'],\n *   ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 'hello world'],\n * )\n * // @log: '0xd8da6bf26964af9d7eed9e03e53415d37aa9604568656c6c6f20776f726c64'\n * ```\n *\n * @param types - Set of ABI types to pack encode.\n * @param values - The set of primitive values that correspond to the ABI types defined in `types`.\n * @returns The encoded packed data.\n */\nexport function encodePacked<\n  const packedAbiTypes extends readonly PackedAbiType[] | readonly unknown[],\n>(types: packedAbiTypes, values: encodePacked.Values<packedAbiTypes>): Hex.Hex {\n  if (types.length !== values.length)\n    throw new LengthMismatchError({\n      expectedLength: types.length as number,\n      givenLength: values.length as number,\n    })\n\n  const data: Hex.Hex[] = []\n  for (let i = 0; i < (types as unknown[]).length; i++) {\n    const type = types[i]\n    const value = values[i]\n    data.push(encodePacked.encode(type, value))\n  }\n  return Hex.concat(...data)\n}\n\nexport namespace encodePacked {\n  export type ErrorType =\n    | Hex.concat.ErrorType\n    | LengthMismatchError\n    | Errors.GlobalErrorType\n\n  export type Values<\n    packedAbiTypes extends readonly PackedAbiType[] | readonly unknown[],\n  > = {\n    [key in keyof packedAbiTypes]: packedAbiTypes[key] extends abitype.AbiType\n      ? abitype.AbiParameterToPrimitiveType<{ type: packedAbiTypes[key] }>\n      : unknown\n  }\n\n  // eslint-disable-next-line jsdoc/require-jsdoc\n  export function encode<const packedAbiType extends PackedAbiType | unknown>(\n    type: packedAbiType,\n    value: Values<[packedAbiType]>[0],\n    isArray = false,\n  ): Hex.Hex {\n    if (type === 'address') {\n      const address = value as Address.Address\n      Address.assert(address)\n      return Hex.padLeft(\n        address.toLowerCase() as Hex.Hex,\n        isArray ? 32 : 0,\n      ) as Address.Address\n    }\n    if (type === 'string') return Hex.fromString(value as string)\n    if (type === 'bytes') return value as Hex.Hex\n    if (type === 'bool')\n      return Hex.padLeft(Hex.fromBoolean(value as boolean), isArray ? 32 : 1)\n\n    const intMatch = (type as string).match(Solidity.integerRegex)\n    if (intMatch) {\n      const [_type, baseType, bits = '256'] = intMatch\n      const size = Number.parseInt(bits) / 8\n      return Hex.fromNumber(value as number, {\n        size: isArray ? 32 : size,\n        signed: baseType === 'int',\n      })\n    }\n\n    const bytesMatch = (type as string).match(Solidity.bytesRegex)\n    if (bytesMatch) {\n      const [_type, size] = bytesMatch\n      if (Number.parseInt(size!) !== ((value as Hex.Hex).length - 2) / 2)\n        throw new BytesSizeMismatchError({\n          expectedSize: Number.parseInt(size!),\n          value: value as Hex.Hex,\n        })\n      return Hex.padRight(value as Hex.Hex, isArray ? 32 : 0) as Hex.Hex\n    }\n\n    const arrayMatch = (type as string).match(Solidity.arrayRegex)\n    if (arrayMatch && Array.isArray(value)) {\n      const [_type, childType] = arrayMatch\n      const data: Hex.Hex[] = []\n      for (let i = 0; i < value.length; i++) {\n        data.push(encode(childType, value[i], true))\n      }\n      if (data.length === 0) return '0x'\n      return Hex.concat(...data)\n    }\n\n    throw new InvalidTypeError(type as string)\n  }\n}\n\n/**\n * Formats {@link ox#AbiParameters.AbiParameters} into **Human Readable ABI Parameters**.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const formatted = AbiParameters.format([\n *   {\n *     name: 'spender',\n *     type: 'address',\n *   },\n *   {\n *     name: 'amount',\n *     type: 'uint256',\n *   },\n * ])\n *\n * formatted\n * //    ^?\n *\n *\n * ```\n *\n * @param parameters - The ABI Parameters to format.\n * @returns The formatted ABI Parameters  .\n */\nexport function format<\n  const parameters extends readonly [\n    Parameter | abitype.AbiEventParameter,\n    ...(readonly (Parameter | abitype.AbiEventParameter)[]),\n  ],\n>(\n  parameters:\n    | parameters\n    | readonly [\n        Parameter | abitype.AbiEventParameter,\n        ...(readonly (Parameter | abitype.AbiEventParameter)[]),\n      ],\n): abitype.FormatAbiParameters<parameters> {\n  return abitype.formatAbiParameters(parameters)\n}\n\nexport declare namespace format {\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/**\n * Parses arbitrary **JSON ABI Parameters** or **Human Readable ABI Parameters** into typed {@link ox#AbiParameters.AbiParameters}.\n *\n * @example\n * ### JSON Parameters\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const parameters = AbiParameters.from([\n *   {\n *     name: 'spender',\n *     type: 'address',\n *   },\n *   {\n *     name: 'amount',\n *     type: 'uint256',\n *   },\n * ])\n *\n * parameters\n * //^?\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Human Readable Parameters\n *\n * Human Readable ABI Parameters can be parsed into a typed {@link ox#AbiParameters.AbiParameters}:\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const parameters = AbiParameters.from('address spender, uint256 amount')\n *\n * parameters\n * //^?\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * It is possible to specify `struct`s along with your definitions:\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const parameters = AbiParameters.from([\n *   'struct Foo { address spender; uint256 amount; }', // [!code hl]\n *   'Foo foo, address bar',\n * ])\n *\n * parameters\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n *\n *\n * @param parameters - The ABI Parameters to parse.\n * @returns The typed ABI Parameters.\n */\nexport function from<\n  const parameters extends AbiParameters | string | readonly string[],\n>(\n  parameters: parameters | AbiParameters | string | readonly string[],\n): from.ReturnType<parameters> {\n  if (Array.isArray(parameters) && typeof parameters[0] === 'string')\n    return abitype.parseAbiParameters(parameters) as never\n  if (typeof parameters === 'string')\n    return abitype.parseAbiParameters(parameters) as never\n  return parameters as never\n}\n\nexport declare namespace from {\n  type ReturnType<\n    parameters extends AbiParameters | string | readonly string[],\n  > = parameters extends string\n    ? abitype.ParseAbiParameters<parameters>\n    : parameters extends readonly string[]\n      ? abitype.ParseAbiParameters<parameters>\n      : parameters\n\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/**\n * Throws when the data size is too small for the given parameters.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'uint256' }], '0x010f')\n * //                                             ↑ ❌ 2 bytes\n * // @error: AbiParameters.DataSizeTooSmallError: Data size of 2 bytes is too small for given parameters.\n * // @error: Params: (uint256)\n * // @error: Data:   0x010f (2 bytes)\n * ```\n *\n * ### Solution\n *\n * Pass a valid data size.\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'uint256' }], '0x00000000000000000000000000000000000000000000000000000000000010f')\n * //                                             ↑ ✅ 32 bytes\n * ```\n */\nexport class DataSizeTooSmallError extends Errors.BaseError {\n  override readonly name = 'AbiParameters.DataSizeTooSmallError'\n  constructor({\n    data,\n    parameters,\n    size,\n  }: { data: Hex.Hex; parameters: readonly Parameter[]; size: number }) {\n    super(`Data size of ${size} bytes is too small for given parameters.`, {\n      metaMessages: [\n        `Params: (${abitype.formatAbiParameters(parameters as readonly [Parameter])})`,\n        `Data:   ${data} (${size} bytes)`,\n      ],\n    })\n  }\n}\n\n/**\n * Throws when zero data is provided, but data is expected.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'uint256' }], '0x')\n * //                                           ↑ ❌ zero data\n * // @error: AbiParameters.DataSizeTooSmallError: Data size of 2 bytes is too small for given parameters.\n * // @error: Params: (uint256)\n * // @error: Data:   0x010f (2 bytes)\n * ```\n *\n * ### Solution\n *\n * Pass valid data.\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'uint256' }], '0x00000000000000000000000000000000000000000000000000000000000010f')\n * //                                             ↑ ✅ 32 bytes\n * ```\n */\nexport class ZeroDataError extends Errors.BaseError {\n  override readonly name = 'AbiParameters.ZeroDataError'\n  constructor() {\n    super('Cannot decode zero data (\"0x\") with ABI parameters.')\n  }\n}\n\n/**\n * The length of the array value does not match the length specified in the corresponding ABI parameter.\n *\n * ### Example\n *\n * ```ts twoslash\n * // @noErrors\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from('uint256[3]'), [[69n, 420n]])\n * //                                               ↑ expected: 3  ↑ ❌ length: 2\n * // @error: AbiParameters.ArrayLengthMismatchError: ABI encoding array length mismatch\n * // @error: for type `uint256[3]`. Expected: `3`. Given: `2`.\n * ```\n *\n * ### Solution\n *\n * Pass an array of the correct length.\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from(['uint256[3]']), [[69n, 420n, 69n]])\n * //                                                         ↑ ✅ length: 3\n * ```\n */\nexport class ArrayLengthMismatchError extends Errors.BaseError {\n  override readonly name = 'AbiParameters.ArrayLengthMismatchError'\n  constructor({\n    expectedLength,\n    givenLength,\n    type,\n  }: { expectedLength: number; givenLength: number; type: string }) {\n    super(\n      `Array length mismatch for type \\`${type}\\`. Expected: \\`${expectedLength}\\`. Given: \\`${givenLength}\\`.`,\n    )\n  }\n}\n\n/**\n * The size of the bytes value does not match the size specified in the corresponding ABI parameter.\n *\n * ### Example\n *\n * ```ts twoslash\n * // @noErrors\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from('bytes8'), [['0xdeadbeefdeadbeefdeadbeef']])\n * //                                            ↑ expected: 8 bytes  ↑ ❌ size: 12 bytes\n * // @error: BytesSizeMismatchError: Size of bytes \"0xdeadbeefdeadbeefdeadbeef\"\n * // @error: (bytes12) does not match expected size (bytes8).\n * ```\n *\n * ### Solution\n *\n * Pass a bytes value of the correct size.\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from(['bytes8']), ['0xdeadbeefdeadbeef'])\n * //                                                       ↑ ✅ size: 8 bytes\n * ```\n */\nexport class BytesSizeMismatchError extends Errors.BaseError {\n  override readonly name = 'AbiParameters.BytesSizeMismatchError'\n  constructor({\n    expectedSize,\n    value,\n  }: { expectedSize: number; value: Hex.Hex }) {\n    super(\n      `Size of bytes \"${value}\" (bytes${Hex.size(\n        value,\n      )}) does not match expected size (bytes${expectedSize}).`,\n    )\n  }\n}\n\n/**\n * The length of the values to encode does not match the length of the ABI parameters.\n *\n * ### Example\n *\n * ```ts twoslash\n * // @noErrors\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from(['string', 'uint256']), ['hello'])\n * // @error: LengthMismatchError: ABI encoding params/values length mismatch.\n * // @error: Expected length (params): 2\n * // @error: Given length (values): 1\n * ```\n *\n * ### Solution\n *\n * Pass the correct number of values to encode.\n *\n * ### Solution\n *\n * Pass a [valid ABI type](https://docs.soliditylang.org/en/develop/abi-spec.html#types).\n */\nexport class LengthMismatchError extends Errors.BaseError {\n  override readonly name = 'AbiParameters.LengthMismatchError'\n  constructor({\n    expectedLength,\n    givenLength,\n  }: { expectedLength: number; givenLength: number }) {\n    super(\n      [\n        'ABI encoding parameters/values length mismatch.',\n        `Expected length (parameters): ${expectedLength}`,\n        `Given length (values): ${givenLength}`,\n      ].join('\\n'),\n    )\n  }\n}\n\n/**\n * The value provided is not a valid array as specified in the corresponding ABI parameter.\n *\n * ### Example\n *\n * ```ts twoslash\n * // @noErrors\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from(['uint256[3]']), [69])\n * ```\n *\n * ### Solution\n *\n * Pass an array value.\n */\nexport class InvalidArrayError extends Errors.BaseError {\n  override readonly name = 'AbiParameters.InvalidArrayError'\n  constructor(value: unknown) {\n    super(`Value \\`${value}\\` is not a valid array.`)\n  }\n}\n\n/**\n * Throws when the ABI parameter type is invalid.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'lol' }], '0x00000000000000000000000000000000000000000000000000000000000010f')\n * //                             ↑ ❌ invalid type\n * // @error: AbiParameters.InvalidTypeError: Type `lol` is not a valid ABI Type.\n * ```\n */\nexport class InvalidTypeError extends Errors.BaseError {\n  override readonly name = 'AbiParameters.InvalidTypeError'\n  constructor(type: string) {\n    super(`Type \\`${type}\\` is not a valid ABI Type.`)\n  }\n}\n","import * as abitype from 'abitype'\nimport type * as Abi from './Abi.js'\nimport * as AbiItem from './AbiItem.js'\nimport * as AbiParameters from './AbiParameters.js'\nimport type * as Errors from './Errors.js'\nimport * as Hex from './Hex.js'\nimport type * as internal from './internal/abiConstructor.js'\nimport type { IsNarrowable } from './internal/types.js'\n\n/** Root type for an {@link ox#AbiItem.AbiItem} with a `constructor` type. */\nexport type AbiConstructor = abitype.AbiConstructor\n\n/** @internal */\nexport function decode<const abiConstructor extends AbiConstructor>(\n  abiConstructor: abiConstructor,\n  options: decode.Options,\n): decode.ReturnType<abiConstructor>\n/**\n * ABI-decodes the provided constructor input (`inputs`).\n *\n * @example\n * ```ts twoslash\n * import { AbiConstructor } from 'ox'\n *\n * const constructor = AbiConstructor.from('constructor(address, uint256)')\n *\n * const bytecode = '0x...'\n *\n * const data = AbiConstructor.encode(constructor, {\n *   bytecode,\n *   args: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 123n],\n * })\n *\n * const decoded = AbiConstructor.decode(constructor, { // [!code focus]\n *   bytecode, // [!code focus]\n *   data, // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param abiConstructor - The ABI Constructor to decode.\n * @param options - Decoding options.\n * @returns The decoded constructor inputs.\n */\nexport function decode(\n  abiConstructor: AbiConstructor,\n  options: decode.Options,\n): readonly unknown[] | undefined\n/** @internal */\nexport function decode(\n  abiConstructor: AbiConstructor,\n  options: decode.Options,\n): decode.ReturnType {\n  const { bytecode } = options\n  if (abiConstructor.inputs.length === 0) return undefined\n  const data = options.data.replace(bytecode, '0x') as Hex.Hex\n  return AbiParameters.decode(abiConstructor.inputs, data)\n}\n\nexport declare namespace decode {\n  interface Options {\n    /** The bytecode of the contract. */\n    bytecode: Hex.Hex\n    /** The encoded constructor. */\n    data: Hex.Hex\n  }\n\n  type ReturnType<abiConstructor extends AbiConstructor = AbiConstructor> =\n    | (abiConstructor['inputs']['length'] extends 0\n        ? undefined\n        : abitype.AbiParametersToPrimitiveTypes<abiConstructor['inputs']>)\n    | (IsNarrowable<abiConstructor, AbiConstructor> extends true\n        ? never\n        : undefined)\n\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/**\n * ABI-encodes the provided constructor input (`inputs`).\n *\n * @example\n * ```ts twoslash\n * import { AbiConstructor } from 'ox'\n *\n * const constructor = AbiConstructor.from('constructor(address, uint256)')\n *\n * const data = AbiConstructor.encode(constructor, {\n *   bytecode: '0x...',\n *   args: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 123n],\n * })\n * ```\n *\n * @example\n * ### End-to-end\n *\n * Below is an end-to-end example of using `AbiConstructor.encode` to encode the constructor of a contract and deploy it.\n *\n * ```ts twoslash\n * import 'ox/window'\n * import { AbiConstructor, Hex } from 'ox'\n *\n * // 1. Instantiate the ABI Constructor.\n * const constructor = AbiConstructor.from(\n *   'constructor(address owner, uint256 amount)',\n * )\n *\n * // 2. Encode the ABI Constructor.\n * const data = AbiConstructor.encode(constructor, {\n *   bytecode: '0x...',\n *   args: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 123n],\n * })\n *\n * // 3. Deploy the contract.\n * const hash = await window.ethereum!.request({\n *   method: 'eth_sendTransaction',\n *   params: [{ data }],\n * })\n * ```\n *\n * :::note\n *\n * For simplicity, the above example uses `window.ethereum.request`, but you can use any\n * type of JSON-RPC interface.\n *\n * :::\n *\n * @param abiConstructor - The ABI Constructor to encode.\n * @param options - Encoding options.\n * @returns The encoded constructor.\n */\nexport function encode<const abiConstructor extends AbiConstructor>(\n  abiConstructor: abiConstructor,\n  options: encode.Options<abiConstructor>,\n): encode.ReturnType {\n  const { bytecode, args } = options\n  return Hex.concat(\n    bytecode,\n    abiConstructor.inputs?.length && args?.length\n      ? AbiParameters.encode(abiConstructor.inputs, args as readonly unknown[])\n      : '0x',\n  )\n}\n\nexport declare namespace encode {\n  type Options<\n    abiConstructor extends AbiConstructor = AbiConstructor,\n    ///\n    args extends abitype.AbiParametersToPrimitiveTypes<\n      abiConstructor['inputs']\n    > = abitype.AbiParametersToPrimitiveTypes<abiConstructor['inputs']>,\n  > = {\n    /** The bytecode of the contract. */\n    bytecode: Hex.Hex\n    /** The constructor arguments to encode. */\n    args?: args | undefined\n  } & (readonly [] extends args\n    ? {}\n    : {\n        /** The constructor arguments to encode. */\n        args: args\n      })\n\n  type ReturnType = Hex.Hex\n\n  type ErrorType =\n    | Hex.concat.ErrorType\n    | AbiParameters.encode.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function format<const abiConstructor extends AbiConstructor>(\n  abiConstructor: abiConstructor,\n): format.ReturnType<abiConstructor>\n/**\n * Formats an {@link ox#AbiConstructor.AbiConstructor} into a **Human Readable ABI Function**.\n *\n * @example\n * ```ts twoslash\n * import { AbiConstructor } from 'ox'\n *\n * const formatted = AbiConstructor.format({\n *   inputs: [\n *     { name: 'owner', type: 'address' },\n *   ],\n *   payable: false,\n *   stateMutability: 'nonpayable',\n *   type: 'constructor',\n * })\n *\n * formatted\n * //    ^?\n *\n *\n * ```\n *\n * @param abiConstructor - The ABI Constructor to format.\n * @returns The formatted ABI Constructor.\n */\nexport function format(abiConstructor: AbiConstructor): string\n/** @internal */\nexport function format(abiConstructor: AbiConstructor): format.ReturnType {\n  return abitype.formatAbiItem(abiConstructor)\n}\n\nexport declare namespace format {\n  type ReturnType<abiConstructor extends AbiConstructor = AbiConstructor> =\n    abitype.FormatAbiItem<abiConstructor>\n\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function from<\n  const abiConstructor extends AbiConstructor | string | readonly string[],\n>(\n  abiConstructor: (abiConstructor | string | readonly string[]) &\n    (\n      | (abiConstructor extends string\n          ? internal.Signature<abiConstructor>\n          : never)\n      | (abiConstructor extends readonly string[]\n          ? internal.Signatures<abiConstructor>\n          : never)\n      | AbiConstructor\n    ),\n): from.ReturnType<abiConstructor>\n/**\n * Parses an arbitrary **JSON ABI Constructor** or **Human Readable ABI Constructor** into a typed {@link ox#AbiConstructor.AbiConstructor}.\n *\n * @example\n * ### JSON ABIs\n *\n * ```ts twoslash\n * import { AbiConstructor } from 'ox'\n *\n * const constructor = AbiConstructor.from({\n *   inputs: [\n *     { name: 'owner', type: 'address' },\n *   ],\n *   payable: false,\n *   stateMutability: 'nonpayable',\n *   type: 'constructor',\n * })\n *\n * constructor\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Human Readable ABIs\n *\n * A Human Readable ABI can be parsed into a typed ABI object:\n *\n * ```ts twoslash\n * import { AbiConstructor } from 'ox'\n *\n * const constructor = AbiConstructor.from(\n *   'constructor(address owner)' // [!code hl]\n * )\n *\n * constructor\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * It is possible to specify `struct`s along with your definitions:\n *\n * ```ts twoslash\n * import { AbiConstructor } from 'ox'\n *\n * const constructor = AbiConstructor.from([\n *   'struct Foo { address owner; uint256 amount; }', // [!code hl]\n *   'constructor(Foo foo)',\n * ])\n *\n * constructor\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n *\n *\n * @param abiConstructor - The ABI Constructor to parse.\n * @returns Typed ABI Constructor.\n */\nexport function from(\n  abiConstructor: AbiConstructor | string | readonly string[],\n): AbiConstructor\n/** @internal */\nexport function from(\n  abiConstructor: AbiConstructor | string | readonly string[],\n): from.ReturnType {\n  return AbiItem.from(abiConstructor as AbiConstructor)\n}\n\nexport declare namespace from {\n  type ReturnType<\n    abiConstructor extends\n      | AbiConstructor\n      | string\n      | readonly string[] = AbiConstructor,\n  > = AbiItem.from.ReturnType<abiConstructor>\n\n  type ErrorType = AbiItem.from.ErrorType | Errors.GlobalErrorType\n}\n\n/** @internal */\nexport function fromAbi<const abi extends Abi.Abi | readonly unknown[]>(\n  abi: abi | Abi.Abi | readonly unknown[],\n): fromAbi.ReturnType<abi>\n/**\n * Extracts an {@link ox#AbiConstructor.AbiConstructor} from an {@link ox#Abi.Abi} given a name and optional arguments.\n *\n * @example\n * ### Extracting by Name\n *\n * ABI Events can be extracted by their name using the `name` option:\n *\n * ```ts twoslash\n * import { Abi, AbiConstructor } from 'ox'\n *\n * const abi = Abi.from([\n *   'constructor(address owner)',\n *   'function foo()',\n *   'event Transfer(address owner, address to, uint256 tokenId)',\n *   'function bar(string a) returns (uint256 x)',\n * ])\n *\n * const item = AbiConstructor.fromAbi(abi) // [!code focus]\n * //    ^?\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @returns The ABI constructor.\n */\nexport function fromAbi(abi: Abi.Abi | readonly unknown[]): AbiConstructor\n/** @internal */\nexport function fromAbi(abi: Abi.Abi | readonly unknown[]): fromAbi.ReturnType {\n  const item = (abi as Abi.Abi).find((item) => item.type === 'constructor')\n  if (!item) throw new AbiItem.NotFoundError({ name: 'constructor' })\n  return item\n}\n\nexport declare namespace fromAbi {\n  type ReturnType<abi extends Abi.Abi | readonly unknown[] = Abi.Abi> = Extract<\n    abi[number],\n    { type: 'constructor' }\n  >\n\n  type ErrorType = AbiItem.NotFoundError | Errors.GlobalErrorType\n}\n","import * as abitype from 'abitype'\nimport type * as Abi from './Abi.js'\nimport * as AbiItem from './AbiItem.js'\nimport * as AbiParameters from './AbiParameters.js'\nimport type * as Errors from './Errors.js'\nimport * as Hex from './Hex.js'\nimport type * as internal from './internal/abiFunction.js'\nimport type * as AbiItem_internal from './internal/abiItem.js'\nimport type * as AbiParameters_internal from './internal/abiParameters.js'\nimport type { IsNarrowable } from './internal/types.js'\n\n/** Root type for an {@link ox#AbiItem.AbiItem} with a `function` type. */\nexport type AbiFunction = abitype.AbiFunction & {\n  hash?: Hex.Hex | undefined\n  overloads?: readonly AbiFunction[] | undefined\n}\n\n/**\n * Extracts an {@link ox#AbiFunction.AbiFunction} item from an {@link ox#Abi.Abi}, given a name.\n *\n * @example\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const abi = Abi.from([\n *   'function foo(string)',\n *   'function bar(uint256)',\n * ])\n *\n * type Foo = AbiFunction.FromAbi<typeof abi, 'foo'>\n * //   ^?\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n */\nexport type FromAbi<\n  abi extends Abi.Abi,\n  name extends ExtractNames<abi>,\n> = abitype.ExtractAbiFunction<abi, name>\n\n/**\n * Extracts the names of all {@link ox#AbiFunction.AbiFunction} items in an {@link ox#Abi.Abi}.\n *\n * @example\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const abi = Abi.from([\n *   'function foo(string)',\n *   'function bar(uint256)',\n * ])\n *\n * type names = AbiFunction.Name<typeof abi>\n * //   ^?\n *\n *\n * ```\n */\nexport type Name<abi extends Abi.Abi | readonly unknown[] = Abi.Abi> =\n  abi extends Abi.Abi ? ExtractNames<abi> : string\n\nexport type ExtractNames<\n  abi extends Abi.Abi,\n  abiStateMutability extends\n    abitype.AbiStateMutability = abitype.AbiStateMutability,\n> = abitype.ExtractAbiFunctionNames<abi, abiStateMutability>\n\n/**\n * ABI-decodes function arguments according to the ABI Item's input types (`inputs`).\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const approve = AbiFunction.from('function approve(address, uint256)')\n *\n * const data = AbiFunction.encodeData(\n *   approve,\n *   ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 69420n]\n * )\n * // '0x095ea7b3000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa960450000000000000000000000000000000000000000000000000000000000010f2c'\n *\n * const input = AbiFunction.decodeData(approve, data) // [!code focus]\n * // @log: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 69420n]\n * ```\n *\n * @param abiFunction - The ABI Item to decode.\n * @param data - The data to decode.\n */\nexport function decodeData<const abiItem extends AbiFunction>(\n  abiFunction: abiItem | AbiFunction,\n  data: Hex.Hex,\n): decodeData.ReturnType<abiItem> {\n  const { overloads } = abiFunction\n\n  if (Hex.size(data) < 4) throw new AbiItem.InvalidSelectorSizeError({ data })\n  if (abiFunction.inputs.length === 0) return undefined\n\n  const item = overloads\n    ? fromAbi([abiFunction, ...overloads], data as never)\n    : abiFunction\n\n  if (Hex.size(data) <= 4) return undefined\n  return AbiParameters.decode(item.inputs, Hex.slice(data, 4))\n}\n\nexport declare namespace decodeData {\n  type ReturnType<abiFunction extends AbiFunction = AbiFunction> = IsNarrowable<\n    abiFunction,\n    AbiFunction\n  > extends true\n    ? abiFunction['inputs'] extends readonly []\n      ? undefined\n      :\n          | AbiParameters_internal.ToPrimitiveTypes<abiFunction['inputs']>\n          | (abiFunction['overloads'] extends readonly AbiFunction[]\n              ? AbiParameters_internal.ToPrimitiveTypes<\n                  abiFunction['overloads'][number]['inputs']\n                >\n              : never)\n    : unknown\n\n  type ErrorType =\n    | fromAbi.ErrorType\n    | AbiParameters.decode.ErrorType\n    | Hex.size.ErrorType\n    | Hex.slice.ErrorType\n    | Errors.GlobalErrorType\n}\n\n/**\n * ABI-decodes a function's result according to the ABI Item's output types (`outputs`).\n *\n * :::tip\n *\n * This function is typically used to decode contract function return values (e.g. the response of an `eth_call` or the `input` property of a Transaction).\n *\n * See the [End-to-end Example](#end-to-end).\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const data = '0x000000000000000000000000000000000000000000000000000000000000002a'\n *\n * const totalSupply = AbiFunction.from('function totalSupply() returns (uint256)')\n *\n * const output = AbiFunction.decodeResult(totalSupply, data)\n * // @log: 42n\n * ```\n *\n * @example\n * You can extract an ABI Function from a JSON ABI with {@link ox#AbiFunction.(fromAbi:function)}:\n *\n * ```ts twoslash\n * // @noErrors\n * import { Abi, AbiFunction } from 'ox'\n *\n * const data = '0x000000000000000000000000000000000000000000000000000000000000002a'\n *\n * const erc20Abi = Abi.from([...]) // [!code hl]\n * const totalSupply = AbiFunction.fromAbi(erc20Abi, 'totalSupply') // [!code hl]\n *\n * const output = AbiFunction.decodeResult(totalSupply, data)\n * // @log: 42n\n * ```\n *\n * @example\n * ### End-to-end\n *\n * Below is an end-to-end example of using `AbiFunction.decodeResult` to decode the result of a `balanceOf` contract call on the [Wagmi Mint Example contract](https://etherscan.io/address/0xfba3912ca04dd458c843e2ee08967fc04f3579c2).\n *\n * ```ts twoslash\n * import 'ox/window'\n * import { Abi, AbiFunction } from 'ox'\n *\n * // 1. Extract the Function from the Contract's ABI.\n * const abi = Abi.from([\n *   // ...\n *   {\n *     name: 'balanceOf',\n *     type: 'function',\n *     inputs: [{ name: 'account', type: 'address' }],\n *     outputs: [{ name: 'balance', type: 'uint256' }],\n *     stateMutability: 'view',\n *   },\n *   // ...\n * ])\n * const balanceOf = AbiFunction.fromAbi(abi, 'balanceOf')\n *\n * // 2. Encode the Function Input.\n * const data = AbiFunction.encodeData(\n *   balanceOf,\n *   ['0xd2135CfB216b74109775236E36d4b433F1DF507B']\n * )\n *\n * // 3. Perform the Contract Call.\n * const response = await window.ethereum!.request({\n *   method: 'eth_call',\n *   params: [\n *     {\n *       data,\n *       to: '0xfba3912ca04dd458c843e2ee08967fc04f3579c2',\n *     },\n *   ],\n * })\n *\n * // 4. Decode the Function Output. // [!code focus]\n * const balance = AbiFunction.decodeResult(balanceOf, response) // [!code focus]\n * // @log: 42n\n * ```\n *\n * :::note\n *\n * For simplicity, the above example uses `window.ethereum.request`, but you can use any\n * type of JSON-RPC interface.\n *\n * :::\n *\n * @param abiFunction - ABI Function to decode\n * @param data - ABI-encoded function output\n * @param options - Decoding options\n * @returns Decoded function output\n */\nexport function decodeResult<\n  const abiFunction extends AbiFunction,\n  as extends 'Object' | 'Array' = 'Array',\n>(\n  abiFunction: abiFunction | AbiFunction,\n  data: Hex.Hex,\n  options: decodeResult.Options<as> = {},\n): decodeResult.ReturnType<abiFunction, as> {\n  const values = AbiParameters.decode(abiFunction.outputs, data, options)\n  if (values && Object.keys(values).length === 0) return undefined\n  if (values && Object.keys(values).length === 1) {\n    if (Array.isArray(values)) return values[0]\n    return Object.values(values)[0]\n  }\n  return values\n}\n\nexport declare namespace decodeResult {\n  type Options<as extends 'Object' | 'Array'> = {\n    /**\n     * Whether the decoded values should be returned as an `Object` or `Array`.\n     *\n     * @default \"Array\"\n     */\n    as?: as | 'Array' | 'Object' | undefined\n  }\n\n  type ReturnType<\n    abiFunction extends AbiFunction = AbiFunction,\n    as extends 'Object' | 'Array' = 'Array',\n  > = IsNarrowable<abiFunction, AbiFunction> extends true\n    ? abiFunction['outputs'] extends readonly []\n      ? undefined\n      : abiFunction['outputs'] extends readonly [\n            infer type extends abitype.AbiParameter,\n          ]\n        ? abitype.AbiParameterToPrimitiveType<type>\n        : AbiParameters.decode.ReturnType<\n              abiFunction['outputs'],\n              as\n            > extends infer types\n          ? types extends readonly []\n            ? undefined\n            : types extends readonly [infer type]\n              ? type\n              : types\n          : never\n    : unknown\n\n  type ErrorType = AbiParameters.decode.ErrorType | Errors.GlobalErrorType\n}\n\n/**\n * ABI-encodes function arguments (`inputs`), prefixed with the 4 byte function selector.\n *\n * :::tip\n *\n * This function is typically used to encode a contract function and its arguments for contract calls (e.g. `data` parameter of an `eth_call` or `eth_sendTransaction`).\n *\n * See the [End-to-end Example](#end-to-end).\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const approve = AbiFunction.from('function approve(address, uint256)')\n *\n * const data = AbiFunction.encodeData( // [!code focus]\n *   approve, // [!code focus]\n *   ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 69420n] // [!code focus]\n * ) // [!code focus]\n * // @log: '0x095ea7b3000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa960450000000000000000000000000000000000000000000000000000000000010f2c'\n * ```\n *\n * @example\n * You can extract an ABI Function from a JSON ABI with {@link ox#AbiFunction.(fromAbi:function)}:\n *\n * ```ts twoslash\n * // @noErrors\n * import { Abi, AbiFunction } from 'ox'\n *\n * const erc20Abi = Abi.from([...]) // [!code hl]\n * const approve = AbiFunction.fromAbi(erc20Abi, 'approve') // [!code hl]\n *\n * const data = AbiFunction.encodeData(\n *   approve,\n *   ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 69420n]\n * )\n * // @log: '0x095ea7b3000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa960450000000000000000000000000000000000000000000000000000000000010f2c'\n * ```\n *\n * @example\n * ### End-to-end\n *\n * Below is an end-to-end example of using `AbiFunction.encodeData` to encode the input of a `balanceOf` contract call on the [Wagmi Mint Example contract](https://etherscan.io/address/0xfba3912ca04dd458c843e2ee08967fc04f3579c2).\n *\n * ```ts twoslash\n * import 'ox/window'\n * import { Abi, AbiFunction } from 'ox'\n *\n * // 1. Extract the Function from the Contract's ABI.\n * const abi = Abi.from([\n *   // ...\n *   {\n *     name: 'balanceOf',\n *     type: 'function',\n *     inputs: [{ name: 'account', type: 'address' }],\n *     outputs: [{ name: 'balance', type: 'uint256' }],\n *     stateMutability: 'view',\n *   },\n *   // ...\n * ])\n * const balanceOf = AbiFunction.fromAbi(abi, 'balanceOf')\n *\n * // 2. Encode the Function Input. // [!code focus]\n * const data = AbiFunction.encodeData( // [!code focus]\n *   balanceOf, // [!code focus]\n *   ['0xd2135CfB216b74109775236E36d4b433F1DF507B'] // [!code focus]\n * ) // [!code focus]\n *\n * // 3. Perform the Contract Call.\n * const response = await window.ethereum!.request({\n *   method: 'eth_call',\n *   params: [\n *     {\n *       data,\n *       to: '0xfba3912ca04dd458c843e2ee08967fc04f3579c2',\n *     },\n *   ],\n * })\n *\n * // 4. Decode the Function Output.\n * const balance = AbiFunction.decodeResult(balanceOf, response)\n * ```\n *\n * :::note\n *\n * For simplicity, the above example uses `window.ethereum.request`, but you can use any\n * type of JSON-RPC interface.\n *\n * :::\n *\n * @param abiFunction - ABI Function to encode\n * @param args - Function arguments\n * @returns ABI-encoded function name and arguments\n */\nexport function encodeData<const abiFunction extends AbiFunction>(\n  abiFunction: abiFunction | AbiFunction,\n  ...args: encodeData.Args<abiFunction>\n): Hex.Hex {\n  const { overloads } = abiFunction\n\n  const item = overloads\n    ? (fromAbi([abiFunction as AbiFunction, ...overloads], abiFunction.name, {\n        args: (args as any)[0],\n      }) as AbiFunction)\n    : abiFunction\n\n  const selector = getSelector(item)\n\n  const data =\n    args.length > 0\n      ? AbiParameters.encode(item.inputs, (args as any)[0])\n      : undefined\n\n  return data ? Hex.concat(selector, data) : selector\n}\n\nexport declare namespace encodeData {\n  type Args<abiFunction extends AbiFunction = AbiFunction> = IsNarrowable<\n    abiFunction,\n    AbiFunction\n  > extends true\n    ?\n        | (abitype.AbiParametersToPrimitiveTypes<\n            abiFunction['inputs']\n          > extends readonly []\n            ? []\n            : [abitype.AbiParametersToPrimitiveTypes<abiFunction['inputs']>])\n        | (abiFunction['overloads'] extends readonly AbiFunction[]\n            ? [\n                abitype.AbiParametersToPrimitiveTypes<\n                  abiFunction['overloads'][number]['inputs']\n                >,\n              ]\n            : [])\n    : readonly unknown[]\n\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/**\n * ABI-encodes a function's result (`outputs`).\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const totalSupply = AbiFunction.from('function totalSupply() returns (uint256)')\n * const output = AbiFunction.decodeResult(totalSupply, '0x000000000000000000000000000000000000000000000000000000000000002a')\n * // 42n\n *\n * const data = AbiFunction.encodeResult(totalSupply, 42n) // [!code focus]\n * // @log: '0x000000000000000000000000000000000000000000000000000000000000002a'\n * ```\n *\n * @param abiFunction - The ABI item to encode the function output for.\n * @param output - The function output to encode.\n * @param options - Encoding options.\n * @returns The encoded function output.\n */\nexport function encodeResult<\n  const abiFunction extends AbiFunction,\n  as extends 'Object' | 'Array' = 'Array',\n>(\n  abiFunction: abiFunction | AbiFunction,\n  output: encodeResult.Output<abiFunction, as>,\n  options: encodeResult.Options<as> = {},\n): Hex.Hex {\n  const { as = 'Array' } = options\n\n  const values = (() => {\n    if (abiFunction.outputs.length === 1) return [output]\n    if (Array.isArray(output)) return output\n    if (as === 'Object') return Object.values(output as any)\n    return [output]\n  })()\n\n  return AbiParameters.encode(abiFunction.outputs, values)\n}\n\nexport declare namespace encodeResult {\n  type Output<\n    abiFunction extends AbiFunction = AbiFunction,\n    as extends 'Object' | 'Array' = 'Array',\n  > = abiFunction['outputs'] extends readonly []\n    ? never\n    : abiFunction['outputs']['length'] extends 1\n      ? AbiParameters_internal.ToPrimitiveTypes<abiFunction['outputs']>[0]\n      : as extends 'Object'\n        ? AbiParameters_internal.ToObject<abiFunction['outputs']>\n        : AbiParameters_internal.ToPrimitiveTypes<abiFunction['outputs']>\n\n  type Options<as extends 'Object' | 'Array'> = {\n    as?: as | 'Object' | 'Array' | undefined\n  }\n\n  type ErrorType = AbiParameters.encode.ErrorType | Errors.GlobalErrorType\n}\n\n/**\n * Formats an {@link ox#AbiFunction.AbiFunction} into a **Human Readable ABI Function**.\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const formatted = AbiFunction.format({\n *   type: 'function',\n *   name: 'approve',\n *   stateMutability: 'nonpayable',\n *   inputs: [\n *     {\n *       name: 'spender',\n *       type: 'address',\n *     },\n *     {\n *       name: 'amount',\n *       type: 'uint256',\n *     },\n *   ],\n *   outputs: [{ type: 'bool' }],\n * })\n *\n * formatted\n * //    ^?\n *\n *\n * ```\n *\n * @param abiFunction - The ABI Function to format.\n * @returns The formatted ABI Function.\n */\nexport function format<const abiFunction extends AbiFunction>(\n  abiFunction: abiFunction | AbiFunction,\n): abitype.FormatAbiItem<abiFunction> {\n  return abitype.formatAbiItem(abiFunction) as never\n}\n\nexport declare namespace format {\n  type ErrorType = Errors.GlobalErrorType\n}\n\n/**\n * Parses an arbitrary **JSON ABI Function** or **Human Readable ABI Function** into a typed {@link ox#AbiFunction.AbiFunction}.\n *\n * @example\n * ### JSON ABIs\n *\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const approve = AbiFunction.from({\n *   type: 'function',\n *   name: 'approve',\n *   stateMutability: 'nonpayable',\n *   inputs: [\n *     {\n *       name: 'spender',\n *       type: 'address',\n *     },\n *     {\n *       name: 'amount',\n *       type: 'uint256',\n *     },\n *   ],\n *   outputs: [{ type: 'bool' }],\n * })\n *\n * approve\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Human Readable ABIs\n *\n * A Human Readable ABI can be parsed into a typed ABI object:\n *\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const approve = AbiFunction.from(\n *   'function approve(address spender, uint256 amount) returns (bool)' // [!code hl]\n * )\n *\n * approve\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * It is possible to specify `struct`s along with your definitions:\n *\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const approve = AbiFunction.from([\n *   'struct Foo { address spender; uint256 amount; }', // [!code hl]\n *   'function approve(Foo foo) returns (bool)',\n * ])\n *\n * approve\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n *\n *\n * @param abiFunction - The ABI Function to parse.\n * @returns Typed ABI Function.\n */\nexport function from<\n  const abiFunction extends AbiFunction | string | readonly string[],\n>(\n  abiFunction: (abiFunction | AbiFunction | string | readonly string[]) &\n    (\n      | (abiFunction extends string ? internal.Signature<abiFunction> : never)\n      | (abiFunction extends readonly string[]\n          ? internal.Signatures<abiFunction>\n          : never)\n      | AbiFunction\n    ),\n  options: from.Options = {},\n): from.ReturnType<abiFunction> {\n  return AbiItem.from(abiFunction as AbiFunction, options) as never\n}\n\nexport declare namespace from {\n  type Options = {\n    /**\n     * Whether or not to prepare the extracted function (optimization for encoding performance).\n     * When `true`, the `hash` property is computed and included in the returned value.\n     *\n     * @default true\n     */\n    prepare?: boolean | undefined\n  }\n\n  type ReturnType<\n    abiFunction extends AbiFunction | string | readonly string[],\n  > = AbiItem.from.ReturnType<abiFunction>\n\n  type ErrorType = AbiItem.from.ErrorType | Errors.GlobalErrorType\n}\n\n/**\n * Extracts an {@link ox#AbiFunction.AbiFunction} from an {@link ox#Abi.Abi} given a name and optional arguments.\n *\n * @example\n * ### Extracting by Name\n *\n * ABI Functions can be extracted by their name using the `name` option:\n *\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const abi = Abi.from([\n *   'function foo()',\n *   'event Transfer(address owner, address to, uint256 tokenId)',\n *   'function bar(string a) returns (uint256 x)',\n * ])\n *\n * const item = AbiFunction.fromAbi(abi, 'foo') // [!code focus]\n * //    ^?\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Extracting by Selector\n *\n * ABI Functions can be extract by their selector when {@link ox#Hex.Hex} is provided to `name`.\n *\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const abi = Abi.from([\n *   'function foo()',\n *   'event Transfer(address owner, address to, uint256 tokenId)',\n *   'function bar(string a) returns (uint256 x)',\n * ])\n * const item = AbiFunction.fromAbi(abi, '0x095ea7b3') // [!code focus]\n * //    ^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * :::note\n *\n * Extracting via a hex selector is useful when extracting an ABI Function from an `eth_call` RPC response or\n * from a Transaction `input`.\n *\n * :::\n *\n * @param abi - The ABI to extract from.\n * @param name - The name (or selector) of the ABI item to extract.\n * @param options - Extraction options.\n * @returns The ABI item.\n */\nexport function fromAbi<\n  const abi extends Abi.Abi | readonly unknown[],\n  name extends Name<abi>,\n  const args extends\n    | AbiItem_internal.ExtractArgs<abi, name>\n    | undefined = undefined,\n  //\n  allNames = Name<abi>,\n>(\n  abi: abi | Abi.Abi | readonly unknown[],\n  name: Hex.Hex | (name extends allNames ? name : never),\n  options?: AbiItem.fromAbi.Options<\n    abi,\n    name,\n    args,\n    AbiItem_internal.ExtractArgs<abi, name>\n  >,\n): AbiItem.fromAbi.ReturnType<abi, name, args, AbiFunction> {\n  const item = AbiItem.fromAbi(abi, name, options as any)\n  if (item.type !== 'function')\n    throw new AbiItem.NotFoundError({ name, type: 'function' })\n  return item as never\n}\n\nexport declare namespace fromAbi {\n  type ErrorType = AbiItem.fromAbi.ErrorType | Errors.GlobalErrorType\n}\n\n/**\n * Computes the [4-byte selector](https://solidity-by-example.org/function-selector/) for an {@link ox#AbiFunction.AbiFunction}.\n *\n * Useful for computing function selectors for calldata.\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const selector = AbiFunction.getSelector('function ownerOf(uint256 tokenId)')\n * // @log: '0x6352211e'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const selector = AbiFunction.getSelector({\n *   inputs: [{ type: 'uint256' }],\n *   name: 'ownerOf',\n *   outputs: [],\n *   stateMutability: 'view',\n *   type: 'function'\n * })\n * // @log: '0x6352211e'\n * ```\n *\n * @param abiItem - The ABI item to compute the selector for.\n * @returns The first 4 bytes of the {@link ox#Hash.(keccak256:function)} hash of the function signature.\n */\nexport function getSelector(abiItem: string | AbiFunction): Hex.Hex {\n  return AbiItem.getSelector(abiItem)\n}\n\nexport declare namespace getSelector {\n  type ErrorType = AbiItem.getSelector.ErrorType | Errors.GlobalErrorType\n}\n","export const entryPoint06Address =\n  '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789' as const\nexport const entryPoint07Address =\n  '0x0000000071727De22E5E9d8BAf0edAc6f37da032' as const\nexport const entryPoint08Address =\n  '0x4337084D9E255Ff0702461CF8895CE9E3b5Ff108' as const\n\nexport const ethAddress = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' as const\n\nexport const zeroAddress = '0x0000000000000000000000000000000000000000' as const\n","import type { AbiStateMutability, Address, Narrow } from 'abitype'\nimport * as AbiConstructor from 'ox/AbiConstructor'\nimport * as AbiFunction from 'ox/AbiFunction'\n\nimport { parseAccount } from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { ethAddress, zeroAddress } from '../../constants/address.js'\nimport { deploylessCallViaBytecodeBytecode } from '../../constants/contracts.js'\nimport { BaseError } from '../../errors/base.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account } from '../../types/account.js'\nimport type { Block } from '../../types/block.js'\nimport type { Call, Calls } from '../../types/calls.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Log } from '../../types/log.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { MulticallResults } from '../../types/multicall.js'\nimport type { StateOverride } from '../../types/stateOverride.js'\nimport type { Mutable } from '../../types/utils.js'\nimport {\n  type EncodeFunctionDataErrorType,\n  encodeFunctionData,\n} from '../../utils/abi/encodeFunctionData.js'\nimport { hexToBigInt } from '../../utils/index.js'\nimport {\n  type CreateAccessListErrorType,\n  createAccessList,\n} from './createAccessList.js'\nimport {\n  type SimulateBlocksErrorType,\n  type SimulateBlocksParameters,\n  simulateBlocks,\n} from './simulateBlocks.js'\n\nconst getBalanceCode =\n  '0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033'\n\nexport type SimulateCallsParameters<\n  calls extends readonly unknown[] = readonly unknown[],\n  account extends Account | Address | undefined = Account | Address | undefined,\n> = Omit<SimulateBlocksParameters, 'blocks' | 'returnFullTransactions'> & {\n  /** Account attached to the calls (msg.sender). */\n  account?: account | undefined\n  /** Calls to simulate. */\n  calls: Calls<Narrow<calls>>\n  /** State overrides. */\n  stateOverrides?: StateOverride | undefined\n  /** Whether to trace asset changes. */\n  traceAssetChanges?: boolean | undefined\n}\n\nexport type SimulateCallsReturnType<\n  calls extends readonly unknown[] = readonly unknown[],\n> = {\n  /** Asset changes. */\n  assetChanges: readonly {\n    token: {\n      address: Address\n      decimals?: number | undefined\n      symbol?: string | undefined\n    }\n    value: { pre: bigint; post: bigint; diff: bigint }\n  }[]\n  /** Block results. */\n  block: Block\n  /** Call results. */\n  results: MulticallResults<\n    Narrow<calls>,\n    true,\n    {\n      extraProperties: {\n        data: Hex\n        gasUsed: bigint\n        logs?: Log[] | undefined\n      }\n      error: Error\n      mutability: AbiStateMutability\n    }\n  >\n}\n\nexport type SimulateCallsErrorType =\n  | AbiFunction.encodeData.ErrorType\n  | AbiFunction.from.ErrorType\n  | CreateAccessListErrorType\n  | EncodeFunctionDataErrorType\n  | SimulateBlocksErrorType\n  | ErrorType\n\n/**\n * Simulates execution of a batch of calls.\n *\n * @param client - Client to use\n * @param parameters - {@link SimulateCallsParameters}\n * @returns Results. {@link SimulateCallsReturnType}\n *\n * @example\n * ```ts\n * import { createPublicClient, http, parseEther } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { simulateCalls } from 'viem/actions'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n *\n * const result = await simulateCalls(client, {\n *   account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n *   calls: [{\n *     {\n *       data: '0xdeadbeef',\n *       to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *     },\n *     {\n *       to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n *       value: parseEther('1'),\n *     },\n *   ]\n * })\n * ```\n */\nexport async function simulateCalls<\n  const calls extends readonly unknown[],\n  chain extends Chain | undefined,\n  account extends Account | Address | undefined = undefined,\n>(\n  client: Client<Transport, chain>,\n  parameters: SimulateCallsParameters<calls, account>,\n): Promise<SimulateCallsReturnType<calls>> {\n  const {\n    blockNumber,\n    blockTag,\n    calls,\n    stateOverrides,\n    traceAssetChanges,\n    traceTransfers,\n    validation,\n  } = parameters\n\n  const account = parameters.account\n    ? parseAccount(parameters.account)\n    : undefined\n\n  if (traceAssetChanges && !account)\n    throw new BaseError(\n      '`account` is required when `traceAssetChanges` is true',\n    )\n\n  // Derive bytecode to extract ETH balance via a contract call.\n  const getBalanceData = account\n    ? AbiConstructor.encode(AbiConstructor.from('constructor(bytes, bytes)'), {\n        bytecode: deploylessCallViaBytecodeBytecode,\n        args: [\n          getBalanceCode,\n          AbiFunction.encodeData(\n            AbiFunction.from('function getBalance(address)'),\n            [account.address],\n          ),\n        ],\n      })\n    : undefined\n\n  // Fetch ERC20/721 addresses that were \"touched\" from the calls.\n  const assetAddresses = traceAssetChanges\n    ? await Promise.all(\n        parameters.calls.map(async (call: any) => {\n          if (!call.data && !call.abi) return\n          const { accessList } = await createAccessList(client, {\n            account: account!.address,\n            ...call,\n            data: call.abi ? encodeFunctionData(call) : call.data,\n          })\n          return accessList.map(({ address, storageKeys }) =>\n            storageKeys.length > 0 ? address : null,\n          )\n        }),\n      ).then((x) => x.flat().filter(Boolean))\n    : []\n\n  const blocks = await simulateBlocks(client, {\n    blockNumber,\n    blockTag: blockTag as undefined,\n    blocks: [\n      ...(traceAssetChanges\n        ? [\n            // ETH pre balances\n            {\n              calls: [{ data: getBalanceData }],\n              stateOverrides,\n            },\n\n            // Asset pre balances\n            {\n              calls: assetAddresses.map((address, i) => ({\n                abi: [\n                  AbiFunction.from(\n                    'function balanceOf(address) returns (uint256)',\n                  ),\n                ],\n                functionName: 'balanceOf',\n                args: [account!.address],\n                to: address,\n                from: zeroAddress,\n                nonce: i,\n              })),\n              stateOverrides: [\n                {\n                  address: zeroAddress,\n                  nonce: 0,\n                },\n              ],\n            },\n          ]\n        : []),\n\n      {\n        calls: [...calls, {}].map((call) => ({\n          ...(call as Call),\n          from: account?.address,\n        })) as any,\n        stateOverrides,\n      },\n\n      ...(traceAssetChanges\n        ? [\n            // ETH post balances\n            {\n              calls: [{ data: getBalanceData }],\n            },\n\n            // Asset post balances\n            {\n              calls: assetAddresses.map((address, i) => ({\n                abi: [\n                  AbiFunction.from(\n                    'function balanceOf(address) returns (uint256)',\n                  ),\n                ],\n                functionName: 'balanceOf',\n                args: [account!.address],\n                to: address,\n                from: zeroAddress,\n                nonce: i,\n              })),\n              stateOverrides: [\n                {\n                  address: zeroAddress,\n                  nonce: 0,\n                },\n              ],\n            },\n\n            // Decimals\n            {\n              calls: assetAddresses.map((address, i) => ({\n                to: address,\n                abi: [\n                  AbiFunction.from('function decimals() returns (uint256)'),\n                ],\n                functionName: 'decimals',\n                from: zeroAddress,\n                nonce: i,\n              })),\n              stateOverrides: [\n                {\n                  address: zeroAddress,\n                  nonce: 0,\n                },\n              ],\n            },\n\n            // Token URI\n            {\n              calls: assetAddresses.map((address, i) => ({\n                to: address,\n                abi: [\n                  AbiFunction.from(\n                    'function tokenURI(uint256) returns (string)',\n                  ),\n                ],\n                functionName: 'tokenURI',\n                args: [0n],\n                from: zeroAddress,\n                nonce: i,\n              })),\n              stateOverrides: [\n                {\n                  address: zeroAddress,\n                  nonce: 0,\n                },\n              ],\n            },\n\n            // Symbols\n            {\n              calls: assetAddresses.map((address, i) => ({\n                to: address,\n                abi: [AbiFunction.from('function symbol() returns (string)')],\n                functionName: 'symbol',\n                from: zeroAddress,\n                nonce: i,\n              })),\n              stateOverrides: [\n                {\n                  address: zeroAddress,\n                  nonce: 0,\n                },\n              ],\n            },\n          ]\n        : []),\n    ],\n    traceTransfers,\n    validation,\n  })\n\n  const block_results = traceAssetChanges ? blocks[2] : blocks[0]\n  const [\n    block_ethPre,\n    block_assetsPre,\n    ,\n    block_ethPost,\n    block_assetsPost,\n    block_decimals,\n    block_tokenURI,\n    block_symbols,\n  ] = traceAssetChanges ? blocks : []\n\n  // Extract call results from the simulation.\n  const { calls: block_calls, ...block } = block_results\n  const results = block_calls.slice(0, -1) ?? []\n\n  // Extract pre-execution ETH and asset balances.\n  const ethPre = block_ethPre?.calls ?? []\n  const assetsPre = block_assetsPre?.calls ?? []\n  const balancesPre = [...ethPre, ...assetsPre].map((call) =>\n    call.status === 'success' ? hexToBigInt(call.data) : null,\n  )\n\n  // Extract post-execution ETH and asset balances.\n  const ethPost = block_ethPost?.calls ?? []\n  const assetsPost = block_assetsPost?.calls ?? []\n  const balancesPost = [...ethPost, ...assetsPost].map((call) =>\n    call.status === 'success' ? hexToBigInt(call.data) : null,\n  )\n\n  // Extract asset symbols & decimals.\n  const decimals = (block_decimals?.calls ?? []).map((x) =>\n    x.status === 'success' ? x.result : null,\n  ) as (number | null)[]\n  const symbols = (block_symbols?.calls ?? []).map((x) =>\n    x.status === 'success' ? x.result : null,\n  ) as (string | null)[]\n  const tokenURI = (block_tokenURI?.calls ?? []).map((x) =>\n    x.status === 'success' ? x.result : null,\n  ) as (string | null)[]\n\n  const changes: Mutable<SimulateCallsReturnType<calls>['assetChanges']> = []\n  for (const [i, balancePost] of balancesPost.entries()) {\n    const balancePre = balancesPre[i]\n\n    if (typeof balancePost !== 'bigint') continue\n    if (typeof balancePre !== 'bigint') continue\n\n    const decimals_ = decimals[i - 1]\n    const symbol_ = symbols[i - 1]\n    const tokenURI_ = tokenURI[i - 1]\n\n    const token = (() => {\n      if (i === 0)\n        return {\n          address: ethAddress,\n          decimals: 18,\n          symbol: 'ETH',\n        }\n\n      return {\n        address: assetAddresses[i - 1]! as Address,\n        decimals: tokenURI_ || decimals_ ? Number(decimals_ ?? 1) : undefined,\n        symbol: symbol_ ?? undefined,\n      }\n    })()\n\n    if (changes.some((change) => change.token.address === token.address))\n      continue\n\n    changes.push({\n      token,\n      value: {\n        pre: balancePre,\n        post: balancePost,\n        diff: balancePost - balancePre,\n      },\n    })\n  }\n\n  return {\n    assetChanges: changes,\n    block,\n    results,\n  } as unknown as SimulateCallsReturnType<calls>\n}\n","import { secp256k1 } from '@noble/curves/secp256k1'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex, Signature } from '../../types/misc.js'\nimport { type HexToBigIntErrorType, hexToBigInt } from '../encoding/fromHex.js'\nimport { hexToBytes } from '../encoding/toBytes.js'\nimport type { ToHexErrorType } from '../encoding/toHex.js'\n\ntype To = 'bytes' | 'hex'\n\nexport type SerializeSignatureParameters<to extends To = 'hex'> = Signature & {\n  to?: to | To | undefined\n}\n\nexport type SerializeSignatureReturnType<to extends To = 'hex'> =\n  | (to extends 'hex' ? Hex : never)\n  | (to extends 'bytes' ? ByteArray : never)\n\nexport type SerializeSignatureErrorType =\n  | HexToBigIntErrorType\n  | ToHexErrorType\n  | ErrorType\n\n/**\n * @description Converts a signature into hex format.\n *\n * @param signature The signature to convert.\n * @returns The signature in hex format.\n *\n * @example\n * serializeSignature({\n *   r: '0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf',\n *   s: '0x4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db8',\n *   yParity: 1\n * })\n * // \"0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c\"\n */\nexport function serializeSignature<to extends To = 'hex'>({\n  r,\n  s,\n  to = 'hex',\n  v,\n  yParity,\n}: SerializeSignatureParameters<to>): SerializeSignatureReturnType<to> {\n  const yParity_ = (() => {\n    if (yParity === 0 || yParity === 1) return yParity\n    if (v && (v === 27n || v === 28n || v >= 35n)) return v % 2n === 0n ? 1 : 0\n    throw new Error('Invalid `v` or `yParity` value')\n  })()\n  const signature = `0x${new secp256k1.Signature(\n    hexToBigInt(r),\n    hexToBigInt(s),\n  ).toCompactHex()}${yParity_ === 0 ? '1b' : '1c'}` as const\n\n  if (to === 'hex') return signature as SerializeSignatureReturnType<to>\n  return hexToBytes(signature) as SerializeSignatureReturnType<to>\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { universalSignatureValidatorAbi } from '../../constants/abis.js'\nimport { universalSignatureValidatorByteCode } from '../../constants/contracts.js'\nimport { CallExecutionError } from '../../errors/contract.js'\nimport type { InvalidHexBooleanError } from '../../errors/encoding.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { ByteArray, Hex, Signature } from '../../types/misc.js'\nimport type { OneOf } from '../../types/utils.js'\nimport {\n  type EncodeDeployDataErrorType,\n  encodeDeployData,\n} from '../../utils/abi/encodeDeployData.js'\nimport { getAddress } from '../../utils/address/getAddress.js'\nimport { isAddressEqual } from '../../utils/address/isAddressEqual.js'\nimport { type IsHexErrorType, isHex } from '../../utils/data/isHex.js'\nimport { type ToHexErrorType, bytesToHex } from '../../utils/encoding/toHex.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { encodeFunctionData, hexToBool } from '../../utils/index.js'\nimport { isErc6492Signature } from '../../utils/signature/isErc6492Signature.js'\nimport { recoverAddress } from '../../utils/signature/recoverAddress.js'\nimport { serializeErc6492Signature } from '../../utils/signature/serializeErc6492Signature.js'\nimport { serializeSignature } from '../../utils/signature/serializeSignature.js'\nimport { type CallErrorType, type CallParameters, call } from './call.js'\n\nexport type VerifyHashParameters = Pick<\n  CallParameters,\n  'blockNumber' | 'blockTag'\n> & {\n  /** The address that signed the original message. */\n  address: Address\n  /** The hash to be verified. */\n  hash: Hex\n  /** The signature that was generated by signing the message with the address's private key. */\n  signature: Hex | ByteArray | Signature\n  universalSignatureVerifierAddress?: Address | undefined\n} & OneOf<{ factory: Address; factoryData: Hex } | {}>\n\nexport type VerifyHashReturnType = boolean\n\nexport type VerifyHashErrorType =\n  | CallErrorType\n  | IsHexErrorType\n  | ToHexErrorType\n  | InvalidHexBooleanError\n  | EncodeDeployDataErrorType\n  | ErrorType\n\n/**\n * Verifies a message hash onchain using ERC-6492.\n *\n * @param client - Client to use.\n * @param parameters - {@link VerifyHashParameters}\n * @returns Whether or not the signature is valid. {@link VerifyHashReturnType}\n */\nexport async function verifyHash<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  parameters: VerifyHashParameters,\n): Promise<VerifyHashReturnType> {\n  const {\n    address,\n    factory,\n    factoryData,\n    hash,\n    signature,\n    universalSignatureVerifierAddress = client.chain?.contracts\n      ?.universalSignatureVerifier?.address,\n    ...rest\n  } = parameters\n\n  const signatureHex = (() => {\n    if (isHex(signature)) return signature\n    if (typeof signature === 'object' && 'r' in signature && 's' in signature)\n      return serializeSignature(signature)\n    return bytesToHex(signature)\n  })()\n\n  const wrappedSignature = await (async () => {\n    // If no `factory` or `factoryData` is provided, it is assumed that the\n    // address is not a Smart Account, or the Smart Account is already deployed.\n    if (!factory && !factoryData) return signatureHex\n\n    // If the signature is already wrapped, return the signature.\n    if (isErc6492Signature(signatureHex)) return signatureHex\n\n    // If the Smart Account is not deployed, wrap the signature with a 6492 wrapper\n    // to perform counterfactual validation.\n    return serializeErc6492Signature({\n      address: factory!,\n      data: factoryData!,\n      signature: signatureHex,\n    })\n  })()\n\n  try {\n    const args = universalSignatureVerifierAddress\n      ? ({\n          to: universalSignatureVerifierAddress,\n          data: encodeFunctionData({\n            abi: universalSignatureValidatorAbi,\n            functionName: 'isValidSig',\n            args: [address, hash, wrappedSignature],\n          }),\n          ...rest,\n        } as unknown as CallParameters)\n      : ({\n          data: encodeDeployData({\n            abi: universalSignatureValidatorAbi,\n            args: [address, hash, wrappedSignature],\n            bytecode: universalSignatureValidatorByteCode,\n          }),\n          ...rest,\n        } as unknown as CallParameters)\n\n    const { data } = await getAction(client, call, 'call')(args)\n\n    return hexToBool(data ?? '0x0')\n  } catch (error) {\n    // Fallback attempt to verify the signature via ECDSA recovery.\n    try {\n      const verified = isAddressEqual(\n        getAddress(address),\n        await recoverAddress({ hash, signature }),\n      )\n      if (verified) return true\n    } catch {}\n\n    if (error instanceof CallExecutionError) {\n      // if the execution fails, the signature was not valid and an internal method inside of the validator reverted\n      // this can happen for many reasons, for example if signer can not be recovered from the signature\n      // or if the signature has no valid format\n      return false\n    }\n\n    throw error\n  }\n}\n","import type { Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ByteArray,\n  Hex,\n  SignableMessage,\n  Signature,\n} from '../../types/misc.js'\nimport type { Prettify } from '../../types/utils.js'\nimport { hashMessage } from '../../utils/signature/hashMessage.js'\nimport type { HashMessageErrorType } from '../../utils/signature/hashMessage.js'\nimport {\n  type VerifyHashErrorType,\n  type VerifyHashParameters,\n  verifyHash,\n} from './verifyHash.js'\n\nexport type VerifyMessageParameters = Prettify<\n  Omit<VerifyHashParameters, 'hash'> & {\n    /** The address that signed the original message. */\n    address: Address\n    /** The message to be verified. */\n    message: SignableMessage\n    /** The signature that was generated by signing the message with the address's private key. */\n    signature: Hex | ByteArray | Signature\n  }\n>\n\nexport type VerifyMessageReturnType = boolean\n\nexport type VerifyMessageErrorType =\n  | HashMessageErrorType\n  | VerifyHashErrorType\n  | ErrorType\n\n/**\n * Verify that a message was signed by the provided address.\n *\n * Compatible with Smart Contract Accounts & Externally Owned Accounts via [ERC-6492](https://eips.ethereum.org/EIPS/eip-6492).\n *\n * - Docs {@link https://viem.sh/docs/actions/public/verifyMessage}\n *\n * @param client - Client to use.\n * @param parameters - {@link VerifyMessageParameters}\n * @returns Whether or not the signature is valid. {@link VerifyMessageReturnType}\n */\nexport async function verifyMessage<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  {\n    address,\n    message,\n    factory,\n    factoryData,\n    signature,\n    ...callRequest\n  }: VerifyMessageParameters,\n): Promise<VerifyMessageReturnType> {\n  const hash = hashMessage(message)\n  return verifyHash(client, {\n    address,\n    factory: factory!,\n    factoryData: factoryData!,\n    hash,\n    signature,\n    ...callRequest,\n  })\n}\n","import type { Address, TypedData } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { ByteArray, Hex, Signature } from '../../types/misc.js'\nimport type { TypedDataDefinition } from '../../types/typedData.js'\nimport {\n  type HashTypedDataErrorType,\n  hashTypedData,\n} from '../../utils/signature/hashTypedData.js'\nimport {\n  type VerifyHashErrorType,\n  type VerifyHashParameters,\n  verifyHash,\n} from './verifyHash.js'\n\nexport type VerifyTypedDataParameters<\n  typedData extends TypedData | Record<string, unknown> = TypedData,\n  primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData,\n> = Omit<VerifyHashParameters, 'hash'> &\n  TypedDataDefinition<typedData, primaryType> & {\n    /** The address to verify the typed data for. */\n    address: Address\n    /** The signature to verify */\n    signature: Hex | ByteArray | Signature\n  }\n\nexport type VerifyTypedDataReturnType = boolean\n\nexport type VerifyTypedDataErrorType =\n  | HashTypedDataErrorType\n  | VerifyHashErrorType\n  | ErrorType\n\n/**\n * Verify that typed data was signed by the provided address.\n *\n * - Docs {@link https://viem.sh/docs/actions/public/verifyTypedData}\n *\n * @param client - Client to use.\n * @param parameters - {@link VerifyTypedDataParameters}\n * @returns Whether or not the signature is valid. {@link VerifyTypedDataReturnType}\n */\nexport async function verifyTypedData<\n  const typedData extends TypedData | Record<string, unknown>,\n  primaryType extends keyof typedData | 'EIP712Domain',\n  chain extends Chain | undefined,\n>(\n  client: Client<Transport, chain>,\n  parameters: VerifyTypedDataParameters<typedData, primaryType>,\n): Promise<VerifyTypedDataReturnType> {\n  const {\n    address,\n    factory,\n    factoryData,\n    signature,\n    message,\n    primaryType,\n    types,\n    domain,\n    ...callRequest\n  } = parameters as VerifyTypedDataParameters\n  const hash = hashTypedData({ message, primaryType, types, domain })\n  return verifyHash(client, {\n    address,\n    factory: factory!,\n    factoryData: factoryData!,\n    hash,\n    signature,\n    ...callRequest,\n  })\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { HasTransportType } from '../../types/transport.js'\nimport { hexToBigInt } from '../../utils/encoding/fromHex.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { observe } from '../../utils/observe.js'\nimport { type PollErrorType, poll } from '../../utils/poll.js'\nimport { stringify } from '../../utils/stringify.js'\n\nimport {\n  type GetBlockNumberReturnType,\n  getBlockNumber,\n} from './getBlockNumber.js'\n\nexport type OnBlockNumberParameter = GetBlockNumberReturnType\nexport type OnBlockNumberFn = (\n  blockNumber: OnBlockNumberParameter,\n  prevBlockNumber: OnBlockNumberParameter | undefined,\n) => void\n\nexport type WatchBlockNumberParameters<\n  transport extends Transport = Transport,\n> = {\n  /** The callback to call when a new block number is received. */\n  onBlockNumber: OnBlockNumberFn\n  /** The callback to call when an error occurred when trying to get for a new block. */\n  onError?: ((error: Error) => void) | undefined\n} & (\n  | (HasTransportType<transport, 'webSocket' | 'ipc'> extends true\n      ? {\n          emitMissed?: undefined\n          emitOnBegin?: undefined\n          /** Whether or not the WebSocket Transport should poll the JSON-RPC, rather than using `eth_subscribe`. */\n          poll?: false | undefined\n          pollingInterval?: undefined\n        }\n      : never)\n  | {\n      /** Whether or not to emit the missed block numbers to the callback. */\n      emitMissed?: boolean | undefined\n      /** Whether or not to emit the latest block number to the callback when the subscription opens. */\n      emitOnBegin?: boolean | undefined\n      poll?: true | undefined\n      /** Polling frequency (in ms). Defaults to Client's pollingInterval config. */\n      pollingInterval?: number | undefined\n    }\n)\n\nexport type WatchBlockNumberReturnType = () => void\n\nexport type WatchBlockNumberErrorType = PollErrorType | ErrorType\n\n/**\n * Watches and returns incoming block numbers.\n *\n * - Docs: https://viem.sh/docs/actions/public/watchBlockNumber\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_watching-blocks\n * - JSON-RPC Methods:\n *   - When `poll: true`, calls [`eth_blockNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blocknumber) on a polling interval.\n *   - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newHeads\"` event.\n *\n * @param client - Client to use\n * @param parameters - {@link WatchBlockNumberParameters}\n * @returns A function that can be invoked to stop watching for new block numbers. {@link WatchBlockNumberReturnType}\n *\n * @example\n * import { createPublicClient, watchBlockNumber, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const unwatch = watchBlockNumber(client, {\n *   onBlockNumber: (blockNumber) => console.log(blockNumber),\n * })\n */\nexport function watchBlockNumber<\n  chain extends Chain | undefined,\n  transport extends Transport,\n>(\n  client: Client<transport, chain>,\n  {\n    emitOnBegin = false,\n    emitMissed = false,\n    onBlockNumber,\n    onError,\n    poll: poll_,\n    pollingInterval = client.pollingInterval,\n  }: WatchBlockNumberParameters<transport>,\n): WatchBlockNumberReturnType {\n  const enablePolling = (() => {\n    if (typeof poll_ !== 'undefined') return poll_\n    if (\n      client.transport.type === 'webSocket' ||\n      client.transport.type === 'ipc'\n    )\n      return false\n    if (\n      client.transport.type === 'fallback' &&\n      (client.transport.transports[0].config.type === 'webSocket' ||\n        client.transport.transports[0].config.type === 'ipc')\n    )\n      return false\n    return true\n  })()\n\n  let prevBlockNumber: GetBlockNumberReturnType | undefined\n\n  const pollBlockNumber = () => {\n    const observerId = stringify([\n      'watchBlockNumber',\n      client.uid,\n      emitOnBegin,\n      emitMissed,\n      pollingInterval,\n    ])\n\n    return observe(observerId, { onBlockNumber, onError }, (emit) =>\n      poll(\n        async () => {\n          try {\n            const blockNumber = await getAction(\n              client,\n              getBlockNumber,\n              'getBlockNumber',\n            )({ cacheTime: 0 })\n\n            if (prevBlockNumber) {\n              // If the current block number is the same as the previous,\n              // we can skip.\n              if (blockNumber === prevBlockNumber) return\n\n              // If we have missed out on some previous blocks, and the\n              // `emitMissed` flag is truthy, let's emit those blocks.\n              if (blockNumber - prevBlockNumber > 1 && emitMissed) {\n                for (let i = prevBlockNumber + 1n; i < blockNumber; i++) {\n                  emit.onBlockNumber(i, prevBlockNumber)\n                  prevBlockNumber = i\n                }\n              }\n            }\n\n            // If the next block number is greater than the previous,\n            // it is not in the past, and we can emit the new block number.\n            if (!prevBlockNumber || blockNumber > prevBlockNumber) {\n              emit.onBlockNumber(blockNumber, prevBlockNumber)\n              prevBlockNumber = blockNumber\n            }\n          } catch (err) {\n            emit.onError?.(err as Error)\n          }\n        },\n        {\n          emitOnBegin,\n          interval: pollingInterval,\n        },\n      ),\n    )\n  }\n\n  const subscribeBlockNumber = () => {\n    const observerId = stringify([\n      'watchBlockNumber',\n      client.uid,\n      emitOnBegin,\n      emitMissed,\n    ])\n\n    return observe(observerId, { onBlockNumber, onError }, (emit) => {\n      let active = true\n      let unsubscribe = () => (active = false)\n      ;(async () => {\n        try {\n          const transport = (() => {\n            if (client.transport.type === 'fallback') {\n              const transport = client.transport.transports.find(\n                (transport: ReturnType<Transport>) =>\n                  transport.config.type === 'webSocket' ||\n                  transport.config.type === 'ipc',\n              )\n              if (!transport) return client.transport\n              return transport.value\n            }\n            return client.transport\n          })()\n\n          const { unsubscribe: unsubscribe_ } = await transport.subscribe({\n            params: ['newHeads'],\n            onData(data: any) {\n              if (!active) return\n              const blockNumber = hexToBigInt(data.result?.number)\n              emit.onBlockNumber(blockNumber, prevBlockNumber)\n              prevBlockNumber = blockNumber\n            },\n            onError(error: Error) {\n              emit.onError?.(error)\n            },\n          })\n          unsubscribe = unsubscribe_\n          if (!active) unsubscribe()\n        } catch (err) {\n          onError?.(err as Error)\n        }\n      })()\n      return () => unsubscribe()\n    })\n  }\n\n  return enablePolling ? pollBlockNumber() : subscribeBlockNumber()\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { BlockNotFoundError } from '../../errors/block.js'\nimport {\n  TransactionNotFoundError,\n  TransactionReceiptNotFoundError,\n  WaitForTransactionReceiptTimeoutError,\n  type WaitForTransactionReceiptTimeoutErrorType,\n} from '../../errors/transaction.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { Transaction } from '../../types/transaction.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { type ObserveErrorType, observe } from '../../utils/observe.js'\nimport { withResolvers } from '../../utils/promise/withResolvers.js'\nimport {\n  type WithRetryParameters,\n  withRetry,\n} from '../../utils/promise/withRetry.js'\nimport { stringify } from '../../utils/stringify.js'\n\nimport { type GetBlockErrorType, getBlock } from './getBlock.js'\nimport {\n  type GetTransactionErrorType,\n  type GetTransactionReturnType,\n  getTransaction,\n} from './getTransaction.js'\nimport {\n  type GetTransactionReceiptErrorType,\n  type GetTransactionReceiptReturnType,\n  getTransactionReceipt,\n} from './getTransactionReceipt.js'\nimport {\n  type WatchBlockNumberErrorType,\n  watchBlockNumber,\n} from './watchBlockNumber.js'\n\nexport type ReplacementReason = 'cancelled' | 'replaced' | 'repriced'\nexport type ReplacementReturnType<\n  chain extends Chain | undefined = Chain | undefined,\n> = {\n  reason: ReplacementReason\n  replacedTransaction: Transaction\n  transaction: Transaction\n  transactionReceipt: GetTransactionReceiptReturnType<chain>\n}\n\nexport type WaitForTransactionReceiptReturnType<\n  chain extends Chain | undefined = Chain | undefined,\n> = GetTransactionReceiptReturnType<chain>\n\nexport type WaitForTransactionReceiptParameters<\n  chain extends Chain | undefined = Chain | undefined,\n> = {\n  /**\n   * The number of confirmations (blocks that have passed) to wait before resolving.\n   * @default 1\n   */\n  confirmations?: number | undefined\n  /** The hash of the transaction. */\n  hash: Hash\n  /** Optional callback to emit if the transaction has been replaced. */\n  onReplaced?: ((response: ReplacementReturnType<chain>) => void) | undefined\n  /**\n   * Polling frequency (in ms). Defaults to the client's pollingInterval config.\n   * @default client.pollingInterval\n   */\n  pollingInterval?: number | undefined\n  /**\n   * Number of times to retry if the transaction or block is not found.\n   * @default 6 (exponential backoff)\n   */\n  retryCount?: WithRetryParameters['retryCount'] | undefined\n  /**\n   * Time to wait (in ms) between retries.\n   * @default `({ count }) => ~~(1 << count) * 200` (exponential backoff)\n   */\n  retryDelay?: WithRetryParameters['delay'] | undefined\n  /**\n   * Optional timeout (in milliseconds) to wait before stopping polling.\n   * @default 180_000\n   */\n  timeout?: number | undefined\n}\n\nexport type WaitForTransactionReceiptErrorType =\n  | ObserveErrorType\n  | GetBlockErrorType\n  | GetTransactionErrorType\n  | GetTransactionReceiptErrorType\n  | WatchBlockNumberErrorType\n  | WaitForTransactionReceiptTimeoutErrorType\n  | ErrorType\n\n/**\n * Waits for the [Transaction](https://viem.sh/docs/glossary/terms#transaction) to be included on a [Block](https://viem.sh/docs/glossary/terms#block) (one confirmation), and then returns the [Transaction Receipt](https://viem.sh/docs/glossary/terms#transaction-receipt).\n *\n * - Docs: https://viem.sh/docs/actions/public/waitForTransactionReceipt\n * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_sending-transactions\n * - JSON-RPC Methods:\n *   - Polls [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionReceipt) on each block until it has been processed.\n *   - If a Transaction has been replaced:\n *     - Calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbynumber) and extracts the transactions\n *     - Checks if one of the Transactions is a replacement\n *     - If so, calls [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionReceipt).\n *\n * The `waitForTransactionReceipt` action additionally supports Replacement detection (e.g. sped up Transactions).\n *\n * Transactions can be replaced when a user modifies their transaction in their wallet (to speed up or cancel). Transactions are replaced when they are sent from the same nonce.\n *\n * There are 3 types of Transaction Replacement reasons:\n *\n * - `repriced`: The gas price has been modified (e.g. different `maxFeePerGas`)\n * - `cancelled`: The Transaction has been cancelled (e.g. `value === 0n`)\n * - `replaced`: The Transaction has been replaced (e.g. different `value` or `data`)\n *\n * @param client - Client to use\n * @param parameters - {@link WaitForTransactionReceiptParameters}\n * @returns The transaction receipt. {@link WaitForTransactionReceiptReturnType}\n *\n * @example\n * import { createPublicClient, waitForTransactionReceipt, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const transactionReceipt = await waitForTransactionReceipt(client, {\n *   hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nexport async function waitForTransactionReceipt<\n  chain extends Chain | undefined,\n>(\n  client: Client<Transport, chain>,\n  {\n    confirmations = 1,\n    hash,\n    onReplaced,\n    pollingInterval = client.pollingInterval,\n    retryCount = 6,\n    retryDelay = ({ count }) => ~~(1 << count) * 200, // exponential backoff\n    timeout = 180_000,\n  }: WaitForTransactionReceiptParameters<chain>,\n): Promise<WaitForTransactionReceiptReturnType<chain>> {\n  const observerId = stringify(['waitForTransactionReceipt', client.uid, hash])\n\n  let transaction: GetTransactionReturnType<chain> | undefined\n  let replacedTransaction: GetTransactionReturnType<chain> | undefined\n  let receipt: GetTransactionReceiptReturnType<chain>\n  let retrying = false\n\n  // biome-ignore lint/style/useConst:\n  let _unobserve: () => void\n  let _unwatch: () => void\n\n  const { promise, resolve, reject } =\n    withResolvers<WaitForTransactionReceiptReturnType<chain>>()\n\n  const timer = timeout\n    ? setTimeout(() => {\n        _unwatch()\n        _unobserve()\n        reject(new WaitForTransactionReceiptTimeoutError({ hash }))\n      }, timeout)\n    : undefined\n\n  _unobserve = observe(observerId, { onReplaced, resolve, reject }, (emit) => {\n    _unwatch = getAction(\n      client,\n      watchBlockNumber,\n      'watchBlockNumber',\n    )({\n      emitMissed: true,\n      emitOnBegin: true,\n      poll: true,\n      pollingInterval,\n      async onBlockNumber(blockNumber_) {\n        const done = (fn: () => void) => {\n          clearTimeout(timer)\n          _unwatch()\n          fn()\n          _unobserve()\n        }\n\n        let blockNumber = blockNumber_\n\n        if (retrying) return\n\n        try {\n          // If we already have a valid receipt, let's check if we have enough\n          // confirmations. If we do, then we can resolve.\n          if (receipt) {\n            if (\n              confirmations > 1 &&\n              (!receipt.blockNumber ||\n                blockNumber - receipt.blockNumber + 1n < confirmations)\n            )\n              return\n\n            done(() => emit.resolve(receipt))\n            return\n          }\n\n          // Get the transaction to check if it's been replaced.\n          // We need to retry as some RPC Providers may be slow to sync\n          // up mined transactions.\n          if (!transaction) {\n            retrying = true\n            await withRetry(\n              async () => {\n                transaction = (await getAction(\n                  client,\n                  getTransaction,\n                  'getTransaction',\n                )({ hash })) as GetTransactionReturnType<chain>\n                if (transaction.blockNumber)\n                  blockNumber = transaction.blockNumber\n              },\n              {\n                delay: retryDelay,\n                retryCount,\n              },\n            )\n            retrying = false\n          }\n\n          // Get the receipt to check if it's been processed.\n          receipt = await getAction(\n            client,\n            getTransactionReceipt,\n            'getTransactionReceipt',\n          )({ hash })\n\n          // Check if we have enough confirmations. If not, continue polling.\n          if (\n            confirmations > 1 &&\n            (!receipt.blockNumber ||\n              blockNumber - receipt.blockNumber + 1n < confirmations)\n          )\n            return\n\n          done(() => emit.resolve(receipt))\n        } catch (err) {\n          // If the receipt is not found, the transaction will be pending.\n          // We need to check if it has potentially been replaced.\n          if (\n            err instanceof TransactionNotFoundError ||\n            err instanceof TransactionReceiptNotFoundError\n          ) {\n            if (!transaction) {\n              retrying = false\n              return\n            }\n\n            try {\n              replacedTransaction = transaction\n\n              // Let's retrieve the transactions from the current block.\n              // We need to retry as some RPC Providers may be slow to sync\n              // up mined blocks.\n              retrying = true\n              const block = await withRetry(\n                () =>\n                  getAction(\n                    client,\n                    getBlock,\n                    'getBlock',\n                  )({\n                    blockNumber,\n                    includeTransactions: true,\n                  }),\n                {\n                  delay: retryDelay,\n                  retryCount,\n                  shouldRetry: ({ error }) =>\n                    error instanceof BlockNotFoundError,\n                },\n              )\n              retrying = false\n\n              const replacementTransaction = (\n                block.transactions as {} as Transaction[]\n              ).find(\n                ({ from, nonce }) =>\n                  from === replacedTransaction!.from &&\n                  nonce === replacedTransaction!.nonce,\n              )\n\n              // If we couldn't find a replacement transaction, continue polling.\n              if (!replacementTransaction) return\n\n              // If we found a replacement transaction, return it's receipt.\n              receipt = await getAction(\n                client,\n                getTransactionReceipt,\n                'getTransactionReceipt',\n              )({\n                hash: replacementTransaction.hash,\n              })\n\n              // Check if we have enough confirmations. If not, continue polling.\n              if (\n                confirmations > 1 &&\n                (!receipt.blockNumber ||\n                  blockNumber - receipt.blockNumber + 1n < confirmations)\n              )\n                return\n\n              let reason: ReplacementReason = 'replaced'\n              if (\n                replacementTransaction.to === replacedTransaction.to &&\n                replacementTransaction.value === replacedTransaction.value &&\n                replacementTransaction.input === replacedTransaction.input\n              ) {\n                reason = 'repriced'\n              } else if (\n                replacementTransaction.from === replacementTransaction.to &&\n                replacementTransaction.value === 0n\n              ) {\n                reason = 'cancelled'\n              }\n\n              done(() => {\n                emit.onReplaced?.({\n                  reason,\n                  replacedTransaction: replacedTransaction! as any,\n                  transaction: replacementTransaction,\n                  transactionReceipt: receipt,\n                })\n                emit.resolve(receipt)\n              })\n            } catch (err_) {\n              done(() => emit.reject(err_))\n            }\n          } else {\n            done(() => emit.reject(err))\n          }\n        }\n      },\n    })\n  })\n\n  return promise\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { HasTransportType } from '../../types/transport.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { observe } from '../../utils/observe.js'\nimport { type PollErrorType, poll } from '../../utils/poll.js'\nimport { type StringifyErrorType, stringify } from '../../utils/stringify.js'\n\nimport { type GetBlockReturnType, getBlock } from './getBlock.js'\n\nexport type OnBlockParameter<\n  chain extends Chain | undefined = Chain,\n  includeTransactions extends boolean = false,\n  blockTag extends BlockTag = 'latest',\n> = GetBlockReturnType<chain, includeTransactions, blockTag>\n\nexport type OnBlock<\n  chain extends Chain | undefined = Chain,\n  includeTransactions extends boolean = false,\n  blockTag extends BlockTag = 'latest',\n> = (\n  block: OnBlockParameter<chain, includeTransactions, blockTag>,\n  prevBlock: OnBlockParameter<chain, includeTransactions, blockTag> | undefined,\n) => void\n\nexport type WatchBlocksParameters<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain,\n  includeTransactions extends boolean = false,\n  blockTag extends BlockTag = 'latest',\n> = {\n  /** The callback to call when a new block is received. */\n  onBlock: OnBlock<chain, includeTransactions, blockTag>\n  /** The callback to call when an error occurred when trying to get for a new block. */\n  onError?: ((error: Error) => void) | undefined\n} & (\n  | (HasTransportType<transport, 'webSocket' | 'ipc'> extends true\n      ? {\n          blockTag?: undefined\n          emitMissed?: undefined\n          emitOnBegin?: undefined\n          includeTransactions?: undefined\n          /** Whether or not the WebSocket Transport should poll the JSON-RPC, rather than using `eth_subscribe`. */\n          poll?: false | undefined\n          pollingInterval?: undefined\n        }\n      : never)\n  | {\n      /** The block tag. Defaults to \"latest\". */\n      blockTag?: blockTag | BlockTag | undefined\n      /** Whether or not to emit the missed blocks to the callback. */\n      emitMissed?: boolean | undefined\n      /** Whether or not to emit the block to the callback when the subscription opens. */\n      emitOnBegin?: boolean | undefined\n      /** Whether or not to include transaction data in the response. */\n      includeTransactions?: includeTransactions | undefined\n      poll?: true | undefined\n      /** Polling frequency (in ms). Defaults to the client's pollingInterval config. */\n      pollingInterval?: number | undefined\n    }\n)\n\nexport type WatchBlocksReturnType = () => void\n\nexport type WatchBlocksErrorType =\n  | StringifyErrorType\n  | PollErrorType\n  | ErrorType\n\n/**\n * Watches and returns information for incoming blocks.\n *\n * - Docs: https://viem.sh/docs/actions/public/watchBlocks\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_watching-blocks\n * - JSON-RPC Methods:\n *   - When `poll: true`, calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getBlockByNumber) on a polling interval.\n *   - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newHeads\"` event.\n *\n * @param client - Client to use\n * @param parameters - {@link WatchBlocksParameters}\n * @returns A function that can be invoked to stop watching for new block numbers. {@link WatchBlocksReturnType}\n *\n * @example\n * import { createPublicClient, watchBlocks, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const unwatch = watchBlocks(client, {\n *   onBlock: (block) => console.log(block),\n * })\n */\nexport function watchBlocks<\n  transport extends Transport,\n  chain extends Chain | undefined,\n  includeTransactions extends boolean = false,\n  blockTag extends BlockTag = 'latest',\n>(\n  client: Client<transport, chain>,\n  {\n    blockTag = 'latest',\n    emitMissed = false,\n    emitOnBegin = false,\n    onBlock,\n    onError,\n    includeTransactions: includeTransactions_,\n    poll: poll_,\n    pollingInterval = client.pollingInterval,\n  }: WatchBlocksParameters<transport, chain, includeTransactions, blockTag>,\n): WatchBlocksReturnType {\n  const enablePolling = (() => {\n    if (typeof poll_ !== 'undefined') return poll_\n    if (\n      client.transport.type === 'webSocket' ||\n      client.transport.type === 'ipc'\n    )\n      return false\n    if (\n      client.transport.type === 'fallback' &&\n      (client.transport.transports[0].config.type === 'webSocket' ||\n        client.transport.transports[0].config.type === 'ipc')\n    )\n      return false\n    return true\n  })()\n  const includeTransactions = includeTransactions_ ?? false\n\n  let prevBlock:\n    | GetBlockReturnType<chain, false | includeTransactions, 'latest'>\n    | undefined\n\n  const pollBlocks = () => {\n    const observerId = stringify([\n      'watchBlocks',\n      client.uid,\n      blockTag,\n      emitMissed,\n      emitOnBegin,\n      includeTransactions,\n      pollingInterval,\n    ])\n\n    return observe(observerId, { onBlock, onError }, (emit) =>\n      poll(\n        async () => {\n          try {\n            const block = await getAction(\n              client,\n              getBlock,\n              'getBlock',\n            )({\n              blockTag,\n              includeTransactions,\n            })\n            if (block.number !== null && prevBlock?.number != null) {\n              // If the current block number is the same as the previous,\n              // we can skip.\n              if (block.number === prevBlock.number) return\n\n              // If we have missed out on some previous blocks, and the\n              // `emitMissed` flag is truthy, let's emit those blocks.\n              if (block.number - prevBlock.number > 1 && emitMissed) {\n                for (let i = prevBlock?.number + 1n; i < block.number; i++) {\n                  const block = (await getAction(\n                    client,\n                    getBlock,\n                    'getBlock',\n                  )({\n                    blockNumber: i,\n                    includeTransactions,\n                  })) as GetBlockReturnType<chain>\n                  emit.onBlock(block as any, prevBlock as any)\n                  prevBlock = block\n                }\n              }\n            }\n\n            if (\n              // If no previous block exists, emit.\n              prevBlock?.number == null ||\n              // If the block tag is \"pending\" with no block number, emit.\n              (blockTag === 'pending' && block?.number == null) ||\n              // If the next block number is greater than the previous block number, emit.\n              // We don't want to emit blocks in the past.\n              (block.number !== null && block.number > prevBlock.number)\n            ) {\n              emit.onBlock(block as any, prevBlock as any)\n              prevBlock = block as any\n            }\n          } catch (err) {\n            emit.onError?.(err as Error)\n          }\n        },\n        {\n          emitOnBegin,\n          interval: pollingInterval,\n        },\n      ),\n    )\n  }\n\n  const subscribeBlocks = () => {\n    let active = true\n    let emitFetched = true\n    let unsubscribe = () => (active = false)\n    ;(async () => {\n      try {\n        if (emitOnBegin) {\n          getAction(\n            client,\n            getBlock,\n            'getBlock',\n          )({\n            blockTag,\n            includeTransactions,\n          })\n            .then((block) => {\n              if (!active) return\n              if (!emitFetched) return\n              onBlock(block as any, undefined)\n              emitFetched = false\n            })\n            .catch(onError)\n        }\n\n        const transport = (() => {\n          if (client.transport.type === 'fallback') {\n            const transport = client.transport.transports.find(\n              (transport: ReturnType<Transport>) =>\n                transport.config.type === 'webSocket' ||\n                transport.config.type === 'ipc',\n            )\n            if (!transport) return client.transport\n            return transport.value\n          }\n          return client.transport\n        })()\n\n        const { unsubscribe: unsubscribe_ } = await transport.subscribe({\n          params: ['newHeads'],\n          async onData(data: any) {\n            if (!active) return\n            const block = (await getAction(\n              client,\n              getBlock,\n              'getBlock',\n            )({\n              blockNumber: data.result?.number,\n              includeTransactions,\n            }).catch(() => {})) as GetBlockReturnType<chain>\n            if (!active) return\n            onBlock(block as any, prevBlock as any)\n            emitFetched = false\n            prevBlock = block\n          },\n          onError(error: Error) {\n            onError?.(error)\n          },\n        })\n        unsubscribe = unsubscribe_\n        if (!active) unsubscribe()\n      } catch (err) {\n        onError?.(err as Error)\n      }\n    })()\n    return () => unsubscribe()\n  }\n\n  return enablePolling ? pollBlocks() : subscribeBlocks()\n}\n","import type { AbiEvent, Address } from 'abitype'\n\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  MaybeAbiEventName,\n  MaybeExtractEventArgsFromAbi,\n} from '../../types/contract.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { Log } from '../../types/log.js'\nimport type { LogTopic } from '../../types/misc.js'\nimport type { GetPollOptions } from '../../types/transport.js'\nimport {\n  type EncodeEventTopicsParameters,\n  encodeEventTopics,\n} from '../../utils/abi/encodeEventTopics.js'\nimport { type ObserveErrorType, observe } from '../../utils/observe.js'\nimport { poll } from '../../utils/poll.js'\nimport { type StringifyErrorType, stringify } from '../../utils/stringify.js'\n\nimport {\n  DecodeLogDataMismatch,\n  DecodeLogTopicsMismatch,\n} from '../../errors/abi.js'\nimport { InvalidInputRpcError } from '../../errors/rpc.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { BlockNumber } from '../../types/block.js'\nimport { decodeEventLog } from '../../utils/abi/decodeEventLog.js'\nimport { formatLog } from '../../utils/formatters/log.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type CreateEventFilterParameters,\n  createEventFilter,\n} from './createEventFilter.js'\nimport { getBlockNumber } from './getBlockNumber.js'\nimport { getFilterChanges } from './getFilterChanges.js'\nimport { type GetLogsParameters, getLogs } from './getLogs.js'\nimport { uninstallFilter } from './uninstallFilter.js'\n\nexport type WatchEventOnLogsParameter<\n  abiEvent extends AbiEvent | undefined = undefined,\n  abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  eventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n> = Log<bigint, number, false, abiEvent, strict, abiEvents, eventName>[]\nexport type WatchEventOnLogsFn<\n  abiEvent extends AbiEvent | undefined = undefined,\n  abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  //\n  _eventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n> = (\n  logs: WatchEventOnLogsParameter<abiEvent, abiEvents, strict, _eventName>,\n) => void\n\nexport type WatchEventParameters<\n  abiEvent extends AbiEvent | undefined = undefined,\n  abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  transport extends Transport = Transport,\n  //\n  _eventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n> = {\n  /** The address of the contract. */\n  address?: Address | Address[] | undefined\n  /** Block to start listening from. */\n  fromBlock?: BlockNumber<bigint> | undefined\n  /** The callback to call when an error occurred when trying to get for a new block. */\n  onError?: ((error: Error) => void) | undefined\n  /** The callback to call when new event logs are received. */\n  onLogs: WatchEventOnLogsFn<abiEvent, abiEvents, strict, _eventName>\n} & GetPollOptions<transport> &\n  (\n    | {\n        event: abiEvent\n        events?: undefined\n        args?: MaybeExtractEventArgsFromAbi<abiEvents, _eventName> | undefined\n        /**\n         * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n         * @default false\n         */\n        strict?: strict | undefined\n      }\n    | {\n        event?: undefined\n        events?: abiEvents | undefined\n        args?: undefined\n        /**\n         * Whether or not the logs must match the indexed/non-indexed arguments on `event`.\n         * @default false\n         */\n        strict?: strict | undefined\n      }\n    | {\n        event?: undefined\n        events?: undefined\n        args?: undefined\n        strict?: undefined\n      }\n  )\n\nexport type WatchEventReturnType = () => void\n\nexport type WatchEventErrorType =\n  | StringifyErrorType\n  | ObserveErrorType\n  | ErrorType\n\n/**\n * Watches and returns emitted [Event Logs](https://viem.sh/docs/glossary/terms#event-log).\n *\n * - Docs: https://viem.sh/docs/actions/public/watchEvent\n * - JSON-RPC Methods:\n *   - **RPC Provider supports `eth_newFilter`:**\n *     - Calls [`eth_newFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newfilter) to create a filter (called on initialize).\n *     - On a polling interval, it will call [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterchanges).\n *   - **RPC Provider does not support `eth_newFilter`:**\n *     - Calls [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs) for each block between the polling interval.\n *\n * This Action will batch up all the Event Logs found within the [`pollingInterval`](https://viem.sh/docs/actions/public/watchEvent#pollinginterval-optional), and invoke them via [`onLogs`](https://viem.sh/docs/actions/public/watchEvent#onLogs).\n *\n * `watchEvent` will attempt to create an [Event Filter](https://viem.sh/docs/actions/public/createEventFilter) and listen to changes to the Filter per polling interval, however, if the RPC Provider does not support Filters (e.g. `eth_newFilter`), then `watchEvent` will fall back to using [`getLogs`](https://viem.sh/docs/actions/public/getLogs) instead.\n *\n * @param client - Client to use\n * @param parameters - {@link WatchEventParameters}\n * @returns A function that can be invoked to stop watching for new Event Logs. {@link WatchEventReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { watchEvent } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const unwatch = watchEvent(client, {\n *   onLogs: (logs) => console.log(logs),\n * })\n */\nexport function watchEvent<\n  chain extends Chain | undefined,\n  const abiEvent extends AbiEvent | undefined = undefined,\n  const abiEvents extends\n    | readonly AbiEvent[]\n    | readonly unknown[]\n    | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n  strict extends boolean | undefined = undefined,\n  transport extends Transport = Transport,\n  _eventName extends string | undefined = undefined,\n>(\n  client: Client<transport, chain>,\n  {\n    address,\n    args,\n    batch = true,\n    event,\n    events,\n    fromBlock,\n    onError,\n    onLogs,\n    poll: poll_,\n    pollingInterval = client.pollingInterval,\n    strict: strict_,\n  }: WatchEventParameters<abiEvent, abiEvents, strict, transport>,\n): WatchEventReturnType {\n  const enablePolling = (() => {\n    if (typeof poll_ !== 'undefined') return poll_\n    if (typeof fromBlock === 'bigint') return true\n    if (\n      client.transport.type === 'webSocket' ||\n      client.transport.type === 'ipc'\n    )\n      return false\n    if (\n      client.transport.type === 'fallback' &&\n      (client.transport.transports[0].config.type === 'webSocket' ||\n        client.transport.transports[0].config.type === 'ipc')\n    )\n      return false\n    return true\n  })()\n  const strict = strict_ ?? false\n\n  const pollEvent = () => {\n    const observerId = stringify([\n      'watchEvent',\n      address,\n      args,\n      batch,\n      client.uid,\n      event,\n      pollingInterval,\n      fromBlock,\n    ])\n\n    return observe(observerId, { onLogs, onError }, (emit) => {\n      let previousBlockNumber: bigint\n      if (fromBlock !== undefined) previousBlockNumber = fromBlock - 1n\n      let filter: Filter<'event', abiEvents, _eventName, any>\n      let initialized = false\n\n      const unwatch = poll(\n        async () => {\n          if (!initialized) {\n            try {\n              filter = (await getAction(\n                client,\n                createEventFilter as any,\n                'createEventFilter',\n              )({\n                address,\n                args,\n                event: event!,\n                events,\n                strict,\n                fromBlock,\n              } as unknown as CreateEventFilterParameters)) as unknown as Filter<\n                'event',\n                abiEvents,\n                _eventName\n              >\n            } catch {}\n            initialized = true\n            return\n          }\n\n          try {\n            let logs: Log[]\n            if (filter) {\n              logs = await getAction(\n                client,\n                getFilterChanges,\n                'getFilterChanges',\n              )({ filter })\n            } else {\n              // If the filter doesn't exist, we will fall back to use `getLogs`.\n              // The fall back exists because some RPC Providers do not support filters.\n\n              // Fetch the block number to use for `getLogs`.\n              const blockNumber = await getAction(\n                client,\n                getBlockNumber,\n                'getBlockNumber',\n              )({})\n\n              // If the block number has changed, we will need to fetch the logs.\n              // If the block number doesn't exist, we are yet to reach the first poll interval,\n              // so do not emit any logs.\n              if (previousBlockNumber && previousBlockNumber !== blockNumber) {\n                logs = await getAction(\n                  client,\n                  getLogs,\n                  'getLogs',\n                )({\n                  address,\n                  args,\n                  event: event!,\n                  events,\n                  fromBlock: previousBlockNumber + 1n,\n                  toBlock: blockNumber,\n                } as unknown as GetLogsParameters)\n              } else {\n                logs = []\n              }\n              previousBlockNumber = blockNumber\n            }\n\n            if (logs.length === 0) return\n            if (batch) emit.onLogs(logs as any)\n            else for (const log of logs) emit.onLogs([log] as any)\n          } catch (err) {\n            // If a filter has been set and gets uninstalled, providers will throw an InvalidInput error.\n            // Reinitialize the filter when this occurs\n            if (filter && err instanceof InvalidInputRpcError)\n              initialized = false\n            emit.onError?.(err as Error)\n          }\n        },\n        {\n          emitOnBegin: true,\n          interval: pollingInterval,\n        },\n      )\n\n      return async () => {\n        if (filter)\n          await getAction(\n            client,\n            uninstallFilter,\n            'uninstallFilter',\n          )({ filter })\n        unwatch()\n      }\n    })\n  }\n\n  const subscribeEvent = () => {\n    let active = true\n    let unsubscribe = () => (active = false)\n    ;(async () => {\n      try {\n        const transport = (() => {\n          if (client.transport.type === 'fallback') {\n            const transport = client.transport.transports.find(\n              (transport: ReturnType<Transport>) =>\n                transport.config.type === 'webSocket' ||\n                transport.config.type === 'ipc',\n            )\n            if (!transport) return client.transport\n            return transport.value\n          }\n          return client.transport\n        })()\n\n        const events_ = events ?? (event ? [event] : undefined)\n        let topics: LogTopic[] = []\n        if (events_) {\n          const encoded = (events_ as AbiEvent[]).flatMap((event) =>\n            encodeEventTopics({\n              abi: [event],\n              eventName: (event as AbiEvent).name,\n              args,\n            } as EncodeEventTopicsParameters),\n          )\n          // TODO: Clean up type casting\n          topics = [encoded as LogTopic]\n          if (event) topics = topics[0] as LogTopic[]\n        }\n\n        const { unsubscribe: unsubscribe_ } = await transport.subscribe({\n          params: ['logs', { address, topics }],\n          onData(data: any) {\n            if (!active) return\n            const log = data.result\n            try {\n              const { eventName, args } = decodeEventLog({\n                abi: events_ ?? [],\n                data: log.data,\n                topics: log.topics,\n                strict,\n              })\n              const formatted = formatLog(log, { args, eventName })\n              onLogs([formatted] as any)\n            } catch (err) {\n              let eventName: string | undefined\n              let isUnnamed: boolean | undefined\n              if (\n                err instanceof DecodeLogDataMismatch ||\n                err instanceof DecodeLogTopicsMismatch\n              ) {\n                // If strict mode is on, and log data/topics do not match event definition, skip.\n                if (strict_) return\n                eventName = err.abiItem.name\n                isUnnamed = err.abiItem.inputs?.some(\n                  (x) => !('name' in x && x.name),\n                )\n              }\n\n              // Set args to empty if there is an error decoding (e.g. indexed/non-indexed params mismatch).\n              const formatted = formatLog(log, {\n                args: isUnnamed ? [] : {},\n                eventName,\n              })\n              onLogs([formatted] as any)\n            }\n          },\n          onError(error: Error) {\n            onError?.(error)\n          },\n        })\n        unsubscribe = unsubscribe_\n        if (!active) unsubscribe()\n      } catch (err) {\n        onError?.(err as Error)\n      }\n    })()\n    return () => unsubscribe()\n  }\n\n  return enablePolling ? pollEvent() : subscribeEvent()\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Filter } from '../../types/filter.js'\nimport type { Hash } from '../../types/misc.js'\nimport type { GetPollOptions } from '../../types/transport.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { type ObserveErrorType, observe } from '../../utils/observe.js'\nimport { poll } from '../../utils/poll.js'\nimport { type StringifyErrorType, stringify } from '../../utils/stringify.js'\n\nimport { createPendingTransactionFilter } from './createPendingTransactionFilter.js'\nimport { getFilterChanges } from './getFilterChanges.js'\nimport { uninstallFilter } from './uninstallFilter.js'\n\nexport type OnTransactionsParameter = Hash[]\nexport type OnTransactionsFn = (transactions: OnTransactionsParameter) => void\n\nexport type WatchPendingTransactionsParameters<\n  transport extends Transport = Transport,\n> = {\n  /** The callback to call when an error occurred when trying to get for a new block. */\n  onError?: ((error: Error) => void) | undefined\n  /** The callback to call when new transactions are received. */\n  onTransactions: OnTransactionsFn\n} & GetPollOptions<transport>\n\nexport type WatchPendingTransactionsReturnType = () => void\n\nexport type WatchPendingTransactionsErrorType =\n  | StringifyErrorType\n  | ObserveErrorType\n  | ErrorType\n\n/**\n * Watches and returns pending transaction hashes.\n *\n * - Docs: https://viem.sh/docs/actions/public/watchPendingTransactions\n * - JSON-RPC Methods:\n *   - When `poll: true`\n *     - Calls [`eth_newPendingTransactionFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newpendingtransactionfilter) to initialize the filter.\n *     - Calls [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getFilterChanges) on a polling interval.\n *   - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newPendingTransactions\"` event.\n *\n * This Action will batch up all the pending transactions found within the [`pollingInterval`](https://viem.sh/docs/actions/public/watchPendingTransactions#pollinginterval-optional), and invoke them via [`onTransactions`](https://viem.sh/docs/actions/public/watchPendingTransactions#ontransactions).\n *\n * @param client - Client to use\n * @param parameters - {@link WatchPendingTransactionsParameters}\n * @returns A function that can be invoked to stop watching for new pending transaction hashes. {@link WatchPendingTransactionsReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { watchPendingTransactions } from 'viem/public'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const unwatch = await watchPendingTransactions(client, {\n *   onTransactions: (hashes) => console.log(hashes),\n * })\n */\nexport function watchPendingTransactions<\n  transport extends Transport,\n  chain extends Chain | undefined,\n>(\n  client: Client<transport, chain>,\n  {\n    batch = true,\n    onError,\n    onTransactions,\n    poll: poll_,\n    pollingInterval = client.pollingInterval,\n  }: WatchPendingTransactionsParameters<transport>,\n) {\n  const enablePolling =\n    typeof poll_ !== 'undefined'\n      ? poll_\n      : client.transport.type !== 'webSocket' && client.transport.type !== 'ipc'\n\n  const pollPendingTransactions = () => {\n    const observerId = stringify([\n      'watchPendingTransactions',\n      client.uid,\n      batch,\n      pollingInterval,\n    ])\n    return observe(observerId, { onTransactions, onError }, (emit) => {\n      let filter: Filter<'transaction'>\n\n      const unwatch = poll(\n        async () => {\n          try {\n            if (!filter) {\n              try {\n                filter = await getAction(\n                  client,\n                  createPendingTransactionFilter,\n                  'createPendingTransactionFilter',\n                )({})\n                return\n              } catch (err) {\n                unwatch()\n                throw err\n              }\n            }\n\n            const hashes = await getAction(\n              client,\n              getFilterChanges,\n              'getFilterChanges',\n            )({ filter })\n            if (hashes.length === 0) return\n            if (batch) emit.onTransactions(hashes)\n            else for (const hash of hashes) emit.onTransactions([hash])\n          } catch (err) {\n            emit.onError?.(err as Error)\n          }\n        },\n        {\n          emitOnBegin: true,\n          interval: pollingInterval,\n        },\n      )\n\n      return async () => {\n        if (filter)\n          await getAction(\n            client,\n            uninstallFilter,\n            'uninstallFilter',\n          )({ filter })\n        unwatch()\n      }\n    })\n  }\n\n  const subscribePendingTransactions = () => {\n    let active = true\n    let unsubscribe = () => (active = false)\n    ;(async () => {\n      try {\n        const { unsubscribe: unsubscribe_ } = await client.transport.subscribe({\n          params: ['newPendingTransactions'],\n          onData(data: any) {\n            if (!active) return\n            const transaction = data.result\n            onTransactions([transaction])\n          },\n          onError(error: Error) {\n            onError?.(error)\n          },\n        })\n        unsubscribe = unsubscribe_\n        if (!active) unsubscribe()\n      } catch (err) {\n        onError?.(err as Error)\n      }\n    })()\n    return () => unsubscribe()\n  }\n\n  return enablePolling\n    ? pollPendingTransactions()\n    : subscribePendingTransactions()\n}\n","import type { Address } from 'abitype'\n\nimport type { ExactPartial, Prettify } from '../../types/utils.js'\nimport type { SiweMessage } from './types.js'\n\n/**\n * @description Parses EIP-4361 formatted message into message fields object.\n *\n * @see https://eips.ethereum.org/EIPS/eip-4361\n *\n * @returns EIP-4361 fields object\n */\nexport function parseSiweMessage(\n  message: string,\n): Prettify<ExactPartial<SiweMessage>> {\n  const { scheme, statement, ...prefix } = (message.match(prefixRegex)\n    ?.groups ?? {}) as {\n    address: Address\n    domain: string\n    scheme?: string\n    statement?: string\n  }\n  const { chainId, expirationTime, issuedAt, notBefore, requestId, ...suffix } =\n    (message.match(suffixRegex)?.groups ?? {}) as {\n      chainId: string\n      expirationTime?: string\n      issuedAt?: string\n      nonce: string\n      notBefore?: string\n      requestId?: string\n      uri: string\n      version: '1'\n    }\n  const resources = message.split('Resources:')[1]?.split('\\n- ').slice(1)\n  return {\n    ...prefix,\n    ...suffix,\n    ...(chainId ? { chainId: Number(chainId) } : {}),\n    ...(expirationTime ? { expirationTime: new Date(expirationTime) } : {}),\n    ...(issuedAt ? { issuedAt: new Date(issuedAt) } : {}),\n    ...(notBefore ? { notBefore: new Date(notBefore) } : {}),\n    ...(requestId ? { requestId } : {}),\n    ...(resources ? { resources } : {}),\n    ...(scheme ? { scheme } : {}),\n    ...(statement ? { statement } : {}),\n  }\n}\n\n// https://regexr.com/80gdj\nconst prefixRegex =\n  /^(?:(?<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)?/\n\n// https://regexr.com/80gf9\nconst suffixRegex =\n  /(?: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>.+))?/\n","import type { Address } from 'abitype'\n\nimport type { ExactPartial } from '../../types/utils.js'\nimport { isAddress } from '../address/isAddress.js'\nimport { isAddressEqual } from '../address/isAddressEqual.js'\nimport type { SiweMessage } from './types.js'\n\nexport type ValidateSiweMessageParameters = {\n  /**\n   * Ethereum address to check against.\n   */\n  address?: Address | undefined\n  /**\n   * [RFC 3986](https://www.rfc-editor.org/rfc/rfc3986) authority to check against.\n   */\n  domain?: string | undefined\n  /**\n   * EIP-4361 message fields.\n   */\n  message: ExactPartial<SiweMessage>\n  /**\n   * Random string to check against.\n   */\n  nonce?: string | undefined\n  /**\n   * [RFC 3986](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) URI scheme to check against.\n   */\n  scheme?: string | undefined\n  /**\n   * Current time to check optional `expirationTime` and `notBefore` fields.\n   *\n   * @default new Date()\n   */\n  time?: Date | undefined\n}\n\nexport type ValidateSiweMessageReturnType = boolean\n\n/**\n * @description Validates EIP-4361 message.\n *\n * @see https://eips.ethereum.org/EIPS/eip-4361\n */\nexport function validateSiweMessage(\n  parameters: ValidateSiweMessageParameters,\n): ValidateSiweMessageReturnType {\n  const {\n    address,\n    domain,\n    message,\n    nonce,\n    scheme,\n    time = new Date(),\n  } = parameters\n\n  if (domain && message.domain !== domain) return false\n  if (nonce && message.nonce !== nonce) return false\n  if (scheme && message.scheme !== scheme) return false\n\n  if (message.expirationTime && time >= message.expirationTime) return false\n  if (message.notBefore && time < message.notBefore) return false\n\n  try {\n    if (!message.address) return false\n    if (!isAddress(message.address, { strict: false })) return false\n    if (address && !isAddressEqual(message.address, address)) return false\n  } catch {\n    return false\n  }\n\n  return true\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { Prettify } from '../../types/utils.js'\nimport { hashMessage } from '../../utils/signature/hashMessage.js'\nimport type { HashMessageErrorType } from '../../utils/signature/hashMessage.js'\nimport { parseSiweMessage } from '../../utils/siwe/parseSiweMessage.js'\nimport {\n  type ValidateSiweMessageParameters,\n  validateSiweMessage,\n} from '../../utils/siwe/validateSiweMessage.js'\nimport {\n  type VerifyHashErrorType,\n  type VerifyHashParameters,\n  verifyHash,\n} from '../public/verifyHash.js'\n\nexport type VerifySiweMessageParameters = Prettify<\n  Pick<VerifyHashParameters, 'blockNumber' | 'blockTag'> &\n    Pick<\n      ValidateSiweMessageParameters,\n      'address' | 'domain' | 'nonce' | 'scheme' | 'time'\n    > & {\n      /**\n       * EIP-4361 formatted message.\n       */\n      message: string\n      /**\n       * Signature to check against.\n       */\n      signature: Hex\n    }\n>\n\nexport type VerifySiweMessageReturnType = boolean\n\nexport type VerifySiweMessageErrorType =\n  | HashMessageErrorType\n  | VerifyHashErrorType\n  | ErrorType\n\n/**\n * Verifies [EIP-4361](https://eips.ethereum.org/EIPS/eip-4361) formatted message was signed.\n *\n * Compatible with Smart Contract Accounts & Externally Owned Accounts via [ERC-6492](https://eips.ethereum.org/EIPS/eip-6492).\n *\n * - Docs {@link https://viem.sh/docs/siwe/actions/verifySiweMessage}\n *\n * @param client - Client to use.\n * @param parameters - {@link VerifySiweMessageParameters}\n * @returns Whether or not the signature is valid. {@link VerifySiweMessageReturnType}\n */\nexport async function verifySiweMessage<chain extends Chain | undefined>(\n  client: Client<Transport, chain>,\n  parameters: VerifySiweMessageParameters,\n): Promise<VerifySiweMessageReturnType> {\n  const {\n    address,\n    domain,\n    message,\n    nonce,\n    scheme,\n    signature,\n    time = new Date(),\n    ...callRequest\n  } = parameters\n\n  const parsed = parseSiweMessage(message)\n  if (!parsed.address) return false\n\n  const isValid = validateSiweMessage({\n    address,\n    domain,\n    message: parsed,\n    nonce,\n    scheme,\n    time,\n  })\n  if (!isValid) return false\n\n  const hash = hashMessage(message)\n  return verifyHash(client, {\n    address: parsed.address,\n    hash,\n    signature,\n    ...callRequest,\n  })\n}\n","import type { Abi, AbiEvent, Address } from 'abitype'\n\nimport {\n  type GetEnsAddressParameters,\n  type GetEnsAddressReturnType,\n  getEnsAddress,\n} from '../../actions/ens/getEnsAddress.js'\nimport {\n  type GetEnsAvatarParameters,\n  type GetEnsAvatarReturnType,\n  getEnsAvatar,\n} from '../../actions/ens/getEnsAvatar.js'\nimport {\n  type GetEnsNameParameters,\n  type GetEnsNameReturnType,\n  getEnsName,\n} from '../../actions/ens/getEnsName.js'\nimport {\n  type GetEnsResolverParameters,\n  type GetEnsResolverReturnType,\n  getEnsResolver,\n} from '../../actions/ens/getEnsResolver.js'\nimport {\n  type GetEnsTextParameters,\n  type GetEnsTextReturnType,\n  getEnsText,\n} from '../../actions/ens/getEnsText.js'\nimport {\n  type CallParameters,\n  type CallReturnType,\n  call,\n} from '../../actions/public/call.js'\nimport {\n  type CreateAccessListParameters,\n  type CreateAccessListReturnType,\n  createAccessList,\n} from '../../actions/public/createAccessList.js'\nimport {\n  type CreateBlockFilterReturnType,\n  createBlockFilter,\n} from '../../actions/public/createBlockFilter.js'\nimport {\n  type CreateContractEventFilterParameters,\n  type CreateContractEventFilterReturnType,\n  createContractEventFilter,\n} from '../../actions/public/createContractEventFilter.js'\nimport {\n  type CreateEventFilterParameters,\n  type CreateEventFilterReturnType,\n  createEventFilter,\n} from '../../actions/public/createEventFilter.js'\nimport {\n  type CreatePendingTransactionFilterReturnType,\n  createPendingTransactionFilter,\n} from '../../actions/public/createPendingTransactionFilter.js'\nimport {\n  type EstimateContractGasParameters,\n  type EstimateContractGasReturnType,\n  estimateContractGas,\n} from '../../actions/public/estimateContractGas.js'\nimport {\n  type EstimateFeesPerGasParameters,\n  type EstimateFeesPerGasReturnType,\n  estimateFeesPerGas,\n} from '../../actions/public/estimateFeesPerGas.js'\nimport {\n  type EstimateGasParameters,\n  type EstimateGasReturnType,\n  estimateGas,\n} from '../../actions/public/estimateGas.js'\nimport {\n  type EstimateMaxPriorityFeePerGasParameters,\n  type EstimateMaxPriorityFeePerGasReturnType,\n  estimateMaxPriorityFeePerGas,\n} from '../../actions/public/estimateMaxPriorityFeePerGas.js'\nimport {\n  type GetBalanceParameters,\n  type GetBalanceReturnType,\n  getBalance,\n} from '../../actions/public/getBalance.js'\nimport {\n  type GetBlobBaseFeeReturnType,\n  getBlobBaseFee,\n} from '../../actions/public/getBlobBaseFee.js'\nimport {\n  type GetBlockParameters,\n  type GetBlockReturnType,\n  getBlock,\n} from '../../actions/public/getBlock.js'\nimport {\n  type GetBlockNumberParameters,\n  type GetBlockNumberReturnType,\n  getBlockNumber,\n} from '../../actions/public/getBlockNumber.js'\nimport {\n  type GetBlockTransactionCountParameters,\n  type GetBlockTransactionCountReturnType,\n  getBlockTransactionCount,\n} from '../../actions/public/getBlockTransactionCount.js'\nimport {\n  type GetChainIdReturnType,\n  getChainId,\n} from '../../actions/public/getChainId.js'\nimport {\n  type GetCodeParameters,\n  type GetCodeReturnType,\n  getCode,\n} from '../../actions/public/getCode.js'\nimport {\n  type GetContractEventsParameters,\n  type GetContractEventsReturnType,\n  getContractEvents,\n} from '../../actions/public/getContractEvents.js'\nimport {\n  type GetEip712DomainParameters,\n  type GetEip712DomainReturnType,\n  getEip712Domain,\n} from '../../actions/public/getEip712Domain.js'\nimport {\n  type GetFeeHistoryParameters,\n  type GetFeeHistoryReturnType,\n  getFeeHistory,\n} from '../../actions/public/getFeeHistory.js'\nimport {\n  type GetFilterChangesParameters,\n  type GetFilterChangesReturnType,\n  getFilterChanges,\n} from '../../actions/public/getFilterChanges.js'\nimport {\n  type GetFilterLogsParameters,\n  type GetFilterLogsReturnType,\n  getFilterLogs,\n} from '../../actions/public/getFilterLogs.js'\nimport {\n  type GetGasPriceReturnType,\n  getGasPrice,\n} from '../../actions/public/getGasPrice.js'\nimport {\n  type GetLogsParameters,\n  type GetLogsReturnType,\n  getLogs,\n} from '../../actions/public/getLogs.js'\nimport {\n  type GetProofParameters,\n  type GetProofReturnType,\n  getProof,\n} from '../../actions/public/getProof.js'\nimport {\n  type GetStorageAtParameters,\n  type GetStorageAtReturnType,\n  getStorageAt,\n} from '../../actions/public/getStorageAt.js'\nimport {\n  type GetTransactionParameters,\n  type GetTransactionReturnType,\n  getTransaction,\n} from '../../actions/public/getTransaction.js'\nimport {\n  type GetTransactionConfirmationsParameters,\n  type GetTransactionConfirmationsReturnType,\n  getTransactionConfirmations,\n} from '../../actions/public/getTransactionConfirmations.js'\nimport {\n  type GetTransactionCountParameters,\n  type GetTransactionCountReturnType,\n  getTransactionCount,\n} from '../../actions/public/getTransactionCount.js'\nimport {\n  type GetTransactionReceiptParameters,\n  type GetTransactionReceiptReturnType,\n  getTransactionReceipt,\n} from '../../actions/public/getTransactionReceipt.js'\nimport {\n  type MulticallParameters,\n  type MulticallReturnType,\n  multicall,\n} from '../../actions/public/multicall.js'\nimport {\n  type ReadContractParameters,\n  type ReadContractReturnType,\n  readContract,\n} from '../../actions/public/readContract.js'\nimport {\n  type SimulateBlocksParameters,\n  type SimulateBlocksReturnType,\n  simulateBlocks,\n} from '../../actions/public/simulateBlocks.js'\nimport {\n  type SimulateCallsParameters,\n  type SimulateCallsReturnType,\n  simulateCalls,\n} from '../../actions/public/simulateCalls.js'\nimport {\n  type SimulateContractParameters,\n  type SimulateContractReturnType,\n  simulateContract,\n} from '../../actions/public/simulateContract.js'\nimport {\n  type UninstallFilterParameters,\n  type UninstallFilterReturnType,\n  uninstallFilter,\n} from '../../actions/public/uninstallFilter.js'\nimport {\n  type VerifyMessageParameters,\n  type VerifyMessageReturnType,\n  verifyMessage,\n} from '../../actions/public/verifyMessage.js'\nimport {\n  type VerifyTypedDataParameters,\n  type VerifyTypedDataReturnType,\n  verifyTypedData,\n} from '../../actions/public/verifyTypedData.js'\nimport {\n  type WaitForTransactionReceiptParameters,\n  type WaitForTransactionReceiptReturnType,\n  waitForTransactionReceipt,\n} from '../../actions/public/waitForTransactionReceipt.js'\nimport {\n  type WatchBlockNumberParameters,\n  type WatchBlockNumberReturnType,\n  watchBlockNumber,\n} from '../../actions/public/watchBlockNumber.js'\nimport {\n  type WatchBlocksParameters,\n  type WatchBlocksReturnType,\n  watchBlocks,\n} from '../../actions/public/watchBlocks.js'\nimport {\n  type WatchContractEventParameters,\n  type WatchContractEventReturnType,\n  watchContractEvent,\n} from '../../actions/public/watchContractEvent.js'\nimport {\n  type WatchEventParameters,\n  type WatchEventReturnType,\n  watchEvent,\n} from '../../actions/public/watchEvent.js'\nimport {\n  type WatchPendingTransactionsParameters,\n  type WatchPendingTransactionsReturnType,\n  watchPendingTransactions,\n} from '../../actions/public/watchPendingTransactions.js'\nimport {\n  type VerifySiweMessageParameters,\n  type VerifySiweMessageReturnType,\n  verifySiweMessage,\n} from '../../actions/siwe/verifySiweMessage.js'\nimport {\n  type PrepareTransactionRequestParameters,\n  type PrepareTransactionRequestRequest,\n  type PrepareTransactionRequestReturnType,\n  prepareTransactionRequest,\n} from '../../actions/wallet/prepareTransactionRequest.js'\nimport {\n  type SendRawTransactionParameters,\n  type SendRawTransactionReturnType,\n  sendRawTransaction,\n} from '../../actions/wallet/sendRawTransaction.js'\nimport type { Account } from '../../types/account.js'\nimport type { BlockNumber, BlockTag } from '../../types/block.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ContractEventName,\n  ContractFunctionArgs,\n  ContractFunctionName,\n  MaybeAbiEventName,\n  MaybeExtractEventArgsFromAbi,\n} from '../../types/contract.js'\nimport type { FeeValuesType } from '../../types/fee.js'\nimport type { FilterType } from '../../types/filter.js'\nimport type { Client } from '../createClient.js'\nimport type { Transport } from '../transports/createTransport.js'\n\nexport type PublicActions<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n> = {\n  /**\n   * Executes a new message call immediately without submitting a transaction to the network.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/call\n   * - JSON-RPC Methods: [`eth_call`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_call)\n   *\n   * @param args - {@link CallParameters}\n   * @returns The call data. {@link CallReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const data = await client.call({\n   *   account: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266',\n   *   data: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n   *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   * })\n   */\n  call: (parameters: CallParameters<chain>) => Promise<CallReturnType>\n  /**\n   * Creates an EIP-2930 access list that you can include in a transaction.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/createAccessList\n   * - JSON-RPC Methods: `eth_createAccessList`\n   *\n   * @param args - {@link CreateAccessListParameters}\n   * @returns The call data. {@link CreateAccessListReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   *\n   * const data = await client.createAccessList({\n   *   data: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n   *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   * })\n   */\n  createAccessList: (\n    parameters: CreateAccessListParameters<chain>,\n  ) => Promise<CreateAccessListReturnType>\n  /**\n   * Creates a Filter to listen for new block hashes that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n   *\n   * - Docs: https://viem.sh/docs/actions/public/createBlockFilter\n   * - JSON-RPC Methods: [`eth_newBlockFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newBlockFilter)\n   *\n   * @returns Filter. {@link CreateBlockFilterReturnType}\n   *\n   * @example\n   * import { createPublicClient, createBlockFilter, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await createBlockFilter(client)\n   * // { id: \"0x345a6572337856574a76364e457a4366\", type: 'block' }\n   */\n  createBlockFilter: () => Promise<CreateBlockFilterReturnType>\n  /**\n   * Creates a Filter to retrieve event logs that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges) or [`getFilterLogs`](https://viem.sh/docs/actions/public/getFilterLogs).\n   *\n   * - Docs: https://viem.sh/docs/contract/createContractEventFilter\n   *\n   * @param args - {@link CreateContractEventFilterParameters}\n   * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateContractEventFilterReturnType}\n   *\n   * @example\n   * import { createPublicClient, http, parseAbi } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await client.createContractEventFilter({\n   *   abi: parseAbi(['event Transfer(address indexed, address indexed, uint256)']),\n   * })\n   */\n  createContractEventFilter: <\n    const abi extends Abi | readonly unknown[],\n    eventName extends ContractEventName<abi> | undefined,\n    args extends MaybeExtractEventArgsFromAbi<abi, eventName> | undefined,\n    strict extends boolean | undefined = undefined,\n    fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n    toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  >(\n    args: CreateContractEventFilterParameters<\n      abi,\n      eventName,\n      args,\n      strict,\n      fromBlock,\n      toBlock\n    >,\n  ) => Promise<\n    CreateContractEventFilterReturnType<\n      abi,\n      eventName,\n      args,\n      strict,\n      fromBlock,\n      toBlock\n    >\n  >\n  /**\n   * Creates a [`Filter`](https://viem.sh/docs/glossary/types#filter) to listen for new events that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n   *\n   * - Docs: https://viem.sh/docs/actions/public/createEventFilter\n   * - JSON-RPC Methods: [`eth_newFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newfilter)\n   *\n   * @param args - {@link CreateEventFilterParameters}\n   * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateEventFilterReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await client.createEventFilter({\n   *   address: '0xfba3912ca04dd458c843e2ee08967fc04f3579c2',\n   * })\n   */\n  createEventFilter: <\n    const abiEvent extends AbiEvent | undefined = undefined,\n    const abiEvents extends\n      | readonly AbiEvent[]\n      | readonly unknown[]\n      | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n    strict extends boolean | undefined = undefined,\n    fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n    toBlock extends BlockNumber | BlockTag | undefined = undefined,\n    _EventName extends string | undefined = MaybeAbiEventName<abiEvent>,\n    _Args extends\n      | MaybeExtractEventArgsFromAbi<abiEvents, _EventName>\n      | undefined = undefined,\n  >(\n    args?:\n      | CreateEventFilterParameters<\n          abiEvent,\n          abiEvents,\n          strict,\n          fromBlock,\n          toBlock,\n          _EventName,\n          _Args\n        >\n      | undefined,\n  ) => Promise<\n    CreateEventFilterReturnType<\n      abiEvent,\n      abiEvents,\n      strict,\n      fromBlock,\n      toBlock,\n      _EventName,\n      _Args\n    >\n  >\n  /**\n   * Creates a Filter to listen for new pending transaction hashes that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n   *\n   * - Docs: https://viem.sh/docs/actions/public/createPendingTransactionFilter\n   * - JSON-RPC Methods: [`eth_newPendingTransactionFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newpendingtransactionfilter)\n   *\n   * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateBlockFilterReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await client.createPendingTransactionFilter()\n   * // { id: \"0x345a6572337856574a76364e457a4366\", type: 'transaction' }\n   */\n  createPendingTransactionFilter: () => Promise<CreatePendingTransactionFilterReturnType>\n  /**\n   * Estimates the gas required to successfully execute a contract write function call.\n   *\n   * - Docs: https://viem.sh/docs/contract/estimateContractGas\n   *\n   * @remarks\n   * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`estimateGas` action](https://viem.sh/docs/actions/public/estimateGas) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n   *\n   * @param args - {@link EstimateContractGasParameters}\n   * @returns The gas estimate (in wei). {@link EstimateContractGasReturnType}\n   *\n   * @example\n   * import { createPublicClient, http, parseAbi } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const gas = await client.estimateContractGas({\n   *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *   abi: parseAbi(['function mint() public']),\n   *   functionName: 'mint',\n   *   account: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266',\n   * })\n   */\n  estimateContractGas: <\n    chain extends Chain | undefined,\n    const abi extends Abi | readonly unknown[],\n    functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n    args extends ContractFunctionArgs<\n      abi,\n      'nonpayable' | 'payable',\n      functionName\n    >,\n  >(\n    args: EstimateContractGasParameters<abi, functionName, args, chain>,\n  ) => Promise<EstimateContractGasReturnType>\n  /**\n   * Estimates the gas necessary to complete a transaction without submitting it to the network.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/estimateGas\n   * - JSON-RPC Methods: [`eth_estimateGas`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_estimategas)\n   *\n   * @param args - {@link EstimateGasParameters}\n   * @returns The gas estimate (in wei). {@link EstimateGasReturnType}\n   *\n   * @example\n   * import { createPublicClient, http, parseEther } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const gasEstimate = await client.estimateGas({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *   value: parseEther('1'),\n   * })\n   */\n  estimateGas: (\n    args: EstimateGasParameters<chain>,\n  ) => Promise<EstimateGasReturnType>\n  /**\n   * Returns the balance of an address in wei.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getBalance\n   * - JSON-RPC Methods: [`eth_getBalance`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getbalance)\n   *\n   * @remarks\n   * You can convert the balance to ether units with [`formatEther`](https://viem.sh/docs/utilities/formatEther).\n   *\n   * ```ts\n   * const balance = await getBalance(client, {\n   *   address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   blockTag: 'safe'\n   * })\n   * const balanceAsEther = formatEther(balance)\n   * // \"6.942\"\n   * ```\n   *\n   * @param args - {@link GetBalanceParameters}\n   * @returns The balance of the address in wei. {@link GetBalanceReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const balance = await client.getBalance({\n   *   address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   * })\n   * // 10000000000000000000000n (wei)\n   */\n  getBalance: (args: GetBalanceParameters) => Promise<GetBalanceReturnType>\n  /**\n   * Returns the base fee per blob gas in wei.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getBlobBaseFee\n   * - JSON-RPC Methods: [`eth_blobBaseFee`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blobBaseFee)\n   *\n   * @param client - Client to use\n   * @returns The blob base fee (in wei). {@link GetBlobBaseFeeReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { getBlobBaseFee } from 'viem/public'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const blobBaseFee = await client.getBlobBaseFee()\n   */\n  getBlobBaseFee: () => Promise<GetBlobBaseFeeReturnType>\n  /**\n   * Returns information about a block at a block number, hash, or tag.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getBlock\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_fetching-blocks\n   * - JSON-RPC Methods:\n   *   - Calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbynumber) for `blockNumber` & `blockTag`.\n   *   - Calls [`eth_getBlockByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbyhash) for `blockHash`.\n   *\n   * @param args - {@link GetBlockParameters}\n   * @returns Information about the block. {@link GetBlockReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const block = await client.getBlock()\n   */\n  getBlock: <\n    includeTransactions extends boolean = false,\n    blockTag extends BlockTag = 'latest',\n  >(\n    args?: GetBlockParameters<includeTransactions, blockTag> | undefined,\n  ) => Promise<GetBlockReturnType<chain, includeTransactions, blockTag>>\n  /**\n   * Returns the number of the most recent block seen.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getBlockNumber\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_fetching-blocks\n   * - JSON-RPC Methods: [`eth_blockNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blocknumber)\n   *\n   * @param args - {@link GetBlockNumberParameters}\n   * @returns The number of the block. {@link GetBlockNumberReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const blockNumber = await client.getBlockNumber()\n   * // 69420n\n   */\n  getBlockNumber: (\n    args?: GetBlockNumberParameters | undefined,\n  ) => Promise<GetBlockNumberReturnType>\n  /**\n   * Returns the number of Transactions at a block number, hash, or tag.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getBlockTransactionCount\n   * - JSON-RPC Methods:\n   *   - Calls [`eth_getBlockTransactionCountByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblocktransactioncountbynumber) for `blockNumber` & `blockTag`.\n   *   - Calls [`eth_getBlockTransactionCountByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblocktransactioncountbyhash) for `blockHash`.\n   *\n   * @param args - {@link GetBlockTransactionCountParameters}\n   * @returns The block transaction count. {@link GetBlockTransactionCountReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const count = await client.getBlockTransactionCount()\n   */\n  getBlockTransactionCount: (\n    args?: GetBlockTransactionCountParameters | undefined,\n  ) => Promise<GetBlockTransactionCountReturnType>\n  /** @deprecated Use `getCode` instead. */\n  getBytecode: (args: GetCodeParameters) => Promise<GetCodeReturnType>\n  /**\n   * Returns the chain ID associated with the current network.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getChainId\n   * - JSON-RPC Methods: [`eth_chainId`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_chainid)\n   *\n   * @returns The current chain ID. {@link GetChainIdReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const chainId = await client.getChainId()\n   * // 1\n   */\n  getChainId: () => Promise<GetChainIdReturnType>\n  /**\n   * Retrieves the bytecode at an address.\n   *\n   * - Docs: https://viem.sh/docs/contract/getCode\n   * - JSON-RPC Methods: [`eth_getCode`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getcode)\n   *\n   * @param args - {@link GetBytecodeParameters}\n   * @returns The contract's bytecode. {@link GetBytecodeReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const code = await client.getCode({\n   *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   * })\n   */\n  getCode: (args: GetCodeParameters) => Promise<GetCodeReturnType>\n  /**\n   * Returns a list of event logs emitted by a contract.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getContractEvents\n   * - JSON-RPC Methods: [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs)\n   *\n   * @param client - Client to use\n   * @param parameters - {@link GetContractEventsParameters}\n   * @returns A list of event logs. {@link GetContractEventsReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { wagmiAbi } from './abi'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const logs = await client.getContractEvents(client, {\n   *  address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *  abi: wagmiAbi,\n   *  eventName: 'Transfer'\n   * })\n   */\n  getContractEvents: <\n    const abi extends Abi | readonly unknown[],\n    eventName extends ContractEventName<abi> | undefined = undefined,\n    strict extends boolean | undefined = undefined,\n    fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n    toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  >(\n    args: GetContractEventsParameters<\n      abi,\n      eventName,\n      strict,\n      fromBlock,\n      toBlock\n    >,\n  ) => Promise<\n    GetContractEventsReturnType<abi, eventName, strict, fromBlock, toBlock>\n  >\n  /**\n   * Reads the EIP-712 domain from a contract, based on the ERC-5267 specification.\n   *\n   * @param client - A {@link Client} instance.\n   * @param parameters - The parameters of the action. {@link GetEip712DomainParameters}\n   * @returns The EIP-712 domain, fields, and extensions. {@link GetEip712DomainReturnType}\n   *\n   * @example\n   * ```ts\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   *\n   * const domain = await client.getEip712Domain({\n   *   address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',\n   * })\n   * // {\n   * //   domain: {\n   * //     name: 'ExampleContract',\n   * //     version: '1',\n   * //     chainId: 1,\n   * //     verifyingContract: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',\n   * //   },\n   * //   fields: '0x0f',\n   * //   extensions: [],\n   * // }\n   * ```\n   */\n  getEip712Domain: (\n    args: GetEip712DomainParameters,\n  ) => Promise<GetEip712DomainReturnType>\n  /**\n   * Gets address for ENS name.\n   *\n   * - Docs: https://viem.sh/docs/ens/actions/getEnsAddress\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n   *\n   * @remarks\n   * Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.\n   *\n   * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n   *\n   * @param args - {@link GetEnsAddressParameters}\n   * @returns Address for ENS name or `null` if not found. {@link GetEnsAddressReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { normalize } from 'viem/ens'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const ensAddress = await client.getEnsAddress({\n   *   name: normalize('wevm.eth'),\n   * })\n   * // '0xd2135CfB216b74109775236E36d4b433F1DF507B'\n   */\n  getEnsAddress: (\n    args: GetEnsAddressParameters,\n  ) => Promise<GetEnsAddressReturnType>\n  /**\n   * Gets the avatar of an ENS name.\n   *\n   * - Docs: https://viem.sh/docs/ens/actions/getEnsAvatar\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n   *\n   * @remarks\n   * Calls [`getEnsText`](https://viem.sh/docs/ens/actions/getEnsText) with `key` set to `'avatar'`.\n   *\n   * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n   *\n   * @param args - {@link GetEnsAvatarParameters}\n   * @returns Avatar URI or `null` if not found. {@link GetEnsAvatarReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { normalize } from 'viem/ens'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const ensAvatar = await client.getEnsAvatar({\n   *   name: normalize('wevm.eth'),\n   * })\n   * // 'https://ipfs.io/ipfs/Qma8mnp6xV3J2cRNf3mTth5C8nV11CAnceVinc3y8jSbio'\n   */\n  getEnsAvatar: (\n    args: GetEnsAvatarParameters,\n  ) => Promise<GetEnsAvatarReturnType>\n  /**\n   * Gets primary name for specified address.\n   *\n   * - Docs: https://viem.sh/docs/ens/actions/getEnsName\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n   *\n   * @remarks\n   * Calls `reverse(bytes)` on ENS Universal Resolver Contract to \"reverse resolve\" the address to the primary ENS name.\n   *\n   * @param args - {@link GetEnsNameParameters}\n   * @returns Name or `null` if not found. {@link GetEnsNameReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const ensName = await client.getEnsName({\n   *   address: '0xd2135CfB216b74109775236E36d4b433F1DF507B',\n   * })\n   * // 'wevm.eth'\n   */\n  getEnsName: (args: GetEnsNameParameters) => Promise<GetEnsNameReturnType>\n  /**\n   * Gets resolver for ENS name.\n   *\n   * - Docs: https://viem.sh/docs/ens/actions/getEnsResolver\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n   *\n   * @remarks\n   * Calls `findResolver(bytes)` on ENS Universal Resolver Contract to retrieve the resolver of an ENS name.\n   *\n   * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n   *\n   * @param args - {@link GetEnsResolverParameters}\n   * @returns Address for ENS resolver. {@link GetEnsResolverReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { normalize } from 'viem/ens'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const resolverAddress = await client.getEnsResolver({\n   *   name: normalize('wevm.eth'),\n   * })\n   * // '0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41'\n   */\n  getEnsResolver: (\n    args: GetEnsResolverParameters,\n  ) => Promise<GetEnsResolverReturnType>\n  /**\n   * Gets a text record for specified ENS name.\n   *\n   * - Docs: https://viem.sh/docs/ens/actions/getEnsResolver\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n   *\n   * @remarks\n   * Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.\n   *\n   * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n   *\n   * @param args - {@link GetEnsTextParameters}\n   * @returns Address for ENS resolver. {@link GetEnsTextReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { normalize } from 'viem/ens'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const twitterRecord = await client.getEnsText({\n   *   name: normalize('wevm.eth'),\n   *   key: 'com.twitter',\n   * })\n   * // 'wevm_dev'\n   */\n  getEnsText: (args: GetEnsTextParameters) => Promise<GetEnsTextReturnType>\n  /**\n   * Returns a collection of historical gas information.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getFeeHistory\n   * - JSON-RPC Methods: [`eth_feeHistory`](https://docs.alchemy.com/reference/eth-feehistory)\n   *\n   * @param args - {@link GetFeeHistoryParameters}\n   * @returns The gas estimate (in wei). {@link GetFeeHistoryReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const feeHistory = await client.getFeeHistory({\n   *   blockCount: 4,\n   *   rewardPercentiles: [25, 75],\n   * })\n   */\n  getFeeHistory: (\n    args: GetFeeHistoryParameters,\n  ) => Promise<GetFeeHistoryReturnType>\n  /**\n   * Returns an estimate for the fees per gas for a transaction to be included\n   * in the next block.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/estimateFeesPerGas\n   *\n   * @param client - Client to use\n   * @param parameters - {@link EstimateFeesPerGasParameters}\n   * @returns An estimate (in wei) for the fees per gas. {@link EstimateFeesPerGasReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const maxPriorityFeePerGas = await client.estimateFeesPerGas()\n   * // { maxFeePerGas: ..., maxPriorityFeePerGas: ... }\n   */\n  estimateFeesPerGas: <\n    chainOverride extends Chain | undefined = undefined,\n    type extends FeeValuesType = 'eip1559',\n  >(\n    args?: EstimateFeesPerGasParameters<chain, chainOverride, type> | undefined,\n  ) => Promise<EstimateFeesPerGasReturnType<type>>\n  /**\n   * Returns a list of logs or hashes based on a [Filter](/docs/glossary/terms#filter) since the last time it was called.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getFilterChanges\n   * - JSON-RPC Methods: [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterchanges)\n   *\n   * @remarks\n   * A Filter can be created from the following actions:\n   *\n   * - [`createBlockFilter`](https://viem.sh/docs/actions/public/createBlockFilter)\n   * - [`createContractEventFilter`](https://viem.sh/docs/contract/createContractEventFilter)\n   * - [`createEventFilter`](https://viem.sh/docs/actions/public/createEventFilter)\n   * - [`createPendingTransactionFilter`](https://viem.sh/docs/actions/public/createPendingTransactionFilter)\n   *\n   * Depending on the type of filter, the return value will be different:\n   *\n   * - If the filter was created with `createContractEventFilter` or `createEventFilter`, it returns a list of logs.\n   * - If the filter was created with `createPendingTransactionFilter`, it returns a list of transaction hashes.\n   * - If the filter was created with `createBlockFilter`, it returns a list of block hashes.\n   *\n   * @param args - {@link GetFilterChangesParameters}\n   * @returns Logs or hashes. {@link GetFilterChangesReturnType}\n   *\n   * @example\n   * // Blocks\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await client.createBlockFilter()\n   * const hashes = await client.getFilterChanges({ filter })\n   *\n   * @example\n   * // Contract Events\n   * import { createPublicClient, http, parseAbi } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await client.createContractEventFilter({\n   *   address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n   *   abi: parseAbi(['event Transfer(address indexed, address indexed, uint256)']),\n   *   eventName: 'Transfer',\n   * })\n   * const logs = await client.getFilterChanges({ filter })\n   *\n   * @example\n   * // Raw Events\n   * import { createPublicClient, http, parseAbiItem } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await client.createEventFilter({\n   *   address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n   *   event: parseAbiItem('event Transfer(address indexed, address indexed, uint256)'),\n   * })\n   * const logs = await client.getFilterChanges({ filter })\n   *\n   * @example\n   * // Transactions\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await client.createPendingTransactionFilter()\n   * const hashes = await client.getFilterChanges({ filter })\n   */\n  getFilterChanges: <\n    filterType extends FilterType,\n    const abi extends Abi | readonly unknown[] | undefined,\n    eventName extends string | undefined,\n    strict extends boolean | undefined = undefined,\n    fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n    toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  >(\n    args: GetFilterChangesParameters<\n      filterType,\n      abi,\n      eventName,\n      strict,\n      fromBlock,\n      toBlock\n    >,\n  ) => Promise<\n    GetFilterChangesReturnType<\n      filterType,\n      abi,\n      eventName,\n      strict,\n      fromBlock,\n      toBlock\n    >\n  >\n  /**\n   * Returns a list of event logs since the filter was created.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getFilterLogs\n   * - JSON-RPC Methods: [`eth_getFilterLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterlogs)\n   *\n   * @remarks\n   * `getFilterLogs` is only compatible with **event filters**.\n   *\n   * @param args - {@link GetFilterLogsParameters}\n   * @returns A list of event logs. {@link GetFilterLogsReturnType}\n   *\n   * @example\n   * import { createPublicClient, http, parseAbiItem } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const filter = await client.createEventFilter({\n   *   address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n   *   event: parseAbiItem('event Transfer(address indexed, address indexed, uint256)'),\n   * })\n   * const logs = await client.getFilterLogs({ filter })\n   */\n  getFilterLogs: <\n    const abi extends Abi | readonly unknown[] | undefined,\n    eventName extends string | undefined,\n    strict extends boolean | undefined = undefined,\n    fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n    toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  >(\n    args: GetFilterLogsParameters<abi, eventName, strict, fromBlock, toBlock>,\n  ) => Promise<\n    GetFilterLogsReturnType<abi, eventName, strict, fromBlock, toBlock>\n  >\n  /**\n   * Returns the current price of gas (in wei).\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getGasPrice\n   * - JSON-RPC Methods: [`eth_gasPrice`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gasprice)\n   *\n   * @returns The gas price (in wei). {@link GetGasPriceReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const gasPrice = await client.getGasPrice()\n   */\n  getGasPrice: () => Promise<GetGasPriceReturnType>\n  /**\n   * Returns a list of event logs matching the provided parameters.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getLogs\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/logs_event-logs\n   * - JSON-RPC Methods: [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs)\n   *\n   * @param args - {@link GetLogsParameters}\n   * @returns A list of event logs. {@link GetLogsReturnType}\n   *\n   * @example\n   * import { createPublicClient, http, parseAbiItem } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const logs = await client.getLogs()\n   */\n  getLogs: <\n    const abiEvent extends AbiEvent | undefined = undefined,\n    const abiEvents extends\n      | readonly AbiEvent[]\n      | readonly unknown[]\n      | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n    strict extends boolean | undefined = undefined,\n    fromBlock extends BlockNumber | BlockTag | undefined = undefined,\n    toBlock extends BlockNumber | BlockTag | undefined = undefined,\n  >(\n    args?:\n      | GetLogsParameters<abiEvent, abiEvents, strict, fromBlock, toBlock>\n      | undefined,\n  ) => Promise<\n    GetLogsReturnType<abiEvent, abiEvents, strict, fromBlock, toBlock>\n  >\n  /**\n   * Returns the account and storage values of the specified account including the Merkle-proof.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getProof\n   * - JSON-RPC Methods:\n   *   - Calls [`eth_getProof`](https://eips.ethereum.org/EIPS/eip-1186)\n   *\n   * @param client - Client to use\n   * @param parameters - {@link GetProofParameters}\n   * @returns Proof data. {@link GetProofReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const block = await client.getProof({\n   *  address: '0x...',\n   *  storageKeys: ['0x...'],\n   * })\n   */\n  getProof: (args: GetProofParameters) => Promise<GetProofReturnType>\n  /**\n   * Returns an estimate for the max priority fee per gas (in wei) for a transaction\n   * to be included in the next block.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/estimateMaxPriorityFeePerGas\n   *\n   * @param client - Client to use\n   * @returns An estimate (in wei) for the max priority fee per gas. {@link EstimateMaxPriorityFeePerGasReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const maxPriorityFeePerGas = await client.estimateMaxPriorityFeePerGas()\n   * // 10000000n\n   */\n  estimateMaxPriorityFeePerGas: <\n    chainOverride extends Chain | undefined = undefined,\n  >(\n    args?:\n      | EstimateMaxPriorityFeePerGasParameters<chain, chainOverride>\n      | undefined,\n  ) => Promise<EstimateMaxPriorityFeePerGasReturnType>\n  /**\n   * Returns the value from a storage slot at a given address.\n   *\n   * - Docs: https://viem.sh/docs/contract/getStorageAt\n   * - JSON-RPC Methods: [`eth_getStorageAt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getstorageat)\n   *\n   * @param args - {@link GetStorageAtParameters}\n   * @returns The value of the storage slot. {@link GetStorageAtReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { getStorageAt } from 'viem/contract'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const code = await client.getStorageAt({\n   *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *   slot: toHex(0),\n   * })\n   */\n  getStorageAt: (\n    args: GetStorageAtParameters,\n  ) => Promise<GetStorageAtReturnType>\n  /**\n   * Returns information about a [Transaction](https://viem.sh/docs/glossary/terms#transaction) given a hash or block identifier.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getTransaction\n   * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n   * - JSON-RPC Methods: [`eth_getTransactionByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionByHash)\n   *\n   * @param args - {@link GetTransactionParameters}\n   * @returns The transaction information. {@link GetTransactionReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const transaction = await client.getTransaction({\n   *   hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n   * })\n   */\n  getTransaction: <blockTag extends BlockTag = 'latest'>(\n    args: GetTransactionParameters<blockTag>,\n  ) => Promise<GetTransactionReturnType<chain, blockTag>>\n  /**\n   * Returns the number of blocks passed (confirmations) since the transaction was processed on a block.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getTransactionConfirmations\n   * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n   * - JSON-RPC Methods: [`eth_getTransactionConfirmations`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionConfirmations)\n   *\n   * @param args - {@link GetTransactionConfirmationsParameters}\n   * @returns The number of blocks passed since the transaction was processed. If confirmations is 0, then the Transaction has not been confirmed & processed yet. {@link GetTransactionConfirmationsReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const confirmations = await client.getTransactionConfirmations({\n   *   hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n   * })\n   */\n  getTransactionConfirmations: (\n    args: GetTransactionConfirmationsParameters<chain>,\n  ) => Promise<GetTransactionConfirmationsReturnType>\n  /**\n   * Returns the number of [Transactions](https://viem.sh/docs/glossary/terms#transaction) an Account has broadcast / sent.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getTransactionCount\n   * - JSON-RPC Methods: [`eth_getTransactionCount`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gettransactioncount)\n   *\n   * @param args - {@link GetTransactionCountParameters}\n   * @returns The number of transactions an account has sent. {@link GetTransactionCountReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const transactionCount = await client.getTransactionCount({\n   *   address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   * })\n   */\n  getTransactionCount: (\n    args: GetTransactionCountParameters,\n  ) => Promise<GetTransactionCountReturnType>\n  /**\n   * Returns the [Transaction Receipt](https://viem.sh/docs/glossary/terms#transaction-receipt) given a [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getTransactionReceipt\n   * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n   * - JSON-RPC Methods: [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionReceipt)\n   *\n   * @param args - {@link GetTransactionReceiptParameters}\n   * @returns The transaction receipt. {@link GetTransactionReceiptReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const transactionReceipt = await client.getTransactionReceipt({\n   *   hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n   * })\n   */\n  getTransactionReceipt: (\n    args: GetTransactionReceiptParameters,\n  ) => Promise<GetTransactionReceiptReturnType<chain>>\n  /**\n   * Similar to [`readContract`](https://viem.sh/docs/contract/readContract), but batches up multiple functions on a contract in a single RPC call via the [`multicall3` contract](https://github.com/mds1/multicall).\n   *\n   * - Docs: https://viem.sh/docs/contract/multicall\n   *\n   * @param args - {@link MulticallParameters}\n   * @returns An array of results with accompanying status. {@link MulticallReturnType}\n   *\n   * @example\n   * import { createPublicClient, http, parseAbi } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const abi = parseAbi([\n   *   'function balanceOf(address) view returns (uint256)',\n   *   'function totalSupply() view returns (uint256)',\n   * ])\n   * const result = await client.multicall({\n   *   contracts: [\n   *     {\n   *       address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *       abi,\n   *       functionName: 'balanceOf',\n   *       args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n   *     },\n   *     {\n   *       address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *       abi,\n   *       functionName: 'totalSupply',\n   *     },\n   *   ],\n   * })\n   * // [{ result: 424122n, status: 'success' }, { result: 1000000n, status: 'success' }]\n   */\n  multicall: <\n    const contracts extends readonly unknown[],\n    allowFailure extends boolean = true,\n  >(\n    args: MulticallParameters<contracts, allowFailure>,\n  ) => Promise<MulticallReturnType<contracts, allowFailure>>\n  /**\n   * Prepares a transaction request for signing.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/prepareTransactionRequest\n   *\n   * @param args - {@link PrepareTransactionRequestParameters}\n   * @returns The transaction request. {@link PrepareTransactionRequestReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const request = await client.prepareTransactionRequest({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   to: '0x0000000000000000000000000000000000000000',\n   *   value: 1n,\n   * })\n   *\n   * @example\n   * // Account Hoisting\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const request = await client.prepareTransactionRequest({\n   *   to: '0x0000000000000000000000000000000000000000',\n   *   value: 1n,\n   * })\n   */\n  prepareTransactionRequest: <\n    const request extends PrepareTransactionRequestRequest<\n      chain,\n      chainOverride\n    >,\n    chainOverride extends Chain | undefined = undefined,\n    accountOverride extends Account | Address | undefined = undefined,\n  >(\n    args: PrepareTransactionRequestParameters<\n      chain,\n      account,\n      chainOverride,\n      accountOverride,\n      request\n    >,\n  ) => Promise<\n    PrepareTransactionRequestReturnType<\n      chain,\n      account,\n      chainOverride,\n      accountOverride,\n      request\n    >\n  >\n  /**\n   * Calls a read-only function on a contract, and returns the response.\n   *\n   * - Docs: https://viem.sh/docs/contract/readContract\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_reading-contracts\n   *\n   * @remarks\n   * A \"read-only\" function (constant function) on a Solidity contract is denoted by a `view` or `pure` keyword. They can only read the state of the contract, and cannot make any changes to it. Since read-only methods do not change the state of the contract, they do not require any gas to be executed, and can be called by any user without the need to pay for gas.\n   *\n   * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`call` action](https://viem.sh/docs/actions/public/call) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n   *\n   * @param args - {@link ReadContractParameters}\n   * @returns The response from the contract. Type is inferred. {@link ReadContractReturnType}\n   *\n   * @example\n   * import { createPublicClient, http, parseAbi } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { readContract } from 'viem/contract'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const result = await client.readContract({\n   *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *   abi: parseAbi(['function balanceOf(address) view returns (uint256)']),\n   *   functionName: 'balanceOf',\n   *   args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n   * })\n   * // 424122n\n   */\n  readContract: <\n    const abi extends Abi | readonly unknown[],\n    functionName extends ContractFunctionName<abi, 'pure' | 'view'>,\n    const args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName>,\n  >(\n    args: ReadContractParameters<abi, functionName, args>,\n  ) => Promise<ReadContractReturnType<abi, functionName, args>>\n  /**\n   * Sends a **signed** transaction to the network\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/sendRawTransaction\n   * - JSON-RPC Method: [`eth_sendRawTransaction`](https://ethereum.github.io/execution-apis/api-documentation/)\n   *\n   * @param client - Client to use\n   * @param parameters - {@link SendRawTransactionParameters}\n   * @returns The transaction hash. {@link SendRawTransactionReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { sendRawTransaction } from 'viem/wallet'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   *\n   * const hash = await client.sendRawTransaction({\n   *   serializedTransaction: '0x02f850018203118080825208808080c080a04012522854168b27e5dc3d5839bab5e6b39e1a0ffd343901ce1622e3d64b48f1a04e00902ae0502c4728cbf12156290df99c3ed7de85b1dbfe20b5c36931733a33'\n   * })\n   */\n  sendRawTransaction: (\n    args: SendRawTransactionParameters,\n  ) => Promise<SendRawTransactionReturnType>\n  /**\n   * @deprecated Use `simulateBlocks` instead.\n   */\n  simulate: <const calls extends readonly unknown[]>(\n    args: SimulateBlocksParameters<calls>,\n  ) => Promise<SimulateBlocksReturnType<calls>>\n  /**\n   * Simulates a set of calls on block(s) with optional block and state overrides.\n   *\n   * @example\n   * ```ts\n   * import { createPublicClient, http, parseEther } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   *\n   * const result = await client.simulateBlocks({\n   *   blocks: [{\n   *     blockOverrides: {\n   *       number: 69420n,\n   *     },\n   *     calls: [{\n   *       {\n   *         account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n   *         data: '0xdeadbeef',\n   *         to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *       },\n   *       {\n   *         account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n   *         to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *         value: parseEther('1'),\n   *       },\n   *     }],\n   *     stateOverrides: [{\n   *       address: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n   *       balance: parseEther('10'),\n   *     }],\n   *   }]\n   * })\n   * ```\n   *\n   * @param client - Client to use.\n   * @param parameters - {@link SimulateParameters}\n   * @returns Simulated blocks. {@link SimulateReturnType}\n   */\n  simulateBlocks: <const calls extends readonly unknown[]>(\n    args: SimulateBlocksParameters<calls>,\n  ) => Promise<SimulateBlocksReturnType<calls>>\n  /**\n   * Simulates a set of calls.\n   *\n   * @example\n   * ```ts\n   * import { createPublicClient, http, parseEther } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   *\n   * const result = await client.simulateCalls({\n   *   account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n   *   calls: [{\n   *     {\n   *       data: '0xdeadbeef',\n   *       to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *     },\n   *     {\n   *       to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *       value: parseEther('1'),\n   *     },\n   *   ]\n   * })\n   * ```\n   *\n   * @param client - Client to use.\n   * @param parameters - {@link SimulateCallsParameters}\n   * @returns Results. {@link SimulateCallsReturnType}\n   */\n  simulateCalls: <const calls extends readonly unknown[]>(\n    args: SimulateCallsParameters<calls>,\n  ) => Promise<SimulateCallsReturnType<calls>>\n  /**\n   * Simulates/validates a contract interaction. This is useful for retrieving **return data** and **revert reasons** of contract write functions.\n   *\n   * - Docs: https://viem.sh/docs/contract/simulateContract\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_writing-to-contracts\n   *\n   * @remarks\n   * This function does not require gas to execute and _**does not**_ change the state of the blockchain. It is almost identical to [`readContract`](https://viem.sh/docs/contract/readContract), but also supports contract write functions.\n   *\n   * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`call` action](https://viem.sh/docs/actions/public/call) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n   *\n   * @param args - {@link SimulateContractParameters}\n   * @returns The simulation result and write request. {@link SimulateContractReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const result = await client.simulateContract({\n   *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *   abi: parseAbi(['function mint(uint32) view returns (uint32)']),\n   *   functionName: 'mint',\n   *   args: ['69420'],\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   * })\n   */\n  simulateContract: <\n    const abi extends Abi | readonly unknown[],\n    functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'>,\n    const args extends ContractFunctionArgs<\n      abi,\n      'nonpayable' | 'payable',\n      functionName\n    >,\n    chainOverride extends Chain | undefined,\n    accountOverride extends Account | Address | undefined = undefined,\n  >(\n    args: SimulateContractParameters<\n      abi,\n      functionName,\n      args,\n      chain,\n      chainOverride,\n      accountOverride\n    >,\n  ) => Promise<\n    SimulateContractReturnType<\n      abi,\n      functionName,\n      args,\n      chain,\n      account,\n      chainOverride,\n      accountOverride\n    >\n  >\n  /**\n   * Verify that a message was signed by the provided address.\n   *\n   * Compatible with Smart Contract Accounts & Externally Owned Accounts via [ERC-6492](https://eips.ethereum.org/EIPS/eip-6492).\n   *\n   * - Docs {@link https://viem.sh/docs/actions/public/verifyMessage}\n   *\n   * @param parameters - {@link VerifyMessageParameters}\n   * @returns Whether or not the signature is valid. {@link VerifyMessageReturnType}\n   */\n  verifyMessage: (\n    args: VerifyMessageParameters,\n  ) => Promise<VerifyMessageReturnType>\n  /**\n   * Verifies [EIP-4361](https://eips.ethereum.org/EIPS/eip-4361) formatted message was signed.\n   *\n   * Compatible with Smart Contract Accounts & Externally Owned Accounts via [ERC-6492](https://eips.ethereum.org/EIPS/eip-6492).\n   *\n   * - Docs {@link https://viem.sh/docs/siwe/actions/verifySiweMessage}\n   *\n   * @param parameters - {@link VerifySiweMessageParameters}\n   * @returns Whether or not the signature is valid. {@link VerifySiweMessageReturnType}\n   */\n  verifySiweMessage: (\n    args: VerifySiweMessageParameters,\n  ) => Promise<VerifySiweMessageReturnType>\n  /**\n   * Verify that typed data was signed by the provided address.\n   *\n   * - Docs {@link https://viem.sh/docs/actions/public/verifyTypedData}\n   *\n   * @param parameters - {@link VerifyTypedDataParameters}\n   * @returns Whether or not the signature is valid. {@link VerifyTypedDataReturnType}\n   */\n  verifyTypedData: (\n    args: VerifyTypedDataParameters,\n  ) => Promise<VerifyTypedDataReturnType>\n  /**\n   * Destroys a Filter that was created from one of the following Actions:\n   *\n   * - [`createBlockFilter`](https://viem.sh/docs/actions/public/createBlockFilter)\n   * - [`createEventFilter`](https://viem.sh/docs/actions/public/createEventFilter)\n   * - [`createPendingTransactionFilter`](https://viem.sh/docs/actions/public/createPendingTransactionFilter)\n   *\n   * - Docs: https://viem.sh/docs/actions/public/uninstallFilter\n   * - JSON-RPC Methods: [`eth_uninstallFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_uninstallFilter)\n   *\n   * @param args - {@link UninstallFilterParameters}\n   * @returns A boolean indicating if the Filter was successfully uninstalled. {@link UninstallFilterReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { createPendingTransactionFilter, uninstallFilter } from 'viem/public'\n   *\n   * const filter = await client.createPendingTransactionFilter()\n   * const uninstalled = await client.uninstallFilter({ filter })\n   * // true\n   */\n  uninstallFilter: (\n    args: UninstallFilterParameters,\n  ) => Promise<UninstallFilterReturnType>\n  /**\n   * Waits for the [Transaction](https://viem.sh/docs/glossary/terms#transaction) to be included on a [Block](https://viem.sh/docs/glossary/terms#block) (one confirmation), and then returns the [Transaction Receipt](https://viem.sh/docs/glossary/terms#transaction-receipt). If the Transaction reverts, then the action will throw an error.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/waitForTransactionReceipt\n   * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_sending-transactions\n   * - JSON-RPC Methods:\n   *   - Polls [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionReceipt) on each block until it has been processed.\n   *   - If a Transaction has been replaced:\n   *     - Calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbynumber) and extracts the transactions\n   *     - Checks if one of the Transactions is a replacement\n   *     - If so, calls [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionReceipt).\n   *\n   * @remarks\n   * The `waitForTransactionReceipt` action additionally supports Replacement detection (e.g. sped up Transactions).\n   *\n   * Transactions can be replaced when a user modifies their transaction in their wallet (to speed up or cancel). Transactions are replaced when they are sent from the same nonce.\n   *\n   * There are 3 types of Transaction Replacement reasons:\n   *\n   * - `repriced`: The gas price has been modified (e.g. different `maxFeePerGas`)\n   * - `cancelled`: The Transaction has been cancelled (e.g. `value === 0n`)\n   * - `replaced`: The Transaction has been replaced (e.g. different `value` or `data`)\n   *\n   * @param args - {@link WaitForTransactionReceiptParameters}\n   * @returns The transaction receipt. {@link WaitForTransactionReceiptReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const transactionReceipt = await client.waitForTransactionReceipt({\n   *   hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n   * })\n   */\n  waitForTransactionReceipt: (\n    args: WaitForTransactionReceiptParameters<chain>,\n  ) => Promise<WaitForTransactionReceiptReturnType<chain>>\n  /**\n   * Watches and returns incoming block numbers.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/watchBlockNumber\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_watching-blocks\n   * - JSON-RPC Methods:\n   *   - When `poll: true`, calls [`eth_blockNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blocknumber) on a polling interval.\n   *   - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newHeads\"` event.\n   *\n   * @param args - {@link WatchBlockNumberParameters}\n   * @returns A function that can be invoked to stop watching for new block numbers. {@link WatchBlockNumberReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const unwatch = await client.watchBlockNumber({\n   *   onBlockNumber: (blockNumber) => console.log(blockNumber),\n   * })\n   */\n  watchBlockNumber: (\n    args: WatchBlockNumberParameters,\n  ) => WatchBlockNumberReturnType\n  /**\n   * Watches and returns information for incoming blocks.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/watchBlocks\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_watching-blocks\n   * - JSON-RPC Methods:\n   *   - When `poll: true`, calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getBlockByNumber) on a polling interval.\n   *   - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newHeads\"` event.\n   *\n   * @param args - {@link WatchBlocksParameters}\n   * @returns A function that can be invoked to stop watching for new block numbers. {@link WatchBlocksReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const unwatch = await client.watchBlocks({\n   *   onBlock: (block) => console.log(block),\n   * })\n   */\n  watchBlocks: <\n    includeTransactions extends boolean = false,\n    blockTag extends BlockTag = 'latest',\n  >(\n    args: WatchBlocksParameters<\n      transport,\n      chain,\n      includeTransactions,\n      blockTag\n    >,\n  ) => WatchBlocksReturnType\n  /**\n   * Watches and returns emitted contract event logs.\n   *\n   * - Docs: https://viem.sh/docs/contract/watchContractEvent\n   *\n   * @remarks\n   * This Action will batch up all the event logs found within the [`pollingInterval`](https://viem.sh/docs/contract/watchContractEvent#pollinginterval-optional), and invoke them via [`onLogs`](https://viem.sh/docs/contract/watchContractEvent#onLogs).\n   *\n   * `watchContractEvent` will attempt to create an [Event Filter](https://viem.sh/docs/contract/createContractEventFilter) and listen to changes to the Filter per polling interval, however, if the RPC Provider does not support Filters (e.g. `eth_newFilter`), then `watchContractEvent` will fall back to using [`getLogs`](https://viem.sh/docs/actions/public/getLogs) instead.\n   *\n   * @param args - {@link WatchContractEventParameters}\n   * @returns A function that can be invoked to stop watching for new event logs. {@link WatchContractEventReturnType}\n   *\n   * @example\n   * import { createPublicClient, http, parseAbi } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const unwatch = client.watchContractEvent({\n   *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *   abi: parseAbi(['event Transfer(address indexed from, address indexed to, uint256 value)']),\n   *   eventName: 'Transfer',\n   *   args: { from: '0xc961145a54C96E3aE9bAA048c4F4D6b04C13916b' },\n   *   onLogs: (logs) => console.log(logs),\n   * })\n   */\n  watchContractEvent: <\n    const abi extends Abi | readonly unknown[],\n    eventName extends ContractEventName<abi>,\n    strict extends boolean | undefined = undefined,\n  >(\n    args: WatchContractEventParameters<abi, eventName, strict, transport>,\n  ) => WatchContractEventReturnType\n  /**\n   * Watches and returns emitted [Event Logs](https://viem.sh/docs/glossary/terms#event-log).\n   *\n   * - Docs: https://viem.sh/docs/actions/public/watchEvent\n   * - JSON-RPC Methods:\n   *   - **RPC Provider supports `eth_newFilter`:**\n   *     - Calls [`eth_newFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newfilter) to create a filter (called on initialize).\n   *     - On a polling interval, it will call [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterchanges).\n   *   - **RPC Provider does not support `eth_newFilter`:**\n   *     - Calls [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs) for each block between the polling interval.\n   *\n   * @remarks\n   * This Action will batch up all the Event Logs found within the [`pollingInterval`](https://viem.sh/docs/actions/public/watchEvent#pollinginterval-optional), and invoke them via [`onLogs`](https://viem.sh/docs/actions/public/watchEvent#onLogs).\n   *\n   * `watchEvent` will attempt to create an [Event Filter](https://viem.sh/docs/actions/public/createEventFilter) and listen to changes to the Filter per polling interval, however, if the RPC Provider does not support Filters (e.g. `eth_newFilter`), then `watchEvent` will fall back to using [`getLogs`](https://viem.sh/docs/actions/public/getLogs) instead.\n   *\n   * @param args - {@link WatchEventParameters}\n   * @returns A function that can be invoked to stop watching for new Event Logs. {@link WatchEventReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const unwatch = client.watchEvent({\n   *   onLogs: (logs) => console.log(logs),\n   * })\n   */\n  watchEvent: <\n    const abiEvent extends AbiEvent | undefined = undefined,\n    const abiEvents extends\n      | readonly AbiEvent[]\n      | readonly unknown[]\n      | undefined = abiEvent extends AbiEvent ? [abiEvent] : undefined,\n    strict extends boolean | undefined = undefined,\n  >(\n    args: WatchEventParameters<abiEvent, abiEvents, strict, transport>,\n  ) => WatchEventReturnType\n  /**\n   * Watches and returns pending transaction hashes.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/watchPendingTransactions\n   * - JSON-RPC Methods:\n   *   - When `poll: true`\n   *     - Calls [`eth_newPendingTransactionFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newpendingtransactionfilter) to initialize the filter.\n   *     - Calls [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getFilterChanges) on a polling interval.\n   *   - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newPendingTransactions\"` event.\n   *\n   * @remarks\n   * This Action will batch up all the pending transactions found within the [`pollingInterval`](https://viem.sh/docs/actions/public/watchPendingTransactions#pollinginterval-optional), and invoke them via [`onTransactions`](https://viem.sh/docs/actions/public/watchPendingTransactions#ontransactions).\n   *\n   * @param args - {@link WatchPendingTransactionsParameters}\n   * @returns A function that can be invoked to stop watching for new pending transaction hashes. {@link WatchPendingTransactionsReturnType}\n   *\n   * @example\n   * import { createPublicClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createPublicClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const unwatch = await client.watchPendingTransactions({\n   *   onTransactions: (hashes) => console.log(hashes),\n   * })\n   */\n  watchPendingTransactions: (\n    args: WatchPendingTransactionsParameters<transport>,\n  ) => WatchPendingTransactionsReturnType\n}\n\nexport function publicActions<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n>(\n  client: Client<transport, chain, account>,\n): PublicActions<transport, chain, account> {\n  return {\n    call: (args) => call(client, args),\n    createAccessList: (args) => createAccessList(client, args),\n    createBlockFilter: () => createBlockFilter(client),\n    createContractEventFilter: (args) =>\n      createContractEventFilter(client, args),\n    createEventFilter: (args) => createEventFilter(client, args),\n    createPendingTransactionFilter: () =>\n      createPendingTransactionFilter(client),\n    estimateContractGas: (args) => estimateContractGas(client, args as any),\n    estimateGas: (args) => estimateGas(client, args),\n    getBalance: (args) => getBalance(client, args),\n    getBlobBaseFee: () => getBlobBaseFee(client),\n    getBlock: (args) => getBlock(client, args),\n    getBlockNumber: (args) => getBlockNumber(client, args),\n    getBlockTransactionCount: (args) => getBlockTransactionCount(client, args),\n    getBytecode: (args) => getCode(client, args),\n    getChainId: () => getChainId(client),\n    getCode: (args) => getCode(client, args),\n    getContractEvents: (args) => getContractEvents(client, args),\n    getEip712Domain: (args) => getEip712Domain(client, args),\n    getEnsAddress: (args) => getEnsAddress(client, args),\n    getEnsAvatar: (args) => getEnsAvatar(client, args),\n    getEnsName: (args) => getEnsName(client, args),\n    getEnsResolver: (args) => getEnsResolver(client, args),\n    getEnsText: (args) => getEnsText(client, args),\n    getFeeHistory: (args) => getFeeHistory(client, args),\n    estimateFeesPerGas: (args) => estimateFeesPerGas(client, args),\n    getFilterChanges: (args) => getFilterChanges(client, args),\n    getFilterLogs: (args) => getFilterLogs(client, args),\n    getGasPrice: () => getGasPrice(client),\n    getLogs: (args) => getLogs(client, args as any),\n    getProof: (args) => getProof(client, args),\n    estimateMaxPriorityFeePerGas: (args) =>\n      estimateMaxPriorityFeePerGas(client, args),\n    getStorageAt: (args) => getStorageAt(client, args),\n    getTransaction: (args) => getTransaction(client, args),\n    getTransactionConfirmations: (args) =>\n      getTransactionConfirmations(client, args),\n    getTransactionCount: (args) => getTransactionCount(client, args),\n    getTransactionReceipt: (args) => getTransactionReceipt(client, args),\n    multicall: (args) => multicall(client, args),\n    prepareTransactionRequest: (args) =>\n      prepareTransactionRequest(client as any, args as any) as any,\n    readContract: (args) => readContract(client, args),\n    sendRawTransaction: (args) => sendRawTransaction(client, args),\n    simulate: (args) => simulateBlocks(client, args),\n    simulateBlocks: (args) => simulateBlocks(client, args),\n    simulateCalls: (args) => simulateCalls(client, args),\n    simulateContract: (args) => simulateContract(client, args),\n    verifyMessage: (args) => verifyMessage(client, args),\n    verifySiweMessage: (args) => verifySiweMessage(client, args),\n    verifyTypedData: (args) => verifyTypedData(client, args),\n    uninstallFilter: (args) => uninstallFilter(client, args),\n    waitForTransactionReceipt: (args) =>\n      waitForTransactionReceipt(client, args),\n    watchBlocks: (args) => watchBlocks(client, args),\n    watchBlockNumber: (args) => watchBlockNumber(client, args),\n    watchContractEvent: (args) => watchContractEvent(client, args),\n    watchEvent: (args) => watchEvent(client, args),\n    watchPendingTransactions: (args) => watchPendingTransactions(client, args),\n  }\n}\n","import type { Address } from 'abitype'\nimport type { ErrorType } from '../errors/utils.js'\nimport type { Account, ParseAccount } from '../types/account.js'\nimport type { Chain } from '../types/chain.js'\nimport type { PublicRpcSchema, RpcSchema } from '../types/eip1193.js'\nimport type { Prettify } from '../types/utils.js'\nimport {\n  type Client,\n  type ClientConfig,\n  type CreateClientErrorType,\n  createClient,\n} from './createClient.js'\nimport { type PublicActions, publicActions } from './decorators/public.js'\nimport type { Transport } from './transports/createTransport.js'\n\nexport type PublicClientConfig<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  accountOrAddress extends Account | Address | undefined = undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n> = Prettify<\n  Pick<\n    ClientConfig<transport, chain, accountOrAddress, rpcSchema>,\n    | 'batch'\n    | 'cacheTime'\n    | 'ccipRead'\n    | 'chain'\n    | 'key'\n    | 'name'\n    | 'pollingInterval'\n    | 'rpcSchema'\n    | 'transport'\n  >\n>\n\nexport type PublicClient<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  accountOrAddress extends Account | undefined = undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n> = Prettify<\n  Client<\n    transport,\n    chain,\n    accountOrAddress,\n    rpcSchema extends RpcSchema\n      ? [...PublicRpcSchema, ...rpcSchema]\n      : PublicRpcSchema,\n    PublicActions<transport, chain>\n  >\n>\n\nexport type CreatePublicClientErrorType = CreateClientErrorType | ErrorType\n\n/**\n * Creates a Public Client with a given [Transport](https://viem.sh/docs/clients/intro) configured for a [Chain](https://viem.sh/docs/clients/chains).\n *\n * - Docs: https://viem.sh/docs/clients/public\n *\n * A Public Client is an interface to \"public\" [JSON-RPC API](https://ethereum.org/en/developers/docs/apis/json-rpc/) methods such as retrieving block numbers, transactions, reading from smart contracts, etc through [Public Actions](/docs/actions/public/introduction).\n *\n * @param config - {@link PublicClientConfig}\n * @returns A Public Client. {@link PublicClient}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n */\nexport function createPublicClient<\n  transport extends Transport,\n  chain extends Chain | undefined = undefined,\n  accountOrAddress extends Account | Address | undefined = undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n>(\n  parameters: PublicClientConfig<transport, chain, accountOrAddress, rpcSchema>,\n): PublicClient<transport, chain, ParseAccount<accountOrAddress>, rpcSchema> {\n  const { key = 'public', name = 'Public Client' } = parameters\n  const client = createClient({\n    ...parameters,\n    key,\n    name,\n    type: 'publicClient',\n  })\n  return client.extend(publicActions) as any\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\n\nexport type AddChainParameters = {\n  /** The chain to add to the wallet. */\n  chain: Chain\n}\n\nexport type AddChainErrorType =\n  | RequestErrorType\n  | NumberToHexErrorType\n  | ErrorType\n\n/**\n * Adds an EVM chain to the wallet.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/addChain\n * - JSON-RPC Methods: [`eth_addEthereumChain`](https://eips.ethereum.org/EIPS/eip-3085)\n *\n * @param client - Client to use\n * @param parameters - {@link AddChainParameters}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { optimism } from 'viem/chains'\n * import { addChain } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   transport: custom(window.ethereum),\n * })\n * await addChain(client, { chain: optimism })\n */\nexport async function addChain<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(client: Client<Transport, chain, account>, { chain }: AddChainParameters) {\n  const { id, name, nativeCurrency, rpcUrls, blockExplorers } = chain\n  await client.request(\n    {\n      method: 'wallet_addEthereumChain',\n      params: [\n        {\n          chainId: numberToHex(id),\n          chainName: name,\n          nativeCurrency,\n          rpcUrls: rpcUrls.default.http,\n          blockExplorerUrls: blockExplorers\n            ? Object.values(blockExplorers).map(({ url }) => url)\n            : undefined,\n        },\n      ],\n    },\n    { dedupe: true, retryCount: 0 },\n  )\n}\n","import type { Abi } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { GetChainParameter } from '../../types/chain.js'\nimport type { ContractConstructorArgs } from '../../types/contract.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { UnionEvaluate, UnionOmit } from '../../types/utils.js'\nimport { encodeDeployData } from '../../utils/abi/encodeDeployData.js'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport {\n  type SendTransactionErrorType,\n  type SendTransactionParameters,\n  type SendTransactionReturnType,\n  sendTransaction,\n} from './sendTransaction.js'\n\nexport type DeployContractParameters<\n  abi extends Abi | readonly unknown[] = Abi,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  ///\n  allArgs = ContractConstructorArgs<abi>,\n> = UnionOmit<\n  SendTransactionParameters<chain, account, chainOverride>,\n  'accessList' | 'chain' | 'to' | 'data'\n> &\n  GetChainParameter<chain, chainOverride> &\n  UnionEvaluate<\n    readonly [] extends allArgs\n      ? { args?: allArgs | undefined }\n      : { args: allArgs }\n  > & {\n    abi: abi\n    bytecode: Hex\n  }\n\nexport type DeployContractReturnType = SendTransactionReturnType\n\nexport type DeployContractErrorType = SendTransactionErrorType | ErrorType\n\n/**\n * Deploys a contract to the network, given bytecode and constructor arguments.\n *\n * - Docs: https://viem.sh/docs/contract/deployContract\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_deploying-contracts\n *\n * @param client - Client to use\n * @param parameters - {@link DeployContractParameters}\n * @returns The [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash. {@link DeployContractReturnType}\n *\n * @example\n * import { createWalletClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { deployContract } from 'viem/contract'\n *\n * const client = createWalletClient({\n *   account: privateKeyToAccount('0x…'),\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const hash = await deployContract(client, {\n *   abi: [],\n *   account: '0x…,\n *   bytecode: '0x608060405260405161083e38038061083e833981016040819052610...',\n * })\n */\nexport function deployContract<\n  const abi extends Abi | readonly unknown[],\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  chainOverride extends Chain | undefined,\n>(\n  walletClient: Client<Transport, chain, account>,\n  parameters: DeployContractParameters<abi, chain, account, chainOverride>,\n): Promise<DeployContractReturnType> {\n  const { abi, args, bytecode, ...request } =\n    parameters as DeployContractParameters\n  const calldata = encodeDeployData({ abi, args, bytecode })\n  return sendTransaction(walletClient, {\n    ...request,\n    ...(request.authorizationList ? { to: null } : {}),\n    data: calldata,\n  } as unknown as SendTransactionParameters<chain, account, chainOverride>)\n}\n","import type { Address } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport {\n  type ChecksumAddressErrorType,\n  checksumAddress,\n} from '../../utils/address/getAddress.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type GetAddressesReturnType = Address[]\n\nexport type GetAddressesErrorType =\n  | RequestErrorType\n  | ChecksumAddressErrorType\n  | ErrorType\n\n/**\n * Returns a list of account addresses owned by the wallet or client.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/getAddresses\n * - JSON-RPC Methods: [`eth_accounts`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_accounts)\n *\n * @param client - Client to use\n * @returns List of account addresses owned by the wallet or client. {@link GetAddressesReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getAddresses } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const accounts = await getAddresses(client)\n */\nexport async function getAddresses<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(client: Client<Transport, chain, account>): Promise<GetAddressesReturnType> {\n  if (client.account?.type === 'local') return [client.account.address]\n  const addresses = await client.request(\n    { method: 'eth_accounts' },\n    { dedupe: true },\n  )\n  return addresses.map((address) => checksumAddress(address))\n}\n","import type { Address } from 'abitype'\n\nimport { parseAccount } from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account } from '../../types/account.js'\nimport type {\n  Capabilities,\n  ChainIdToCapabilities,\n  ExtractCapabilities,\n} from '../../types/capabilities.js'\nimport type { Prettify } from '../../types/utils.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport { numberToHex } from '../../utils/encoding/toHex.js'\n\nexport type GetCapabilitiesParameters<\n  chainId extends number | undefined = undefined,\n> = {\n  account?: Account | Address | undefined\n  chainId?: chainId | number | undefined\n}\n\nexport type GetCapabilitiesReturnType<\n  chainId extends number | undefined = undefined,\n> = Prettify<\n  chainId extends number\n    ? ExtractCapabilities<'getCapabilities', 'ReturnType'>\n    : ChainIdToCapabilities<\n        Capabilities<ExtractCapabilities<'getCapabilities', 'ReturnType'>>,\n        number\n      >\n>\n\nexport type GetCapabilitiesErrorType = RequestErrorType | ErrorType\n\n/**\n * Extract capabilities that a connected wallet supports (e.g. paymasters, session keys, etc).\n *\n * - Docs: https://viem.sh/docs/actions/wallet/getCapabilities\n * - JSON-RPC Methods: [`wallet_getCapabilities`](https://eips.ethereum.org/EIPS/eip-5792)\n *\n * @param client - Client to use\n * @returns The wallet's capabilities. {@link GetCapabilitiesReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getCapabilities } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const capabilities = await getCapabilities(client)\n */\nexport async function getCapabilities<\n  chainId extends number | undefined = undefined,\n>(\n  client: Client<Transport>,\n  parameters: GetCapabilitiesParameters<chainId> = {},\n): Promise<GetCapabilitiesReturnType<chainId>> {\n  const { account = client.account, chainId } = parameters\n\n  const account_ = account ? parseAccount(account) : undefined\n\n  const params = chainId\n    ? ([account_?.address, [numberToHex(chainId)]] as const)\n    : ([account_?.address] as const)\n  const capabilities_raw = await client.request({\n    method: 'wallet_getCapabilities',\n    params,\n  })\n\n  const capabilities = {} as ChainIdToCapabilities<\n    ExtractCapabilities<'getCapabilities', 'ReturnType'>,\n    number\n  >\n  for (const [chainId, capabilities_] of Object.entries(capabilities_raw)) {\n    capabilities[Number(chainId)] = {}\n    for (let [key, value] of Object.entries(capabilities_)) {\n      if (key === 'addSubAccount') key = 'unstable_addSubAccount'\n      capabilities[Number(chainId)][key] = value\n    }\n  }\n  return (\n    typeof chainId === 'number' ? capabilities[chainId] : capabilities\n  ) as never\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { WalletPermission } from '../../types/eip1193.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type GetPermissionsReturnType = WalletPermission[]\n\nexport type GetPermissionsErrorType = RequestErrorType | ErrorType\n\n/**\n * Gets the wallets current permissions.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/getPermissions\n * - JSON-RPC Methods: [`wallet_getPermissions`](https://eips.ethereum.org/EIPS/eip-2255)\n *\n * @param client - Client to use\n * @returns The wallet permissions. {@link GetPermissionsReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getPermissions } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const permissions = await getPermissions(client)\n */\nexport async function getPermissions<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(client: Client<Transport, chain, account>) {\n  const permissions = await client.request(\n    { method: 'wallet_getPermissions' },\n    { dedupe: true },\n  )\n  return permissions\n}\n","import type { Address } from 'abitype'\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  AccountNotFoundError,\n  type AccountNotFoundErrorType,\n} from '../../errors/account.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { GetAccountParameter } from '../../types/account.js'\nimport type {\n  Authorization,\n  AuthorizationRequest,\n} from '../../types/authorization.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { PartialBy } from '../../types/utils.js'\nimport { isAddressEqual } from '../../utils/address/isAddressEqual.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport { getAction } from '../../utils/getAction.js'\nimport { getChainId } from '../public/getChainId.js'\nimport { getTransactionCount } from '../public/getTransactionCount.js'\n\nexport type PrepareAuthorizationParameters<\n  account extends Account | undefined = Account | undefined,\n> = GetAccountParameter<account> &\n  PartialBy<AuthorizationRequest, 'chainId' | 'nonce'> & {\n    /**\n     * Whether the EIP-7702 Transaction will be executed by the EOA (signing this Authorization) or another Account.\n     *\n     * By default, it will be assumed that the EIP-7702 Transaction will\n     * be executed by another Account.\n     */\n    executor?: 'self' | Account | Address | undefined\n  }\n\nexport type PrepareAuthorizationReturnType = Authorization\n\nexport type PrepareAuthorizationErrorType =\n  | ParseAccountErrorType\n  | RequestErrorType\n  | AccountNotFoundErrorType\n  | ErrorType\n\n/**\n * Prepares an [EIP-7702 Authorization](https://eips.ethereum.org/EIPS/eip-7702) object for signing.\n * This Action will fill the required fields of the Authorization object if they are not provided (e.g. `nonce` and `chainId`).\n *\n * With the prepared Authorization object, you can use [`signAuthorization`](https://viem.sh/docs/eip7702/signAuthorization) to sign over the Authorization object.\n *\n * @param client - Client to use\n * @param parameters - {@link PrepareAuthorizationParameters}\n * @returns The prepared Authorization object. {@link PrepareAuthorizationReturnType}\n *\n * @example\n * import { createClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { prepareAuthorization } from 'viem/experimental'\n *\n * const client = createClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const authorization = await prepareAuthorization(client, {\n *   account: privateKeyToAccount('0x..'),\n *   contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n *\n * @example\n * // Account Hoisting\n * import { createClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { prepareAuthorization } from 'viem/experimental'\n *\n * const client = createClient({\n *   account: privateKeyToAccount('0x…'),\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const authorization = await prepareAuthorization(client, {\n *   contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n */\nexport async function prepareAuthorization<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: PrepareAuthorizationParameters<account>,\n): Promise<PrepareAuthorizationReturnType> {\n  const { account: account_ = client.account, chainId, nonce } = parameters\n\n  if (!account_)\n    throw new AccountNotFoundError({\n      docsPath: '/docs/eip7702/prepareAuthorization',\n    })\n  const account = parseAccount(account_)\n\n  const executor = (() => {\n    if (!parameters.executor) return undefined\n    if (parameters.executor === 'self') return parameters.executor\n    return parseAccount(parameters.executor)\n  })()\n\n  const authorization = {\n    address: parameters.contractAddress ?? parameters.address,\n    chainId,\n    nonce,\n  } as Authorization\n\n  if (typeof authorization.chainId === 'undefined')\n    authorization.chainId =\n      client.chain?.id ??\n      (await getAction(client, getChainId, 'getChainId')({}))\n\n  if (typeof authorization.nonce === 'undefined') {\n    authorization.nonce = await getAction(\n      client,\n      getTransactionCount,\n      'getTransactionCount',\n    )({\n      address: account.address,\n      blockTag: 'pending',\n    })\n    if (\n      executor === 'self' ||\n      (executor?.address && isAddressEqual(executor.address, account.address))\n    )\n      authorization.nonce += 1\n  }\n\n  return authorization\n}\n","import type { Address } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport { getAddress } from '../../utils/address/getAddress.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type RequestAddressesReturnType = Address[]\n\nexport type RequestAddressesErrorType = RequestErrorType | ErrorType\n\n/**\n * Requests a list of accounts managed by a wallet.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/requestAddresses\n * - JSON-RPC Methods: [`eth_requestAccounts`](https://eips.ethereum.org/EIPS/eip-1102)\n *\n * Sends a request to the wallet, asking for permission to access the user's accounts. After the user accepts the request, it will return a list of accounts (addresses).\n *\n * This API can be useful for dapps that need to access the user's accounts in order to execute transactions or interact with smart contracts.\n *\n * @param client - Client to use\n * @returns List of accounts managed by a wallet {@link RequestAddressesReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { requestAddresses } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const accounts = await requestAddresses(client)\n */\nexport async function requestAddresses<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n): Promise<RequestAddressesReturnType> {\n  const addresses = await client.request(\n    { method: 'eth_requestAccounts' },\n    { dedupe: true, retryCount: 0 },\n  )\n  return addresses.map((address) => getAddress(address))\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { WalletPermission } from '../../types/eip1193.js'\nimport type { Prettify } from '../../types/utils.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type RequestPermissionsParameters = Prettify<\n  {\n    eth_accounts: Record<string, any>\n  } & {\n    [key: string]: Record<string, any>\n  }\n>\nexport type RequestPermissionsReturnType = WalletPermission[]\n\nexport type RequestPermissionsErrorType = RequestErrorType | ErrorType\n\n/**\n * Requests permissions for a wallet.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/requestPermissions\n * - JSON-RPC Methods: [`wallet_requestPermissions`](https://eips.ethereum.org/EIPS/eip-2255)\n *\n * @param client - Client to use\n * @param parameters - {@link RequestPermissionsParameters}\n * @returns The wallet permissions. {@link RequestPermissionsReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { requestPermissions } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const permissions = await requestPermissions(client, {\n *   eth_accounts: {}\n * })\n */\nexport async function requestPermissions<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  permissions: RequestPermissionsParameters,\n) {\n  return client.request(\n    {\n      method: 'wallet_requestPermissions',\n      params: [permissions],\n    },\n    { retryCount: 0 },\n  )\n}\n","import type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Account } from '../../types/account.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type ShowCallsStatusParameters = { id: string }\n\nexport type ShowCallsStatusReturnType = void\n\nexport type ShowCallsStatusErrorType = RequestErrorType | ErrorType\n\n/**\n * Requests for the wallet to show information about a call batch\n * that was sent via `sendCalls`.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/showCallsStatus\n * - JSON-RPC Methods: [`wallet_showCallsStatus`](https://eips.ethereum.org/EIPS/eip-5792)\n *\n * @param client - Client to use\n * @returns Status of the calls. {@link ShowCallsStatusReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { showCallsStatus } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * await showCallsStatus(client, { id: '0xdeadbeef' })\n */\nexport async function showCallsStatus<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: ShowCallsStatusParameters,\n): Promise<ShowCallsStatusReturnType> {\n  const { id } = parameters\n  await client.request({\n    method: 'wallet_showCallsStatus',\n    params: [id],\n  })\n  return\n}\n","import type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type {\n  SignAuthorizationErrorType as SignAuthorizationErrorType_account,\n  SignAuthorizationReturnType as SignAuthorizationReturnType_account,\n} from '../../accounts/utils/signAuthorization.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  AccountNotFoundError,\n  type AccountNotFoundErrorType,\n  AccountTypeNotSupportedError,\n  type AccountTypeNotSupportedErrorType,\n} from '../../errors/account.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport {\n  type PrepareAuthorizationErrorType,\n  type PrepareAuthorizationParameters,\n  prepareAuthorization,\n} from './prepareAuthorization.js'\n\nexport type SignAuthorizationParameters<\n  account extends Account | undefined = Account | undefined,\n> = PrepareAuthorizationParameters<account>\n\nexport type SignAuthorizationReturnType = SignAuthorizationReturnType_account\n\nexport type SignAuthorizationErrorType =\n  | ParseAccountErrorType\n  | AccountNotFoundErrorType\n  | AccountTypeNotSupportedErrorType\n  | PrepareAuthorizationErrorType\n  | SignAuthorizationErrorType_account\n  | ErrorType\n\n/**\n * Signs an [EIP-7702 Authorization](https://eips.ethereum.org/EIPS/eip-7702) object.\n *\n * With the calculated signature, you can:\n * - use [`verifyAuthorization`](https://viem.sh/docs/eip7702/verifyAuthorization) to verify the signed Authorization object,\n * - use [`recoverAuthorizationAddress`](https://viem.sh/docs/eip7702/recoverAuthorizationAddress) to recover the signing address from the signed Authorization object.\n *\n * @param client - Client to use\n * @param parameters - {@link SignAuthorizationParameters}\n * @returns The signed Authorization object. {@link SignAuthorizationReturnType}\n *\n * @example\n * import { createClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { signAuthorization } from 'viem/experimental'\n *\n * const client = createClient({\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const signature = await signAuthorization(client, {\n *   account: privateKeyToAccount('0x..'),\n *   contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n *\n * @example\n * // Account Hoisting\n * import { createClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { signAuthorization } from 'viem/experimental'\n *\n * const client = createClient({\n *   account: privateKeyToAccount('0x…'),\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const signature = await signAuthorization(client, {\n *   contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n */\nexport async function signAuthorization<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: SignAuthorizationParameters<account>,\n): Promise<SignAuthorizationReturnType> {\n  const { account: account_ = client.account } = parameters\n\n  if (!account_)\n    throw new AccountNotFoundError({\n      docsPath: '/docs/eip7702/signAuthorization',\n    })\n  const account = parseAccount(account_)\n\n  if (!account.signAuthorization)\n    throw new AccountTypeNotSupportedError({\n      docsPath: '/docs/eip7702/signAuthorization',\n      metaMessages: [\n        'The `signAuthorization` Action does not support JSON-RPC Accounts.',\n      ],\n      type: account.type,\n    })\n\n  const authorization = await prepareAuthorization(client, parameters)\n  return account.signAuthorization(authorization)\n}\n","import type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { SignMessageErrorType as SignMessageErrorType_account } from '../../accounts/utils/signMessage.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { AccountNotFoundError } from '../../errors/account.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { GetAccountParameter } from '../../types/account.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hex, SignableMessage } from '../../types/misc.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type ToHexErrorType,\n  stringToHex,\n  toHex,\n} from '../../utils/encoding/toHex.js'\n\nexport type SignMessageParameters<\n  account extends Account | undefined = Account | undefined,\n> = GetAccountParameter<account> & {\n  message: SignableMessage\n}\n\nexport type SignMessageReturnType = Hex\n\nexport type SignMessageErrorType =\n  | ParseAccountErrorType\n  | RequestErrorType\n  | SignMessageErrorType_account\n  | ToHexErrorType\n  | ErrorType\n\n/**\n * Calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191): `keccak256(\"\\x19Ethereum Signed Message:\\n\" + len(message) + message))`.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/signMessage\n * - JSON-RPC Methods:\n *   - JSON-RPC Accounts: [`personal_sign`](https://docs.metamask.io/guide/signing-data#personal-sign)\n *   - Local Accounts: Signs locally. No JSON-RPC request.\n *\n * With the calculated signature, you can:\n * - use [`verifyMessage`](https://viem.sh/docs/utilities/verifyMessage) to verify the signature,\n * - use [`recoverMessageAddress`](https://viem.sh/docs/utilities/recoverMessageAddress) to recover the signing address from a signature.\n *\n * @param client - Client to use\n * @param parameters - {@link SignMessageParameters}\n * @returns The signed message. {@link SignMessageReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { signMessage } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const signature = await signMessage(client, {\n *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n *   message: 'hello world',\n * })\n *\n * @example\n * // Account Hoisting\n * import { createWalletClient, custom } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { signMessage } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   account: privateKeyToAccount('0x…'),\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const signature = await signMessage(client, {\n *   message: 'hello world',\n * })\n */\nexport async function signMessage<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(\n  client: Client<Transport, chain, account>,\n  {\n    account: account_ = client.account,\n    message,\n  }: SignMessageParameters<account>,\n): Promise<SignMessageReturnType> {\n  if (!account_)\n    throw new AccountNotFoundError({\n      docsPath: '/docs/actions/wallet/signMessage',\n    })\n  const account = parseAccount(account_)\n\n  if (account.signMessage) return account.signMessage({ message })\n\n  const message_ = (() => {\n    if (typeof message === 'string') return stringToHex(message)\n    if (message.raw instanceof Uint8Array) return toHex(message.raw)\n    return message.raw\n  })()\n\n  return client.request(\n    {\n      method: 'personal_sign',\n      params: [message_, account.address],\n    },\n    { retryCount: 0 },\n  )\n}\n","import type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { SignTransactionErrorType as SignTransactionErrorType_account } from '../../accounts/utils/signTransaction.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport { AccountNotFoundError } from '../../errors/account.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { GetAccountParameter } from '../../types/account.js'\nimport type {\n  Chain,\n  DeriveChain,\n  GetChainParameter,\n} from '../../types/chain.js'\nimport type { GetTransactionRequestKzgParameter } from '../../types/kzg.js'\nimport type { RpcTransactionRequest } from '../../types/rpc.js'\nimport type {\n  TransactionRequest,\n  TransactionSerializable,\n  TransactionSerialized,\n} from '../../types/transaction.js'\nimport type { UnionOmit } from '../../types/utils.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type AssertCurrentChainErrorType,\n  assertCurrentChain,\n} from '../../utils/chain/assertCurrentChain.js'\nimport { numberToHex } from '../../utils/encoding/toHex.js'\nimport type { NumberToHexErrorType } from '../../utils/encoding/toHex.js'\nimport {\n  type FormattedTransactionRequest,\n  formatTransactionRequest,\n} from '../../utils/formatters/transactionRequest.js'\nimport { getAction } from '../../utils/getAction.js'\nimport {\n  type AssertRequestErrorType,\n  assertRequest,\n} from '../../utils/transaction/assertRequest.js'\nimport type { GetTransactionType } from '../../utils/transaction/getTransactionType.js'\nimport { type GetChainIdErrorType, getChainId } from '../public/getChainId.js'\n\nexport type SignTransactionRequest<\n  chain extends Chain | undefined = Chain | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  ///\n  _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>,\n> = UnionOmit<FormattedTransactionRequest<_derivedChain>, 'from'>\n\nexport type SignTransactionParameters<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  chainOverride extends Chain | undefined = Chain | undefined,\n  request extends SignTransactionRequest<\n    chain,\n    chainOverride\n  > = SignTransactionRequest<chain, chainOverride>,\n> = request &\n  GetAccountParameter<account> &\n  GetChainParameter<chain, chainOverride> &\n  GetTransactionRequestKzgParameter<request>\n\nexport type SignTransactionReturnType<\n  request extends SignTransactionRequest = SignTransactionRequest,\n> = TransactionSerialized<GetTransactionType<request>>\n\nexport type SignTransactionErrorType =\n  | ParseAccountErrorType\n  | AssertRequestErrorType\n  | GetChainIdErrorType\n  | AssertCurrentChainErrorType\n  | SignTransactionErrorType_account\n  | NumberToHexErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Signs a transaction.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/signTransaction\n * - JSON-RPC Methods:\n *   - JSON-RPC Accounts: [`eth_signTransaction`](https://ethereum.github.io/execution-apis/api-documentation/)\n *   - Local Accounts: Signs locally. No JSON-RPC request.\n *\n * @param args - {@link SignTransactionParameters}\n * @returns The signed serialized transaction. {@link SignTransactionReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { signTransaction } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const signature = await signTransaction(client, {\n *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n *   to: '0x0000000000000000000000000000000000000000',\n *   value: 1n,\n * })\n *\n * @example\n * // Account Hoisting\n * import { createWalletClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { signTransaction } from 'viem/actions'\n *\n * const client = createWalletClient({\n *   account: privateKeyToAccount('0x…'),\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const signature = await signTransaction(client, {\n *   to: '0x0000000000000000000000000000000000000000',\n *   value: 1n,\n * })\n */\nexport async function signTransaction<\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n  chainOverride extends Chain | undefined = undefined,\n  const request extends SignTransactionRequest<\n    chain,\n    chainOverride\n  > = SignTransactionRequest<chain, chainOverride>,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: SignTransactionParameters<chain, account, chainOverride, request>,\n): Promise<SignTransactionReturnType<request>> {\n  const {\n    account: account_ = client.account,\n    chain = client.chain,\n    ...transaction\n  } = parameters\n\n  if (!account_)\n    throw new AccountNotFoundError({\n      docsPath: '/docs/actions/wallet/signTransaction',\n    })\n  const account = parseAccount(account_)\n\n  assertRequest({\n    account,\n    ...parameters,\n  })\n\n  const chainId = await getAction(client, getChainId, 'getChainId')({})\n  if (chain !== null)\n    assertCurrentChain({\n      currentChainId: chainId,\n      chain,\n    })\n\n  const formatters = chain?.formatters || client.chain?.formatters\n  const format =\n    formatters?.transactionRequest?.format || formatTransactionRequest\n\n  if (account.signTransaction)\n    return account.signTransaction(\n      {\n        ...transaction,\n        chainId,\n      } as TransactionSerializable,\n      { serializer: client.chain?.serializers?.transaction },\n    ) as Promise<SignTransactionReturnType<request>>\n\n  return await client.request(\n    {\n      method: 'eth_signTransaction',\n      params: [\n        {\n          ...format(transaction as unknown as TransactionRequest),\n          chainId: numberToHex(chainId),\n          from: account.address,\n        } as unknown as RpcTransactionRequest,\n      ],\n    },\n    { retryCount: 0 },\n  )\n}\n","import type { TypedData } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type ParseAccountErrorType,\n  parseAccount,\n} from '../../accounts/utils/parseAccount.js'\nimport type { SignTypedDataErrorType as SignTypedDataErrorType_account } from '../../accounts/utils/signTypedData.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport {\n  AccountNotFoundError,\n  type AccountNotFoundErrorType,\n} from '../../errors/account.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { GetAccountParameter } from '../../types/account.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { Hex } from '../../types/misc.js'\nimport type { TypedDataDefinition } from '../../types/typedData.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport type { IsHexErrorType } from '../../utils/data/isHex.js'\nimport type { StringifyErrorType } from '../../utils/stringify.js'\nimport {\n  type GetTypesForEIP712DomainErrorType,\n  type SerializeTypedDataErrorType,\n  type ValidateTypedDataErrorType,\n  getTypesForEIP712Domain,\n  serializeTypedData,\n  validateTypedData,\n} from '../../utils/typedData.js'\n\nexport type SignTypedDataParameters<\n  typedData extends TypedData | Record<string, unknown> = TypedData,\n  primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData,\n  account extends Account | undefined = undefined,\n  ///\n  primaryTypes = typedData extends TypedData ? keyof typedData : string,\n> = TypedDataDefinition<typedData, primaryType, primaryTypes> &\n  GetAccountParameter<account>\n\nexport type SignTypedDataReturnType = Hex\n\nexport type SignTypedDataErrorType =\n  | AccountNotFoundErrorType\n  | ParseAccountErrorType\n  | GetTypesForEIP712DomainErrorType\n  | ValidateTypedDataErrorType\n  | StringifyErrorType\n  | SignTypedDataErrorType_account\n  | IsHexErrorType\n  | RequestErrorType\n  | SerializeTypedDataErrorType\n  | ErrorType\n\n/**\n * Signs typed data and calculates an Ethereum-specific signature in [https://eips.ethereum.org/EIPS/eip-712](https://eips.ethereum.org/EIPS/eip-712): `sign(keccak256(\"\\x19\\x01\" ‖ domainSeparator ‖ hashStruct(message)))`\n *\n * - Docs: https://viem.sh/docs/actions/wallet/signTypedData\n * - JSON-RPC Methods:\n *   - JSON-RPC Accounts: [`eth_signTypedData_v4`](https://docs.metamask.io/guide/signing-data#signtypeddata-v4)\n *   - Local Accounts: Signs locally. No JSON-RPC request.\n *\n * @param client - Client to use\n * @param parameters - {@link SignTypedDataParameters}\n * @returns The signed data. {@link SignTypedDataReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { signTypedData } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const signature = await signTypedData(client, {\n *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n *   domain: {\n *     name: 'Ether Mail',\n *     version: '1',\n *     chainId: 1,\n *     verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',\n *   },\n *   types: {\n *     Person: [\n *       { name: 'name', type: 'string' },\n *       { name: 'wallet', type: 'address' },\n *     ],\n *     Mail: [\n *       { name: 'from', type: 'Person' },\n *       { name: 'to', type: 'Person' },\n *       { name: 'contents', type: 'string' },\n *     ],\n *   },\n *   primaryType: 'Mail',\n *   message: {\n *     from: {\n *       name: 'Cow',\n *       wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',\n *     },\n *     to: {\n *       name: 'Bob',\n *       wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',\n *     },\n *     contents: 'Hello, Bob!',\n *   },\n * })\n *\n * @example\n * // Account Hoisting\n * import { createWalletClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { signTypedData } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   account: privateKeyToAccount('0x…'),\n *   chain: mainnet,\n *   transport: http(),\n * })\n * const signature = await signTypedData(client, {\n *   domain: {\n *     name: 'Ether Mail',\n *     version: '1',\n *     chainId: 1,\n *     verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',\n *   },\n *   types: {\n *     Person: [\n *       { name: 'name', type: 'string' },\n *       { name: 'wallet', type: 'address' },\n *     ],\n *     Mail: [\n *       { name: 'from', type: 'Person' },\n *       { name: 'to', type: 'Person' },\n *       { name: 'contents', type: 'string' },\n *     ],\n *   },\n *   primaryType: 'Mail',\n *   message: {\n *     from: {\n *       name: 'Cow',\n *       wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',\n *     },\n *     to: {\n *       name: 'Bob',\n *       wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',\n *     },\n *     contents: 'Hello, Bob!',\n *   },\n * })\n */\nexport async function signTypedData<\n  const typedData extends TypedData | Record<string, unknown>,\n  primaryType extends keyof typedData | 'EIP712Domain',\n  chain extends Chain | undefined,\n  account extends Account | undefined,\n>(\n  client: Client<Transport, chain, account>,\n  parameters: SignTypedDataParameters<typedData, primaryType, account>,\n): Promise<SignTypedDataReturnType> {\n  const {\n    account: account_ = client.account,\n    domain,\n    message,\n    primaryType,\n  } = parameters as unknown as SignTypedDataParameters\n\n  if (!account_)\n    throw new AccountNotFoundError({\n      docsPath: '/docs/actions/wallet/signTypedData',\n    })\n  const account = parseAccount(account_)\n\n  const types = {\n    EIP712Domain: getTypesForEIP712Domain({ domain }),\n    ...parameters.types,\n  }\n\n  // Need to do a runtime validation check on addresses, byte ranges, integer ranges, etc\n  // as we can't statically check this with TypeScript.\n  validateTypedData({ domain, message, primaryType, types })\n\n  if (account.signTypedData)\n    return account.signTypedData({ domain, message, primaryType, types })\n\n  const typedData = serializeTypedData({ domain, message, primaryType, types })\n  return client.request(\n    {\n      method: 'eth_signTypedData_v4',\n      params: [account.address, typedData],\n    },\n    { retryCount: 0 },\n  )\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\n\nexport type SwitchChainParameters = {\n  /** ID of Chain to switch to */\n  id: Chain['id']\n}\n\nexport type SwitchChainErrorType =\n  | NumberToHexErrorType\n  | RequestErrorType\n  | ErrorType\n\n/**\n * Switch the target chain in a wallet.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/switchChain\n * - JSON-RPC Methods: [`wallet_switchEthereumChain`](https://eips.ethereum.org/EIPS/eip-3326)\n *\n * @param client - Client to use\n * @param parameters - {@link SwitchChainParameters}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet, optimism } from 'viem/chains'\n * import { switchChain } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * await switchChain(client, { id: optimism.id })\n */\nexport async function switchChain<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(client: Client<Transport, chain, account>, { id }: SwitchChainParameters) {\n  await client.request(\n    {\n      method: 'wallet_switchEthereumChain',\n      params: [\n        {\n          chainId: numberToHex(id),\n        },\n      ],\n    },\n    { retryCount: 0 },\n  )\n}\n","import type { Account } from '../../accounts/types.js'\nimport type { Client } from '../../clients/createClient.js'\nimport type { Transport } from '../../clients/transports/createTransport.js'\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { Chain } from '../../types/chain.js'\nimport type { WatchAssetParams } from '../../types/eip1193.js'\nimport type { RequestErrorType } from '../../utils/buildRequest.js'\n\nexport type WatchAssetParameters = WatchAssetParams\nexport type WatchAssetReturnType = boolean\nexport type WatchAssetErrorType = RequestErrorType | ErrorType\n\n/**\n * Adds an EVM chain to the wallet.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/watchAsset\n * - JSON-RPC Methods: [`eth_switchEthereumChain`](https://eips.ethereum.org/EIPS/eip-747)\n *\n * @param client - Client to use\n * @param parameters - {@link WatchAssetParameters}\n * @returns Boolean indicating if the token was successfully added. {@link WatchAssetReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { watchAsset } from 'viem/wallet'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n * const success = await watchAsset(client, {\n *   type: 'ERC20',\n *   options: {\n *     address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n *     decimals: 18,\n *     symbol: 'WETH',\n *   },\n * })\n */\nexport async function watchAsset<\n  chain extends Chain | undefined,\n  account extends Account | undefined = undefined,\n>(\n  client: Client<Transport, chain, account>,\n  params: WatchAssetParameters,\n): Promise<WatchAssetReturnType> {\n  const added = await client.request(\n    {\n      method: 'wallet_watchAsset',\n      params,\n    },\n    { retryCount: 0 },\n  )\n  return added\n}\n","import type { Abi, Address, TypedData } from 'abitype'\n\nimport type { Account } from '../../accounts/types.js'\nimport {\n  type GetChainIdReturnType,\n  getChainId,\n} from '../../actions/public/getChainId.js'\nimport {\n  type AddChainParameters,\n  addChain,\n} from '../../actions/wallet/addChain.js'\nimport {\n  type DeployContractParameters,\n  type DeployContractReturnType,\n  deployContract,\n} from '../../actions/wallet/deployContract.js'\nimport {\n  type GetAddressesReturnType,\n  getAddresses,\n} from '../../actions/wallet/getAddresses.js'\nimport {\n  type GetCallsStatusParameters,\n  type GetCallsStatusReturnType,\n  getCallsStatus,\n} from '../../actions/wallet/getCallsStatus.js'\nimport {\n  type GetCapabilitiesParameters,\n  type GetCapabilitiesReturnType,\n  getCapabilities,\n} from '../../actions/wallet/getCapabilities.js'\nimport {\n  type GetPermissionsReturnType,\n  getPermissions,\n} from '../../actions/wallet/getPermissions.js'\nimport {\n  type PrepareAuthorizationParameters,\n  type PrepareAuthorizationReturnType,\n  prepareAuthorization,\n} from '../../actions/wallet/prepareAuthorization.js'\nimport {\n  type PrepareTransactionRequestParameters,\n  type PrepareTransactionRequestRequest,\n  type PrepareTransactionRequestReturnType,\n  prepareTransactionRequest,\n} from '../../actions/wallet/prepareTransactionRequest.js'\nimport {\n  type RequestAddressesReturnType,\n  requestAddresses,\n} from '../../actions/wallet/requestAddresses.js'\nimport {\n  type RequestPermissionsParameters,\n  type RequestPermissionsReturnType,\n  requestPermissions,\n} from '../../actions/wallet/requestPermissions.js'\nimport {\n  type SendCallsParameters,\n  type SendCallsReturnType,\n  sendCalls,\n} from '../../actions/wallet/sendCalls.js'\nimport {\n  type SendRawTransactionParameters,\n  type SendRawTransactionReturnType,\n  sendRawTransaction,\n} from '../../actions/wallet/sendRawTransaction.js'\nimport {\n  type SendTransactionParameters,\n  type SendTransactionRequest,\n  type SendTransactionReturnType,\n  sendTransaction,\n} from '../../actions/wallet/sendTransaction.js'\nimport {\n  type ShowCallsStatusParameters,\n  type ShowCallsStatusReturnType,\n  showCallsStatus,\n} from '../../actions/wallet/showCallsStatus.js'\nimport {\n  type SignAuthorizationParameters,\n  type SignAuthorizationReturnType,\n  signAuthorization,\n} from '../../actions/wallet/signAuthorization.js'\nimport {\n  type SignMessageParameters,\n  type SignMessageReturnType,\n  signMessage,\n} from '../../actions/wallet/signMessage.js'\nimport {\n  type SignTransactionParameters,\n  type SignTransactionRequest,\n  type SignTransactionReturnType,\n  signTransaction,\n} from '../../actions/wallet/signTransaction.js'\nimport {\n  type SignTypedDataParameters,\n  type SignTypedDataReturnType,\n  signTypedData,\n} from '../../actions/wallet/signTypedData.js'\nimport {\n  type SwitchChainParameters,\n  switchChain,\n} from '../../actions/wallet/switchChain.js'\nimport {\n  type WaitForCallsStatusParameters,\n  type WaitForCallsStatusReturnType,\n  waitForCallsStatus,\n} from '../../actions/wallet/waitForCallsStatus.js'\nimport {\n  type WatchAssetParameters,\n  type WatchAssetReturnType,\n  watchAsset,\n} from '../../actions/wallet/watchAsset.js'\nimport {\n  type WriteContractParameters,\n  type WriteContractReturnType,\n  writeContract,\n} from '../../actions/wallet/writeContract.js'\nimport type { Chain } from '../../types/chain.js'\nimport type {\n  ContractFunctionArgs,\n  ContractFunctionName,\n} from '../../types/contract.js'\nimport type { Client } from '../createClient.js'\nimport type { Transport } from '../transports/createTransport.js'\n\nexport type WalletActions<\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n> = {\n  /**\n   * Adds an EVM chain to the wallet.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/addChain\n   * - JSON-RPC Methods: [`eth_addEthereumChain`](https://eips.ethereum.org/EIPS/eip-3085)\n   *\n   * @param args - {@link AddChainParameters}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { optimism } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   transport: custom(window.ethereum),\n   * })\n   * await client.addChain({ chain: optimism })\n   */\n  addChain: (args: AddChainParameters) => Promise<void>\n  /**\n   * Deploys a contract to the network, given bytecode and constructor arguments.\n   *\n   * - Docs: https://viem.sh/docs/contract/deployContract\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_deploying-contracts\n   *\n   * @param args - {@link DeployContractParameters}\n   * @returns The [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash. {@link DeployContractReturnType}\n   *\n   * @example\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const hash = await client.deployContract({\n   *   abi: [],\n   *   account: '0x…,\n   *   bytecode: '0x608060405260405161083e38038061083e833981016040819052610...',\n   * })\n   */\n  deployContract: <\n    const abi extends Abi | readonly unknown[],\n    chainOverride extends Chain | undefined,\n  >(\n    args: DeployContractParameters<abi, chain, account, chainOverride>,\n  ) => Promise<DeployContractReturnType>\n  /**\n   * Returns a list of account addresses owned by the wallet or client.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/getAddresses\n   * - JSON-RPC Methods: [`eth_accounts`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_accounts)\n   *\n   * @returns List of account addresses owned by the wallet or client. {@link GetAddressesReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const accounts = await client.getAddresses()\n   */\n  getAddresses: () => Promise<GetAddressesReturnType>\n  /**\n   * Returns the status of a call batch that was sent via `sendCalls`.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/getCallsStatus\n   * - JSON-RPC Methods: [`wallet_getCallsStatus`](https://eips.ethereum.org/EIPS/eip-5792)\n   *\n   * @param client - Client to use\n   * @returns Status of the calls. {@link GetCallsStatusReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   *\n   * const { receipts, status } = await client.getCallsStatus({ id: '0xdeadbeef' })\n   */\n  getCallsStatus: (\n    parameters: GetCallsStatusParameters,\n  ) => Promise<GetCallsStatusReturnType>\n  /**\n   * Extract capabilities that a connected wallet supports (e.g. paymasters, session keys, etc).\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/getCapabilities\n   * - JSON-RPC Methods: [`wallet_getCapabilities`](https://eips.ethereum.org/EIPS/eip-5792)\n   *\n   * @param client - Client to use\n   * @returns The wallet's capabilities. {@link GetCapabilitiesReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   *\n   * const capabilities = await client.getCapabilities({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   * })\n   */\n  getCapabilities: <chainId extends number | undefined>(\n    parameters?: GetCapabilitiesParameters<chainId>,\n  ) => Promise<GetCapabilitiesReturnType<chainId>>\n  /**\n   * Returns the chain ID associated with the current network.\n   *\n   * - Docs: https://viem.sh/docs/actions/public/getChainId\n   * - JSON-RPC Methods: [`eth_chainId`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_chainid)\n   *\n   * @returns The current chain ID. {@link GetChainIdReturnType}\n   *\n   * @example\n   * import { createWalletClient, http } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const chainId = await client.getChainId()\n   * // 1\n   */\n  getChainId: () => Promise<GetChainIdReturnType>\n  /**\n   * Gets the wallets current permissions.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/getPermissions\n   * - JSON-RPC Methods: [`wallet_getPermissions`](https://eips.ethereum.org/EIPS/eip-2255)\n   *\n   * @returns The wallet permissions. {@link GetPermissionsReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const permissions = await client.getPermissions()\n   */\n  getPermissions: () => Promise<GetPermissionsReturnType>\n  /**\n   * Prepares an [EIP-7702 Authorization](https://eips.ethereum.org/EIPS/eip-7702) object for signing.\n   * This Action will fill the required fields of the Authorization object if they are not provided (e.g. `nonce` and `chainId`).\n   *\n   * With the prepared Authorization object, you can use [`signAuthorization`](https://viem.sh/docs/eip7702/signAuthorization) to sign over the Authorization object.\n   *\n   * @param client - Client to use\n   * @param parameters - {@link PrepareAuthorizationParameters}\n   * @returns The prepared Authorization object. {@link PrepareAuthorizationReturnType}\n   *\n   * @example\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   *\n   * const authorization = await client.prepareAuthorization({\n   *   account: privateKeyToAccount('0x..'),\n   *   contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   * })\n   *\n   * @example\n   * // Account Hoisting\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   *\n   * const authorization = await client.prepareAuthorization({\n   *   contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   * })\n   */\n  prepareAuthorization: (\n    parameters: PrepareAuthorizationParameters<account>,\n  ) => Promise<PrepareAuthorizationReturnType>\n  /**\n   * Prepares a transaction request for signing.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/prepareTransactionRequest\n   *\n   * @param args - {@link PrepareTransactionRequestParameters}\n   * @returns The transaction request. {@link PrepareTransactionRequestReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const request = await client.prepareTransactionRequest({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   to: '0x0000000000000000000000000000000000000000',\n   *   value: 1n,\n   * })\n   *\n   * @example\n   * // Account Hoisting\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const request = await client.prepareTransactionRequest({\n   *   to: '0x0000000000000000000000000000000000000000',\n   *   value: 1n,\n   * })\n   */\n  prepareTransactionRequest: <\n    const request extends PrepareTransactionRequestRequest<\n      chain,\n      chainOverride\n    >,\n    chainOverride extends Chain | undefined = undefined,\n    accountOverride extends Account | Address | undefined = undefined,\n  >(\n    args: PrepareTransactionRequestParameters<\n      chain,\n      account,\n      chainOverride,\n      accountOverride,\n      request\n    >,\n  ) => Promise<\n    PrepareTransactionRequestReturnType<\n      chain,\n      account,\n      chainOverride,\n      accountOverride,\n      request\n    >\n  >\n  /**\n   * Requests a list of accounts managed by a wallet.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/requestAddresses\n   * - JSON-RPC Methods: [`eth_requestAccounts`](https://eips.ethereum.org/EIPS/eip-1102)\n   *\n   * Sends a request to the wallet, asking for permission to access the user's accounts. After the user accepts the request, it will return a list of accounts (addresses).\n   *\n   * This API can be useful for dapps that need to access the user's accounts in order to execute transactions or interact with smart contracts.\n   *\n   * @returns List of accounts managed by a wallet {@link RequestAddressesReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const accounts = await client.requestAddresses()\n   */\n  requestAddresses: () => Promise<RequestAddressesReturnType>\n  /**\n   * Requests permissions for a wallet.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/requestPermissions\n   * - JSON-RPC Methods: [`wallet_requestPermissions`](https://eips.ethereum.org/EIPS/eip-2255)\n   *\n   * @param args - {@link RequestPermissionsParameters}\n   * @returns The wallet permissions. {@link RequestPermissionsReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const permissions = await client.requestPermissions({\n   *   eth_accounts: {}\n   * })\n   */\n  requestPermissions: (\n    args: RequestPermissionsParameters,\n  ) => Promise<RequestPermissionsReturnType>\n  /**\n   * Requests the connected wallet to send a batch of calls.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/sendCalls\n   * - JSON-RPC Methods: [`wallet_sendCalls`](https://eips.ethereum.org/EIPS/eip-5792)\n   *\n   * @param client - Client to use\n   * @returns Transaction identifier. {@link SendCallsReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   *\n   * const id = await client.sendCalls({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   calls: [\n   *     {\n   *       data: '0xdeadbeef',\n   *       to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *     },\n   *     {\n   *       to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *       value: 69420n,\n   *     },\n   *   ],\n   * })\n   */\n  sendCalls: <\n    const calls extends readonly unknown[],\n    chainOverride extends Chain | undefined = undefined,\n  >(\n    parameters: SendCallsParameters<chain, account, chainOverride, calls>,\n  ) => Promise<SendCallsReturnType>\n  /**\n   * Sends a **signed** transaction to the network\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/sendRawTransaction\n   * - JSON-RPC Method: [`eth_sendRawTransaction`](https://ethereum.github.io/execution-apis/api-documentation/)\n   *\n   * @param client - Client to use\n   * @param parameters - {@link SendRawTransactionParameters}\n   * @returns The transaction hash. {@link SendRawTransactionReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   * import { sendRawTransaction } from 'viem/wallet'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   *\n   * const hash = await client.sendRawTransaction({\n   *   serializedTransaction: '0x02f850018203118080825208808080c080a04012522854168b27e5dc3d5839bab5e6b39e1a0ffd343901ce1622e3d64b48f1a04e00902ae0502c4728cbf12156290df99c3ed7de85b1dbfe20b5c36931733a33'\n   * })\n   */\n  sendRawTransaction: (\n    args: SendRawTransactionParameters,\n  ) => Promise<SendRawTransactionReturnType>\n  /**\n   * Creates, signs, and sends a new transaction to the network.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/sendTransaction\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_sending-transactions\n   * - JSON-RPC Methods:\n   *   - JSON-RPC Accounts: [`eth_sendTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendtransaction)\n   *   - Local Accounts: [`eth_sendRawTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendrawtransaction)\n   *\n   * @param args - {@link SendTransactionParameters}\n   * @returns The [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash. {@link SendTransactionReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const hash = await client.sendTransaction({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *   value: 1000000000000000000n,\n   * })\n   *\n   * @example\n   * // Account Hoisting\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const hash = await client.sendTransaction({\n   *   to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n   *   value: 1000000000000000000n,\n   * })\n   */\n  sendTransaction: <\n    const request extends SendTransactionRequest<chain, chainOverride>,\n    chainOverride extends Chain | undefined = undefined,\n  >(\n    args: SendTransactionParameters<chain, account, chainOverride, request>,\n  ) => Promise<SendTransactionReturnType>\n  /**\n   * Requests for the wallet to show information about a call batch\n   * that was sent via `sendCalls`.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/showCallsStatus\n   * - JSON-RPC Methods: [`wallet_showCallsStatus`](https://eips.ethereum.org/EIPS/eip-5792)\n   *\n   * @param client - Client to use\n   * @returns Displays status of the calls in wallet. {@link ShowCallsStatusReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   *\n   * await client.showCallsStatus({ id: '0xdeadbeef' })\n   */\n  showCallsStatus: (\n    parameters: ShowCallsStatusParameters,\n  ) => Promise<ShowCallsStatusReturnType>\n  /**\n   * Signs an [EIP-7702 Authorization](https://eips.ethereum.org/EIPS/eip-7702) object.\n   *\n   * With the calculated signature, you can:\n   * - use [`verifyAuthorization`](https://viem.sh/docs/eip7702/verifyAuthorization) to verify the signed Authorization object,\n   * - use [`recoverAuthorizationAddress`](https://viem.sh/docs/eip7702/recoverAuthorizationAddress) to recover the signing address from the signed Authorization object.\n   *\n   * @param client - Client to use\n   * @param parameters - {@link SignAuthorizationParameters}\n   * @returns The signed Authorization object. {@link SignAuthorizationReturnType}\n   *\n   * @example\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   *\n   * const signature = await client.signAuthorization({\n   *   account: privateKeyToAccount('0x..'),\n   *   contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   * })\n   *\n   * @example\n   * // Account Hoisting\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   *\n   * const signature = await client.signAuthorization({\n   *   contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   * })\n   */\n  signAuthorization: (\n    parameters: SignAuthorizationParameters<account>,\n  ) => Promise<SignAuthorizationReturnType>\n  /**\n   * Calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191): `keccak256(\"\\x19Ethereum Signed Message:\\n\" + len(message) + message))`.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/signMessage\n   * - JSON-RPC Methods:\n   *   - JSON-RPC Accounts: [`personal_sign`](https://docs.metamask.io/guide/signing-data#personal-sign)\n   *   - Local Accounts: Signs locally. No JSON-RPC request.\n   *\n   * With the calculated signature, you can:\n   * - use [`verifyMessage`](https://viem.sh/docs/utilities/verifyMessage) to verify the signature,\n   * - use [`recoverMessageAddress`](https://viem.sh/docs/utilities/recoverMessageAddress) to recover the signing address from a signature.\n   *\n   * @param args - {@link SignMessageParameters}\n   * @returns The signed message. {@link SignMessageReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const signature = await client.signMessage({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   message: 'hello world',\n   * })\n   *\n   * @example\n   * // Account Hoisting\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const signature = await client.signMessage({\n   *   message: 'hello world',\n   * })\n   */\n  signMessage: (\n    args: SignMessageParameters<account>,\n  ) => Promise<SignMessageReturnType>\n  /**\n   * Signs a transaction.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/signTransaction\n   * - JSON-RPC Methods:\n   *   - JSON-RPC Accounts: [`eth_signTransaction`](https://ethereum.github.io/execution-apis/api-documentation/)\n   *   - Local Accounts: Signs locally. No JSON-RPC request.\n   *\n   * @param args - {@link SignTransactionParameters}\n   * @returns The signed message. {@link SignTransactionReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const request = await client.prepareTransactionRequest({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   to: '0x0000000000000000000000000000000000000000',\n   *   value: 1n,\n   * })\n   * const signature = await client.signTransaction(request)\n   *\n   * @example\n   * // Account Hoisting\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const request = await client.prepareTransactionRequest({\n   *   to: '0x0000000000000000000000000000000000000000',\n   *   value: 1n,\n   * })\n   * const signature = await client.signTransaction(request)\n   */\n  signTransaction: <\n    chainOverride extends Chain | undefined,\n    const request extends SignTransactionRequest<\n      chain,\n      chainOverride\n    > = SignTransactionRequest<chain, chainOverride>,\n  >(\n    args: SignTransactionParameters<chain, account, chainOverride, request>,\n  ) => Promise<SignTransactionReturnType<request>>\n  /**\n   * Signs typed data and calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191): `keccak256(\"\\x19Ethereum Signed Message:\\n\" + len(message) + message))`.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/signTypedData\n   * - JSON-RPC Methods:\n   *   - JSON-RPC Accounts: [`eth_signTypedData_v4`](https://docs.metamask.io/guide/signing-data#signtypeddata-v4)\n   *   - Local Accounts: Signs locally. No JSON-RPC request.\n   *\n   * @param client - Client to use\n   * @param args - {@link SignTypedDataParameters}\n   * @returns The signed data. {@link SignTypedDataReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const signature = await client.signTypedData({\n   *   account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n   *   domain: {\n   *     name: 'Ether Mail',\n   *     version: '1',\n   *     chainId: 1,\n   *     verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',\n   *   },\n   *   types: {\n   *     Person: [\n   *       { name: 'name', type: 'string' },\n   *       { name: 'wallet', type: 'address' },\n   *     ],\n   *     Mail: [\n   *       { name: 'from', type: 'Person' },\n   *       { name: 'to', type: 'Person' },\n   *       { name: 'contents', type: 'string' },\n   *     ],\n   *   },\n   *   primaryType: 'Mail',\n   *   message: {\n   *     from: {\n   *       name: 'Cow',\n   *       wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',\n   *     },\n   *     to: {\n   *       name: 'Bob',\n   *       wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',\n   *     },\n   *     contents: 'Hello, Bob!',\n   *   },\n   * })\n   *\n   * @example\n   * // Account Hoisting\n   * import { createWalletClient, http } from 'viem'\n   * import { privateKeyToAccount } from 'viem/accounts'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   account: privateKeyToAccount('0x…'),\n   *   chain: mainnet,\n   *   transport: http(),\n   * })\n   * const signature = await client.signTypedData({\n   *   domain: {\n   *     name: 'Ether Mail',\n   *     version: '1',\n   *     chainId: 1,\n   *     verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',\n   *   },\n   *   types: {\n   *     Person: [\n   *       { name: 'name', type: 'string' },\n   *       { name: 'wallet', type: 'address' },\n   *     ],\n   *     Mail: [\n   *       { name: 'from', type: 'Person' },\n   *       { name: 'to', type: 'Person' },\n   *       { name: 'contents', type: 'string' },\n   *     ],\n   *   },\n   *   primaryType: 'Mail',\n   *   message: {\n   *     from: {\n   *       name: 'Cow',\n   *       wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',\n   *     },\n   *     to: {\n   *       name: 'Bob',\n   *       wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',\n   *     },\n   *     contents: 'Hello, Bob!',\n   *   },\n   * })\n   */\n  signTypedData: <\n    const typedData extends TypedData | { [key: string]: unknown },\n    primaryType extends string,\n  >(\n    args: SignTypedDataParameters<typedData, primaryType, account>,\n  ) => Promise<SignTypedDataReturnType>\n  /**\n   * Switch the target chain in a wallet.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/switchChain\n   * - JSON-RPC Methods: [`eth_switchEthereumChain`](https://eips.ethereum.org/EIPS/eip-3326)\n   *\n   * @param args - {@link SwitchChainParameters}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet, optimism } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * await client.switchChain({ id: optimism.id })\n   */\n  switchChain: (args: SwitchChainParameters) => Promise<void>\n  /**\n   * Waits for the status & receipts of a call bundle that was sent via `sendCalls`.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/waitForCallsStatus\n   * - JSON-RPC Methods: [`wallet_getCallsStatus`](https://eips.ethereum.org/EIPS/eip-5792)\n   *\n   * @param client - Client to use\n   * @param parameters - {@link WaitForCallsStatusParameters}\n   * @returns Status & receipts of the call bundle. {@link WaitForCallsStatusReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   *\n   * const { receipts, status } = await waitForCallsStatus(client, { id: '0xdeadbeef' })\n   */\n  waitForCallsStatus: (\n    parameters: WaitForCallsStatusParameters,\n  ) => Promise<WaitForCallsStatusReturnType>\n  /**\n   * Adds an EVM chain to the wallet.\n   *\n   * - Docs: https://viem.sh/docs/actions/wallet/watchAsset\n   * - JSON-RPC Methods: [`eth_switchEthereumChain`](https://eips.ethereum.org/EIPS/eip-747)\n   *\n   * @param args - {@link WatchAssetParameters}\n   * @returns Boolean indicating if the token was successfully added. {@link WatchAssetReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const success = await client.watchAsset({\n   *   type: 'ERC20',\n   *   options: {\n   *     address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n   *     decimals: 18,\n   *     symbol: 'WETH',\n   *   },\n   * })\n   */\n  watchAsset: (args: WatchAssetParameters) => Promise<WatchAssetReturnType>\n  /**\n   * Executes a write function on a contract.\n   *\n   * - Docs: https://viem.sh/docs/contract/writeContract\n   * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_writing-to-contracts\n   *\n   * A \"write\" function on a Solidity contract modifies the state of the blockchain. These types of functions require gas to be executed, and hence a [Transaction](https://viem.sh/docs/glossary/terms) is needed to be broadcast in order to change the state.\n   *\n   * Internally, uses a [Wallet Client](https://viem.sh/docs/clients/wallet) to call the [`sendTransaction` action](https://viem.sh/docs/actions/wallet/sendTransaction) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n   *\n   * __Warning: The `write` internally sends a transaction – it does not validate if the contract write will succeed (the contract may throw an error). It is highly recommended to [simulate the contract write with `contract.simulate`](https://viem.sh/docs/contract/writeContract#usage) before you execute it.__\n   *\n   * @param args - {@link WriteContractParameters}\n   * @returns A [Transaction Hash](https://viem.sh/docs/glossary/terms#hash). {@link WriteContractReturnType}\n   *\n   * @example\n   * import { createWalletClient, custom, parseAbi } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const hash = await client.writeContract({\n   *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *   abi: parseAbi(['function mint(uint32 tokenId) nonpayable']),\n   *   functionName: 'mint',\n   *   args: [69420],\n   * })\n   *\n   * @example\n   * // With Validation\n   * import { createWalletClient, custom, parseAbi } from 'viem'\n   * import { mainnet } from 'viem/chains'\n   *\n   * const client = createWalletClient({\n   *   chain: mainnet,\n   *   transport: custom(window.ethereum),\n   * })\n   * const { request } = await client.simulateContract({\n   *   address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n   *   abi: parseAbi(['function mint(uint32 tokenId) nonpayable']),\n   *   functionName: 'mint',\n   *   args: [69420],\n   * }\n   * const hash = await client.writeContract(request)\n   */\n  writeContract: <\n    const abi extends Abi | readonly unknown[],\n    functionName extends ContractFunctionName<abi, 'payable' | 'nonpayable'>,\n    args extends ContractFunctionArgs<\n      abi,\n      'payable' | 'nonpayable',\n      functionName\n    >,\n    chainOverride extends Chain | undefined = undefined,\n  >(\n    args: WriteContractParameters<\n      abi,\n      functionName,\n      args,\n      chain,\n      account,\n      chainOverride\n    >,\n  ) => Promise<WriteContractReturnType>\n}\n\nexport function walletActions<\n  transport extends Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n>(client: Client<transport, chain, account>): WalletActions<chain, account> {\n  return {\n    addChain: (args) => addChain(client, args),\n    deployContract: (args) => deployContract(client, args),\n    getAddresses: () => getAddresses(client),\n    getCallsStatus: (args) => getCallsStatus(client, args),\n    getCapabilities: (args) => getCapabilities(client, args),\n    getChainId: () => getChainId(client),\n    getPermissions: () => getPermissions(client),\n    prepareAuthorization: (args) => prepareAuthorization(client, args),\n    prepareTransactionRequest: (args) =>\n      prepareTransactionRequest(client as any, args as any) as any,\n    requestAddresses: () => requestAddresses(client),\n    requestPermissions: (args) => requestPermissions(client, args),\n    sendCalls: (args) => sendCalls(client, args),\n    sendRawTransaction: (args) => sendRawTransaction(client, args),\n    sendTransaction: (args) => sendTransaction(client, args),\n    showCallsStatus: (args) => showCallsStatus(client, args),\n    signAuthorization: (args) => signAuthorization(client, args),\n    signMessage: (args) => signMessage(client, args),\n    signTransaction: (args) => signTransaction(client, args),\n    signTypedData: (args) => signTypedData(client, args),\n    switchChain: (args) => switchChain(client, args),\n    waitForCallsStatus: (args) => waitForCallsStatus(client, args),\n    watchAsset: (args) => watchAsset(client, args),\n    writeContract: (args) => writeContract(client, args as any),\n  }\n}\n","import type { Address } from 'abitype'\n\nimport type { Account } from '../accounts/types.js'\nimport type { ErrorType } from '../errors/utils.js'\nimport type { ParseAccount } from '../types/account.js'\nimport type { Chain } from '../types/chain.js'\nimport type { RpcSchema, WalletRpcSchema } from '../types/eip1193.js'\nimport type { Prettify } from '../types/utils.js'\nimport {\n  type Client,\n  type ClientConfig,\n  type CreateClientErrorType,\n  createClient,\n} from './createClient.js'\nimport { type WalletActions, walletActions } from './decorators/wallet.js'\nimport type { Transport } from './transports/createTransport.js'\n\nexport type WalletClientConfig<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  accountOrAddress extends Account | Address | undefined =\n    | Account\n    | Address\n    | undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n> = Prettify<\n  Pick<\n    ClientConfig<transport, chain, accountOrAddress, rpcSchema>,\n    | 'account'\n    | 'cacheTime'\n    | 'ccipRead'\n    | 'chain'\n    | 'key'\n    | 'name'\n    | 'pollingInterval'\n    | 'rpcSchema'\n    | 'transport'\n  >\n>\n\nexport type WalletClient<\n  transport extends Transport = Transport,\n  chain extends Chain | undefined = Chain | undefined,\n  account extends Account | undefined = Account | undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n> = Prettify<\n  Client<\n    transport,\n    chain,\n    account,\n    rpcSchema extends RpcSchema\n      ? [...WalletRpcSchema, ...rpcSchema]\n      : WalletRpcSchema,\n    WalletActions<chain, account>\n  >\n>\n\nexport type CreateWalletClientErrorType = CreateClientErrorType | ErrorType\n\n/**\n * Creates a Wallet Client with a given [Transport](https://viem.sh/docs/clients/intro) configured for a [Chain](https://viem.sh/docs/clients/chains).\n *\n * - Docs: https://viem.sh/docs/clients/wallet\n *\n * A Wallet Client is an interface to interact with [Ethereum Account(s)](https://ethereum.org/en/glossary/#account) and provides the ability to retrieve accounts, execute transactions, sign messages, etc. through [Wallet Actions](https://viem.sh/docs/actions/wallet/introduction).\n *\n * The Wallet Client supports signing over:\n * - [JSON-RPC Accounts](https://viem.sh/docs/clients/wallet#json-rpc-accounts) (e.g. Browser Extension Wallets, WalletConnect, etc).\n * - [Local Accounts](https://viem.sh/docs/clients/wallet#local-accounts-private-key-mnemonic-etc) (e.g. private key/mnemonic wallets).\n *\n * @param config - {@link WalletClientConfig}\n * @returns A Wallet Client. {@link WalletClient}\n *\n * @example\n * // JSON-RPC Account\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createWalletClient({\n *   chain: mainnet,\n *   transport: custom(window.ethereum),\n * })\n *\n * @example\n * // Local Account\n * import { createWalletClient, custom } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createWalletClient({\n *   account: privateKeyToAccount('0x…')\n *   chain: mainnet,\n *   transport: http(),\n * })\n */\nexport function createWalletClient<\n  transport extends Transport,\n  chain extends Chain | undefined = undefined,\n  accountOrAddress extends Account | Address | undefined = undefined,\n  rpcSchema extends RpcSchema | undefined = undefined,\n>(\n  parameters: WalletClientConfig<transport, chain, accountOrAddress, rpcSchema>,\n): WalletClient<transport, chain, ParseAccount<accountOrAddress>, rpcSchema>\n\nexport function createWalletClient(\n  parameters: WalletClientConfig,\n): WalletClient {\n  const { key = 'wallet', name = 'Wallet Client', transport } = parameters\n  const client = createClient({\n    ...parameters,\n    key,\n    name,\n    transport,\n    type: 'walletClient',\n  })\n  return client.extend(walletActions)\n}\n","import type { Chain } from '../types/chain.js'\n\n/**\n * Predeploy contracts for OP Stack.\n * @see https://github.com/ethereum-optimism/optimism/blob/develop/specs/predeploys.md\n */\nexport const contracts = {\n  gasPriceOracle: { address: '0x420000000000000000000000000000000000000F' },\n  l1Block: { address: '0x4200000000000000000000000000000000000015' },\n  l2CrossDomainMessenger: {\n    address: '0x4200000000000000000000000000000000000007',\n  },\n  l2Erc721Bridge: { address: '0x4200000000000000000000000000000000000014' },\n  l2StandardBridge: { address: '0x4200000000000000000000000000000000000010' },\n  l2ToL1MessagePasser: {\n    address: '0x4200000000000000000000000000000000000016',\n  },\n} as const satisfies Chain['contracts']\n","import type { ChainFormatters } from '../types/chain.js'\nimport type { RpcTransaction } from '../types/rpc.js'\nimport { hexToBigInt } from '../utils/encoding/fromHex.js'\nimport { defineBlock } from '../utils/formatters/block.js'\nimport {\n  defineTransaction,\n  formatTransaction,\n} from '../utils/formatters/transaction.js'\nimport { defineTransactionReceipt } from '../utils/formatters/transactionReceipt.js'\nimport type { OpStackBlock, OpStackRpcBlock } from './types/block.js'\nimport type {\n  OpStackRpcTransaction,\n  OpStackRpcTransactionReceipt,\n  OpStackTransaction,\n  OpStackTransactionReceipt,\n} from './types/transaction.js'\n\nexport const formatters = {\n  block: /*#__PURE__*/ defineBlock({\n    format(args: OpStackRpcBlock): OpStackBlock {\n      const transactions = args.transactions?.map((transaction) => {\n        if (typeof transaction === 'string') return transaction\n        const formatted = formatTransaction(\n          transaction as RpcTransaction,\n        ) as OpStackTransaction\n        if (formatted.typeHex === '0x7e') {\n          formatted.isSystemTx = transaction.isSystemTx\n          formatted.mint = transaction.mint\n            ? hexToBigInt(transaction.mint)\n            : undefined\n          formatted.sourceHash = transaction.sourceHash\n          formatted.type = 'deposit'\n        }\n        return formatted\n      })\n      return {\n        transactions,\n        stateRoot: args.stateRoot,\n      } as OpStackBlock\n    },\n  }),\n  transaction: /*#__PURE__*/ defineTransaction({\n    format(args: OpStackRpcTransaction): OpStackTransaction {\n      const transaction = {} as OpStackTransaction\n      if (args.type === '0x7e') {\n        transaction.isSystemTx = args.isSystemTx\n        transaction.mint = args.mint ? hexToBigInt(args.mint) : undefined\n        transaction.sourceHash = args.sourceHash\n        transaction.type = 'deposit'\n      }\n      return transaction\n    },\n  }),\n  transactionReceipt: /*#__PURE__*/ defineTransactionReceipt({\n    format(args: OpStackRpcTransactionReceipt): OpStackTransactionReceipt {\n      return {\n        l1GasPrice: args.l1GasPrice ? hexToBigInt(args.l1GasPrice) : null,\n        l1GasUsed: args.l1GasUsed ? hexToBigInt(args.l1GasUsed) : null,\n        l1Fee: args.l1Fee ? hexToBigInt(args.l1Fee) : null,\n        l1FeeScalar: args.l1FeeScalar ? Number(args.l1FeeScalar) : null,\n      } as OpStackTransactionReceipt\n    },\n  }),\n} as const satisfies ChainFormatters\n","import { InvalidAddressError } from '../errors/address.js'\nimport type { ErrorType } from '../errors/utils.js'\nimport type { ChainSerializers } from '../types/chain.js'\nimport type { Hex, Signature } from '../types/misc.js'\nimport type { TransactionSerializable } from '../types/transaction.js'\nimport type { RequiredBy } from '../types/utils.js'\nimport { isAddress } from '../utils/address/isAddress.js'\nimport { concatHex } from '../utils/data/concat.js'\nimport { toHex } from '../utils/encoding/toHex.js'\nimport { toRlp } from '../utils/encoding/toRlp.js'\nimport {\n  type SerializeTransactionErrorType as SerializeTransactionErrorType_,\n  serializeTransaction as serializeTransaction_,\n} from '../utils/transaction/serializeTransaction.js'\nimport type {\n  OpStackTransactionSerializable,\n  TransactionSerializableDeposit,\n  TransactionSerializedDeposit,\n} from './types/transaction.js'\n\nexport type SerializeTransactionReturnType = ReturnType<\n  typeof serializeTransaction\n>\n\nexport type SerializeTransactionErrorType =\n  | SerializeTransactionErrorType_\n  | ErrorType\n\nexport function serializeTransaction(\n  transaction: OpStackTransactionSerializable,\n  signature?: Signature,\n) {\n  if (isDeposit(transaction)) return serializeTransactionDeposit(transaction)\n  return serializeTransaction_(\n    transaction as TransactionSerializable,\n    signature,\n  )\n}\n\nexport const serializers = {\n  transaction: serializeTransaction,\n} as const satisfies ChainSerializers\n\n//////////////////////////////////////////////////////////////////////////////\n// Serializers\n\nexport type SerializeTransactionDepositReturnType = TransactionSerializedDeposit\n\nfunction serializeTransactionDeposit(\n  transaction: TransactionSerializableDeposit,\n): SerializeTransactionDepositReturnType {\n  assertTransactionDeposit(transaction)\n\n  const { sourceHash, data, from, gas, isSystemTx, mint, to, value } =\n    transaction\n\n  const serializedTransaction: Hex[] = [\n    sourceHash,\n    from,\n    to ?? '0x',\n    mint ? toHex(mint) : '0x',\n    value ? toHex(value) : '0x',\n    gas ? toHex(gas) : '0x',\n    isSystemTx ? '0x1' : '0x',\n    data ?? '0x',\n  ]\n\n  return concatHex([\n    '0x7e',\n    toRlp(serializedTransaction),\n  ]) as SerializeTransactionDepositReturnType\n}\n\nfunction isDeposit(\n  transaction: OpStackTransactionSerializable,\n): transaction is RequiredBy<TransactionSerializableDeposit, 'type'> {\n  if (transaction.type === 'deposit') return true\n  if (typeof transaction.sourceHash !== 'undefined') return true\n  return false\n}\n\nexport function assertTransactionDeposit(\n  transaction: TransactionSerializableDeposit,\n) {\n  const { from, to } = transaction\n  if (from && !isAddress(from)) throw new InvalidAddressError({ address: from })\n  if (to && !isAddress(to)) throw new InvalidAddressError({ address: to })\n}\n","import { contracts } from './contracts.js'\nimport { formatters } from './formatters.js'\nimport { serializers } from './serializers.js'\n\nexport const chainConfig = {\n  blockTime: 2_000,\n  contracts,\n  formatters,\n  serializers,\n} as const\n","import { defineChain } from '../../utils/chain/defineChain.js'\n\nexport const avalancheFuji = /*#__PURE__*/ defineChain({\n  id: 43_113,\n  name: 'Avalanche Fuji',\n  nativeCurrency: {\n    decimals: 18,\n    name: 'Avalanche Fuji',\n    symbol: 'AVAX',\n  },\n  rpcUrls: {\n    default: { http: ['https://api.avax-test.network/ext/bc/C/rpc'] },\n  },\n  blockExplorers: {\n    default: {\n      name: 'SnowTrace',\n      url: 'https://testnet.snowtrace.io',\n      apiUrl: 'https://api-testnet.snowtrace.io',\n    },\n  },\n  contracts: {\n    multicall3: {\n      address: '0xca11bde05977b3631167028862be2a173976ca11',\n      blockCreated: 7096959,\n    },\n  },\n  testnet: true,\n})\n","import { chainConfig } from '../../op-stack/chainConfig.js'\nimport { defineChain } from '../../utils/chain/defineChain.js'\n\nconst sourceId = 1 // mainnet\n\nexport const base = /*#__PURE__*/ defineChain({\n  ...chainConfig,\n  id: 8453,\n  name: 'Base',\n  nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },\n  rpcUrls: {\n    default: {\n      http: ['https://mainnet.base.org'],\n    },\n  },\n  blockExplorers: {\n    default: {\n      name: 'Basescan',\n      url: 'https://basescan.org',\n      apiUrl: 'https://api.basescan.org/api',\n    },\n  },\n  contracts: {\n    ...chainConfig.contracts,\n    disputeGameFactory: {\n      [sourceId]: {\n        address: '0x43edB88C4B80fDD2AdFF2412A7BebF9dF42cB40e',\n      },\n    },\n    l2OutputOracle: {\n      [sourceId]: {\n        address: '0x56315b90c40730925ec5485cf004d835058518A0',\n      },\n    },\n    multicall3: {\n      address: '0xca11bde05977b3631167028862be2a173976ca11',\n      blockCreated: 5022,\n    },\n    portal: {\n      [sourceId]: {\n        address: '0x49048044D57e1C92A77f79988d21Fa8fAF74E97e',\n        blockCreated: 17482143,\n      },\n    },\n    l1StandardBridge: {\n      [sourceId]: {\n        address: '0x3154Cf16ccdb4C6d922629664174b904d80F2C35',\n        blockCreated: 17482143,\n      },\n    },\n  },\n  sourceId,\n})\n","import { chainConfig } from '../../op-stack/chainConfig.js'\nimport { defineChain } from '../../utils/chain/defineChain.js'\n\nconst sourceId = 11_155_111 // sepolia\n\nexport const baseSepolia = /*#__PURE__*/ defineChain({\n  ...chainConfig,\n  id: 84532,\n  network: 'base-sepolia',\n  name: 'Base Sepolia',\n  nativeCurrency: { name: 'Sepolia Ether', symbol: 'ETH', decimals: 18 },\n  rpcUrls: {\n    default: {\n      http: ['https://sepolia.base.org'],\n    },\n  },\n  blockExplorers: {\n    default: {\n      name: 'Basescan',\n      url: 'https://sepolia.basescan.org',\n      apiUrl: 'https://api-sepolia.basescan.org/api',\n    },\n  },\n  contracts: {\n    ...chainConfig.contracts,\n    disputeGameFactory: {\n      [sourceId]: {\n        address: '0xd6E6dBf4F7EA0ac412fD8b65ED297e64BB7a06E1',\n      },\n    },\n    l2OutputOracle: {\n      [sourceId]: {\n        address: '0x84457ca9D0163FbC4bbfe4Dfbb20ba46e48DF254',\n      },\n    },\n    portal: {\n      [sourceId]: {\n        address: '0x49f53e41452c74589e85ca1677426ba426459e85',\n        blockCreated: 4446677,\n      },\n    },\n    l1StandardBridge: {\n      [sourceId]: {\n        address: '0xfd0Bf71F60660E2f608ed56e1659C450eB113120',\n        blockCreated: 4446677,\n      },\n    },\n    multicall3: {\n      address: '0xca11bde05977b3631167028862be2a173976ca11',\n      blockCreated: 1059647,\n    },\n  },\n  testnet: true,\n  sourceId,\n})\n","import { defineChain } from '../../utils/chain/defineChain.js'\n\nexport const sei = /*#__PURE__*/ defineChain({\n  id: 1329,\n  name: 'Sei Network',\n  nativeCurrency: { name: 'Sei', symbol: 'SEI', decimals: 18 },\n  rpcUrls: {\n    default: {\n      http: ['https://evm-rpc.sei-apis.com/'],\n      webSocket: ['wss://evm-ws.sei-apis.com/'],\n    },\n  },\n  blockExplorers: {\n    default: {\n      name: 'Seitrace',\n      url: 'https://seitrace.com',\n      apiUrl: 'https://seitrace.com/pacific-1/api',\n    },\n  },\n  contracts: {\n    multicall3: {\n      address: '0xcA11bde05977b3631167028862bE2a173976CA11',\n    },\n  },\n})\n","import { defineChain } from '../../utils/chain/defineChain.js'\n\nexport const seiTestnet = /*#__PURE__*/ defineChain({\n  id: 1328,\n  name: 'Sei Testnet',\n  nativeCurrency: { name: 'Sei', symbol: 'SEI', decimals: 18 },\n  rpcUrls: {\n    default: {\n      http: ['https://evm-rpc-testnet.sei-apis.com'],\n      webSocket: ['wss://evm-ws-testnet.sei-apis.com'],\n    },\n  },\n  blockExplorers: {\n    default: {\n      name: 'Seitrace',\n      url: 'https://seitrace.com',\n    },\n  },\n  testnet: true,\n})\n","// TODO(v3): Rename to `toLocalAccount` + add `source` property to define source (privateKey, mnemonic, hdKey, etc).\n\nimport type { Address } from 'abitype'\n\nimport {\n  InvalidAddressError,\n  type InvalidAddressErrorType,\n} from '../errors/address.js'\nimport {\n  type IsAddressErrorType,\n  isAddress,\n} from '../utils/address/isAddress.js'\n\nimport type { ErrorType } from '../errors/utils.js'\nimport type {\n  AccountSource,\n  CustomSource,\n  JsonRpcAccount,\n  LocalAccount,\n} from './types.js'\n\ntype GetAccountReturnType<accountSource extends AccountSource> =\n  | (accountSource extends Address ? JsonRpcAccount : never)\n  | (accountSource extends CustomSource ? LocalAccount : never)\n\nexport type ToAccountErrorType =\n  | InvalidAddressErrorType\n  | IsAddressErrorType\n  | ErrorType\n\n/**\n * @description Creates an Account from a custom signing implementation.\n *\n * @returns A Local Account.\n */\nexport function toAccount<accountSource extends AccountSource>(\n  source: accountSource,\n): GetAccountReturnType<accountSource> {\n  if (typeof source === 'string') {\n    if (!isAddress(source, { strict: false }))\n      throw new InvalidAddressError({ address: source })\n    return {\n      address: source,\n      type: 'json-rpc',\n    } as GetAccountReturnType<accountSource>\n  }\n\n  if (!isAddress(source.address, { strict: false }))\n    throw new InvalidAddressError({ address: source.address })\n  return {\n    address: source.address,\n    nonceManager: source.nonceManager,\n    sign: source.sign,\n    signAuthorization: source.signAuthorization,\n    signMessage: source.signMessage,\n    signTransaction: source.signTransaction,\n    signTypedData: source.signTypedData,\n    source: 'custom',\n    type: 'local',\n  } as GetAccountReturnType<accountSource>\n}\n","// TODO(v3): Convert to sync.\n\nimport { secp256k1 } from '@noble/curves/secp256k1'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport type { ByteArray, Hex, Signature } from '../../types/misc.js'\nimport {\n  type NumberToHexErrorType,\n  numberToHex,\n} from '../../utils/encoding/toHex.js'\nimport { serializeSignature } from '../../utils/signature/serializeSignature.js'\n\ntype To = 'object' | 'bytes' | 'hex'\n\nexport type SignParameters<to extends To = 'object'> = {\n  hash: Hex\n  privateKey: Hex\n  to?: to | To | undefined\n}\n\nexport type SignReturnType<to extends To = 'object'> =\n  | (to extends 'object' ? Signature : never)\n  | (to extends 'bytes' ? ByteArray : never)\n  | (to extends 'hex' ? Hex : never)\n\nexport type SignErrorType = NumberToHexErrorType | ErrorType\n\nlet extraEntropy: Hex | boolean = false\n\n/**\n * Sets extra entropy for signing functions.\n */\nexport function setSignEntropy(entropy: true | Hex) {\n  if (!entropy) throw new Error('must be a `true` or a hex value.')\n  extraEntropy = entropy\n}\n\n/**\n * @description Signs a hash with a given private key.\n *\n * @param hash The hash to sign.\n * @param privateKey The private key to sign with.\n *\n * @returns The signature.\n */\nexport async function sign<to extends To = 'object'>({\n  hash,\n  privateKey,\n  to = 'object',\n}: SignParameters<to>): Promise<SignReturnType<to>> {\n  const { r, s, recovery } = secp256k1.sign(\n    hash.slice(2),\n    privateKey.slice(2),\n    { lowS: true, extraEntropy },\n  )\n  const signature = {\n    r: numberToHex(r, { size: 32 }),\n    s: numberToHex(s, { size: 32 }),\n    v: recovery ? 28n : 27n,\n    yParity: recovery,\n  }\n  return (() => {\n    if (to === 'bytes' || to === 'hex')\n      return serializeSignature({ ...signature, to })\n    return signature\n  })() as SignReturnType<to>\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type {\n  AuthorizationRequest,\n  SignedAuthorization,\n} from '../../types/authorization.js'\nimport type { Hex, Signature } from '../../types/misc.js'\nimport type { Prettify } from '../../types/utils.js'\nimport {\n  type HashAuthorizationErrorType,\n  hashAuthorization,\n} from '../../utils/authorization/hashAuthorization.js'\nimport {\n  type SignErrorType,\n  type SignParameters,\n  type SignReturnType,\n  sign,\n} from './sign.js'\n\ntype To = 'object' | 'bytes' | 'hex'\n\nexport type SignAuthorizationParameters<to extends To = 'object'> =\n  AuthorizationRequest & {\n    /** The private key to sign with. */\n    privateKey: Hex\n    to?: SignParameters<to>['to'] | undefined\n  }\n\nexport type SignAuthorizationReturnType<to extends To = 'object'> = Prettify<\n  to extends 'object' ? SignedAuthorization : SignReturnType<to>\n>\n\nexport type SignAuthorizationErrorType =\n  | SignErrorType\n  | HashAuthorizationErrorType\n  | ErrorType\n\n/**\n * Signs an Authorization hash in [EIP-7702 format](https://eips.ethereum.org/EIPS/eip-7702): `keccak256('0x05' || rlp([chain_id, address, nonce]))`.\n */\nexport async function signAuthorization<to extends To = 'object'>(\n  parameters: SignAuthorizationParameters<to>,\n): Promise<SignAuthorizationReturnType<to>> {\n  const { chainId, nonce, privateKey, to = 'object' } = parameters\n  const address = parameters.contractAddress ?? parameters.address\n  const signature = await sign({\n    hash: hashAuthorization({ address, chainId, nonce }),\n    privateKey,\n    to,\n  })\n  if (to === 'object')\n    return {\n      address,\n      chainId,\n      nonce,\n      ...(signature as Signature),\n    } as any\n  return signature as any\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Hex, SignableMessage } from '../../types/misc.js'\nimport {\n  type HashMessageErrorType,\n  hashMessage,\n} from '../../utils/signature/hashMessage.js'\n\nimport { type SignErrorType, sign } from './sign.js'\n\nexport type SignMessageParameters = {\n  /** The message to sign. */\n  message: SignableMessage\n  /** The private key to sign with. */\n  privateKey: Hex\n}\n\nexport type SignMessageReturnType = Hex\n\nexport type SignMessageErrorType =\n  | SignErrorType\n  | HashMessageErrorType\n  | ErrorType\n\n/**\n * @description Calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191):\n * `keccak256(\"\\x19Ethereum Signed Message:\\n\" + len(message) + message))`.\n *\n * @returns The signature.\n */\nexport async function signMessage({\n  message,\n  privateKey,\n}: SignMessageParameters): Promise<SignMessageReturnType> {\n  return await sign({ hash: hashMessage(message), privateKey, to: 'hex' })\n}\n","import type { ErrorType } from '../../errors/utils.js'\nimport type { Hex } from '../../types/misc.js'\nimport type {\n  TransactionSerializable,\n  TransactionSerialized,\n} from '../../types/transaction.js'\nimport {\n  type Keccak256ErrorType,\n  keccak256,\n} from '../../utils/hash/keccak256.js'\nimport type { GetTransactionType } from '../../utils/transaction/getTransactionType.js'\nimport {\n  type SerializeTransactionFn,\n  serializeTransaction,\n} from '../../utils/transaction/serializeTransaction.js'\n\nimport { type SignErrorType, sign } from './sign.js'\n\nexport type SignTransactionParameters<\n  serializer extends\n    SerializeTransactionFn<TransactionSerializable> = SerializeTransactionFn<TransactionSerializable>,\n  transaction extends Parameters<serializer>[0] = Parameters<serializer>[0],\n> = {\n  privateKey: Hex\n  transaction: transaction\n  serializer?: serializer | undefined\n}\n\nexport type SignTransactionReturnType<\n  serializer extends\n    SerializeTransactionFn<TransactionSerializable> = SerializeTransactionFn<TransactionSerializable>,\n  transaction extends Parameters<serializer>[0] = Parameters<serializer>[0],\n> = TransactionSerialized<GetTransactionType<transaction>>\n\nexport type SignTransactionErrorType =\n  | Keccak256ErrorType\n  | SignErrorType\n  | ErrorType\n\nexport async function signTransaction<\n  serializer extends\n    SerializeTransactionFn<TransactionSerializable> = SerializeTransactionFn<TransactionSerializable>,\n  transaction extends Parameters<serializer>[0] = Parameters<serializer>[0],\n>(\n  parameters: SignTransactionParameters<serializer, transaction>,\n): Promise<SignTransactionReturnType<serializer, transaction>> {\n  const {\n    privateKey,\n    transaction,\n    serializer = serializeTransaction,\n  } = parameters\n\n  const signableTransaction = (() => {\n    // For EIP-4844 Transactions, we want to sign the transaction payload body (tx_payload_body) without the sidecars (ie. without the network wrapper).\n    // See: https://github.com/ethereum/EIPs/blob/e00f4daa66bd56e2dbd5f1d36d09fd613811a48b/EIPS/eip-4844.md#networking\n    if (transaction.type === 'eip4844')\n      return {\n        ...transaction,\n        sidecars: false,\n      }\n    return transaction\n  })()\n\n  const signature = await sign({\n    hash: keccak256(serializer(signableTransaction)),\n    privateKey,\n  })\n  return serializer(transaction, signature) as SignTransactionReturnType<\n    serializer,\n    transaction\n  >\n}\n","import type { TypedData } from 'abitype'\n\nimport type { Hex } from '../../types/misc.js'\nimport type { TypedDataDefinition } from '../../types/typedData.js'\nimport {\n  type HashTypedDataErrorType,\n  hashTypedData,\n} from '../../utils/signature/hashTypedData.js'\n\nimport type { ErrorType } from '../../errors/utils.js'\nimport { type SignErrorType, sign } from './sign.js'\n\nexport type SignTypedDataParameters<\n  typedData extends TypedData | Record<string, unknown> = TypedData,\n  primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData,\n> = TypedDataDefinition<typedData, primaryType> & {\n  /** The private key to sign with. */\n  privateKey: Hex\n}\n\nexport type SignTypedDataReturnType = Hex\n\nexport type SignTypedDataErrorType =\n  | HashTypedDataErrorType\n  | SignErrorType\n  | ErrorType\n\n/**\n * @description Signs typed data and calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191):\n * `keccak256(\"\\x19Ethereum Signed Message:\\n\" + len(message) + message))`.\n *\n * @returns The signature.\n */\nexport async function signTypedData<\n  const typedData extends TypedData | Record<string, unknown>,\n  primaryType extends keyof typedData | 'EIP712Domain',\n>(\n  parameters: SignTypedDataParameters<typedData, primaryType>,\n): Promise<SignTypedDataReturnType> {\n  const { privateKey, ...typedData } =\n    parameters as unknown as SignTypedDataParameters\n  return await sign({\n    hash: hashTypedData(typedData),\n    privateKey,\n    to: 'hex',\n  })\n}\n","import { secp256k1 } from '@noble/curves/secp256k1'\n\nimport type { Hex } from '../types/misc.js'\nimport { type ToHexErrorType, toHex } from '../utils/encoding/toHex.js'\n\nimport type { ErrorType } from '../errors/utils.js'\nimport type { NonceManager } from '../utils/nonceManager.js'\nimport { type ToAccountErrorType, toAccount } from './toAccount.js'\nimport type { PrivateKeyAccount } from './types.js'\nimport {\n  type PublicKeyToAddressErrorType,\n  publicKeyToAddress,\n} from './utils/publicKeyToAddress.js'\nimport { type SignErrorType, sign } from './utils/sign.js'\nimport { signAuthorization } from './utils/signAuthorization.js'\nimport { type SignMessageErrorType, signMessage } from './utils/signMessage.js'\nimport {\n  type SignTransactionErrorType,\n  signTransaction,\n} from './utils/signTransaction.js'\nimport {\n  type SignTypedDataErrorType,\n  signTypedData,\n} from './utils/signTypedData.js'\n\nexport type PrivateKeyToAccountOptions = {\n  nonceManager?: NonceManager | undefined\n}\n\nexport type PrivateKeyToAccountErrorType =\n  | ToAccountErrorType\n  | ToHexErrorType\n  | PublicKeyToAddressErrorType\n  | SignErrorType\n  | SignMessageErrorType\n  | SignTransactionErrorType\n  | SignTypedDataErrorType\n  | ErrorType\n\n/**\n * @description Creates an Account from a private key.\n *\n * @returns A Private Key Account.\n */\nexport function privateKeyToAccount(\n  privateKey: Hex,\n  options: PrivateKeyToAccountOptions = {},\n): PrivateKeyAccount {\n  const { nonceManager } = options\n  const publicKey = toHex(secp256k1.getPublicKey(privateKey.slice(2), false))\n  const address = publicKeyToAddress(publicKey)\n\n  const account = toAccount({\n    address,\n    nonceManager,\n    async sign({ hash }) {\n      return sign({ hash, privateKey, to: 'hex' })\n    },\n    async signAuthorization(authorization) {\n      return signAuthorization({ ...authorization, privateKey })\n    },\n    async signMessage({ message }) {\n      return signMessage({ message, privateKey })\n    },\n    async signTransaction(transaction, { serializer } = {}) {\n      return signTransaction({ privateKey, transaction, serializer })\n    },\n    async signTypedData(typedData) {\n      return signTypedData({ ...typedData, privateKey } as any)\n    },\n  })\n\n  return {\n    ...account,\n    publicKey,\n    source: 'privateKey',\n  } as PrivateKeyAccount\n}\n","import { safeBase64Encode, safeBase64Decode } from \"../../../../shared\";\nimport { PaymentPayload, PaymentPayloadSchema } from \"../../../../types/verify\";\n\n/**\n * Encodes a payment payload into a base64 string, ensuring bigint values are properly stringified\n *\n * @param payment - The payment payload to encode\n * @returns A base64 encoded string representation of the payment payload\n */\nexport function encodePayment(payment: PaymentPayload): string {\n  const safe = {\n    ...payment,\n    payload: {\n      ...payment.payload,\n      authorization: Object.fromEntries(\n        Object.entries(payment.payload.authorization).map(([key, value]) => [\n          key,\n          typeof value === \"bigint\" ? (value as bigint).toString() : value,\n        ]),\n      ),\n    },\n  };\n  return safeBase64Encode(JSON.stringify(safe));\n}\n\n/**\n * Decodes a base64 encoded payment string back into a PaymentPayload object\n *\n * @param payment - The base64 encoded payment string to decode\n * @returns The decoded and validated PaymentPayload object\n */\nexport function decodePayment(payment: string): PaymentPayload {\n  const decoded = safeBase64Decode(payment);\n  const parsed = JSON.parse(decoded);\n\n  const obj = {\n    ...parsed,\n    payload: {\n      signature: parsed.payload.signature,\n      authorization: {\n        ...parsed.payload.authorization,\n        value: parsed.payload.authorization.value,\n        validAfter: parsed.payload.authorization.validAfter,\n        validBefore: parsed.payload.authorization.validBefore,\n      },\n    },\n  };\n\n  const validated = PaymentPayloadSchema.parse(obj);\n  return validated;\n}\n","import { Chain, getAddress, Hex, LocalAccount, toHex, Transport } from \"viem\";\nimport { getNetworkId } from \"../../../shared\";\nimport {\n  authorizationTypes,\n  isAccount,\n  isSignerWallet,\n  SignerWallet,\n} from \"../../../types/shared/evm\";\nimport { ExactEvmPayloadAuthorization, PaymentRequirements } from \"../../../types/verify\";\n\n/**\n * Signs an EIP-3009 authorization for USDC transfer\n *\n * @param walletClient - The wallet client that will sign the authorization\n * @param params - The authorization parameters containing transfer details\n * @param params.from - The address tokens will be transferred from\n * @param params.to - The address tokens will be transferred to\n * @param params.value - The amount of USDC tokens to transfer (in base units)\n * @param params.validAfter - Unix timestamp after which the authorization becomes valid\n * @param params.validBefore - Unix timestamp before which the authorization is valid\n * @param params.nonce - Random 32-byte nonce to prevent replay attacks\n * @param paymentRequirements - The payment requirements containing asset and network information\n * @param paymentRequirements.asset - The address of the USDC contract\n * @param paymentRequirements.network - The network where the USDC contract exists\n * @param paymentRequirements.extra - The extra information containing the name and version of the ERC20 contract\n * @returns The signature for the authorization\n */\nexport async function signAuthorization<transport extends Transport, chain extends Chain>(\n  walletClient: SignerWallet<chain, transport> | LocalAccount,\n  { from, to, value, validAfter, validBefore, nonce }: ExactEvmPayloadAuthorization,\n  { asset, network, extra }: PaymentRequirements,\n): Promise<{ signature: Hex }> {\n  const chainId = getNetworkId(network);\n  const name = extra?.name;\n  const version = extra?.version;\n\n  const data = {\n    types: authorizationTypes,\n    domain: {\n      name,\n      version,\n      chainId,\n      verifyingContract: getAddress(asset),\n    },\n    primaryType: \"TransferWithAuthorization\" as const,\n    message: {\n      from: getAddress(from),\n      to: getAddress(to),\n      value,\n      validAfter,\n      validBefore,\n      nonce: nonce,\n    },\n  };\n\n  if (isSignerWallet(walletClient)) {\n    const signature = await walletClient.signTypedData(data);\n    return {\n      signature,\n    };\n  } else if (isAccount(walletClient) && walletClient.signTypedData) {\n    const signature = await walletClient.signTypedData(data);\n    return {\n      signature,\n    };\n  } else {\n    throw new Error(\"Invalid wallet client provided does not support signTypedData\");\n  }\n}\n\n/**\n * Generates a random 32-byte nonce for use in authorization signatures\n *\n * @returns A random 32-byte nonce as a hex string\n */\nexport function createNonce(): Hex {\n  const cryptoObj =\n    typeof globalThis.crypto !== \"undefined\" &&\n    typeof globalThis.crypto.getRandomValues === \"function\"\n      ? globalThis.crypto\n      : // Dynamic require is needed to support node.js\n        // eslint-disable-next-line @typescript-eslint/no-require-imports\n        require(\"crypto\").webcrypto;\n  return toHex(cryptoObj.getRandomValues(new Uint8Array(32)));\n}\n","import { Address, Chain, LocalAccount, Transport } from \"viem\";\nimport { isSignerWallet, SignerWallet } from \"../../../types/shared/evm\";\nimport { PaymentPayload, PaymentRequirements, UnsignedPaymentPayload } from \"../../../types/verify\";\nimport { createNonce, signAuthorization } from \"./sign\";\nimport { encodePayment } from \"./utils/paymentUtils\";\n\n/**\n * Prepares an unsigned payment header with the given sender address and payment requirements.\n *\n * @param from - The sender's address from which the payment will be made\n * @param x402Version - The version of the X402 protocol to use\n * @param paymentRequirements - The payment requirements containing scheme and network information\n * @returns An unsigned payment payload containing authorization details\n */\nexport function preparePaymentHeader(\n  from: Address,\n  x402Version: number,\n  paymentRequirements: PaymentRequirements,\n): UnsignedPaymentPayload {\n  const nonce = createNonce();\n\n  const validAfter = BigInt(\n    Math.floor(Date.now() / 1000) - 600, // 10 minutes before\n  ).toString();\n  const validBefore = BigInt(\n    Math.floor(Date.now() / 1000 + paymentRequirements.maxTimeoutSeconds),\n  ).toString();\n\n  return {\n    x402Version,\n    scheme: paymentRequirements.scheme,\n    network: paymentRequirements.network,\n    payload: {\n      signature: undefined,\n      authorization: {\n        from,\n        to: paymentRequirements.payTo as Address,\n        value: paymentRequirements.maxAmountRequired,\n        validAfter: validAfter.toString(),\n        validBefore: validBefore.toString(),\n        nonce,\n      },\n    },\n  };\n}\n\n/**\n * Signs a payment header using the provided client and payment requirements.\n *\n * @param client - The signer wallet instance used to sign the payment header\n * @param paymentRequirements - The payment requirements containing scheme and network information\n * @param unsignedPaymentHeader - The unsigned payment payload to be signed\n * @returns A promise that resolves to the signed payment payload\n */\nexport async function signPaymentHeader<transport extends Transport, chain extends Chain>(\n  client: SignerWallet<chain, transport> | LocalAccount,\n  paymentRequirements: PaymentRequirements,\n  unsignedPaymentHeader: UnsignedPaymentPayload,\n): Promise<PaymentPayload> {\n  const { signature } = await signAuthorization(\n    client,\n    unsignedPaymentHeader.payload.authorization,\n    paymentRequirements,\n  );\n\n  return {\n    ...unsignedPaymentHeader,\n    payload: {\n      ...unsignedPaymentHeader.payload,\n      signature,\n    },\n  };\n}\n\n/**\n * Creates a complete payment payload by preparing and signing a payment header.\n *\n * @param client - The signer wallet instance used to create and sign the payment\n * @param x402Version - The version of the X402 protocol to use\n * @param paymentRequirements - The payment requirements containing scheme and network information\n * @returns A promise that resolves to the complete signed payment payload\n */\nexport async function createPayment<transport extends Transport, chain extends Chain>(\n  client: SignerWallet<chain, transport> | LocalAccount,\n  x402Version: number,\n  paymentRequirements: PaymentRequirements,\n): Promise<PaymentPayload> {\n  const from = isSignerWallet(client) ? client.account!.address : client.address;\n  const unsignedPaymentHeader = preparePaymentHeader(from, x402Version, paymentRequirements);\n  return signPaymentHeader(client, paymentRequirements, unsignedPaymentHeader);\n}\n\n/**\n * Creates and encodes a payment header for the given client and payment requirements.\n *\n * @param client - The signer wallet instance used to create the payment header\n * @param x402Version - The version of the X402 protocol to use\n * @param paymentRequirements - The payment requirements containing scheme and network information\n * @returns A promise that resolves to the encoded payment header string\n */\nexport async function createPaymentHeader(\n  client: SignerWallet | LocalAccount,\n  x402Version: number,\n  paymentRequirements: PaymentRequirements,\n): Promise<string> {\n  const payment = await createPayment(client, x402Version, paymentRequirements);\n  return encodePayment(payment);\n}\n","export * as evm from \"./evm\";\n\nexport const SCHEME = \"exact\";\n","export * from \"./client\";\nexport * from \"./facilitator\";\nexport * from \"./utils/paymentUtils\";\n","import { Account, Address, Chain, getAddress, Hex, parseErc6492Signature, Transport } from \"viem\";\nimport { getNetworkId } from \"../../../shared\";\nimport { getVersion, getERC20Balance } from \"../../../shared/evm\";\nimport {\n  usdcABI as abi,\n  authorizationTypes,\n  config,\n  ConnectedClient,\n  SignerWallet,\n} from \"../../../types/shared/evm\";\nimport {\n  PaymentPayload,\n  PaymentRequirements,\n  SettleResponse,\n  VerifyResponse,\n} from \"../../../types/verify\";\nimport { SCHEME } from \"../../exact\";\n\n/**\n * Verifies a payment payload against the required payment details\n *\n * This function performs several verification steps:\n * - Verifies protocol version compatibility\n * - Validates the permit signature\n * - Confirms USDC contract address is correct for the chain\n * - Checks permit deadline is sufficiently in the future\n * - Verifies client has sufficient USDC balance\n * - Ensures payment amount meets required minimum\n *\n * @param client - The public client used for blockchain interactions\n * @param payload - The signed payment payload containing transfer parameters and signature\n * @param paymentRequirements - The payment requirements that the payload must satisfy\n * @returns A ValidPaymentRequest indicating if the payment is valid and any invalidation reason\n */\nexport async function verify<\n  transport extends Transport,\n  chain extends Chain,\n  account extends Account | undefined,\n>(\n  client: ConnectedClient<transport, chain, account>,\n  payload: PaymentPayload,\n  paymentRequirements: PaymentRequirements,\n): Promise<VerifyResponse> {\n  /* TODO: work with security team on brainstorming more verification steps\n  verification steps:\n    - ✅ verify payload version\n    - ✅ verify usdc address is correct for the chain\n    - ✅ verify permit signature\n    - ✅ verify deadline\n    - verify nonce is current\n    - ✅ verify client has enough funds to cover paymentRequirements.maxAmountRequired\n    - ✅ verify value in payload is enough to cover paymentRequirements.maxAmountRequired\n    - check min amount is above some threshold we think is reasonable for covering gas\n    - verify resource is not already paid for (next version)\n    */\n\n  // Verify payload version\n  if (payload.scheme !== SCHEME || paymentRequirements.scheme !== SCHEME) {\n    return {\n      isValid: false,\n      invalidReason: `unsupported_scheme`,\n      payer: payload.payload.authorization.from,\n    };\n  }\n\n  let name: string;\n  let chainId: number;\n  let erc20Address: Address;\n  let version: string;\n  try {\n    chainId = getNetworkId(payload.network);\n    name = paymentRequirements.extra?.name ?? config[chainId.toString()].usdcName;\n    erc20Address = paymentRequirements.asset as Address;\n    version = paymentRequirements.extra?.version ?? (await getVersion(client));\n  } catch {\n    return {\n      isValid: false,\n      invalidReason: `invalid_network`,\n      payer: payload.payload.authorization.from,\n    };\n  }\n  // Verify permit signature is recoverable for the owner address\n  const permitTypedData = {\n    types: authorizationTypes,\n    primaryType: \"TransferWithAuthorization\" as const,\n    domain: {\n      name,\n      version,\n      chainId,\n      verifyingContract: erc20Address,\n    },\n    message: {\n      from: payload.payload.authorization.from,\n      to: payload.payload.authorization.to,\n      value: payload.payload.authorization.value,\n      validAfter: payload.payload.authorization.validAfter,\n      validBefore: payload.payload.authorization.validBefore,\n      nonce: payload.payload.authorization.nonce,\n    },\n  };\n  const recoveredAddress = await client.verifyTypedData({\n    address: payload.payload.authorization.from as Address,\n    ...permitTypedData,\n    signature: payload.payload.signature as Hex,\n  });\n  if (!recoveredAddress) {\n    return {\n      isValid: false,\n      invalidReason: \"invalid_exact_evm_payload_signature\", //\"Invalid permit signature\",\n      payer: payload.payload.authorization.from,\n    };\n  }\n\n  // Verify that payment was made to the correct address\n  if (getAddress(payload.payload.authorization.to) !== getAddress(paymentRequirements.payTo)) {\n    return {\n      isValid: false,\n      invalidReason: \"invalid_exact_evm_payload_recipient_mismatch\",\n      payer: payload.payload.authorization.from,\n    };\n  }\n\n  // Verify deadline is not yet expired\n  // Pad 3 block to account for round tripping\n  if (\n    BigInt(payload.payload.authorization.validBefore) < BigInt(Math.floor(Date.now() / 1000) + 6)\n  ) {\n    return {\n      isValid: false,\n      invalidReason: \"invalid_exact_evm_payload_authorization_valid_before\", //\"Deadline on permit isn't far enough in the future\",\n      payer: payload.payload.authorization.from,\n    };\n  }\n  // Verify deadline is not yet valid\n  if (BigInt(payload.payload.authorization.validAfter) > BigInt(Math.floor(Date.now() / 1000))) {\n    return {\n      isValid: false,\n      invalidReason: \"invalid_exact_evm_payload_authorization_valid_after\", //\"Deadline on permit is in the future\",\n      payer: payload.payload.authorization.from,\n    };\n  }\n  // Verify client has enough funds to cover paymentRequirements.maxAmountRequired\n  const balance = await getERC20Balance(\n    client,\n    erc20Address,\n    payload.payload.authorization.from as Address,\n  );\n  if (balance < BigInt(paymentRequirements.maxAmountRequired)) {\n    return {\n      isValid: false,\n      invalidReason: \"insufficient_funds\", //\"Client does not have enough funds\",\n      payer: payload.payload.authorization.from,\n    };\n  }\n  // Verify value in payload is enough to cover paymentRequirements.maxAmountRequired\n  if (BigInt(payload.payload.authorization.value) < BigInt(paymentRequirements.maxAmountRequired)) {\n    return {\n      isValid: false,\n      invalidReason: \"invalid_exact_evm_payload_authorization_value\", //\"Value in payload is not enough to cover paymentRequirements.maxAmountRequired\",\n      payer: payload.payload.authorization.from,\n    };\n  }\n  return {\n    isValid: true,\n    invalidReason: undefined,\n    payer: payload.payload.authorization.from,\n  };\n}\n\n/**\n * Settles a payment by executing a USDC transferWithAuthorization transaction\n *\n * This function executes the actual USDC transfer using the signed authorization from the user.\n * The facilitator wallet submits the transaction but does not need to hold or transfer any tokens itself.\n *\n * @param wallet - The facilitator wallet that will submit the transaction\n * @param paymentPayload - The signed payment payload containing the transfer parameters and signature\n * @param paymentRequirements - The original payment details that were used to create the payload\n * @returns A PaymentExecutionResponse containing the transaction status and hash\n */\nexport async function settle<transport extends Transport, chain extends Chain>(\n  wallet: SignerWallet<chain, transport>,\n  paymentPayload: PaymentPayload,\n  paymentRequirements: PaymentRequirements,\n): Promise<SettleResponse> {\n  // re-verify to ensure the payment is still valid\n  const valid = await verify(wallet, paymentPayload, paymentRequirements);\n\n  if (!valid.isValid) {\n    return {\n      success: false,\n      network: paymentPayload.network,\n      transaction: \"\",\n      errorReason: valid.invalidReason ?? \"invalid_scheme\", //`Payment is no longer valid: ${valid.invalidReason}`,\n      payer: paymentPayload.payload.authorization.from,\n    };\n  }\n\n  // Returns the original signature (no-op) if the signature is not a 6492 signature\n  const { signature } = parseErc6492Signature(paymentPayload.payload.signature as Hex);\n\n  const tx = await wallet.writeContract({\n    address: paymentRequirements.asset as Address,\n    abi,\n    functionName: \"transferWithAuthorization\" as const,\n    args: [\n      paymentPayload.payload.authorization.from as Address,\n      paymentPayload.payload.authorization.to as Address,\n      BigInt(paymentPayload.payload.authorization.value),\n      BigInt(paymentPayload.payload.authorization.validAfter),\n      BigInt(paymentPayload.payload.authorization.validBefore),\n      paymentPayload.payload.authorization.nonce as Hex,\n      signature,\n    ],\n    chain: wallet.chain as Chain,\n  });\n\n  const receipt = await wallet.waitForTransactionReceipt({ hash: tx });\n\n  if (receipt.status !== \"success\") {\n    return {\n      success: false,\n      errorReason: \"invalid_transaction_state\", //`Transaction failed`,\n      transaction: tx,\n      network: paymentPayload.network,\n      payer: paymentPayload.payload.authorization.from,\n    };\n  }\n\n  return {\n    success: true,\n    transaction: tx,\n    network: paymentPayload.network,\n    payer: paymentPayload.payload.authorization.from,\n  };\n}\n","/**\n * x402 Payment utilities for Dreams Router\n */\n\nimport type { Account } from \"viem\";\nimport type { DreamsRouterPaymentConfig } from \"./types\";\n\nimport { exact } from \"x402/schemes\";\n\nconst CONFIG = {\n  usdcAddress: \"0x036CbD53842c5426634e7929541eC2318f3dCF7e\",\n  serviceWallet: \"0xb308ed39d67D0d4BAe5BC2FAEF60c66BBb6AE429\",\n  amount: \"100000\",\n  network: \"base-sepolia\" as const,\n  validityDuration: 600,\n  networks: {\n    \"base-sepolia\": 84532,\n    base: 8453,\n  },\n};\n\n/**\n * Creates EIP-712 typed data for X402 payment (no signing)\n */\nexport function createX402PaymentData(\n  address: string,\n  config: DreamsRouterPaymentConfig = {}\n) {\n  const usdcAddress = config.usdcAddress || CONFIG.usdcAddress;\n  const serviceWallet = config.serviceWallet || CONFIG.serviceWallet;\n  const amount = config.amount || CONFIG.amount;\n  const network = config.network || CONFIG.network;\n  const validityDuration = config.validityDuration || CONFIG.validityDuration;\n\n  const now = Math.floor(Date.now() / 1000);\n  const authorization = {\n    from: address as `0x${string}`,\n    to: serviceWallet as `0x${string}`,\n    value: amount,\n    validAfter: now.toString(),\n    validBefore: (now + validityDuration).toString(),\n    nonce:\n      \"0x\" +\n      Array.from({ length: 64 }, () =>\n        Math.floor(Math.random() * 16).toString(16)\n      ).join(\"\"),\n  };\n\n  const eip712Data = {\n    types: {\n      TransferWithAuthorization: [\n        { name: \"from\", type: \"address\" },\n        { name: \"to\", type: \"address\" },\n        { name: \"value\", type: \"uint256\" },\n        { name: \"validAfter\", type: \"uint256\" },\n        { name: \"validBefore\", type: \"uint256\" },\n        { name: \"nonce\", type: \"bytes32\" },\n      ],\n    },\n    domain: {\n      name: \"USD Coin\",\n      version: \"2\",\n      chainId: CONFIG.networks[network as keyof typeof CONFIG.networks],\n      verifyingContract: usdcAddress as `0x${string}`,\n    },\n    primaryType: \"TransferWithAuthorization\" as const,\n    message: authorization,\n  };\n\n  return { eip712Data, authorization, network };\n}\n\n/**\n * Generates X402 payment for browser/wagmi environments\n */\nexport async function generateX402PaymentBrowser(\n  address: string,\n  signTypedDataAsync: (data: any) => Promise<string>,\n  config: DreamsRouterPaymentConfig = {}\n): Promise<string | null> {\n  try {\n    const { eip712Data, authorization, network } = createX402PaymentData(\n      address,\n      config\n    );\n\n    const signature = await signTypedDataAsync(eip712Data);\n\n    const signedPaymentHeader = {\n      x402Version: 1,\n      scheme: \"exact\" as const,\n      network: network,\n      payload: {\n        authorization,\n        signature,\n      },\n    };\n\n    const encodedPayment = exact.evm.encodePayment(signedPaymentHeader);\n    return encodedPayment;\n  } catch (error) {\n    console.error(\"Failed to generate x402 payment:\", error);\n\n    // Provide helpful error messages\n    if (error instanceof Error) {\n      if (error.message.includes(\"viem\")) {\n        throw new Error(\n          \"Dreams Router x402 payments require viem. Install with: npm install viem\"\n        );\n      }\n      if (error.message.includes(\"x402\")) {\n        throw new Error(\n          \"Dreams Router x402 payments require x402. Install with: npm install x402\"\n        );\n      }\n    }\n\n    return null;\n  }\n}\n\nexport async function generateX402Payment(\n  account: Account,\n  config: DreamsRouterPaymentConfig\n): Promise<string | null> {\n  try {\n    const { eip712Data, authorization, network } = createX402PaymentData(\n      account.address,\n      config\n    );\n\n    // Use the account to sign the typed data\n    if (!account.signTypedData) {\n      throw new Error(\n        \"Account does not support typed data signing. Required for X402 payments.\"\n      );\n    }\n    const signature = await account.signTypedData(eip712Data);\n\n    const signedPaymentHeader = {\n      x402Version: 1,\n      scheme: \"exact\" as const,\n      network: network,\n      payload: {\n        authorization,\n        signature,\n      },\n    };\n\n    const encodedPayment = exact.evm.encodePayment(signedPaymentHeader);\n    return encodedPayment;\n  } catch (error) {\n    console.error(\"Failed to generate x402 payment:\", error);\n\n    // Provide helpful error messages\n    if (error instanceof Error) {\n      if (error.message.includes(\"viem\")) {\n        throw new Error(\n          \"Dreams Router x402 payments require viem. Install with: npm install viem\"\n        );\n      }\n      if (error.message.includes(\"x402\")) {\n        throw new Error(\n          \"Dreams Router x402 payments require x402. Install with: npm install x402\"\n        );\n      }\n    }\n\n    return null;\n  }\n}\n","import type { LanguageModelV2 } from \"@ai-sdk/provider\";\nimport type {\n  OpenRouterChatModelId,\n  OpenRouterChatSettings,\n} from \"./types/openrouter-chat-settings\";\nimport type {\n  OpenRouterCompletionModelId,\n  OpenRouterCompletionSettings,\n} from \"./types/openrouter-completion-settings\";\n\nimport { loadApiKey, withoutTrailingSlash } from \"@ai-sdk/provider-utils\";\nimport { OpenRouterChatLanguageModel } from \"./chat\";\nimport { OpenRouterCompletionLanguageModel } from \"./completion\";\nimport { generateX402Payment } from \"./x402-payment-utils\";\nimport type { DreamsRouterPaymentConfig } from \"./types\";\nimport type { Account } from \"viem\";\n\nexport type { OpenRouterCompletionSettings };\n\nexport interface OpenRouterProvider extends LanguageModelV2 {\n  (\n    modelId: OpenRouterChatModelId,\n    settings?: OpenRouterCompletionSettings\n  ): OpenRouterCompletionLanguageModel;\n  (\n    modelId: OpenRouterChatModelId,\n    settings?: OpenRouterChatSettings\n  ): OpenRouterChatLanguageModel;\n\n  languageModel(\n    modelId: OpenRouterChatModelId,\n    settings?: OpenRouterCompletionSettings\n  ): OpenRouterCompletionLanguageModel;\n  languageModel(\n    modelId: OpenRouterChatModelId,\n    settings?: OpenRouterChatSettings\n  ): OpenRouterChatLanguageModel;\n\n  /**\nCreates an OpenRouter chat model for text generation.\n   */\n  chat(\n    modelId: OpenRouterChatModelId,\n    settings?: OpenRouterChatSettings\n  ): OpenRouterChatLanguageModel;\n\n  /**\nCreates an OpenRouter completion model for text generation.\n   */\n  completion(\n    modelId: OpenRouterCompletionModelId,\n    settings?: OpenRouterCompletionSettings\n  ): OpenRouterCompletionLanguageModel;\n}\n\nexport interface OpenRouterProviderSettings {\n  /**\nBase URL for the OpenRouter API calls.\n     */\n  baseURL?: string;\n\n  /**\n@deprecated Use `baseURL` instead.\n     */\n  baseUrl?: string;\n\n  /**\n  API key for authenticating requests. JWT or API key.\n     */\n  apiKey?: string;\n\n  /**\nCustom headers to include in the requests.\n     */\n  headers?: Record<string, string>;\n\n  /**\nOpenRouter compatibility mode. Should be set to `strict` when using the OpenRouter API,\nand `compatible` when using 3rd party providers. In `compatible` mode, newer\ninformation such as streamOptions are not being sent. Defaults to 'compatible'.\n   */\n  compatibility?: \"strict\" | \"compatible\";\n\n  /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n    */\n  fetch?: typeof fetch;\n\n  /**\nA JSON object to send as the request body to access OpenRouter features & upstream provider features.\n  */\n  extraBody?: Record<string, unknown>;\n\n  /**\n   * Payment configuration for x402 payments. When provided, the SDK will automatically\n   * generate x402 payment signatures for each request.\n   * Note: This is used internally by wallet auth utils. Use createDreamsRouterAuth() for easier setup.\n   */\n  payment?: DreamsRouterPaymentConfig;\n\n  /**\n   * Account for generating x402 payments. Used internally by wallet auth utils.\n   */\n  signer?: Account;\n}\n\n/**\nCreate a Dreams router provider instance.\n */\nexport function createDreamsRouter(\n  options: OpenRouterProviderSettings = {}\n): OpenRouterProvider {\n  const baseURL =\n    withoutTrailingSlash(options.baseURL ?? options.baseUrl) ??\n    \"https://api-beta.daydreams.systems/v1\";\n\n  // we default to compatible, because strict breaks providers like Groq:\n  const compatibility = options.compatibility ?? \"compatible\";\n\n  const getHeaders = () => {\n    // Fall back to API key\n    return {\n      Authorization: `Bearer ${loadApiKey({\n        apiKey: options.apiKey,\n        environmentVariableName: \"DREAMSROUTER_API_KEY\",\n        description:\n          \"Dreams Router. This can be an API key or a session token.\",\n      })}`,\n      ...options.headers,\n    };\n  };\n\n  // Create a custom fetch function that automatically includes x402 payments in headers\n  const customFetch = options.payment\n    ? async (url: string | URL | Request, init?: RequestInit) => {\n        let headers: Record<string, string> = {};\n\n        // Copy existing headers if they exist\n        if (init?.headers) {\n          if (init.headers instanceof Headers) {\n            init.headers.forEach((value, key) => {\n              headers[key] = value;\n            });\n          } else if (Array.isArray(init.headers)) {\n            for (const [key, value] of init.headers) {\n              headers[key] = value;\n            }\n          } else {\n            headers = { ...init.headers } as Record<string, string>;\n          }\n        }\n\n        // Generate x402 payment if both signer and payment config are provided\n        if (options.payment && options.signer) {\n          try {\n            const x402Payment = await generateX402Payment(\n              options.signer,\n              options.payment\n            );\n            if (x402Payment) {\n              headers[\"x-payment\"] = x402Payment;\n            }\n          } catch (error) {\n            console.error(\"Failed to generate x402 payment:\", error);\n            // Continue without payment - let server handle the error\n          }\n        }\n\n        const newInit = {\n          ...init,\n          headers,\n        };\n\n        return (options.fetch || fetch)(url, newInit);\n      }\n    : options.fetch;\n\n  const createChatModel = (\n    modelId: OpenRouterChatModelId,\n    settings: OpenRouterChatSettings = {}\n  ) =>\n    new OpenRouterChatLanguageModel(modelId, settings, {\n      provider: \"openrouter.chat\",\n      url: ({ path }) => `${baseURL}${path}`,\n      headers: getHeaders,\n      compatibility,\n      fetch: customFetch,\n      extraBody: options.extraBody,\n    });\n\n  const createCompletionModel = (\n    modelId: OpenRouterCompletionModelId,\n    settings: OpenRouterCompletionSettings = {}\n  ) =>\n    new OpenRouterCompletionLanguageModel(modelId, settings, {\n      provider: \"openrouter.completion\",\n      url: ({ path }) => `${baseURL}${path}`,\n      headers: getHeaders,\n      compatibility,\n      fetch: customFetch,\n      extraBody: options.extraBody,\n    });\n\n  const createLanguageModel = (\n    modelId: OpenRouterChatModelId | OpenRouterCompletionModelId,\n    settings?: OpenRouterChatSettings | OpenRouterCompletionSettings\n  ) => {\n    if (new.target) {\n      throw new Error(\n        \"The OpenRouter model function cannot be called with the new keyword.\"\n      );\n    }\n\n    if (modelId === \"openai/gpt-3.5-turbo-instruct\") {\n      return createCompletionModel(\n        modelId,\n        settings as OpenRouterCompletionSettings\n      );\n    }\n\n    return createChatModel(modelId, settings as OpenRouterChatSettings);\n  };\n\n  const provider = (\n    modelId: OpenRouterChatModelId | OpenRouterCompletionModelId,\n    settings?: OpenRouterChatSettings | OpenRouterCompletionSettings\n  ) => createLanguageModel(modelId, settings);\n\n  provider.languageModel = createLanguageModel;\n  provider.chat = createChatModel;\n  provider.completion = createCompletionModel;\n\n  return provider as OpenRouterProvider;\n}\n\n/**\nDefault Dreams router provider instance. It uses 'strict' compatibility mode.\n */\nexport const dreamsrouter = createDreamsRouter({\n  compatibility: \"strict\", // strict for Dreams Router API\n});\n","/**\n * Dreams Router API Client\n * Provides access to Dreams Router API endpoints with authentication support\n */\n\nexport interface ApiResponse<T = any> {\n  success: boolean;\n  data?: T;\n  user?: User;\n  apiKey?: string;\n  sessionToken?: string;\n  usageHistory?: UsageLog[];\n  statistics?: UsageStats;\n  summary?: UsageSummary;\n  models?: ModelConfig[];\n  stats?: ModelStats;\n  providers?: ModelProvider[];\n  categories?: ModelCategory[];\n  recommendations?: ModelRecommendationResponse;\n  error?: string;\n  amountCredited?: number;\n  newBalance?: number;\n  balance?: number;\n  userId?: string;\n  walletAddress?: string;\n  exists?: boolean;\n  lastSeen?: number;\n  message?: string;\n  instructions?: any;\n}\n\nexport interface User {\n  id: string;\n  walletAddress?: string;\n  balance: number;\n  authMethod: 'api-key' | 'wallet' | 'password' | 'github';\n  createdAt: number;\n  updatedAt: number;\n  name?: string;\n  email?: string;\n  emailVerified?: boolean;\n  githubId?: string;\n  githubUsername?: string;\n  githubLinkedAt?: number | null;\n  lastSeen?: number;\n}\n\nexport interface UsageLog {\n  id: string;\n  userId: string;\n  model: string;\n  promptTokens: number;\n  completionTokens: number;\n  totalTokens: number;\n  costUsd: number;\n  timestamp: number;\n  paymentMethod?: string;\n  provider?: string;\n}\n\nexport interface UsageStats {\n  totalRequests: number;\n  totalTokens: number;\n  totalCost: number;\n  avgTokensPerRequest: number;\n  mostUsedModel: string | null;\n  requestCount: number;\n  timeRange: {\n    start: number;\n    end: number;\n  };\n}\n\nexport interface UsageSummary {\n  totalRequests: number;\n  totalCost: number;\n  totalTokens: number;\n  modelsUsed: string[];\n  paymentMethods: Record<string, { requests: number; cost: number }>;\n  costByModel: Record<string, number>;\n  tokensByModel: Record<string, number>;\n}\n\nexport interface ModelConfig {\n  id: string;\n  name: string;\n  description: string;\n  context_length: number;\n  pricing: {\n    prompt: number;\n    completion: number;\n  };\n  capabilities: string[];\n}\n\nexport interface ModelStats {\n  total_models: number;\n  active_models: number;\n  most_popular: string;\n}\n\nexport interface ModelProvider {\n  id: string;\n  name: string;\n  models: string[];\n}\n\nexport interface ModelCategory {\n  id: string;\n  name: string;\n  description: string;\n  models: string[];\n}\n\nexport interface ModelRecommendationResponse {\n  recommended_models: ModelConfig[];\n  reasoning: string;\n}\n\nexport interface DreamsRouterApiClientOptions {\n  baseURL?: string;\n  apiKey?: string;\n  defaultHeaders?: Record<string, string>;\n}\n\nexport class DreamsRouterApiClient {\n  private baseURL: string;\n  private defaultHeaders: Record<string, string> = {};\n  private onTokenExpired?: () => Promise<string | null>;\n\n  constructor(options: DreamsRouterApiClientOptions = {}) {\n    this.baseURL = options.baseURL || 'https://api-beta.daydreams.systems/v1';\n\n    if (options.apiKey) {\n      this.setApiKey(options.apiKey);\n    }\n\n    if (options.defaultHeaders) {\n      this.defaultHeaders = {\n        ...this.defaultHeaders,\n        ...options.defaultHeaders,\n      };\n    }\n  }\n\n  public setApiKey(apiKey: string) {\n    this.defaultHeaders['Authorization'] = `Bearer ${apiKey}`;\n  }\n\n  public removeApiKey() {\n    delete this.defaultHeaders['Authorization'];\n  }\n\n  public removeSessionToken() {\n    delete this.defaultHeaders['Authorization'];\n  }\n\n  public setTokenExpiredCallback(callback: () => Promise<string | null>) {\n    this.onTokenExpired = callback;\n  }\n\n  private async request<T = any>(\n    endpoint: string,\n    options: RequestInit = {}\n  ): Promise<ApiResponse<T>> {\n    const makeRequest = async (headers = this.defaultHeaders) => {\n      const url = `${this.baseURL}${endpoint}`;\n      const requestHeaders = {\n        'Content-Type': 'application/json',\n        ...headers,\n        ...options.headers,\n      };\n\n      const config: RequestInit = {\n        ...options,\n        headers: requestHeaders,\n      };\n\n      const response = await fetch(url, config);\n\n      if (!response.ok) {\n        const errorText = await response.text();\n        const error = new Error(\n          `HTTP ${response.status}: ${errorText || response.statusText}`\n        );\n        (error as any).status = response.status;\n        (error as any).response = response;\n        (error as any).errorText = errorText;\n        throw error;\n      }\n\n      return response.json();\n    };\n\n    try {\n      return await makeRequest();\n    } catch (error: any) {\n      // Check if this is a JWT token expiration error\n      if (\n        error.status === 401 &&\n        this.onTokenExpired &&\n        this.isJWTTokenExpired(error.errorText)\n      ) {\n        console.log('🔄 JWT token expired, requesting new token...');\n\n        try {\n          const newToken = await this.onTokenExpired();\n          if (newToken) {\n            console.log('✅ Got new JWT token, retrying request...');\n            this.setApiKey(newToken);\n\n            // Retry with new token\n            return await makeRequest({\n              ...this.defaultHeaders,\n              Authorization: `Bearer ${newToken}`,\n            });\n          }\n        } catch (refreshError) {\n          console.error('❌ Failed to refresh token:', refreshError);\n          throw refreshError;\n        }\n      }\n\n      console.error(`API request failed: ${endpoint}`, error);\n      throw error;\n    }\n  }\n\n  private isJWTTokenExpired(errorText: string): boolean {\n    return (\n      errorText.includes('Token expired') ||\n      errorText.includes('jwt expired') ||\n      errorText.includes('Invalid token') ||\n      errorText.includes('Invalid API key or session token')\n    );\n  }\n\n  // Auth endpoints\n  async getProfile(): Promise<ApiResponse<{ user: User }>> {\n    return this.request('/auth/profile');\n  }\n\n  async walletLogin(\n    walletAddress: string,\n    signature: string,\n    message: string\n  ): Promise<ApiResponse<{ user: User; sessionToken: string }>> {\n    return this.request('/auth/wallet-login', {\n      method: 'POST',\n      body: JSON.stringify({ walletAddress, signature, message }),\n    });\n  }\n\n  // Balance endpoints\n  async getWalletBalance(address: string): Promise<\n    ApiResponse<{\n      balance: number;\n      userId?: string;\n      walletAddress?: string;\n      exists?: boolean;\n      lastSeen?: number;\n    }>\n  > {\n    return this.request(`/wallet/balance/${address}`);\n  }\n\n  async processPayment(\n    x402Payment: string\n  ): Promise<ApiResponse<{ amountCredited: number; newBalance: number }>> {\n    return this.request('/payments/process', {\n      method: 'POST',\n      headers: {\n        'X-PAYMENT': x402Payment,\n      },\n    });\n  }\n\n  // Model endpoints\n  async getDetailedModels(): Promise<ApiResponse<{ models: ModelConfig[] }>> {\n    return this.request('/models/detailed');\n  }\n\n  async getModelStats(): Promise<ApiResponse<{ stats: ModelStats }>> {\n    return this.request('/models/stats');\n  }\n\n  async getProviders(): Promise<ApiResponse<{ providers: ModelProvider[] }>> {\n    return this.request('/models/providers');\n  }\n\n  async getModelCategories(): Promise<\n    ApiResponse<{ categories: ModelCategory[] }>\n  > {\n    return this.request('/models/categories');\n  }\n\n  async searchModels(query: string): Promise<ApiResponse> {\n    return this.request(`/models/search?q=${encodeURIComponent(query)}`);\n  }\n\n  async getModelRecommendations(requirements: {\n    budget?: number;\n    needsVision?: boolean;\n    needsFunctions?: boolean;\n    needsStreaming?: boolean;\n    minTokens?: number;\n  }): Promise<ApiResponse<{ recommendations: ModelRecommendationResponse }>> {\n    const params = new URLSearchParams();\n    Object.entries(requirements).forEach(([key, value]) => {\n      if (value !== undefined) {\n        params.set(key, value.toString());\n      }\n    });\n    return this.request(`/models/recommendations?${params}`);\n  }\n}\n\n// Default client instance\nexport const dreamsRouterApiClient = new DreamsRouterApiClient();\n","/**\n * Wallet authentication utilities for Dreams Router\n * Combines API client with AI SDK for seamless wallet authentication\n */\n\nimport type { Account } from 'viem';\nimport type { User } from './dreams-router-api-client.js';\nimport type { DreamsRouterPaymentConfig } from './types';\n\nimport { DreamsRouterApiClient } from './dreams-router-api-client.js';\nimport { createDreamsRouter } from './provider';\n// TODO: Re-enable when router supports x402 auth\n// import { generateX402Payment } from './x402-payment-utils';\n\nexport interface WalletAuthManager {\n  apiClient: DreamsRouterApiClient;\n  currentSessionToken: string | null;\n  currentUser: User | null;\n  currentAccount: Account | null;\n\n  /**\n   * Sign message and get JWT session token using an account\n   */\n  walletLogin(account: Account): Promise<{ sessionToken: string; user: User }>;\n\n  /**\n   * Create Dreams Router provider with current authentication and optional payments\n   */\n  createDreamsRouter(options?: {\n    payments?: DreamsRouterPaymentConfig;\n  }): ReturnType<typeof createDreamsRouter>;\n\n  /**\n   * Get current user profile\n   */\n  getProfile(): Promise<User>;\n\n  /**\n   * Get wallet balance\n   */\n  getBalance(address: string): Promise<number>;\n\n  /**\n   * Logout and clear tokens\n   */\n  logout(): void;\n}\n\nexport interface WalletAuthManagerOptions {\n  baseURL?: string;\n  onTokenExpired?: () => Promise<string | null>;\n}\n\nexport function createWalletAuthManager(\n  options: WalletAuthManagerOptions = {}\n): WalletAuthManager {\n  const apiClient = new DreamsRouterApiClient({\n    baseURL: options.baseURL,\n  });\n\n  let currentSessionToken: string | null = null;\n  let currentUser: User | null = null;\n  let currentAccount: Account | null = null;\n\n  // Set up token expiration callback\n  if (options.onTokenExpired) {\n    apiClient.setTokenExpiredCallback(options.onTokenExpired);\n  }\n\n  return {\n    apiClient,\n    get currentSessionToken() {\n      return currentSessionToken;\n    },\n    get currentUser() {\n      return currentUser;\n    },\n    get currentAccount() {\n      return currentAccount;\n    },\n\n    async walletLogin(account: Account) {\n      const timestamp = Date.now();\n      const message = `Sign this message to authenticate with Dreams Router\\n\\nWallet: ${account.address}\\nTimestamp: ${timestamp}`;\n\n      if (!account.signMessage) {\n        throw new Error(\n          'Account does not support message signing. Required for authentication.'\n        );\n      }\n      const signature = await account.signMessage({ message });\n\n      const response = await apiClient.walletLogin(\n        account.address,\n        signature,\n        message\n      );\n\n      if (response.success && response.sessionToken && response.user) {\n        currentSessionToken = response.sessionToken;\n        currentUser = response.user;\n        currentAccount = account;\n        apiClient.setApiKey(response.sessionToken);\n\n        return {\n          sessionToken: response.sessionToken,\n          user: response.user,\n        };\n      } else {\n        throw new Error(response.error || 'Failed to login with wallet');\n      }\n    },\n\n    createDreamsRouter(\n      routerOptions: { payments?: DreamsRouterPaymentConfig } = {}\n    ) {\n      if (!currentSessionToken) {\n        throw new Error('No session token available. Please login first.');\n      }\n\n      return createDreamsRouter({\n        apiKey: currentSessionToken,\n        baseURL: options.baseURL || 'https://api-beta.daydreams.systems/v1',\n        payment: routerOptions.payments,\n        signer: currentAccount || undefined,\n      });\n    },\n\n    async getProfile() {\n      if (!currentSessionToken) {\n        throw new Error('No session token available. Please login first.');\n      }\n\n      const response = await apiClient.getProfile();\n\n      if (response.success && response.user) {\n        currentUser = response.user;\n        return response.user;\n      } else {\n        throw new Error(response.error || 'Failed to get profile');\n      }\n    },\n\n    async getBalance(address: string) {\n      const response = await apiClient.getWalletBalance(address);\n\n      if (response.success || response.balance !== undefined) {\n        return response.balance ?? 0;\n      } else {\n        throw new Error(response.error || 'Failed to get wallet balance');\n      }\n    },\n\n    logout() {\n      currentSessionToken = null;\n      currentUser = null;\n      currentAccount = null;\n      apiClient.removeSessionToken();\n      apiClient.removeApiKey();\n    },\n  };\n}\n\n/**\n * Dreams Router authentication with automatic AI SDK integration\n */\nexport async function createDreamsRouterAuth(\n  account: Account,\n  options: WalletAuthManagerOptions & {\n    payments?: DreamsRouterPaymentConfig;\n  } = {}\n) {\n  const authManager = createWalletAuthManager(options);\n\n  // Get JWT token\n  const { sessionToken, user } = await authManager.walletLogin(account);\n\n  // Create Dreams Router provider\n  const dreamsRouter = authManager.createDreamsRouter({\n    payments: options.payments,\n  });\n\n  return {\n    sessionToken,\n    user,\n    dreamsRouter,\n    authManager,\n  };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAM,SAAS;AACf,IAAM,SAAS,OAAO,IAAI,MAAM;AALhC,IAAA;AAWO,IAAM,cAAN,MAAMA,qBAAmB,MAAM;;;;;;;;;EAgBpC,YAAY;IACV,MAAAC;IACA;IACA;EACF,GAIG;AACD,UAAM,OAAO;AAxBf,SAAkB,EAAA,IAAU;AA0B1B,SAAK,OAAOA;AACZ,SAAK,QAAQ;EACf;;;;;;EAOA,OAAO,WAAW,OAAqC;AACrD,WAAOD,aAAW,UAAU,OAAO,MAAM;EAC3C;EAEA,OAAiB,UAAU,OAAgBE,UAAyB;AAClE,UAAM,eAAe,OAAO,IAAIA,QAAM;AACtC,WACE,SAAS,QACT,OAAO,UAAU,YACjB,gBAAgB,SAChB,OAAO,MAAM,YAAY,MAAM,aAC/B,MAAM,YAAY,MAAM;EAE5B;AACF;AAjDoB,KAAA;AADb,IAAM,aAAN;ACTP,IAAM,OAAO;AACb,IAAMA,UAAS,mBAAmB,IAAI;AACtC,IAAMC,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAMO,IAAM,eAAN,cAA2B,WAAW;EAa3C,YAAY;IACV;IACA;IACA;IACA;IACA;IACA;IACA;IACA,cAAc,cAAc,SACzB,eAAe;IACd,eAAe;IACf,eAAe;IACf,cAAc;;IAClB;EACF,GAUG;AACD,UAAM,EAAE,MAAM,SAAS,MAAM,CAAC;AArChC,SAAkBA,GAAAA,IAAU;AAuC1B,SAAK,MAAM;AACX,SAAK,oBAAoB;AACzB,SAAK,aAAa;AAClB,SAAK,kBAAkB;AACvB,SAAK,eAAe;AACpB,SAAK,cAAc;AACnB,SAAK,OAAO;EACd;EAEA,OAAO,WAAW,OAAuC;AACvD,WAAO,WAAW,UAAU,OAAOF,OAAM;EAC3C;AACF;AAnDoBE,MAAAD;ACLpB,IAAMF,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAMO,IAAM,yBAAN,cAAqC,WAAW;;EAGrD,YAAY,EAAE,UAAU,sBAAsB,IAA0B,CAAC,GAAG;AAC1E,UAAM,EAAE,MAAAH,OAAM,QAAQ,CAAC;AAHzB,SAAkBG,GAAAA,IAAU;EAI5B;EAEA,OAAO,WAAW,OAAiD;AACjE,WAAO,WAAW,UAAU,OAAOF,OAAM;EAC3C;AACF;AAToBE,MAAAD;ACPb,SAAS,gBAAgB,OAA4B;AAC1D,MAAI,SAAS,MAAM;AACjB,WAAO;EACT;AAEA,MAAI,OAAO,UAAU,UAAU;AAC7B,WAAO;EACT;AAEA,MAAI,iBAAiB,OAAO;AAC1B,WAAO,MAAM;EACf;AAEA,SAAO,KAAK,UAAU,KAAK;AAC7B;ACZA,IAAMF,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AASO,IAAM,uBAAN,cAAmC,WAAW;EAKnD,YAAY;IACV;IACA;IACA;EACF,GAIG;AACD,UAAM,EAAE,MAAAH,OAAM,SAAS,MAAM,CAAC;AAbhC,SAAkBG,GAAAA,IAAU;AAe1B,SAAK,WAAW;EAClB;EAEA,OAAO,WAAW,OAA+C;AAC/D,WAAO,WAAW,UAAU,OAAOF,OAAM;EAC3C;AACF;AArBoBE,MAAAD;ACRpB,IAAMF,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAUO,IAAM,qBAAN,cAAiC,WAAW;EAKjD,YAAY;IACV;IACA;IACA;EACF,GAIG;AACD,UAAM,EAAE,MAAAH,OAAM,SAAS,mBAAmB,OAAO,IAAI,MAAM,CAAC;AAb9D,SAAkBG,GAAAA,IAAU;AAe1B,SAAK,SAAS;EAChB;EAEA,OAAO,WAAW,OAA6C;AAC7D,WAAO,WAAW,UAAU,OAAOF,OAAM;EAC3C;AACF;AArBoBE,MAAAD;ACTpB,IAAMF,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAUO,IAAM,2BAAN,cAAuC,WAAW;EAKvD,YAAY;IACV;IACA,UAAU,0BAA0B,KAAK,UAAU,IAAI,CAAC;EAC1D,GAGG;AACD,UAAM,EAAE,MAAAH,OAAM,QAAQ,CAAC;AAXzB,SAAkBG,GAAAA,IAAU;AAa1B,SAAK,OAAO;EACd;EAEA,OAAO,WAAW,OAAmD;AACnE,WAAO,WAAW,UAAU,OAAOF,OAAM;EAC3C;AACF;AAnBoBE,MAAAD;ACRpB,IAAMF,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AALhC,IAAAE;AAQO,IAAM,iBAAN,cAA6B,WAAW;EAK7C,YAAY,EAAE,MAAM,MAAM,GAAqC;AAC7D,UAAM;MACJ,MAAAH;MACA,SACE,8BACS,IAAI;iBACK,gBAAgB,KAAK,CAAC;MAC1C;IACF,CAAC;AAZH,SAAkBG,GAAAA,IAAU;AAc1B,SAAK,OAAO;EACd;EAEA,OAAO,WAAW,OAAyC;AACzD,WAAO,WAAW,UAAU,OAAOF,OAAM;EAC3C;AACF;AApBoBE,MAAAD;ACPpB,IAAMF,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAMO,IAAM,kBAAN,cAA8B,WAAW;;EAG9C,YAAY,EAAE,QAAQ,GAAwB;AAC5C,UAAM,EAAE,MAAAH,OAAM,QAAQ,CAAC;AAHzB,SAAkBG,GAAAA,IAAU;EAI5B;EAEA,OAAO,WAAW,OAA0C;AAC1D,WAAO,WAAW,UAAU,OAAOF,OAAM;EAC3C;AACF;AAToBE,MAAAD;ACLpB,IAAMF,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAOoBC,MAAAC;ACLpB,IAAMC,QAAO;AACb,IAAMC,WAAS,mBAAmBD,KAAI;AACtC,IAAMD,WAAS,OAAO,IAAIE,QAAM;AAJhC,IAAAH;AAUoBI,OAAAC;ACRpB,IAAMC,SAAO;AACb,IAAMC,WAAS,mBAAmBD,MAAI;AACtC,IAAMD,WAAS,OAAO,IAAIE,QAAM;AAJhC,IAAAH;AAOoBI,OAAAC;ACLpB,IAAMC,SAAO;AACb,IAAMC,WAAS,mBAAmBD,MAAI;AACtC,IAAMD,WAAS,OAAO,IAAIE,QAAM;AAJhC,IAAAH;AAOoBI,OAAAC;ACJpB,IAAMC,SAAO;AACb,IAAMC,WAAS,mBAAmBD,MAAI;AACtC,IAAMD,WAAS,OAAO,IAAIE,QAAM;AALhC,IAAAH;AAOO,IAAM,uBAAN,MAAMI,8BAA4B,WAAW;EAKlD,YAAY,EAAE,OAAO,MAAM,GAAuC;AAChE,UAAM;MACJ,MAAAF;MACA,SACE,kCACU,KAAK,UAAU,KAAK,CAAC;iBACb,gBAAgB,KAAK,CAAC;MAC1C;IACF,CAAC;AAZH,SAAkBF,IAAAA,IAAU;AAc1B,SAAK,QAAQ;EACf;EAEA,OAAO,WAAW,OAA8C;AAC9D,WAAO,WAAW,UAAU,OAAOG,QAAM;EAC3C;;;;;;;;;;;EAYA,OAAO,KAAK;IACV;IACA;EACF,GAGwB;AACtB,WAAOC,sBAAoB,WAAW,KAAK,KAAK,MAAM,UAAU,QAC5D,QACA,IAAIA,sBAAoB,EAAE,OAAO,MAAM,CAAC;EAC9C;AACF;AA1CoBJ,OAAAC;AADb,IAAM,sBAAN;ACLP,IAAMC,SAAO;AACb,IAAMC,WAAS,mBAAmBD,MAAI;AACtC,IAAMD,WAAS,OAAO,IAAIE,QAAM;AAJhC,IAAAH;AAMO,IAAM,gCAAN,cAA4C,WAAW;EAK5D,YAAY;IACV;IACA,UAAU,IAAI,aAAa;EAC7B,GAGG;AACD,UAAM,EAAE,MAAAE,QAAM,QAAQ,CAAC;AAXzB,SAAkBF,IAAAA,IAAU;AAY1B,SAAK,gBAAgB;EACvB;EAEA,OAAO,WAAW,OAAwD;AACxE,WAAO,WAAW,UAAU,OAAOG,QAAM;EAC3C;AACF;AAlBoBH,OAAAC;;;AEIb,IAAM,aAAN,cAAyB,MAAM;EAqBpC,YACE,SACA,SACA;AACA,UAAM,OAAO,GACb,KAAK,OAAO,cACZ,KAAK,OAAO,QAAQ,MACpB,KAAK,QAAQ,QAAQ,OACrB,KAAK,QAAQ,QAAQ,OACrB,KAAK,OAAO,QAAQ;EAAA;AAExB;ACnCA,SAAS,KAAK,MAAe;AAE7B;AAcO,SAAS,aAAa,WAA+C;AAC1E,MAAI,OAAO,aAAc;AACvB,UAAM,IAAI;MACR;IACF;AAGI,QAAA,EAAC,UAAU,MAAM,UAAU,MAAM,UAAU,MAAM,UAAA,IAAa;AAEpE,MAAI,iBAAiB,IAEjB,eAAe,MACf,IACA,OAAO,IACP,YAAY;AAEhB,WAAS,KAAK,UAAkB;AAE9B,UAAM,QAAQ,eAAe,SAAS,QAAQ,iBAAiB,EAAE,IAAI,UAI/D,CAAC,UAAU,UAAU,IAAI,WAAW,GAAG,cAAc,GAAG,KAAK,EAAE;AAErE,eAAW,QAAQ;AACjB,gBAAU,IAAI;AAGhB,qBAAiB,YACjB,eAAe;EAAA;AAGjB,WAAS,UAAU,MAAc;AAE/B,QAAI,SAAS,IAAI;AACD,oBAAA;AACd;IAAA;AAIE,QAAA,KAAK,WAAW,GAAG,GAAG;AACpB,mBACF,UAAU,KAAK,MAAM,KAAK,WAAW,IAAI,IAAI,IAAI,CAAC,CAAC;AAErD;IAAA;AAII,UAAA,sBAAsB,KAAK,QAAQ,GAAG;AAC5C,QAAI,wBAAwB,IAAI;AAG9B,YAAM,QAAQ,KAAK,MAAM,GAAG,mBAAmB,GAKzC,SAAS,KAAK,sBAAsB,CAAC,MAAM,MAAM,IAAI,GACrD,QAAQ,KAAK,MAAM,sBAAsB,MAAM;AAExC,mBAAA,OAAO,OAAO,IAAI;AAC/B;IAAA;AAOW,iBAAA,MAAM,IAAI,IAAI;EAAA;AAGpB,WAAA,aAAa,OAAe,OAAe,MAAc;AAEhE,YAAQ,OAAO;MACb,KAAK;AAES,oBAAA;AACZ;MACF,KAAK;AAGI,eAAA,GAAG,IAAI,GAAG,KAAK;;AACtB;MACF,KAAK;AAGH,aAAK,MAAM,SAAS,IAAI,IAAI,SAAY;AACxC;MACF,KAAK;AAIC,gBAAQ,KAAK,KAAK,IACpB,QAAQ,SAAS,OAAO,EAAE,CAAC,IAE3B;UACE,IAAI,WAAW,6BAA6B,KAAK,KAAK;YACpD,MAAM;YACN;YACA;UACD,CAAA;QACH;AAEF;MACF;AAEE;UACE,IAAI;YACF,kBAAkB,MAAM,SAAS,KAAK,GAAG,MAAM,MAAM,GAAG,EAAE,CAAC,WAAM,KAAK;YACtE,EAAC,MAAM,iBAAiB,OAAO,OAAO,KAAI;UAAA;QAE9C;AACA;IAAA;EACJ;AAGF,WAAS,gBAAgB;AACA,SAAK,SAAS,KAEnC,QAAQ;MACN;MACA,OAAO,aAAa;;;MAGpB,MAAM,KAAK,SAAS;CAAI,IAAI,KAAK,MAAM,GAAG,EAAE,IAAI;IAAA,CACjD,GAIH,KAAK,QACL,OAAO,IACP,YAAY;EAAA;AAGL,WAAA,MAAM,UAA+B,CAAA,GAAI;AAC5C,sBAAkB,QAAQ,WAC5B,UAAU,cAAc,GAG1B,eAAe,MACf,KAAK,QACL,OAAO,IACP,YAAY,IACZ,iBAAiB;EAAA;AAGZ,SAAA,EAAC,MAAM,MAAK;AACrB;AASA,SAAS,WAAW,OAA8D;AAOhF,QAAM,QAAuB,CAAC;AAC1B,MAAA,iBAAiB,IACjB,cAAc;AAEX,SAAA,cAAc,MAAM,UAAQ;AAE3B,UAAA,UAAU,MAAM,QAAQ,MAAM,WAAW,GACzC,UAAU,MAAM,QAAQ;GAAM,WAAW;AAG/C,QAAI,UAAU;AAWd,QAVI,YAAY,MAAM,YAAY,KAEhC,UAAU,KAAK,IAAI,SAAS,OAAO,IAC1B,YAAY,KACrB,UAAU,UACD,YAAY,OACrB,UAAU,UAIR,YAAY,IAAI;AAED,uBAAA,MAAM,MAAM,WAAW;AACxC;IAAA,OACK;AACL,YAAM,OAAO,MAAM,MAAM,aAAa,OAAO;AAC7C,YAAM,KAAK,IAAI,GAGf,cAAc,UAAU,GACpB,MAAM,cAAc,CAAC,MAAM,QAAQ,MAAM,WAAW,MAAM;KAC5D;IAAA;EAEJ;AAGK,SAAA,CAAC,OAAO,cAAc;AAC/B;;;ACzKO,IAAM,0BAAN,cAAsC,gBAA4C;EACvF,YAAY,EAAC,SAAS,SAAS,UAAS,IAAmB,CAAA,GAAI;AACzD,QAAA;AAEE,UAAA;MACJ,MAAM,YAAY;AAChB,iBAAS,aAAa;UACpB,SAAS,CAAC,UAAU;AAClB,uBAAW,QAAQ,KAAK;UAC1B;UACA,QAAQ,OAAO;AACT,wBAAY,cACd,WAAW,MAAM,KAAK,IACb,OAAO,WAAY,cAC5B,QAAQ,KAAK;UAIjB;UACA;UACA;QAAA,CACD;MACH;MACA,UAAU,OAAO;AACf,eAAO,KAAK,KAAK;MAAA;IACnB,CACD;EAAA;AAEL;;;A0BlFA,YAAY,QAAQ;;;AOFb,IAAM,iBAAiB,OAAO,mDAAmD;;;ACAxF,SAAS,yBAAAI,8BAA6B;;;ACAtC,SAAS,6BAA6B;;;ACAtC,SAAS,yBAAAC,8BAA8B;;;ACsMvC,IAAM,gBAAgB,IAAI,IAAI,8DAA8D;;;ACtM5F,SAAS,mBAAmB;;;ArCArB,SAAS,kBACX,SACiC;AACpC,SAAO,QAAQ;IACb,CAAC,iBAAiB,mBAAoB,kCACjC,kBACC,kBAAA,OAAA,iBAAkB,CAAC;IAEzB,CAAC;EACH;AACF;AGJO,SAAS,uBAAuB,UAAoB;AACzD,SAAO,OAAO,YAAoB,CAAC,GAAG,SAAS,OAAO,CAAC;AACzD;ACIO,IAAM,oBAAoB,CAAC;EAChC;EACA,MAAAC,QAAO;EACP,WAAW;EACX,YAAY;AACd,IAKI,CAAC,MAAmB;AACtB,QAAM,YAAY,MAAM;AACtB,UAAM,iBAAiB,SAAS;AAChC,UAAM,QAAQ,IAAI,MAAMA,KAAI;AAC5B,aAAS,IAAI,GAAG,IAAIA,OAAM,KAAK;AAC7B,YAAM,CAAC,IAAI,SAAU,KAAK,OAAO,IAAI,iBAAkB,CAAC;IAC1D;AACA,WAAO,MAAM,KAAK,EAAE;EACtB;AAEA,MAAI,UAAU,MAAM;AAClB,WAAO;EACT;AAGA,MAAI,SAAS,SAAS,SAAS,GAAG;AAChC,UAAM,IAAI,qBAAqB;MAC7B,UAAU;MACV,SAAS,kBAAkB,SAAS,uCAAuC,QAAQ;IACrF,CAAC;EACH;AAEA,SAAO,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAClD;AAWO,IAAM,aAAa,kBAAkB;AIxDrC,SAAS,aAAa,OAAgC;AAC3D,UACG,iBAAiB,SAAS,iBAAiB,kBAC3C,MAAM,SAAS,gBACd,MAAM,SAAS;EACf,MAAM,SAAS;AAErB;ADJA,IAAM,8BAA8B,CAAC,gBAAgB,iBAAiB;AAE/D,SAAS,iBAAiB;EAC/B;EACA;EACA;AACF,GAIG;AACD,MAAI,aAAa,KAAK,GAAG;AACvB,WAAO;EACT;AAGA,MACE,iBAAiB,aACjB,4BAA4B,SAAS,MAAM,QAAQ,YAAY,CAAC,GAChE;AACA,UAAM,QAAS,MAAc;AAE7B,QAAI,SAAS,MAAM;AAEjB,aAAO,IAAI,aAAa;QACtB,SAAS,0BAA0B,MAAM,OAAO;QAChD;QACA;QACA;QACA,aAAa;;MACf,CAAC;IACH;EACF;AAEA,SAAO;AACT;AEjCO,SAAS,uBACd,QACmB;AACnB,SAAO,OAAO;IACZ,OAAO,QAAQ,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,KAAK,MAAM,SAAS,IAAI;EAChE;AACF;AETO,SAAS,WAAW;EACzB;EACA;EACA,sBAAsB;EACtB;AACF,GAKW;AACT,MAAI,OAAO,WAAW,UAAU;AAC9B,WAAO;EACT;AAEA,MAAI,UAAU,MAAM;AAClB,UAAM,IAAI,gBAAgB;MACxB,SAAS,GAAG,WAAW;IACzB,CAAC;EACH;AAEA,MAAI,OAAO,YAAY,aAAa;AAClC,UAAM,IAAI,gBAAgB;MACxB,SAAS,GAAG,WAAW,2CAA2C,mBAAmB;IACvF,CAAC;EACH;AAEA,WAAS,QAAQ,IAAI,uBAAuB;AAE5C,MAAI,UAAU,MAAM;AAClB,UAAM,IAAI,gBAAgB;MACxB,SAAS,GAAG,WAAW,2CAA2C,mBAAmB,sBAAsB,uBAAuB;IACpI,CAAC;EACH;AAEA,MAAI,OAAO,WAAW,UAAU;AAC9B,UAAM,IAAI,gBAAgB;MACxB,SAAS,GAAG,WAAW,+CAA+C,uBAAuB;IAC/F,CAAC;EACH;AAEA,SAAO;AACT;AIrBA,IAAM,iBAAiB;AACvB,IAAM,uBAAuB;AAE7B,SAAS,OAAO,MAAc;AAE5B,QAAM,MAAM,KAAK,MAAM,IAAI;AAG3B,MAAI,QAAQ,QAAQ,OAAO,QAAQ,UAAU;AAC3C,WAAO;EACT;AAEA,MACE,eAAe,KAAK,IAAI,MAAM,SAC9B,qBAAqB,KAAK,IAAI,MAAM,OACpC;AACA,WAAO;EACT;AAGA,SAAO,OAAO,GAAG;AACnB;AAEA,SAAS,OAAO,KAAU;AACxB,MAAI,OAAO,CAAC,GAAG;AAEf,SAAO,KAAK,QAAQ;AAClB,UAAM,QAAQ;AACd,WAAO,CAAC;AAER,eAAW,QAAQ,OAAO;AACxB,UAAI,OAAO,UAAU,eAAe,KAAK,MAAM,WAAW,GAAG;AAC3D,cAAM,IAAI,YAAY,8CAA8C;MACtE;AAEA,UACE,OAAO,UAAU,eAAe,KAAK,MAAM,aAAa,KACxD,OAAO,UAAU,eAAe,KAAK,KAAK,aAAa,WAAW,GAClE;AACA,cAAM,IAAI,YAAY,8CAA8C;MACtE;AAEA,iBAAW,OAAO,MAAM;AACtB,cAAM,QAAQ,KAAK,GAAG;AACtB,YAAI,SAAS,OAAO,UAAU,UAAU;AACtC,eAAK,KAAK,KAAK;QACjB;MACF;IACF;EACF;AACA,SAAO;AACT;AAEO,SAAS,gBAAgB,MAAc;AAE5C,QAAM,EAAE,gBAAgB,IAAI;AAC5B,QAAM,kBAAkB;AACxB,MAAI;AACF,WAAO,OAAO,IAAI;EACpB,UAAA;AACE,UAAM,kBAAkB;EAC1B;AACF;AE/EO,IAAM,kBAAkB,OAAO,IAAI,qBAAqB;AA0BxD,SAAS,UACdC,WAKmB;AACnB,SAAO,EAAE,CAAC,eAAe,GAAG,MAAM,UAAAA,UAAS;AAC7C;AAEO,SAAS,YAAY,OAAoC;AAC9D,SACE,OAAO,UAAU,YACjB,UAAU,QACV,mBAAmB,SACnB,MAAM,eAAe,MAAM,QAC3B,cAAc;AAElB;AAEO,SAAS,YACd,OACmB;AACnB,SAAO,YAAY,KAAK,IAAI,QAAQ,wBAAwB,KAAK;AACnE;AAEO,SAAS,wBACd,gBACmB;AACnB,SAAO,UAAU,OAAM,UAAS;AAC9B,UAAM,SAAS,MAAM,eAAe,WAAW,EAAE,SAAS,KAAK;AAE/D,WAAO,OAAO,UAAU,OACpB,EAAE,SAAS,MAAM,OAAO,OAAO,MAAM,IACrC;MACE,SAAS;MACT,OAAO,IAAI,oBAAoB;QAC7B;QACA,OAAO,OAAO;MAChB,CAAC;IACH;EACN,CAAC;AACH;AD7DA,eAAsB,cAAsB;EAC1C;EACA;AACF,GAGoB;AAClB,QAAM,SAAS,MAAM,kBAAkB,EAAE,OAAO,OAAO,CAAC;AAExD,MAAI,CAAC,OAAO,SAAS;AACnB,UAAMC,oBAAoB,KAAK,EAAE,OAAO,OAAO,OAAO,MAAM,CAAC;EAC/D;AAEA,SAAO,OAAO;AAChB;AAWA,eAAsB,kBAA0B;EAC9C;EACA;AACF,GAcE;AACA,QAAMC,aAAY,YAAY,MAAM;AAEpC,MAAI;AACF,QAAIA,WAAU,YAAY,MAAM;AAC9B,aAAO,EAAE,SAAS,MAAM,OAAwB,UAAU,MAAM;IAClE;AAEA,UAAM,SAAS,MAAMA,WAAU,SAAS,KAAK;AAE7C,QAAI,OAAO,SAAS;AAClB,aAAO,EAAE,SAAS,MAAM,OAAO,OAAO,OAAO,UAAU,MAAM;IAC/D;AAEA,WAAO;MACL,SAAS;MACT,OAAOD,oBAAoB,KAAK,EAAE,OAAO,OAAO,OAAO,MAAM,CAAC;MAC9D,UAAU;IACZ;EACF,SAAS,OAAO;AACd,WAAO;MACL,SAAS;MACT,OAAOA,oBAAoB,KAAK,EAAE,OAAO,OAAO,MAAM,CAAC;MACvD,UAAU;IACZ;EACF;AACF;AFhDA,eAAsB,UAAa;EACjC;EACA;AACF,GAGe;AACb,MAAI;AACF,UAAM,QAAQ,gBAAgB,IAAI;AAElC,QAAI,UAAU,MAAM;AAClB,aAAO;IACT;AAEA,WAAO,cAAiB,EAAE,OAAO,OAAO,CAAC;EAC3C,SAAS,OAAO;AACd,QACE,eAAe,WAAW,KAAK,KAC/BA,oBAAoB,WAAW,KAAK,GACpC;AACA,YAAM;IACR;AAEA,UAAM,IAAI,eAAe,EAAE,MAAM,OAAO,MAAM,CAAC;EACjD;AACF;AAgCA,eAAsB,cAAiB;EACrC;EACA;AACF,GAG4B;AAC1B,MAAI;AACF,UAAM,QAAQ,gBAAgB,IAAI;AAElC,QAAI,UAAU,MAAM;AAClB,aAAO,EAAE,SAAS,MAAM,OAAmB,UAAU,MAAM;IAC7D;AAEA,WAAO,MAAM,kBAAqB,EAAE,OAAO,OAAO,CAAC;EACrD,SAAS,OAAO;AACd,WAAO;MACL,SAAS;MACT,OAAO,eAAe,WAAW,KAAK,IAClC,QACA,IAAI,eAAe,EAAE,MAAM,OAAO,MAAM,CAAC;MAC7C,UAAU;IACZ;EACF;AACF;AAEO,SAAS,eAAe,OAAwB;AACrD,MAAI;AACF,oBAAgB,KAAK;AACrB,WAAO;EACT,SAAQ,GAAA;AACN,WAAO;EACT;AACF;AIjHO,SAAS,qBAAwB;EACtC;EACA;AACF,GAGmC;AACjC,SAAO,OACJ,YAAY,IAAI,kBAAkB,CAAC,EACnC,YAAY,IAAI,wBAAwB,CAAC,EACzC;IACC,IAAI,gBAAoD;MACtD,MAAM,UAAU,EAAE,KAAK,GAAG,YAAY;AAEpC,YAAI,SAAS,UAAU;AACrB;QACF;AAEA,mBAAW,QAAQ,MAAM,cAAc,EAAE,MAAM,MAAM,OAAO,CAAC,CAAC;MAChE;IACF,CAAC;EACH;AACJ;AEvBA,IAAME,oBAAmB,MAAM,WAAW;AAEnC,IAAM,gBAAgB,OAAU;EACrC;EACA;EACA;EACA;EACA;EACA;EACA,OAAAC;AACF,MASE,UAAU;EACR;EACA,SAAS;IACP,gBAAgB;KACb;EAEL,MAAM;IACJ,SAAS,KAAK,UAAU,IAAI;IAC5B,QAAQ;EACV;EACA;EACA;EACA;EACA,OAAAA;AACF,CAAC;AAgCI,IAAM,YAAY,OAAU;EACjC;EACA,UAAU,CAAC;EACX;EACA;EACA;EACA;EACA,OAAAC,SAAQC,kBAAiB;AAC3B,MAWM;AACJ,MAAI;AACF,UAAM,WAAW,MAAMD,OAAM,KAAK;MAChC,QAAQ;MACR,SAAS,uBAAuB,OAAO;MACvC,MAAM,KAAK;MACX,QAAQ;IACV,CAAC;AAED,UAAM,kBAAkB,uBAAuB,QAAQ;AAEvD,QAAI,CAAC,SAAS,IAAI;AAChB,UAAI;AAKJ,UAAI;AACF,2BAAmB,MAAM,sBAAsB;UAC7C;UACA;UACA,mBAAmB,KAAK;QAC1B,CAAC;MACH,SAAS,OAAO;AACd,YAAI,aAAa,KAAK,KAAKE,aAAa,WAAW,KAAK,GAAG;AACzD,gBAAM;QACR;AAEA,cAAM,IAAIA,aAAa;UACrB,SAAS;UACT,OAAO;UACP,YAAY,SAAS;UACrB;UACA;UACA,mBAAmB,KAAK;QAC1B,CAAC;MACH;AAEA,YAAM,iBAAiB;IACzB;AAEA,QAAI;AACF,aAAO,MAAM,0BAA0B;QACrC;QACA;QACA,mBAAmB,KAAK;MAC1B,CAAC;IACH,SAAS,OAAO;AACd,UAAI,iBAAiB,OAAO;AAC1B,YAAI,aAAa,KAAK,KAAKA,aAAa,WAAW,KAAK,GAAG;AACzD,gBAAM;QACR;MACF;AAEA,YAAM,IAAIA,aAAa;QACrB,SAAS;QACT,OAAO;QACP,YAAY,SAAS;QACrB;QACA;QACA,mBAAmB,KAAK;MAC1B,CAAC;IACH;EACF,SAAS,OAAO;AACd,UAAM,iBAAiB,EAAE,OAAO,KAAK,mBAAmB,KAAK,OAAO,CAAC;EACvE;AACF;AI/IO,IAAM,iCACX,CAAI;EACF;EACA;EACA;AACF,MAKA,OAAO,EAAE,UAAU,KAAK,kBAAkB,MAAM;AAC9C,QAAM,eAAe,MAAM,SAAS,KAAK;AACzC,QAAM,kBAAkB,uBAAuB,QAAQ;AAGvD,MAAI,aAAa,KAAK,MAAM,IAAI;AAC9B,WAAO;MACL;MACA,OAAO,IAAIC,aAAa;QACtB,SAAS,SAAS;QAClB;QACA;QACA,YAAY,SAAS;QACrB;QACA;QACA,aAAa,eAAA,OAAA,SAAA,YAAc,QAAA;MAC7B,CAAC;IACH;EACF;AAGA,MAAI;AACF,UAAM,cAAc,MAAM,UAAU;MAClC,MAAM;MACN,QAAQ;IACV,CAAC;AAED,WAAO;MACL;MACA,OAAO,IAAIA,aAAa;QACtB,SAAS,eAAe,WAAW;QACnC;QACA;QACA,YAAY,SAAS;QACrB;QACA;QACA,MAAM;QACN,aAAa,eAAA,OAAA,SAAA,YAAc,UAAU,WAAA;MACvC,CAAC;IACH;EACF,SAAS,YAAY;AACnB,WAAO;MACL;MACA,OAAO,IAAIA,aAAa;QACtB,SAAS,SAAS;QAClB;QACA;QACA,YAAY,SAAS;QACrB;QACA;QACA,aAAa,eAAA,OAAA,SAAA,YAAc,QAAA;MAC7B,CAAC;IACH;EACF;AACF;AAEK,IAAM,mCACX,CACE,gBAEF,OAAO,EAAE,SAAS,MAA8B;AAC9C,QAAM,kBAAkB,uBAAuB,QAAQ;AAEvD,MAAI,SAAS,QAAQ,MAAM;AACzB,UAAM,IAAI,uBAAuB,CAAC,CAAC;EACrC;AAEA,SAAO;IACL;IACA,OAAO,qBAAqB;MAC1B,QAAQ,SAAS;MACjB,QAAQ;IACV,CAAC;EACH;AACF;AAqCK,IAAM,4BACX,CAAI,mBACJ,OAAO,EAAE,UAAU,KAAK,kBAAkB,MAAM;AAC9C,QAAM,eAAe,MAAM,SAAS,KAAK;AAEzC,QAAM,eAAe,MAAM,cAAc;IACvC,MAAM;IACN,QAAQ;EACV,CAAC;AAED,QAAM,kBAAkB,uBAAuB,QAAQ;AAEvD,MAAI,CAAC,aAAa,SAAS;AACzB,UAAM,IAAIC,aAAa;MACrB,SAAS;MACT,OAAO,aAAa;MACpB,YAAY,SAAS;MACrB;MACA;MACA;MACA;IACF,CAAC;EACH;AAEA,SAAO;IACL;IACA,OAAO,aAAa;IACpB,UAAU,aAAa;EACzB;AACF;AE7JF,IAAM,eAAe,OAAO,IAAI,kBAAkB;ACNlD,IAAM,EAAE,MAAAC,OAAM,MAAAC,MAAK,IAAI;AAQhB,SAAS,0BAA0B,OAA2B;AACnE,MAAI,eAAe;AAInB,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,oBAAgB,OAAO,cAAc,MAAM,CAAC,CAAC;EAC/C;AAEA,SAAOC,MAAK,YAAY;AAC1B;ACrBO,SAAS,qBAAqB,KAAyB;AAC5D,SAAO,OAAA,OAAA,SAAA,IAAK,QAAQ,OAAO,EAAA;AAC7B;;;AUFA,SAAS,SAAS;AAQX,IAAM,+BAA+B,EAAE,OAAO;AAAA,EACnD,MAAM,EAAE,QAAQ,iCAA2B;AAAA,EAC3C,SAAS,EAAE,OAAO;AACpB,CAAC;AAKM,IAAM,iCAAiC,EAAE,OAAO;AAAA,EACrD,MAAM,EAAE,QAAQ,qCAA6B;AAAA,EAC7C,MAAM,EAAE,OAAO;AACjB,CAAC;AAKM,IAAM,4BAA4B,EAAE,OAAO;AAAA,EAChD,MAAM,EAAE,QAAQ,2BAAwB;AAAA,EACxC,MAAM,EAAE,OAAO,EAAE,QAAQ;AAAA,EACzB,WAAW,EAAE,OAAO,EAAE,QAAQ;AAChC,CAAC;AAIM,IAAM,6BAA6B,EAAE,MAAM;AAAA,EAChD;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAED,IAAM,oCAAoC,EAAE,MAAM;AAAA,EAChD;AAAA,EACA,EAAE,QAAQ,EAAE,UAAU,MAAM,IAAI;AAClC,CAAC;AAIM,IAAM,6BAA6B,EACvC,MAAM,iCAAiC,EACvC,UAAU,CAAC,MAAM,EAAE,OAAO,CAACC,OAAiC,CAAC,CAACA,EAAC,CAAC;;;AC9CnE,SAAS,KAAAC,UAAS;AAEX,IAAM,gCAAgCA,GAAE,OAAO;AAAA,EACpD,OAAOA,GAAE,OAAO;AAAA,IACd,MAAMA,GAAE,MAAM,CAACA,GAAE,OAAO,GAAGA,GAAE,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,IAAI;AAAA,IAC1E,SAASA,GAAE,OAAO;AAAA,IAClB,MAAMA,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,IAAI;AAAA,IACnD,OAAOA,GAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,IAAI;AAAA,EACnD,CAAC;AACH,CAAC;AAIM,IAAM,kCAAkC,+BAA+B;AAAA,EAC5E,aAAa;AAAA,EACb,gBAAgB,CAAC,SAA8B,KAAK,MAAM;AAC5D,CAAC;;;ACfM,SAAS,0BACd,cAC6B;AAC7B,UAAQ,cAAc;AAAA,IACpB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;;;AClBO,SAAS,MAAM;AAAA,EACpB;AAAA,EACA;AACF,GAGY;AACV,MAAI;AACF,UAAM,SAAS,IAAI,IAAI,GAAG;AAE1B,WAAO,UAAU,IAAI,OAAO,QAAwB;AAAA,EACtD,SAAS,GAAG;AACV,WAAO;AAAA,EACT;AACF;;;ACTO,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AACF,GAGG;AAXH,MAAAC,MAAA;AAYE,MAAI,KAAK,gBAAgB,YAAY;AACnC,UAAM,SAAS,0BAA0B,KAAK,IAAI;AAClD,WAAO,SAAQA,OAAA,KAAK,cAAL,OAAAA,OAAkB,gBAAgB,WAAW,MAAM;AAAA,EACpE;AAEA,QAAM,YAAY,KAAK,KAAK,SAAS;AAErC,MACE,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,WAAW,oBAAI,IAAI,CAAC,SAAS,QAAQ,CAAC;AAAA,EACxC,CAAC,GACD;AACA,WAAO;AAAA,EACT;AAEA,SAAO,UAAU,WAAW,OAAO,IAC/B,YACA,SAAQ,UAAK,cAAL,YAAkB,gBAAgB,WAAW,SAAS;AACpE;;;ACXA,SAAS,gBACP,kBACoC;AAtBtC,MAAAC,MAAA;AAuBE,QAAM,YAAY,qDAAkB;AACpC,QAAM,aAAa,qDAAkB;AAGrC,UAAQ,YAAAA,OAAA,yCAAY,iBAAZ,OAAAA,OACN,yCAAY,kBADN,YAEN,uCAAW,iBAFL,YAGN,uCAAW;AACf;AAEO,SAAS,gCACd,QACgC;AAnClC,MAAAA,MAAA;AAoCE,QAAM,WAA2C,CAAC;AAClD,aAAW,EAAE,MAAM,SAAS,gBAAgB,KAAK,QAAQ;AACvD,YAAQ,MAAM;AAAA,MACZ,KAAK,UAAU;AACb,iBAAS,KAAK;AAAA,UACZ,MAAM;AAAA,UACN;AAAA,UACA,eAAe,gBAAgB,eAAe;AAAA,QAChD,CAAC;AACD;AAAA,MACF;AAAA,MAEA,KAAK,QAAQ;AACX,YAAI,QAAQ,WAAW,OAAKA,OAAA,QAAQ,CAAC,MAAT,gBAAAA,KAAY,UAAS,QAAQ;AACvD,gBAAM,gBACJ,qBAAgB,eAAe,MAA/B,YACA,gBAAgB,QAAQ,CAAC,EAAE,eAAe;AAC5C,gBAAM,0BACJ,eACI;AAAA,YACE;AAAA,cACE,MAAM;AAAA,cACN,MAAM,QAAQ,CAAC,EAAE;AAAA,cACjB,eAAe;AAAA,YACjB;AAAA,UACF,IACA,QAAQ,CAAC,EAAE;AACjB,mBAAS,KAAK;AAAA,YACZ,MAAM;AAAA,YACN,SAAS;AAAA,UACX,CAAC;AACD;AAAA,QACF;AAGA,cAAM,sBAAsB,gBAAgB,eAAe;AAC3D,cAAM,eAA4C,QAAQ;AAAA,UACxD,CAAC,SAA4D;AAzEvE,gBAAAA,MAAAC,KAAAC,KAAA;AA0EY,kBAAM,gBACJF,OAAA,gBAAgB,KAAK,eAAe,MAApC,OAAAA,OAAyC;AAE3C,oBAAQ,KAAK,MAAM;AAAA,cACjB,KAAK;AACH,uBAAO;AAAA,kBACL,MAAM;AAAA,kBACN,MAAM,KAAK;AAAA;AAAA,kBAEX,eAAe;AAAA,gBACjB;AAAA,cACF,KAAK,QAAQ;AACX,qBAAIC,MAAA,KAAK,cAAL,gBAAAA,IAAgB,WAAW,WAAW;AACxC,wBAAM,MAAM,WAAW;AAAA,oBACrB;AAAA,oBACA,kBAAkB;AAAA,kBACpB,CAAC;AACD,yBAAO;AAAA,oBACL,MAAM;AAAA,oBACN,WAAW;AAAA,sBACT;AAAA,oBACF;AAAA;AAAA,oBAEA,eAAe;AAAA,kBACjB;AAAA,gBACF;AAEA,sBAAM,WAAW;AAAA,mBACf,kBAAAC,MAAA,KAAK,oBAAL,gBAAAA,IAAsB,eAAtB,mBAAkC,aAAlC,YACE,KAAK,aADP,YAEE;AAAA,gBACJ;AAEA,sBAAM,WAAW,WAAW;AAAA,kBAC1B;AAAA,kBACA,kBAAkB;AAAA,gBACpB,CAAC;AAED,oBACE,MAAM;AAAA,kBACJ,KAAK;AAAA,kBACL,WAAW,oBAAI,IAAI,CAAC,SAAS,QAAQ,CAAC;AAAA,gBACxC,CAAC,GACD;AACA,yBAAO;AAAA,oBACL,MAAM;AAAA,oBACN,MAAM;AAAA,sBACJ,UAAU;AAAA,sBACV,WAAW;AAAA,oBACb;AAAA,kBACF;AAAA,gBACF;AAEA,uBAAO;AAAA,kBACL,MAAM;AAAA,kBACN,MAAM;AAAA,oBACJ,UAAU;AAAA,oBACV,WAAW;AAAA,kBACb;AAAA,kBACA,eAAe;AAAA,gBACjB;AAAA,cACF;AAAA,cACA,SAAS;AACP,uBAAO;AAAA,kBACL,MAAM;AAAA,kBACN,MAAM;AAAA,kBACN,eAAe;AAAA,gBACjB;AAAA,cACF;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAGA,iBAAS,KAAK;AAAA,UACZ,MAAM;AAAA,UACN,SAAS;AAAA,QACX,CAAC;AAED;AAAA,MACF;AAAA,MAEA,KAAK,aAAa;AAChB,YAAI,OAAO;AACX,YAAI,YAAY;AAChB,cAAM,mBAA2C,CAAC;AAClD,cAAM,YAID,CAAC;AAEN,mBAAW,QAAQ,SAAS;AAC1B,kBAAQ,KAAK,MAAM;AAAA,YACjB,KAAK,QAAQ;AACX,sBAAQ,KAAK;AACb;AAAA,YACF;AAAA,YACA,KAAK,aAAa;AAChB,wBAAU,KAAK;AAAA,gBACb,IAAI,KAAK;AAAA,gBACT,MAAM;AAAA,gBACN,UAAU;AAAA,kBACR,MAAM,KAAK;AAAA,kBACX,WAAW,KAAK,UAAU,KAAK,KAAK;AAAA,gBACtC;AAAA,cACF,CAAC;AACD;AAAA,YACF;AAAA,YACA,KAAK,aAAa;AAChB,2BAAa,KAAK;AAClB,+BAAiB,KAAK;AAAA,gBACpB;AAAA,gBACA,MAAM,KAAK;AAAA,cACb,CAAC;AAED;AAAA,YACF;AAAA,YAEA,KAAK;AACH;AAAA,YACF,SAAS;AACP;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAEA,iBAAS,KAAK;AAAA,UACZ,MAAM;AAAA,UACN,SAAS;AAAA,UACT,YAAY,UAAU,SAAS,IAAI,YAAY;AAAA,UAC/C,WAAW,aAAa;AAAA,UACxB,mBACE,iBAAiB,SAAS,IAAI,mBAAmB;AAAA,UACnD,eAAe,gBAAgB,eAAe;AAAA,QAChD,CAAC;AAED;AAAA,MACF;AAAA,MAEA,KAAK,QAAQ;AACX,mBAAW,gBAAgB,SAAS;AAClC,gBAAMC,WAAU,qBAAqB,YAAY;AAEjD,mBAAS,KAAK;AAAA,YACZ,MAAM;AAAA,YACN,cAAc,aAAa;AAAA,YAC3B,SAAAA;AAAA,YACA,gBACE,qBAAgB,eAAe,MAA/B,YACA,gBAAgB,aAAa,eAAe;AAAA,UAChD,CAAC;AAAA,QACH;AACA;AAAA,MACF;AAAA,MAEA,SAAS;AACP;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;AAEA,SAAS,qBAAqB,OAA8C;AAC1E,SAAO,MAAM,OAAO,SAAS,SACzB,MAAM,OAAO,QACb,KAAK,UAAU,MAAM,OAAO,KAAK;AACvC;;;ACjPA,SAAS,KAAAC,UAAS;AAElB,IAAM,iCAAiCA,GAAE,MAAM;AAAA,EAC7CA,GAAE,QAAQ,MAAM;AAAA,EAChBA,GAAE,QAAQ,MAAM;AAAA,EAChBA,GAAE,QAAQ,UAAU;AAAA,EACpBA,GAAE,OAAO;AAAA,IACP,MAAMA,GAAE,QAAQ,UAAU;AAAA,IAC1B,UAAUA,GAAE,OAAO;AAAA,MACjB,MAAMA,GAAE,OAAO;AAAA,IACjB,CAAC;AAAA,EACH,CAAC;AACH,CAAC;AAIM,SAAS,4BACd,YAC0B;AAC1B,UAAQ,WAAW,MAAM;AAAA,IACvB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO,WAAW;AAAA,IACpB,KAAK,QAAQ;AACX,aAAO;AAAA,QACL,MAAM;AAAA,QACN,UAAU,EAAE,MAAM,WAAW,SAAS;AAAA,MACxC;AAAA,IACF;AAAA,IACA,SAAS;AACP;AACA,YAAM,IAAI,MAAM,6BAA6B,UAAU,EAAE;AAAA,IAC3D;AAAA,EACF;AACF;;;ACrCA,SAAS,KAAAC,UAAS;AAIlB,IAAM,6CAA6CC,GAAE,OAAO;AAAA,EAC1D,IAAIA,GAAE,OAAO,EAAE,SAAS;AAAA,EACxB,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,EAC3B,UAAUA,GAAE,OAAO,EAAE,SAAS;AAAA,EAC9B,OAAOA,GACJ,OAAO;AAAA,IACN,eAAeA,GAAE,OAAO;AAAA,IACxB,uBAAuBA,GACpB,OAAO;AAAA,MACN,eAAeA,GAAE,OAAO;AAAA,IAC1B,CAAC,EACA,QAAQ;AAAA,IACX,mBAAmBA,GAAE,OAAO;AAAA,IAC5B,2BAA2BA,GACxB,OAAO;AAAA,MACN,kBAAkBA,GAAE,OAAO;AAAA,IAC7B,CAAC,EACA,QAAQ;AAAA,IACX,cAAcA,GAAE,OAAO;AAAA,IACvB,MAAMA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC1B,cAAcA,GACX,OAAO;AAAA,MACN,yBAAyBA,GAAE,OAAO,EAAE,QAAQ;AAAA,IAC9C,CAAC,EACA,QAAQ;AAAA,EACb,CAAC,EACA,QAAQ;AACb,CAAC;AAGM,IAAM,kDACX,2CAA2C,OAAO;AAAA,EAChD,SAASA,GAAE;AAAA,IACTA,GAAE,OAAO;AAAA,MACP,SAASA,GAAE,OAAO;AAAA,QAChB,MAAMA,GAAE,QAAQ,WAAW;AAAA,QAC3B,SAASA,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,QACxC,WAAWA,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA;AAAA;AAAA,QAI1C,YAAYA,GACT;AAAA,UACCA,GAAE,OAAO;AAAA,YACP,IAAIA,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,YACnC,MAAMA,GAAE,QAAQ,UAAU;AAAA,YAC1B,UAAUA,GAAE,OAAO;AAAA,cACjB,MAAMA,GAAE,OAAO;AAAA,cACf,WAAWA,GAAE,OAAO;AAAA,YACtB,CAAC;AAAA,UACH,CAAC;AAAA,QACH,EACC,SAAS;AAAA,QAEZ,aAAaA,GACV;AAAA,UACCA,GAAE,OAAO;AAAA,YACP,MAAMA,GAAE,KAAK,CAAC,cAAc,CAAC;AAAA,YAC7B,cAAcA,GAAE,OAAO;AAAA,cACrB,WAAWA,GAAE,OAAO;AAAA,cACpB,aAAaA,GAAE,OAAO;AAAA,cACtB,OAAOA,GAAE,OAAO;AAAA,cAChB,KAAKA,GAAE,OAAO;AAAA,cACd,SAASA,GAAE,OAAO,EAAE,SAAS;AAAA,YAC/B,CAAC;AAAA,UACH,CAAC;AAAA,QACH,EACC,QAAQ;AAAA,MACb,CAAC;AAAA,MACD,OAAOA,GAAE,OAAO,EAAE,QAAQ;AAAA,MAC1B,UAAUA,GACP,OAAO;AAAA,QACN,SAASA,GACN;AAAA,UACCA,GAAE,OAAO;AAAA,YACP,OAAOA,GAAE,OAAO;AAAA,YAChB,SAASA,GAAE,OAAO;AAAA,YAClB,cAAcA,GAAE;AAAA,cACdA,GAAE,OAAO;AAAA,gBACP,OAAOA,GAAE,OAAO;AAAA,gBAChB,SAASA,GAAE,OAAO;AAAA,cACpB,CAAC;AAAA,YACH;AAAA,UACF,CAAC;AAAA,QACH,EACC,SAAS;AAAA,MACd,CAAC,EACA,SAAS,EACT,SAAS;AAAA,MACZ,eAAeA,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,IAChD,CAAC;AAAA,EACH;AACF,CAAC;AAGI,IAAM,4CAA4CA,GAAE,MAAM;AAAA,EAC/D,2CAA2C,OAAO;AAAA,IAChD,SAASA,GAAE;AAAA,MACTA,GAAE,OAAO;AAAA,QACP,OAAOA,GACJ,OAAO;AAAA,UACN,MAAMA,GAAE,KAAK,CAAC,WAAW,CAAC,EAAE,SAAS;AAAA,UACrC,SAASA,GAAE,OAAO,EAAE,QAAQ;AAAA,UAC5B,WAAWA,GAAE,OAAO,EAAE,QAAQ,EAAE,SAAS;AAAA,UACzC,mBAAmB,2BAA2B,QAAQ;AAAA,UACtD,YAAYA,GACT;AAAA,YACCA,GAAE,OAAO;AAAA,cACP,OAAOA,GAAE,OAAO,EAAE,QAAQ;AAAA,cAC1B,IAAIA,GAAE,OAAO,EAAE,QAAQ;AAAA,cACvB,MAAMA,GAAE,QAAQ,UAAU,EAAE,SAAS;AAAA,cACrC,UAAUA,GAAE,OAAO;AAAA,gBACjB,MAAMA,GAAE,OAAO,EAAE,QAAQ;AAAA,gBACzB,WAAWA,GAAE,OAAO,EAAE,QAAQ;AAAA,cAChC,CAAC;AAAA,YACH,CAAC;AAAA,UACH,EACC,QAAQ;AAAA,UAEX,aAAaA,GACV;AAAA,YACCA,GAAE,OAAO;AAAA,cACP,MAAMA,GAAE,KAAK,CAAC,cAAc,CAAC;AAAA,cAC7B,cAAcA,GAAE,OAAO;AAAA,gBACrB,WAAWA,GAAE,OAAO;AAAA,gBACpB,aAAaA,GAAE,OAAO;AAAA,gBACtB,OAAOA,GAAE,OAAO;AAAA,gBAChB,KAAKA,GAAE,OAAO;AAAA,gBACd,SAASA,GAAE,OAAO,EAAE,SAAS;AAAA,cAC/B,CAAC;AAAA,YACH,CAAC;AAAA,UACH,EACC,QAAQ;AAAA,QACb,CAAC,EACA,QAAQ;AAAA,QACX,UAAUA,GACP,OAAO;AAAA,UACN,SAASA,GACN;AAAA,YACCA,GAAE,OAAO;AAAA,cACP,OAAOA,GAAE,OAAO;AAAA,cAChB,SAASA,GAAE,OAAO;AAAA,cAClB,cAAcA,GAAE;AAAA,gBACdA,GAAE,OAAO;AAAA,kBACP,OAAOA,GAAE,OAAO;AAAA,kBAChB,SAASA,GAAE,OAAO;AAAA,gBACpB,CAAC;AAAA,cACH;AAAA,YACF,CAAC;AAAA,UACH,EACC,SAAS;AAAA,QACd,CAAC,EACA,QAAQ;AAAA,QACX,eAAeA,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,QAC9C,OAAOA,GAAE,OAAO,EAAE,QAAQ;AAAA,MAC5B,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AAAA,EACD;AACF,CAAC;;;ACnHM,IAAM,8BAAN,MAA6D;AAAA,EAkBlE,YACE,SACA,UACAC,SACA;AArBF,SAAS,uBAAuB;AAChC,SAAS,WAAW;AACpB,SAAS,8BAA8B;AAGvC,SAAS,gBAA0C;AAAA,MACjD,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA;AAAA,MAEA,iBAAiB,CAAC,uBAAuB,iBAAiB;AAAA,IAC5D;AAUE,SAAK,UAAU;AACf,SAAK,WAAW;AAChB,SAAK,SAASA;AAAA,EAChB;AAAA,EAEQ,QAAQ;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAA+B;AAzFjC,QAAAC;AA0FI,UAAM,WAAW;AAAA;AAAA,MAEf,OAAO,KAAK;AAAA,MACZ,QAAQ,KAAK,SAAS;AAAA;AAAA,MAGtB,YAAY,KAAK,SAAS;AAAA,MAC1B,UACE,KAAK,SAAS,aAAa,QAC3B,OAAO,KAAK,SAAS,aAAa,WAC9B,OACA;AAAA,MACN,cACE,OAAO,KAAK,SAAS,aAAa,WAC9B,KAAK,SAAS,WACd,OAAO,KAAK,SAAS,aAAa,YAChC,KAAK,SAAS,WACZ,IACA,SACF;AAAA,MACR,MAAM,KAAK,SAAS;AAAA,MACpB,qBAAqB,KAAK,SAAS;AAAA;AAAA,MAGnC,YAAY;AAAA,MACZ;AAAA,MACA,OAAO;AAAA,MACP,mBAAmB;AAAA,MACnB,kBAAkB;AAAA,MAClB;AAAA,MAEA,MAAM;AAAA,MACN,iBAAiB;AAAA,MACjB,OAAO;AAAA;AAAA,MAGP,UAAU,gCAAgC,MAAM;AAAA;AAAA,MAGhD,mBAAmB,KAAK,SAAS;AAAA,MACjC,WAAW,KAAK,SAAS;AAAA,MACzB,OAAO,KAAK,SAAS;AAAA,OAYlB,KAAK,OAAO,YACZ,KAAK,SAAS;AAGnB,SAAI,iDAAgB,UAAS,UAAU,eAAe,UAAU,MAAM;AACpE,aAAO,iCACF,WADE;AAAA,QAEL,iBAAiB;AAAA,UACf,MAAM;AAAA,UACN,aAAa;AAAA,YACX,QAAQ,eAAe;AAAA,YACvB,QAAQ;AAAA,YACR,OAAMA,OAAA,eAAe,SAAf,OAAAA,OAAuB;AAAA,aACzB,eAAe,eAAe;AAAA,YAChC,aAAa,eAAe;AAAA,UAC9B;AAAA,QAEJ;AAAA,MACF;AAAA,IACF;AAEA,QAAI,SAAS,MAAM,SAAS,GAAG;AAE7B,YAAM,cAAc,MACjB,OAAO,UAAQ,KAAK,SAAS,UAAU,EACvC,IAAI,WAAS;AAAA,QACZ,MAAM;AAAA,QACN,UAAU;AAAA,UACR,MAAM,KAAK;AAAA,UACX,aAAa,KAAK;AAAA,UAClB,YAAY,KAAK;AAAA,QACnB;AAAA,MACF,EAAE;AAEJ,aAAO,iCACF,WADE;AAAA,QAEL,OAAO;AAAA,QACP,aAAa,aACT,4BAA4B,UAAU,IACtC;AAAA,MACN;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,WAAW,SAgBd;AA7ML,QAAAA,MAAA;AA8MI,UAAM,kBAAkB,QAAQ,mBAAmB,CAAC;AACpD,UAAM,oBAAoB,gBAAgB,cAAc,CAAC;AAEzD,UAAM,OAAO,kCACR,KAAK,QAAQ,OAAO,IACpB;AAGL,UAAM,EAAE,OAAO,UAAU,gBAAgB,IAAI,MAAM,cAAc;AAAA,MAC/D,KAAK,KAAK,OAAO,IAAI;AAAA,QACnB,MAAM;AAAA,QACN,SAAS,KAAK;AAAA,MAChB,CAAC;AAAA,MACD,SAAS,eAAe,KAAK,OAAO,QAAQ,GAAG,QAAQ,OAAO;AAAA,MAC9D,MAAM;AAAA,MACN,uBAAuB;AAAA,MACvB,2BAA2B;AAAA,QACzB;AAAA,MACF;AAAA,MACA,aAAa,QAAQ;AAAA,MACrB,OAAO,KAAK,OAAO;AAAA,IACrB,CAAC;AAED,UAAM,SAAS,SAAS,QAAQ,CAAC;AAEjC,QAAI,CAAC,QAAQ;AACX,YAAM,IAAI,MAAM,uBAAuB;AAAA,IACzC;AAGA,UAAM,YAAkC,SAAS,QAC7C;AAAA,MACE,cAAaA,OAAA,SAAS,MAAM,kBAAf,OAAAA,OAAgC;AAAA,MAC7C,eAAc,cAAS,MAAM,sBAAf,YAAoC;AAAA,MAClD,eACG,cAAS,MAAM,kBAAf,YAAgC,OAChC,cAAS,MAAM,sBAAf,YAAoC;AAAA,MACvC,kBACE,oBAAS,MAAM,8BAAf,mBAA0C,qBAA1C,YAA8D;AAAA,MAChE,oBACE,oBAAS,MAAM,0BAAf,mBAAsC,kBAAtC,YAAuD;AAAA,IAC3D,IACA;AAAA,MACE,aAAa;AAAA,MACb,cAAc;AAAA,MACd,aAAa;AAAA,MACb,iBAAiB;AAAA,MACjB,mBAAmB;AAAA,IACrB;AAKJ,UAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MA0CJ,OAAO,QAAQ,YACX;AAAA,QACE;AAAA,UACE,MAAM;AAAA,UACN,MAAM,OAAO,QAAQ;AAAA,QACvB;AAAA,MACF,IACA,CAAC;AAAA;AAEP,UAAM,UAAyC,CAAC;AAGhD,YAAQ,KAAK,GAAG,SAAS;AAEzB,QAAI,OAAO,QAAQ,SAAS;AAC1B,cAAQ,KAAK;AAAA,QACX,MAAM;AAAA,QACN,MAAM,OAAO,QAAQ;AAAA,MACvB,CAAC;AAAA,IACH;AAEA,QAAI,OAAO,QAAQ,YAAY;AAC7B,iBAAW,YAAY,OAAO,QAAQ,YAAY;AAChD,gBAAQ,KAAK;AAAA,UACX,MAAM;AAAA,UACN,aAAY,cAAS,OAAT,YAAe,WAAW;AAAA,UACtC,UAAU,SAAS,SAAS;AAAA,UAC5B,OAAO,SAAS,SAAS;AAAA,QAC3B,CAAC;AAAA,MACH;AAAA,IACF;AAEA,QAAI,OAAO,QAAQ,aAAa;AAC9B,iBAAW,cAAc,OAAO,QAAQ,aAAa;AACnD,YAAI,WAAW,SAAS,gBAAgB;AACtC,kBAAQ,KAAK;AAAA,YACX,MAAM;AAAA,YACN,YAAY;AAAA,YACZ,IAAI,WAAW,aAAa;AAAA,YAC5B,KAAK,WAAW,aAAa;AAAA,YAC7B,OAAO,WAAW,aAAa;AAAA,YAC/B,kBAAkB;AAAA,cAChB,YAAY;AAAA,gBACV,SAAS,WAAW,aAAa,WAAW;AAAA,cAC9C;AAAA,YACF;AAAA,UACF,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAEA,WAAO;AAAA,MACL;AAAA,MACA,cAAc,0BAA0B,OAAO,aAAa;AAAA,MAC5D,OAAO;AAAA,MACP,UAAU,CAAC;AAAA,MACX,kBAAkB;AAAA,QAChB,YAAY;AAAA,UACV,WAAU,cAAS,aAAT,YAAqB;AAAA,UAC/B,OAAO;AAAA,YACL,eAAc,eAAU,gBAAV,YAAyB;AAAA,YACvC,mBAAkB,eAAU,iBAAV,YAA0B;AAAA,YAC5C,cAAa,eAAU,gBAAV,YAAyB;AAAA,YACtC,OAAM,cAAS,UAAT,mBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAexB;AAAA,QACF;AAAA,MACF;AAAA,MACA,SAAS,EAAE,MAAM,KAAK;AAAA,MACtB,UAAU;AAAA,QACR,IAAI,SAAS;AAAA,QACb,SAAS,SAAS;AAAA,QAClB,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAM,SAAS,SAQZ;AA/YL,QAAAA;AAgZI,UAAM,kBAAkB,QAAQ,mBAAmB,CAAC;AACpD,UAAM,oBAAoB,gBAAgB,cAAc,CAAC;AAEzD,UAAM,OAAO,kCACR,KAAK,QAAQ,OAAO,IACpB;AAGL,UAAM,EAAE,OAAO,UAAU,gBAAgB,IAAI,MAAM,cAAc;AAAA,MAC/D,KAAK,KAAK,OAAO,IAAI;AAAA,QACnB,MAAM;AAAA,QACN,SAAS,KAAK;AAAA,MAChB,CAAC;AAAA,MACD,SAAS,eAAe,KAAK,OAAO,QAAQ,GAAG,QAAQ,OAAO;AAAA,MAC9D,MAAM,iCACD,OADC;AAAA,QAEJ,QAAQ;AAAA;AAAA,QAGR,gBACE,KAAK,OAAO,kBAAkB,WAC1B;AAAA,UACE,eAAe;AAAA,aAEXA,OAAA,KAAK,SAAS,UAAd,gBAAAA,KAAqB,WACrB,EAAE,eAAe,KAAK,IACtB,CAAC,KAEP;AAAA,MACR;AAAA,MACA,uBAAuB;AAAA,MACvB,2BAA2B;AAAA,QACzB;AAAA,MACF;AAAA,MACA,aAAa,QAAQ;AAAA,MACrB,OAAO,KAAK,OAAO;AAAA,IACrB,CAAC;AAED,UAAM,YASD,CAAC;AAEN,QAAI,eAA6B;AACjC,UAAM,QAA8B;AAAA,MAClC,aAAa,OAAO;AAAA,MACpB,cAAc,OAAO;AAAA,MACrB,aAAa,OAAO;AAAA,MACpB,iBAAiB,OAAO;AAAA,MACxB,mBAAmB,OAAO;AAAA,IAC5B;AAGA,UAAM,kBAAsD,CAAC;AAE7D,QAAI,cAAc;AAClB,QAAI,mBAAmB;AACvB,QAAI;AACJ,QAAI;AACJ,QAAI;AACJ,QAAI;AAEJ,WAAO;AAAA,MACL,QAAQ,SAAS;AAAA,QACf,IAAI,gBAKF;AAAA,UACA,UAAU,OAAO,YAAY;AA5dvC,gBAAAA,MAAA;AA8dY,gBAAI,CAAC,MAAM,SAAS;AAClB,6BAAe;AACf,yBAAW,QAAQ,EAAE,MAAM,SAAS,OAAO,MAAM,MAAM,CAAC;AACxD;AAAA,YACF;AAEA,kBAAM,QAAQ,MAAM;AAGpB,gBAAI,WAAW,OAAO;AACpB,6BAAe;AACf,yBAAW,QAAQ,EAAE,MAAM,SAAS,OAAO,MAAM,MAAM,CAAC;AACxD;AAAA,YACF;AAEA,gBAAI,MAAM,UAAU;AAClB,yBAAW,MAAM;AAAA,YACnB;AAEA,gBAAI,MAAM,IAAI;AACZ,qCAAuB,MAAM;AAC7B,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,IAAI,MAAM;AAAA,cACZ,CAAC;AAAA,YACH;AAEA,gBAAI,MAAM,OAAO;AACf,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,SAAS,MAAM;AAAA,cACjB,CAAC;AAAA,YACH;AAEA,gBAAI,MAAM,SAAS,MAAM;AACvB,oBAAM,cAAc,MAAM,MAAM;AAChC,oBAAM,eAAe,MAAM,MAAM;AACjC,oBAAM,cACJ,MAAM,MAAM,gBAAgB,MAAM,MAAM;AAG1C,8BAAgB,eAAe,MAAM,MAAM;AAa3C,8BAAgB,mBAAmB,MAAM,MAAM;AAa/C,8BAAgB,OAAO,MAAM,MAAM;AACnC,8BAAgB,cAAc,MAAM,MAAM;AAAA,YAC5C;AAEA,kBAAM,SAAS,MAAM,QAAQ,CAAC;AAE9B,iBAAI,iCAAQ,kBAAiB,MAAM;AACjC,6BAAe,0BAA0B,OAAO,aAAa;AAAA,YAC/D;AAEA,iBAAI,iCAAQ,UAAS,MAAM;AACzB;AAAA,YACF;AAEA,kBAAM,QAAQ,OAAO;AAErB,kBAAM,qBAAqB,CAAC,cAAsB;AAChD,kBAAI,CAAC,kBAAkB;AACrB,8BAAc,wBAAwB,WAAW;AACjD,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,IAAI;AAAA,gBACN,CAAC;AACD,mCAAmB;AAAA,cACrB;AACA,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,OAAO;AAAA,gBACP,IAAI,eAAe,WAAW;AAAA,cAChC,CAAC;AAAA,YACH;AAEA,gBAAI,MAAM,qBAAqB,MAAM,kBAAkB,SAAS,GAAG;AACjE,yBAAW,UAAU,MAAM,mBAAmB;AAC5C,wBAAQ,OAAO,MAAM;AAAA,kBACnB,kCAA+B;AAC7B,wBAAI,OAAO,MAAM;AACf,yCAAmB,OAAO,IAAI;AAAA,oBAChC;AACA;AAAA,kBACF;AAAA,kBACA,4CAAoC;AAClC,wBAAI,OAAO,MAAM;AACf,yCAAmB,YAAY;AAAA,oBACjC;AACA;AAAA,kBACF;AAAA,kBACA,wCAAkC;AAChC,wBAAI,OAAO,SAAS;AAClB,yCAAmB,OAAO,OAAO;AAAA,oBACnC;AACA;AAAA,kBACF;AAAA,kBACA,SAAS;AACP;AACA;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,YACF,WAAW,MAAM,WAAW;AAC1B,iCAAmB,MAAM,SAAS;AAAA,YACpC;AAEA,gBAAI,MAAM,SAAS;AAGjB,kBAAI,oBAAoB,CAAC,aAAa;AACpC,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,IAAI,eAAe,WAAW;AAAA,gBAChC,CAAC;AACD,mCAAmB;AAAA,cACrB;AAEA,kBAAI,CAAC,aAAa;AAChB,yBAAS,wBAAwB,WAAW;AAC5C,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,IAAI;AAAA,gBACN,CAAC;AACD,8BAAc;AAAA,cAChB;AACA,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,OAAO,MAAM;AAAA,gBACb,IAAI,UAAU,WAAW;AAAA,cAC3B,CAAC;AAAA,YACH;AAEA,gBAAI,MAAM,aAAa;AACrB,yBAAW,cAAc,MAAM,aAAa;AAC1C,oBAAI,WAAW,SAAS,gBAAgB;AACtC,6BAAW,QAAQ;AAAA,oBACjB,MAAM;AAAA,oBACN,YAAY;AAAA,oBACZ,IAAI,WAAW,aAAa;AAAA,oBAC5B,KAAK,WAAW,aAAa;AAAA,oBAC7B,OAAO,WAAW,aAAa;AAAA,oBAC/B,kBAAkB;AAAA,sBAChB,YAAY;AAAA,wBACV,SAAS,WAAW,aAAa,WAAW;AAAA,sBAC9C;AAAA,oBACF;AAAA,kBACF,CAAC;AAAA,gBACH;AAAA,cACF;AAAA,YACF;AAEA,gBAAI,MAAM,cAAc,MAAM;AAC5B,yBAAW,iBAAiB,MAAM,YAAY;AAC5C,sBAAMC,UAAQD,OAAA,cAAc,UAAd,OAAAA,OAAuB,UAAU,SAAS;AAGxD,oBAAI,UAAUC,MAAK,KAAK,MAAM;AAC5B,sBAAI,cAAc,SAAS,YAAY;AACrC,0BAAM,IAAI,yBAAyB;AAAA,sBACjC,MAAM;AAAA,sBACN,SAAS;AAAA,oBACX,CAAC;AAAA,kBACH;AAEA,sBAAI,cAAc,MAAM,MAAM;AAC5B,0BAAM,IAAI,yBAAyB;AAAA,sBACjC,MAAM;AAAA,sBACN,SAAS;AAAA,oBACX,CAAC;AAAA,kBACH;AAEA,wBAAI,mBAAc,aAAd,mBAAwB,SAAQ,MAAM;AACxC,0BAAM,IAAI,yBAAyB;AAAA,sBACjC,MAAM;AAAA,sBACN,SAAS;AAAA,oBACX,CAAC;AAAA,kBACH;AAEA,4BAAUA,MAAK,IAAI;AAAA,oBACjB,IAAI,cAAc;AAAA,oBAClB,MAAM;AAAA,oBACN,UAAU;AAAA,sBACR,MAAM,cAAc,SAAS;AAAA,sBAC7B,YAAW,mBAAc,SAAS,cAAvB,YAAoC;AAAA,oBACjD;AAAA,oBACA,cAAc;AAAA,oBACd,MAAM;AAAA,kBACR;AAEA,wBAAMC,YAAW,UAAUD,MAAK;AAEhC,sBAAIC,aAAY,MAAM;AACpB,0BAAM,IAAI,MAAM,sBAAsB;AAAA,kBACxC;AAGA,wBACE,KAAAA,UAAS,aAAT,mBAAmB,SAAQ,UAC3B,KAAAA,UAAS,aAAT,mBAAmB,cAAa,QAChC,eAAeA,UAAS,SAAS,SAAS,GAC1C;AACA,oBAAAA,UAAS,eAAe;AAExB,+BAAW,QAAQ;AAAA,sBACjB,MAAM;AAAA,sBACN,IAAIA,UAAS;AAAA,sBACb,UAAUA,UAAS,SAAS;AAAA,oBAC9B,CAAC;AAGD,+BAAW,QAAQ;AAAA,sBACjB,MAAM;AAAA,sBACN,IAAIA,UAAS;AAAA,sBACb,OAAOA,UAAS,SAAS;AAAA,oBAC3B,CAAC;AAED,+BAAW,QAAQ;AAAA,sBACjB,MAAM;AAAA,sBACN,IAAIA,UAAS;AAAA,oBACf,CAAC;AAGD,+BAAW,QAAQ;AAAA,sBACjB,MAAM;AAAA,sBACN,YAAYA,UAAS;AAAA,sBACrB,UAAUA,UAAS,SAAS;AAAA,sBAC5B,OAAOA,UAAS,SAAS;AAAA,oBAC3B,CAAC;AAED,oBAAAA,UAAS,OAAO;AAAA,kBAClB;AAEA;AAAA,gBACF;AAGA,sBAAM,WAAW,UAAUD,MAAK;AAEhC,oBAAI,YAAY,MAAM;AACpB,wBAAM,IAAI,MAAM,sBAAsB;AAAA,gBACxC;AAEA,oBAAI,CAAC,SAAS,cAAc;AAC1B,2BAAS,eAAe;AACxB,6BAAW,QAAQ;AAAA,oBACjB,MAAM;AAAA,oBACN,IAAI,SAAS;AAAA,oBACb,UAAU,SAAS,SAAS;AAAA,kBAC9B,CAAC;AAAA,gBACH;AAEA,sBAAI,mBAAc,aAAd,mBAAwB,cAAa,MAAM;AAC7C,2BAAS,SAAS,cAChB,yBAAc,aAAd,mBAAwB,cAAxB,YAAqC;AAAA,gBACzC;AAGA,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,IAAI,SAAS;AAAA,kBACb,QAAO,mBAAc,SAAS,cAAvB,YAAoC;AAAA,gBAC7C,CAAC;AAGD,sBACE,cAAS,aAAT,mBAAmB,SAAQ,UAC3B,cAAS,aAAT,mBAAmB,cAAa,QAChC,eAAe,SAAS,SAAS,SAAS,GAC1C;AACA,6BAAW,QAAQ;AAAA,oBACjB,MAAM;AAAA,oBACN,aAAY,cAAS,OAAT,YAAe,WAAW;AAAA,oBACtC,UAAU,SAAS,SAAS;AAAA,oBAC5B,OAAO,SAAS,SAAS;AAAA,kBAC3B,CAAC;AAED,2BAAS,OAAO;AAAA,gBAClB;AAAA,cACF;AAAA,YACF;AAAA,UACF;AAAA,UAEA,MAAM,YAAY;AAhxB5B,gBAAAD;AAkxBY,gBAAI,iBAAiB,cAAc;AACjC,yBAAW,YAAY,WAAW;AAChC,oBAAI,YAAY,CAAC,SAAS,MAAM;AAC9B,6BAAW,QAAQ;AAAA,oBACjB,MAAM;AAAA,oBACN,aAAYA,OAAA,SAAS,OAAT,OAAAA,OAAe,WAAW;AAAA,oBACtC,UAAU,SAAS,SAAS;AAAA;AAAA,oBAE5B,OAAO,eAAe,SAAS,SAAS,SAAS,IAC7C,SAAS,SAAS,YAClB;AAAA,kBACN,CAAC;AACD,2BAAS,OAAO;AAAA,gBAClB;AAAA,cACF;AAAA,YACF;AAGA,gBAAI,kBAAkB;AACpB,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,IAAI,eAAe,WAAW;AAAA,cAChC,CAAC;AAAA,YACH;AACA,gBAAI,aAAa;AACf,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,IAAI,UAAU,WAAW;AAAA,cAC3B,CAAC;AAAA,YACH;AAEA,kBAAM,qBAGF;AAAA,cACF,OAAO;AAAA,YACT;AAGA,gBAAI,aAAa,QAAW;AAC1B,iCAAmB,WAAW;AAAA,YAChC;AAEA,uBAAW,QAAQ;AAAA,cACjB,MAAM;AAAA,cACN;AAAA,cACA;AAAA,cACA,kBAAkB;AAAA,gBAChB,YAAY;AAAA,cACd;AAAA,YACF,CAAC;AAAA,UACH;AAAA,QACF,CAAC;AAAA,MACH;AAAA,MACA,UAAU,CAAC;AAAA,MACX,SAAS,EAAE,MAAM,KAAK;AAAA,MACtB,UAAU,EAAE,SAAS,gBAAgB;AAAA,IACvC;AAAA,EACF;AACF;;;AC/zBO,SAAS,oCAAoC;AAAA,EAClD;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,YAAY;AACd,GAOE;AAEA,MACE,gBAAgB,YAChB,OAAO,WAAW,KAClB,OAAO,CAAC,KACR,OAAO,CAAC,EAAE,SAAS,UACnB,OAAO,CAAC,EAAE,QAAQ,WAAW,KAC7B,OAAO,CAAC,EAAE,QAAQ,CAAC,KACnB,OAAO,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,QAC9B;AACA,WAAO,EAAE,QAAQ,OAAO,CAAC,EAAE,QAAQ,CAAC,EAAE,KAAK;AAAA,EAC7C;AAGA,MAAI,OAAO;AAGX,MAAI,OAAO,CAAC,KAAK,OAAO,CAAC,EAAE,SAAS,UAAU;AAC5C,YAAQ,GAAG,OAAO,CAAC,EAAE,OAAO;AAAA;AAAA;AAC5B,aAAS,OAAO,MAAM,CAAC;AAAA,EACzB;AAEA,aAAW,EAAE,MAAM,QAAQ,KAAK,QAAQ;AACtC,YAAQ,MAAM;AAAA,MACZ,KAAK,UAAU;AACb,cAAM,IAAI,mBAAmB;AAAA,UAC3B,SAAS,wCAAwC,OAAO;AAAA,UACxD;AAAA,QACF,CAAC;AAAA,MACH;AAAA,MAEA,KAAK,QAAQ;AACX,cAAM,cAAc,QACjB,IAAI,CAAC,SAA4D;AAChE,kBAAQ,KAAK,MAAM;AAAA,YACjB,KAAK,QAAQ;AACX,qBAAO,KAAK;AAAA,YACd;AAAA,YAEA,KAAK,QAAQ;AACX,oBAAM,IAAI,8BAA8B;AAAA,gBACtC,eAAe;AAAA,cACjB,CAAC;AAAA,YACH;AAAA,YACA,SAAS;AACP,qBAAO;AAAA,YACT;AAAA,UACF;AAAA,QACF,CAAC,EACA,KAAK,EAAE;AAEV,gBAAQ,GAAG,IAAI;AAAA,EAAM,WAAW;AAAA;AAAA;AAChC;AAAA,MACF;AAAA,MAEA,KAAK,aAAa;AAChB,cAAM,mBAAmB,QACtB;AAAA,UACC,CACE,SAMG;AACH,oBAAQ,KAAK,MAAM;AAAA,cACjB,KAAK,QAAQ;AACX,uBAAO,KAAK;AAAA,cACd;AAAA,cACA,KAAK,aAAa;AAChB,sBAAM,IAAI,8BAA8B;AAAA,kBACtC,eAAe;AAAA,gBACjB,CAAC;AAAA,cACH;AAAA,cACA,KAAK,eAAe;AAClB,sBAAM,IAAI,8BAA8B;AAAA,kBACtC,eAAe;AAAA,gBACjB,CAAC;AAAA,cACH;AAAA,cACA,KAAK,aAAa;AAChB,sBAAM,IAAI,8BAA8B;AAAA,kBACtC,eAAe;AAAA,gBACjB,CAAC;AAAA,cACH;AAAA,cAEA,KAAK,QAAQ;AACX,sBAAM,IAAI,8BAA8B;AAAA,kBACtC,eAAe;AAAA,gBACjB,CAAC;AAAA,cACH;AAAA,cAEA,SAAS;AACP,uBAAO;AAAA,cACT;AAAA,YACF;AAAA,UACF;AAAA,QACF,EACC,KAAK,EAAE;AAEV,gBAAQ,GAAG,SAAS;AAAA,EAAM,gBAAgB;AAAA;AAAA;AAC1C;AAAA,MACF;AAAA,MAEA,KAAK,QAAQ;AACX,cAAM,IAAI,8BAA8B;AAAA,UACtC,eAAe;AAAA,QACjB,CAAC;AAAA,MACH;AAAA,MAEA,SAAS;AACP;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAGA,UAAQ,GAAG,SAAS;AAAA;AAEpB,SAAO;AAAA,IACL,QAAQ;AAAA,EACV;AACF;;;ACrJA,SAAS,KAAAG,UAAS;AAMX,IAAM,kCAAkCC,GAAE,MAAM;AAAA,EACrDA,GAAE,OAAO;AAAA,IACP,IAAIA,GAAE,OAAO,EAAE,SAAS;AAAA,IACxB,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC3B,SAASA,GAAE;AAAA,MACTA,GAAE,OAAO;AAAA,QACP,MAAMA,GAAE,OAAO;AAAA,QACf,WAAWA,GAAE,OAAO,EAAE,QAAQ,EAAE,SAAS;AAAA,QACzC,mBAAmB,2BAA2B,QAAQ;AAAA,QAEtD,eAAeA,GAAE,OAAO,EAAE,QAAQ;AAAA,QAClC,OAAOA,GAAE,OAAO,EAAE,QAAQ;AAAA,QAC1B,UAAUA,GACP,OAAO;AAAA,UACN,QAAQA,GAAE,MAAMA,GAAE,OAAO,CAAC;AAAA,UAC1B,gBAAgBA,GAAE,MAAMA,GAAE,OAAO,CAAC;AAAA,UAClC,cAAcA,GAAE,MAAMA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,OAAO,CAAC,CAAC,EAAE,SAAS;AAAA,QACnE,CAAC,EACA,SAAS,EACT,SAAS;AAAA,MACd,CAAC;AAAA,IACH;AAAA,IACA,OAAOA,GACJ,OAAO;AAAA,MACN,eAAeA,GAAE,OAAO;AAAA,MACxB,uBAAuBA,GACpB,OAAO;AAAA,QACN,eAAeA,GAAE,OAAO;AAAA,MAC1B,CAAC,EACA,QAAQ;AAAA,MACX,mBAAmBA,GAAE,OAAO;AAAA,MAC5B,2BAA2BA,GACxB,OAAO;AAAA,QACN,kBAAkBA,GAAE,OAAO;AAAA,MAC7B,CAAC,EACA,QAAQ;AAAA,MACX,cAAcA,GAAE,OAAO;AAAA,MACvB,MAAMA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC5B,CAAC,EACA,QAAQ;AAAA,EACb,CAAC;AAAA,EACD;AACF,CAAC;;;ACXM,IAAM,oCAAN,MAAmE;AAAA,EAiBxE,YACE,SACA,UACAC,SACA;AApBF,SAAS,uBAAuB;AAChC,SAAS,WAAW;AAEpB,SAAS,gBAA0C;AAAA,MACjD,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACA,UAAU,CAAC,gBAAgB,iBAAiB;AAAA,MAC5C,iBAAiB,CAAC,uBAAuB,iBAAiB;AAAA,IAC5D;AACA,SAAS,8BAA8B;AAUrC,SAAK,UAAU;AACf,SAAK,WAAW;AAChB,SAAK,SAASA;AAAA,EAChB;AAAA,EAEQ,QAAQ;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAA+B;AAC7B,UAAM,EAAE,QAAQ,iBAAiB,IAAI,oCAAoC;AAAA,MACvE;AAAA,MACA,aAAa;AAAA,IACf,CAAC;AAED,QAAI,+BAAO,QAAQ;AACjB,YAAM,IAAI,8BAA8B;AAAA,QACtC,eAAe;AAAA,MACjB,CAAC;AAAA,IACH;AAEA,QAAI,YAAY;AACd,YAAM,IAAI,8BAA8B;AAAA,QACtC,eAAe;AAAA,MACjB,CAAC;AAAA,IACH;AAEA,WAAO;AAAA;AAAA,MAEL,OAAO,KAAK;AAAA,MACZ,QAAQ,KAAK,SAAS;AAAA;AAAA,MAGtB,YAAY,KAAK,SAAS;AAAA,MAC1B,UACE,OAAO,KAAK,SAAS,aAAa,WAC9B,KAAK,SAAS,WACd,OAAO,KAAK,SAAS,aAAa,YAChC,KAAK,SAAS,WACZ,IACA,SACF;AAAA,MACR,QAAQ,KAAK,SAAS;AAAA,MACtB,MAAM,KAAK,SAAS;AAAA;AAAA,MAGpB,YAAY;AAAA,MACZ;AAAA,MACA,OAAO;AAAA,MACP,mBAAmB;AAAA,MACnB,kBAAkB;AAAA,MAClB;AAAA,MAEA,MAAM;AAAA,MACN,iBAAiB;AAAA,MACjB,OAAO;AAAA;AAAA,MAGP,QAAQ;AAAA;AAAA,MAGR,mBAAmB,KAAK,SAAS;AAAA,MACjC,WAAW,KAAK,SAAS;AAAA,OAGtB,KAAK,OAAO,YACZ,KAAK,SAAS;AAAA,EAErB;AAAA,EAEA,MAAM,WACJ,SAC6D;AA5IjE,QAAAC,MAAA;AA6II,UAAM,kBAAkB,QAAQ,mBAAmB,CAAC;AACpD,UAAM,oBAAoB,gBAAgB,cAAc,CAAC;AAEzD,UAAM,OAAO,kCACR,KAAK,QAAQ,OAAO,IACpB;AAGL,UAAM,EAAE,OAAO,UAAU,gBAAgB,IAAI,MAAM,cAAc;AAAA,MAC/D,KAAK,KAAK,OAAO,IAAI;AAAA,QACnB,MAAM;AAAA,QACN,SAAS,KAAK;AAAA,MAChB,CAAC;AAAA,MACD,SAAS,eAAe,KAAK,OAAO,QAAQ,GAAG,QAAQ,OAAO;AAAA,MAC9D,MAAM;AAAA,MACN,uBAAuB;AAAA,MACvB,2BAA2B;AAAA,QACzB;AAAA,MACF;AAAA,MACA,aAAa,QAAQ;AAAA,MACrB,OAAO,KAAK,OAAO;AAAA,IACrB,CAAC;AAED,QAAI,WAAW,UAAU;AACvB,YAAM,IAAI,MAAM,GAAG,SAAS,MAAM,OAAO,EAAE;AAAA,IAC7C;AAEA,UAAM,SAAS,SAAS,QAAQ,CAAC;AAEjC,QAAI,CAAC,QAAQ;AACX,YAAM,IAAI,MAAM,6CAA6C;AAAA,IAC/D;AAEA,WAAO;AAAA,MACL,SAAS;AAAA,QACP;AAAA,UACE,MAAM;AAAA,UACN,OAAMA,OAAA,OAAO,SAAP,OAAAA,OAAe;AAAA,QACvB;AAAA,MACF;AAAA,MACA,cAAc,0BAA0B,OAAO,aAAa;AAAA,MAC5D,OAAO;AAAA,QACL,cAAa,oBAAS,UAAT,mBAAgB,kBAAhB,YAAiC;AAAA,QAC9C,eAAc,oBAAS,UAAT,mBAAgB,sBAAhB,YAAqC;AAAA,QACnD,eACG,oBAAS,UAAT,mBAAgB,kBAAhB,YAAiC,OACjC,oBAAS,UAAT,mBAAgB,sBAAhB,YAAqC;AAAA,QACxC,kBACE,0BAAS,UAAT,mBAAgB,8BAAhB,mBAA2C,qBAA3C,YAA+D;AAAA,QACjE,oBACE,0BAAS,UAAT,mBAAgB,0BAAhB,mBAAuC,kBAAvC,YAAwD;AAAA,MAC5D;AAAA,MACA,UAAU,CAAC;AAAA,MACX,UAAU;AAAA,QACR,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAM,SACJ,SAC2D;AAC3D,UAAM,kBAAkB,QAAQ,mBAAmB,CAAC;AACpD,UAAM,oBAAoB,gBAAgB,cAAc,CAAC;AAEzD,UAAM,OAAO,kCACR,KAAK,QAAQ,OAAO,IACpB;AAGL,UAAM,EAAE,OAAO,UAAU,gBAAgB,IAAI,MAAM,cAAc;AAAA,MAC/D,KAAK,KAAK,OAAO,IAAI;AAAA,QACnB,MAAM;AAAA,QACN,SAAS,KAAK;AAAA,MAChB,CAAC;AAAA,MACD,SAAS,eAAe,KAAK,OAAO,QAAQ,GAAG,QAAQ,OAAO;AAAA,MAC9D,MAAM,iCACD,OADC;AAAA,QAEJ,QAAQ;AAAA;AAAA,QAGR,gBACE,KAAK,OAAO,kBAAkB,WAC1B,EAAE,eAAe,KAAK,IACtB;AAAA,MACR;AAAA,MACA,uBAAuB;AAAA,MACvB,2BAA2B;AAAA,QACzB;AAAA,MACF;AAAA,MACA,aAAa,QAAQ;AAAA,MACrB,OAAO,KAAK,OAAO;AAAA,IACrB,CAAC;AAED,QAAI,eAA6B;AACjC,UAAM,QAA8B;AAAA,MAClC,aAAa,OAAO;AAAA,MACpB,cAAc,OAAO;AAAA,MACrB,aAAa,OAAO;AAAA,MACpB,iBAAiB,OAAO;AAAA,MACxB,mBAAmB,OAAO;AAAA,IAC5B;AAEA,UAAM,kBAAsD,CAAC;AAC7D,WAAO;AAAA,MACL,QAAQ,SAAS;AAAA,QACf,IAAI,gBAGF;AAAA,UACA,UAAU,OAAO,YAAY;AA3PvC,gBAAAA,MAAA;AA6PY,gBAAI,CAAC,MAAM,SAAS;AAClB,6BAAe;AACf,yBAAW,QAAQ,EAAE,MAAM,SAAS,OAAO,MAAM,MAAM,CAAC;AACxD;AAAA,YACF;AAEA,kBAAM,QAAQ,MAAM;AAGpB,gBAAI,WAAW,OAAO;AACpB,6BAAe;AACf,yBAAW,QAAQ,EAAE,MAAM,SAAS,OAAO,MAAM,MAAM,CAAC;AACxD;AAAA,YACF;AAEA,gBAAI,MAAM,SAAS,MAAM;AACvB,oBAAM,cAAc,MAAM,MAAM;AAChC,oBAAM,eAAe,MAAM,MAAM;AACjC,oBAAM,cACJ,MAAM,MAAM,gBAAgB,MAAM,MAAM;AAG1C,8BAAgB,eAAe,MAAM,MAAM;AAE3C,kBAAI,MAAM,MAAM,uBAAuB;AACrC,sBAAM,qBACJA,OAAA,MAAM,MAAM,sBAAsB,kBAAlC,OAAAA,OAAmD;AAErD,sBAAM,oBAAoB;AAAA,cAI5B;AAEA,8BAAgB,mBAAmB,MAAM,MAAM;AAC/C,kBAAI,MAAM,MAAM,2BAA2B;AACzC,sBAAM,mBACJ,WAAM,MAAM,0BAA0B,qBAAtC,YAA0D;AAE5D,sBAAM,kBAAkB;AAAA,cAI1B;AAEA,8BAAgB,OAAO,MAAM,MAAM;AACnC,8BAAgB,cAAc,MAAM,MAAM;AAAA,YAC5C;AAEA,kBAAM,SAAS,MAAM,QAAQ,CAAC;AAE9B,iBAAI,iCAAQ,kBAAiB,MAAM;AACjC,6BAAe,0BAA0B,OAAO,aAAa;AAAA,YAC/D;AAEA,iBAAI,iCAAQ,SAAQ,MAAM;AACxB,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,OAAO,OAAO;AAAA,gBACd,IAAI,WAAW;AAAA,cACjB,CAAC;AAAA,YACH;AAAA,UACF;AAAA,UAEA,MAAM,YAAY;AAChB,uBAAW,QAAQ;AAAA,cACjB,MAAM;AAAA,cACN;AAAA,cACA;AAAA,cACA,kBAAkB;AAAA,gBAChB,YAAY;AAAA,kBACV,OAAO;AAAA,gBACT;AAAA,cACF;AAAA,YACF,CAAC;AAAA,UACH;AAAA,QACF,CAAC;AAAA,MACH;AAAA,MACA,UAAU;AAAA,QACR,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AACF;;;;;;;;;;;;;;AC9UO,IAAM,SAAsC;EACjD,SAAS;IACP,aAAa;IACb,UAAU;EACZ;EACA,QAAQ;IACN,aAAa;IACb,UAAU;EACZ;EACA,SAAS;IACP,aAAa;IACb,UAAU;EACZ;EACA,SAAS;IACP,aAAa;IACb,UAAU;EACZ;EACA,QAAQ;IACN,aAAa;IACb,UAAU;EACZ;EACA,QAAQ;IACN,aAAa;IACb,UAAU;EACZ;EACA,QAAQ;IACN,aAAa;IACb,UAAU;EACZ;AACF;AC/BO,IAAM,UAAU;EACrB;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;MACA;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;MACA;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;MACA;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;MACA;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;MACA;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;MACA,EAAE,SAAS,MAAM,cAAc,WAAW,MAAM,MAAM,MAAM,UAAU;MACtE;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;MACA;QACE,SAAS;QACT,cAAc;QACd,MAAM;QACN,MAAM;MACR;IACF;IACA,MAAM;IACN,MAAM;EACR;EACA;IACE,WAAW;IACX,QAAQ;MACN;QACE,SAAS;QACT,cAAc;QACd,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","names":["_AISDKError","name","marker","symbol","_a","_a","symbol","name","marker","_a","symbol","name","marker","_a","symbol","name","marker","_a","symbol","name","marker","_TypeValidationError","ZodFirstPartyTypeKind","ZodFirstPartyTypeKind","size","validate","TypeValidationError","validator","getOriginalFetch","fetch","fetch","getOriginalFetch","APICallError","APICallError","APICallError","btoa","atob","btoa","d","z","_a","_a","_b","_c","content","z","z","z","config","_a","index","toolCall","z","z","config","_a","z","name","_a","abi","formatAbiItem","_a","abi","abi","docsPath","err","secp256k1","yParityOrV","recoveryBit","encode","_a","docsPath","_a","_a","docsPath","cause","_a","_a","_a","_a","_b","_c","base","_a","_a","sha256","sha256","_a","sha256","_a","size","_a","size","_a","getBlock","getChainId","chainId","block","estimateGas_rpc","block","request","rpcStateOverride","_a","value","estimate","_a","abi","docsPath","_a","abi","formatAbiItem","name","abi","_a","abiItem","eventName","index","value","input","event","abi","_a","abi","_a","abi","listeners","cleanup","_a","_a","poll","cacheKey","filter","filter","abi","filter","_a","transport","eventName","args","docsPath","_a","docsPath","cause","_a","e","_a","abi","call","chainId","receipts","status","_a","statusCode","size","_a","name","config","base","key","promiseCache","shouldRetry","_a","uid","name","uid","_a","_b","_c","body","response","config","name","_a","wait","body","_a","name","name","res","name","name","name","name","_a","event","name","_a","filter","_a","name","name","base","struct","blobs","commitments","proofs","v","_a","index","_a","_a","_a","contracts","abi","result","block","_a","call","abi","result","error","keccak256","LruMap","size","LruMap","InvalidAddressError","checksum","keccak256","validate","InvalidAddressError","BaseError","BaseError","validate","index","from","abi","name","abiItem","slice","index","keccak256","fromString","BaseError","bytesRegex","integerRegex","maxUint256","checksumAddress","_a","size","integerRegex","concat","checksum","length","BytesSizeMismatchError","BaseError","fromString","slice","index","encode","checksumAddress","concat","encodePacked","fromString","integerRegex","size","bytesRegex","BytesSizeMismatchError","BaseError","BytesSizeMismatchError","size","encode","_a","concat","from","encodeData","fromAbi","getSelector","encode","concat","from","fromAbi","abi","name","getSelector","encode","from","encodeData","call","_a","_a","_a","_a","_a","transport","from","_a","_a","block","transport","filter","_a","transport","event","args","filter","_a","_a","_a","name","name","_a","abi","_a","chainId","_a","_a","formatters","name","_a","serializeTransaction","from","sourceId","signAuthorization","_a","signMessage","signTransaction","signTypedData","_a","signAuthorization","signMessage","signTransaction","signTypedData","z","z","signAuthorization","from","name","__require","evm_exports","name","_a","config","_a","config","_a"]}