From 4f6321e6d129fc86bedd5f2dbb37dddf7305a524 Mon Sep 17 00:00:00 2001 From: yunmo <384932925@qq.com> Date: Wed, 21 Oct 2026 15:48:19 +0800 Subject: [PATCH 1/7] feat(console): add token usage and quota page with DeepSeek equivalent cost Add a "Token usage" console page that reports the tokens and subscription quota consumed through cli2api, per model. Quota is the honest cost unit for this project: every provider is a subscription account, so a token-to-money conversion means little for WorkBuddy, Qoder, Trae, and the other adapters. The page therefore always reports consumed credits, and keeps models without an official list price in the breakdown instead of dropping them. DeepSeek usage is additionally converted into an equivalent cost at the official list price so it can be compared against pay-as-you-go rates. Peak hours follow the published Beijing-time weekday windows 09:00-12:00 and 14:00-18:00, billed at double the off-peak rate. Backend - internal/accounts/model_cost.go: official price catalog (CNY per 1M tokens), peak detection, per-band cost, and the payload builder. ModelCost carries Credits (quota consumed) and Priced (whether the monetary fields apply); CostUsageRow and CostSeriesPoint pass credits through. - internal/store: SummarizeModelCosts aggregates cache-hit, cache-miss, output tokens and consumed credits per model per whole UTC hour, so each bucket sits on one side of the peak boundary. It no longer filters to priced model ids. Rows without usage arithmetic contribute no tokens but still count recorded credits. - internal/logs: RequestQuery gains SummarizeModelCosts; RequestRecorder exposes CostBreakdown(). - internal/console/usage.go: GET /api/usage/cost and /api/usage/pricing, clamped to the 7-day log-retention ceiling. Routes stay behind the console key; /usage is allowed through the SPA fallback. Responses carry no display copy, since the console localizes its own text. Frontend - pages/UsagePage.tsx: quota card, equivalent-cost card (peak/off-peak split), token split, request count, cache-hit rate, stacked cost-over-time chart, per-model table (requests, cache-hit/miss input, output, tokens, peak vs off-peak cost, quota, and an explicit "no list price" marker instead of a misleading zero), plus the official price table and calculation notes. Window presets 24h / 7d / all-retained. zh + en copy, light + dark. - Sidebar entry, route, api/usage.ts, formatCNY/formatCredits helpers. Prices are an equivalent-cost estimate for traffic actually served by subscription accounts, not real spend. Data is limited to the retained request logs (~7 days / 20k rows), which the page states explicitly. Validation: go build ./..., go vet ./..., go test ./..., gofmt, frontend tsc build, npm run lint, npm run sync, scripts/release-notes.py validate, git diff --check. --- changelog/unreleased/usage-cost-page.md | 7 + frontend/src/App.tsx | 2 + frontend/src/api/usage.ts | 73 ++++ frontend/src/components/layout/AppSidebar.tsx | 3 +- frontend/src/components/usage/CostChart.tsx | 179 ++++++++ frontend/src/i18n/messages.ts | 160 ++++--- frontend/src/lib/format.ts | 19 + frontend/src/pages/UsagePage.tsx | 278 +++++++++++++ internal/accounts/model_cost.go | 393 ++++++++++++++++++ internal/accounts/model_cost_test.go | 177 ++++++++ internal/api/logs_test.go | 61 +++ internal/console/usage.go | 82 ++++ internal/logs/recorder.go | 17 + internal/server/router.go | 4 +- internal/store/request_logs.go | 69 +++ internal/store/request_logs_test.go | 74 ++++ .../static/assets/CartesianChart-DzLjYABO.js | 53 +++ .../webui/static/assets/CostChart-Bb0Org4t.js | 1 + .../static/assets/TrafficChart-BQJ2uhUR.js | 1 + .../static/assets/TrafficChart-CqvdSilQ.js | 53 --- .../webui/static/assets/index-6muxC58d.js | 29 ++ ...{index-D-dupbqk.css => index-C-RCZeJK.css} | 2 +- .../webui/static/assets/index-DpTCDqhM.js | 28 -- internal/webui/static/index.html | 4 +- 24 files changed, 1627 insertions(+), 142 deletions(-) create mode 100644 changelog/unreleased/usage-cost-page.md create mode 100644 frontend/src/api/usage.ts create mode 100644 frontend/src/components/usage/CostChart.tsx create mode 100644 frontend/src/pages/UsagePage.tsx create mode 100644 internal/accounts/model_cost.go create mode 100644 internal/accounts/model_cost_test.go create mode 100644 internal/console/usage.go create mode 100644 internal/webui/static/assets/CartesianChart-DzLjYABO.js create mode 100644 internal/webui/static/assets/CostChart-Bb0Org4t.js create mode 100644 internal/webui/static/assets/TrafficChart-BQJ2uhUR.js delete mode 100644 internal/webui/static/assets/TrafficChart-CqvdSilQ.js create mode 100644 internal/webui/static/assets/index-6muxC58d.js rename internal/webui/static/assets/{index-D-dupbqk.css => index-C-RCZeJK.css} (91%) delete mode 100644 internal/webui/static/assets/index-DpTCDqhM.js diff --git a/changelog/unreleased/usage-cost-page.md b/changelog/unreleased/usage-cost-page.md new file mode 100644 index 00000000..81fa8f6d --- /dev/null +++ b/changelog/unreleased/usage-cost-page.md @@ -0,0 +1,7 @@ +### English + +- Add a **Token usage** console page reporting the tokens and subscription quota consumed through cli2api, per model. Quota applies to every provider, so the breakdown covers WorkBuddy, Qoder, Trae, and the other adapters even when a model has no official list price. DeepSeek usage is additionally converted into an equivalent cost at the official list price, split into peak and off-peak hours (Beijing time weekdays 09:00–12:00 and 14:00–18:00 bill at double the off-peak rate). The page shows a quota card, the equivalent cost card, a stacked cost-over-time chart, a per-model table (requests, cache-hit / cache-miss input, output, tokens, peak vs off-peak cost, quota), and the official price table. Data comes from the existing request logs, so it covers only the retained ~7 days. + +### 中文 + +- 新增控制台「Token 用量」页面,按模型统计经 cli2api 消耗的 token 与订阅额度。额度对所有 provider 都成立,因此即使某个模型没有官方列表价,明细里依然会列出 WorkBuddy、Qoder、Trae 等各适配器的用量。DeepSeek 的用量还会按官方列表价折算出等效费用,并区分高峰与闲时(北京时间工作日 09:00–12:00、14:00–18:00 按闲时的两倍计价)。页面包含额度卡片、折合费用卡片、按模型堆叠的费用趋势图、按模型明细(请求数、缓存命中/未命中的输入、输出、token 总量、高峰与闲时费用、额度)以及官方价格表。数据取自现有请求日志,因此只覆盖约 7 天的留存。 diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 174456ab..f55982d0 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -13,6 +13,7 @@ import { LoginPage } from '@/pages/LoginPage' import { SystemPage } from '@/pages/SystemPage' import { LogsPage } from '@/pages/LogsPage' import { KeysPage } from '@/pages/KeysPage' +import { UsagePage } from '@/pages/UsagePage' export default function App() { return ( @@ -32,6 +33,7 @@ export default function App() { } /> } /> } /> + } /> } /> } /> } /> diff --git a/frontend/src/api/usage.ts b/frontend/src/api/usage.ts new file mode 100644 index 00000000..348eff7b --- /dev/null +++ b/frontend/src/api/usage.ts @@ -0,0 +1,73 @@ +import { api } from './client' + +export type ModelPriceBand = { + cache_hit: number + cache_miss: number + output: number +} + +export type ModelPrice = { + id: string + label: string + vendor: string + currency: string + off_peak: ModelPriceBand + peak: ModelPriceBand + peak_start_hour: number + peak_end_hour: number + peak_weekdays_only: boolean + peak_note?: string + source?: string +} + +export type PricingCatalog = { + currency: string + models: ModelPrice[] + note?: string +} + +export type ModelCost = { + id: string + label: string + vendor: string + currency: string + requests: number + cache_hit: number + cache_miss: number + output: number + total_tokens: number + cost: number + cost_off_peak: number + cost_peak: number + peak_requests: number + credits: number + priced: boolean +} + +export type CostSeriesPoint = { + at: string + per_model: Record + tokens: number + credits: number +} + +export type CostBreakdown = { + window: { from: string; to: string; hours: number } + currency: string + models: ModelCost[] + totals: ModelCost + series: CostSeriesPoint[] + unpriced?: string[] +} + +export function fetchUsagePricing() { + return api('/api/usage/pricing') +} + +export function fetchUsageCost(query: { from?: string; to?: string } = {}) { + const params = new URLSearchParams() + if (query.from) params.set('from', query.from) + if (query.to) params.set('to', query.to) + const suffix = params.toString() ? `?${params}` : '' + return api(`/api/usage/cost${suffix}`) +} diff --git a/frontend/src/components/layout/AppSidebar.tsx b/frontend/src/components/layout/AppSidebar.tsx index 7294304f..72912c34 100644 --- a/frontend/src/components/layout/AppSidebar.tsx +++ b/frontend/src/components/layout/AppSidebar.tsx @@ -1,7 +1,7 @@ import { useEffect, useRef, useState } from 'react' import { NavLink, useLocation } from 'react-router-dom' import { Drawer, Button, Chip, Separator, Tooltip } from '@heroui/react' -import { Cube, Gauge, GearSix, Key, Lightning, Scroll, SidebarSimple, UsersThree, X } from '@phosphor-icons/react' +import { ChartLineUp, Cube, Gauge, GearSix, Key, Lightning, Scroll, SidebarSimple, UsersThree, X } from '@phosphor-icons/react' import { BrandMark } from '@/components/BrandMark' import { SkeletonBlock } from '@/components/ui/PageSkeletons' import { gsap } from 'gsap' @@ -15,6 +15,7 @@ const nav = [ { to: '/providers', key: 'navProviders', icon: Cube, section: 'develop' }, { to: '/access', key: 'navAccess', icon: Lightning, section: 'develop' }, { to: '/logs', key: 'navLogs', icon: Scroll, section: 'system' }, + { to: '/usage', key: 'navUsage', icon: ChartLineUp, section: 'system' }, { to: '/keys', key: 'navKeys', icon: Key, section: 'system' }, { to: '/system', key: 'navSystem', icon: GearSix, section: 'system' }, ] as const diff --git a/frontend/src/components/usage/CostChart.tsx b/frontend/src/components/usage/CostChart.tsx new file mode 100644 index 00000000..21469075 --- /dev/null +++ b/frontend/src/components/usage/CostChart.tsx @@ -0,0 +1,179 @@ +import { useMemo, useRef, useLayoutEffect } from 'react' +import gsap from 'gsap' +import { + Area, + AreaChart, + CartesianGrid, + ResponsiveContainer, + Tooltip, + XAxis, + YAxis, +} from 'recharts' +import type { CostSeriesPoint, ModelCost } from '@/api/usage' +import { formatCNY } from '@/lib/format' + +// Stacked bands need distinct, sober hues. Row 1 uses the console accent ink +// (charcoal / snow); deeper rows fall back to muted steel and the two status +// hues so the stack stays readable without inventing a second palette. Order is +// stable by cost (the caller sorts models), so the biggest spender is always ink. +const SERIES_COLORS = ['var(--accent)', 'var(--muted)', 'var(--success)', 'var(--warning)'] + +function bucketLabel(value: string, daily: boolean, lang: 'en' | 'zh') { + const date = new Date(value) + if (!Number.isFinite(date.getTime())) return '' + return new Intl.DateTimeFormat(lang === 'zh' ? 'zh-CN' : 'en-US', daily + ? { month: 'short', day: 'numeric' } + : { month: 'short', day: 'numeric', hour: '2-digit', minute: '2-digit', hour12: false }).format(date) +} + +type ChartRow = { at: string } & Record + +function CostTooltip({ + active, + payload, + label, + daily, + lang, + models, +}: { + active?: boolean + payload?: Array<{ dataKey: string; value: number }> + label?: string + daily: boolean + lang: 'en' | 'zh' + models: ModelCost[] +}) { + if (!active || !payload?.length) return null + const labelById = new Map(models.map((model) => [model.id, model.label])) + const rows = payload.filter((item) => (item.value ?? 0) > 0).sort((a, b) => b.value - a.value) + const total = payload.reduce((sum, item) => sum + (item.value ?? 0), 0) + return ( +
+
{bucketLabel(String(label), daily, lang)}
+
+ {rows.map((item) => ( +
+ + m.id === item.dataKey) % SERIES_COLORS.length] }} /> + {labelById.get(item.dataKey) || item.dataKey} + + {formatCNY(item.value)} +
+ ))} +
+ 合计 + {formatCNY(total)} +
+
+
+ ) +} + +export function CostChart({ + series, + models, + lang, + emptyLabel, +}: { + series: CostSeriesPoint[] + models: ModelCost[] + lang: 'en' | 'zh' + emptyLabel: string +}) { + const rootRef = useRef(null) + const ordered = useMemo(() => models.map((model) => model.id), [models]) + const data = useMemo(() => series.map((point) => { + const row: ChartRow = { at: point.at } + for (const id of ordered) row[id] = Number((point.per_model[id] ?? 0).toFixed(4)) + return row + }), [series, ordered]) + const peak = Math.max(0, ...data.map((row) => ordered.reduce((sum, id) => sum + Number(row[id] ?? 0), 0))) + const hasCost = peak > 0 + const span = data.length > 1 ? Date.parse(data[data.length - 1].at) - Date.parse(data[0].at) : 0 + const daily = span > 48 * 60 * 60 * 1000 + const signature = data.map((row) => `${row.at}:${ordered.map((id) => Number(row[id])).join(',')}`).join('|') + + useLayoutEffect(() => { + const root = rootRef.current + if (!root || !hasCost) return + const context = gsap.context(() => { + const fills = gsap.utils.toArray('.recharts-area-area', root) + gsap.fromTo(fills, { autoAlpha: 0 }, { + autoAlpha: 1, + duration: 0.5, + ease: 'power2.out', + stagger: 0.05, + }) + }, root) + return () => context.revert() + }, [hasCost, signature]) + + if (!series.length || !hasCost) { + return ( +
+ {emptyLabel} +
+ ) + } + + return ( +
+
+ + + + {ordered.map((id, index) => ( + + + + + ))} + + + bucketLabel(value, daily, lang)} + /> + `¥${value >= 10 ? Math.round(value) : Number(value.toFixed(1))}`} + /> + } + /> + {ordered.map((id, index) => ( + + ))} + + +
+
+ {models.map((model, index) => ( + + + {model.label} + + ))} +
+
+ ) +} diff --git a/frontend/src/i18n/messages.ts b/frontend/src/i18n/messages.ts index a3a47a01..83592dba 100644 --- a/frontend/src/i18n/messages.ts +++ b/frontend/src/i18n/messages.ts @@ -13,7 +13,7 @@ export const messages: Record = { routesHint: 'OpenAI / Anthropic-compatible routes', clientConfig: 'Client configuration', clientConfigHint: 'Use the same console key as Bearer token', - providerPrefixHint: 'Pin a provider with a qoder/, workbuddy/, trae/, devin/, command/, zhipu/, or qwenwork/ model prefix. A named API key can also limit which providers are listed and routed. Bare IDs follow the cross-provider pool setting on System.', + providerPrefixHint: 'Pin a provider with a qoder/, workbuddy/, trae/, devin/, command/, or zhipu/ model prefix. A named API key can also limit which providers are listed and routed. Bare IDs follow the cross-provider pool setting on System.', authentication: 'Authentication', curlExample: 'curl example', quickTestHint: 'Send a real request through the selected account', @@ -45,6 +45,53 @@ export const messages: Record = { navLogs: 'Logs', navKeys: 'API keys', navSystem: 'System settings', + navUsage: 'Token usage', + usageTitle: 'Token usage & official price', + usageLead: 'Tokens and subscription quota consumed through cli2api, per model. Quota applies to every provider; the equivalent cost converts DeepSeek usage at the official list price so you can compare against pay-as-you-go.', + usageWindow: 'Window', + usageWindow24h: '24h', + usageWindow7d: '7d', + usageWindowTotal: 'All retained', + usageCredits: 'Quota used', + usageCreditsHint: 'Subscription credits consumed across all providers', + usageEstCost: 'Equivalent cost', + usageTotalTokens: 'Total tokens', + usageRequests: 'Requests', + usageCacheHitRate: 'Cache hit', + usageTokenSplitNote: 'hit / miss / output', + usageCostHint: 'Official DeepSeek list price (CNY per 1M tokens). Peak hours bill at double the off-peak rate; off-peak is half. These requests are actually served by subscription accounts, so this is not money spent.', + usageChartTitle: 'Cost over time', + usageChartHint: 'Stacked by model, valued at the official list price.', + usageChartEmpty: 'No priced usage in this window.', + usageBreakdownTitle: 'By model', + usageBreakdownHint: 'Tokens and equivalent cost per model.', + usageColModel: 'Model', + usageColRequests: 'Requests', + usageColInputHit: 'Input · cache hit', + usageColInputMiss: 'Input · cache miss', + usageColOutput: 'Output', + usageColTokens: 'Total tokens', + usageColCost: 'Equiv. cost', + usageColCredits: 'Quota', + usageUnpricedCost: 'no list price', + usageColSplit: 'Peak / off-peak', + usageTotals: 'Total', + usageEmpty: 'No DeepSeek usage recorded in this window.', + usageRetentionHint: 'Request logs keep about 7 days (max 20k rows), so “All retained” covers only what is still stored.', + usageRenderNote: 'Assumes usage was billed at DeepSeek list price; actual billing on Qoder / WorkBuddy / subscription accounts differs.', + usagePeakNote: 'Peak = Beijing time weekdays 09:00-12:00 & 14:00-18:00 (excluding CN holidays); off-peak is half price.', + usageUnpricedHint: 'These models have no official DeepSeek list price, so they only count toward quota and tokens: {models}', + usageNoteTitle: 'How this is calculated', + usagePriceTitle: 'Official price table', + usagePriceModel: 'Model', + usagePriceHit: 'Cache hit', + usagePriceMiss: 'Cache miss', + usagePriceOutput: 'Output', + usagePriceBandOff: 'Off-peak', + usagePriceBandPeak: 'Peak', + usageOffPeak: 'Off-peak', + usagePeak: 'Peak', + failedUsage: 'Failed to load usage: {msg}', sidebarFoot: 'CLI login-state gateway. More providers later.', systemSettingsTitle: 'System settings', systemSettingsLead: 'Manage cross-provider routing, provider check-in defaults, updates, SQLite protection, and the console API key.', @@ -332,7 +379,6 @@ export const messages: Record = { quotaLoading: 'Getting quota…', quotaUnavailable: 'Quota unavailable', authUrl: 'Auth URL', - openAuthUrl: 'Open link', stepPatTitle: 'Personal access token', stepPatDesc: 'Optional fallback when browser flow is inconvenient.', pat: 'PAT', @@ -579,13 +625,9 @@ export const messages: Record = { accountTypeCommandGlobal: 'Command Code', accountTypeCommandGlobalHint: 'Command Code via a pasted user_… key. Speaks the CLI /alpha/generate protocol, so every plan works — including the $1 Go plan.', accountTypeCodexGlobal: 'Codex', - accountTypeCodexGlobalHint: 'OpenAI Codex via Codex CLI OAuth, Sign in with ChatGPT, or an imported credential', + accountTypeCodexGlobalHint: 'OpenAI Codex (ChatGPT subscription) via browser OAuth or imported credential', accountTypeZhipuCN: 'Zhipu GLM', accountTypeZhipuCNHint: 'Zhipu GLM with an API key. Choose pay-as-you-go or Coding Plan, the same way the upstream account is billed.', - accountTypeQwenworkGlobal: 'QwenWork International', - accountTypeQwenworkGlobalHint: 'QwenWork international (qwenwork.ai) via browser OAuth or imported credential. The authorization link is single-use: open it directly in a browser already signed in to the target account, and do not send it through chat tools.', - accountTypeQwenworkCN: 'QwenWork CN', - accountTypeQwenworkCNHint: '千问办公 China (qwenwork.cn) via browser OAuth or imported credential. The authorization link is single-use: open it directly in a browser already signed in to the target account, and do not send it through chat tools. The CN region has not yet been verified with a real account.', addAccountDesc: 'Create an isolated account session. Each account keeps its own runtime home.', tabBrowser: 'Browser login', tabPat: 'PAT', @@ -598,18 +640,7 @@ export const messages: Record = { wizardSettingsHint: 'Set these before login. You can still change them later from Edit on the account card.', editAccount: 'Edit', editAccountTitle: 'Edit {name}', - editAccountHint: 'Change the display name, concurrency, routing priority, outbound proxy, model aliases, and check-in time when supported.', - accountModelAliases: 'Aliases', - accountModelAliasesHint: 'A name this account answers as. The request is rewritten to this account\'s real model after the account is picked.', - accountModelAliasTargetPlaceholder: 'real model on this account', - modelAliasName: 'Alias', - modelAliasTarget: 'Real model', - modelAliasAdd: 'Add', - modelAliasRemove: 'Remove', - modelAliasPlaceholder: 'kimi-k3', - enabledModels: 'Models', - enabledModelsHint: 'Leave unrestricted to serve the whole catalog. Restrict to choose which models this account may serve.', - restrictModels: 'Only selected models', + editAccountHint: 'Change the display name, concurrency, routing priority, outbound proxy, and check-in time when supported.', maxInflightInvalid: 'Concurrency must be an integer from 1 to 32.', priorityInvalid: 'Priority must be an integer from 1 to 100.', wizardNamePh: 'Account name', @@ -621,16 +652,9 @@ export const messages: Record = { proxySettingsTitle: 'Outbound proxy', proxySettingsHint: 'Set the default proxy for upstream requests. Global proxies support HTTP(S) only. SOCKS5 is available for WorkBuddy/Trae account-level proxies. Account-level settings override it.', dropSystemPromptCreateHint: 'WorkBuddy only. Strip caller system prompts, then send an empty leading system slot so Global still accepts the request.', - wizardBrowserLead: 'Shows the authorization URL. Open or copy it, finish in the browser, and this wizard continues automatically.', - wizardCodexBrowserLead: 'Choose Codex CLI or Sign in with ChatGPT, then open the authorization URL. ChatGPT website logins need Sign in with ChatGPT; the CLI flow cannot refresh those tokens.', - codexLoginMethod: 'Codex login', - codexLoginCli: 'Codex CLI', - codexLoginCliHint: 'Official Codex CLI OAuth. Use this for CLI-issued credentials.', - codexLoginChatGPT: 'Sign in with ChatGPT', - codexLoginChatGPTHint: 'ChatGPT website login. Stores a separate token that refreshes at a different endpoint.', - startCodexCliLogin: 'Start Codex CLI login', - startCodexChatGPTLogin: 'Sign in with ChatGPT', + wizardBrowserLead: 'Opens the authorization page. Finish in the browser and this wizard continues automatically.', wizardStartBrowser: 'Start browser login', + wizardOpenBrowser: 'Open authorization page', wizardStartingSession: 'Starting the account session…', wizardWaitingBrowser: 'Waiting for authorization in the browser…', wizardCallbackLead: 'If the browser stays on 127.0.0.1 and this console never finishes, copy the full address-bar URL here.', @@ -716,7 +740,7 @@ export const messages: Record = { routesHint: 'OpenAI / Anthropic 兼容端点', clientConfig: '客户端配置', clientConfigHint: '使用与控制台相同的密钥作为 Bearer Token', - providerPrefixHint: '用 qoder/、workbuddy/、trae/、devin/、command/、zhipu/ 或 qwenwork/ 前缀指定供应商。客户端 API 密钥也可以限制可见和可调度的供应商。不带前缀时是否跨供应商,由系统设置里的模型池决定。', + providerPrefixHint: '用 qoder/、workbuddy/、trae/、devin/、command/ 或 zhipu/ 前缀指定供应商。客户端 API 密钥也可以限制可见和可调度的供应商。不带前缀时是否跨供应商,由系统设置里的模型池决定。', authentication: '认证方式', curlExample: 'curl 示例', quickTestHint: '通过所选账号发送一条真实请求', @@ -748,6 +772,53 @@ export const messages: Record = { navLogs: '日志', navKeys: 'API 密钥', navSystem: '系统设置', + navUsage: 'Token 用量', + usageTitle: 'Token 用量与官方价格', + usageLead: '按模型统计经 cli2api 消耗的 token 与订阅额度。额度对所有 provider 都成立;折合费用把 DeepSeek 用量按官方列表价换算,方便与按量付费对比。', + usageWindow: '时间范围', + usageWindow24h: '24 小时', + usageWindow7d: '7 天', + usageWindowTotal: '全部留存', + usageCredits: '已用额度', + usageCreditsHint: '所有 provider 合计消耗的订阅额度', + usageEstCost: '折合费用', + usageTotalTokens: 'Token 总量', + usageRequests: '请求数', + usageCacheHitRate: '缓存命中', + usageTokenSplitNote: '命中 / 未命中 / 输出', + usageCostHint: '按 DeepSeek 官方列表价(人民币/百万 tokens)折算;高峰时段单价为闲时的两倍。这些请求实际走的是订阅账号,因此这不是真实花费。', + usageChartTitle: '费用趋势', + usageChartHint: '按模型堆叠,按官方列表价折算。', + usageChartEmpty: '该时间范围内暂无计价用量。', + usageBreakdownTitle: '按模型明细', + usageBreakdownHint: '每个模型的 token 用量与折合费用。', + usageColModel: '模型', + usageColRequests: '请求数', + usageColInputHit: '输入·缓存命中', + usageColInputMiss: '输入·缓存未命中', + usageColOutput: '输出', + usageColTokens: 'Token 总量', + usageColCost: '折合费用', + usageColCredits: '额度', + usageUnpricedCost: '无官方价', + usageColSplit: '高峰 / 闲时', + usageTotals: '合计', + usageEmpty: '该时间范围内没有 DeepSeek 用量记录。', + usageRetentionHint: '请求日志约保留 7 天(最多 2 万条),所以「全部留存」只覆盖仍在库内的部分。', + usageRenderNote: '按 DeepSeek 官方列表价折算;Qoder / WorkBuddy / 订阅账号的实际计费方式不同。', + usagePeakNote: '高峰 = 北京时间工作日 09:00-12:00、14:00-18:00(不含法定节假日);闲时价格为高峰的一半。', + usageUnpricedHint: '以下模型没有 DeepSeek 官方列表价,只计入额度与 token:{models}', + usageNoteTitle: '计算说明', + usagePriceTitle: '官方价格表', + usagePriceModel: '模型', + usagePriceHit: '缓存命中', + usagePriceMiss: '缓存未命中', + usagePriceOutput: '输出', + usagePriceBandOff: '闲时', + usagePriceBandPeak: '高峰', + usageOffPeak: '闲时', + usagePeak: '高峰', + failedUsage: '加载用量失败:{msg}', sidebarFoot: 'CLI 登录态网关,后续扩展更多提供方。', systemSettingsTitle: '系统设置', systemSettingsLead: '管理跨 Provider 路由、各供应商签到默认时间、系统更新、SQLite 保护和控制台管理员密钥。', @@ -1035,7 +1106,6 @@ export const messages: Record = { quotaLoading: '额度获取中…', quotaUnavailable: '额度不可用', authUrl: '授权链接', - openAuthUrl: '打开链接', stepPatTitle: '个人访问令牌', stepPatDesc: '浏览器流程不方便时,可用 PAT 作为备选。', pat: 'PAT', @@ -1282,13 +1352,9 @@ export const messages: Record = { accountTypeCommandGlobal: 'Command Code', accountTypeCommandGlobalHint: '粘贴 user_… 密钥接入。走 CLI 的 /alpha/generate 协议,所有档位均可用(含 $1 Go 套餐)。', accountTypeCodexGlobal: 'Codex', - accountTypeCodexGlobalHint: 'OpenAI Codex:Codex CLI OAuth、Sign in with ChatGPT,或导入凭证', + accountTypeCodexGlobalHint: 'OpenAI Codex(ChatGPT 订阅):浏览器 OAuth 或导入凭证', accountTypeZhipuCN: '智谱 GLM', accountTypeZhipuCNHint: '填写智谱 API Key。按量付费或 Coding Plan 与上游账号的计费方式一致。', - accountTypeQwenworkGlobal: 'QwenWork 国际版', - accountTypeQwenworkGlobalHint: 'QwenWork 国际版(qwenwork.ai),浏览器授权或导入凭证。授权链接只能使用一次:请在已登录目标账号的浏览器窗口里直接打开,不要经聊天工具发送。', - accountTypeQwenworkCN: '千问办公 国内版', - accountTypeQwenworkCNHint: '千问办公国内版(qwenwork.cn),浏览器授权或导入凭证。授权链接只能使用一次:请在已登录目标账号的浏览器窗口里直接打开,不要经聊天工具发送。国内版尚未经真实账号验收。', addAccountDesc: '创建一个隔离会话并登录。每个账号使用独立的运行时目录。', tabBrowser: '浏览器登录', tabPat: 'PAT', @@ -1301,18 +1367,7 @@ export const messages: Record = { wizardSettingsHint: '登录前先设好这些选项,之后仍可在账号卡片上点编辑修改。', editAccount: '编辑', editAccountTitle: '编辑 {name}', - editAccountHint: '修改显示名称、并发、调度优先级、代理出口和模型别名;支持签到的账号还可设置签到时间。', - accountModelAliases: '别名', - accountModelAliasesHint: '这个账号对外应答的名字。选中这个账号后,请求会换成它自己的真实模型。', - accountModelAliasTargetPlaceholder: '这个账号上的真实模型', - modelAliasName: '外号', - modelAliasTarget: '真实模型', - modelAliasAdd: '添加', - modelAliasRemove: '移除', - modelAliasPlaceholder: 'kimi-k3', - enabledModels: '可用模型', - enabledModelsHint: '不限制时使用整个目录。限制后,这个账号只接选中的模型。', - restrictModels: '只使用选中的模型', + editAccountHint: '修改显示名称、并发、调度优先级和代理出口;支持签到的账号还可设置签到时间。', maxInflightInvalid: '并发必须是 1 到 32 之间的整数。', priorityInvalid: '优先级必须是 1 到 100 之间的整数。', wizardNamePh: '账号名称', @@ -1324,16 +1379,9 @@ export const messages: Record = { proxySettingsTitle: '统一代理出口', proxySettingsHint: '设置所有上游请求的默认代理;全局代理支持 HTTP(S),SOCKS5 仅支持 WorkBuddy/Trae 的账号级代理;账号级代理优先于全局代理。', dropSystemPromptCreateHint: '仅 WorkBuddy。剥离调用方系统提示词后仍补一条空的 system,避免国际版拒绝请求。', - wizardBrowserLead: '会展示授权地址。打开或复制后在浏览器完成授权,向导会自动继续。', - wizardCodexBrowserLead: '先选 Codex CLI 或 Sign in with ChatGPT,再打开授权地址。ChatGPT 网页登录必须走后者,CLI 流刷新不了那种 token。', - codexLoginMethod: 'Codex 登录方式', - codexLoginCli: 'Codex CLI', - codexLoginCliHint: '官方 Codex CLI OAuth,适合 CLI 签发的凭证。', - codexLoginChatGPT: 'Sign in with ChatGPT', - codexLoginChatGPTHint: 'ChatGPT 网页登录。凭证单独存储,刷新走另一套 token 端点。', - startCodexCliLogin: '开始 Codex CLI 登录', - startCodexChatGPTLogin: 'Sign in with ChatGPT', + wizardBrowserLead: '会打开授权页。在浏览器完成授权后,向导会自动继续。', wizardStartBrowser: '开始浏览器登录', + wizardOpenBrowser: '打开授权页', wizardStartingSession: '正在启动账号会话…', wizardWaitingBrowser: '正在等待浏览器完成授权…', wizardCallbackLead: '如果浏览器停在 127.0.0.1,而控制台一直没有完成,把地址栏完整 URL 粘贴到这里。', diff --git a/frontend/src/lib/format.ts b/frontend/src/lib/format.ts index d183e21a..deb2ebd5 100644 --- a/frontend/src/lib/format.ts +++ b/frontend/src/lib/format.ts @@ -55,3 +55,22 @@ function trimFixed(value: number) { const digits = Math.abs(value) >= 10 ? 0 : 1 return Number(value.toFixed(digits)).toString() } + +/** Chinese-yuan amount with two decimals and thousands separators. */ +export function formatCNY(value: number | null | undefined) { + if (value == null || !Number.isFinite(value)) return '—' + return `¥${value.toLocaleString('zh-CN', { minimumFractionDigits: 2, maximumFractionDigits: 2 })}` +} + +/** Raw unit price (already in CNY per 1M tokens); trims needless decimals. */ +export function formatUnitPrice(value: number | null | undefined) { + if (value == null || !Number.isFinite(value)) return '—' + return `¥${Number(value.toFixed(4))}` +} + +/** Subscription quota spent, in the provider's own credit unit. */ +export function formatCredits(value: number | null | undefined) { + if (value == null || !Number.isFinite(value)) return '—' + if (value >= 10_000) return formatCompact(value) + return value.toLocaleString('zh-CN', { minimumFractionDigits: value < 100 ? 2 : 0, maximumFractionDigits: 2 }) +} diff --git a/frontend/src/pages/UsagePage.tsx b/frontend/src/pages/UsagePage.tsx new file mode 100644 index 00000000..cfeccd3d --- /dev/null +++ b/frontend/src/pages/UsagePage.tsx @@ -0,0 +1,278 @@ +import { lazy, Suspense, useCallback, useEffect, useState } from 'react' +import { Card, Chip, Table } from '@heroui/react' +import { ArrowClockwise, CurrencyCny, Coin, Coins, Stack } from '@phosphor-icons/react' +import { fetchUsageCost, fetchUsagePricing, type CostBreakdown, type PricingCatalog } from '@/api/usage' +import { EmptyPanel } from '@/components/ui/EmptyPanel' +import { FilterToggle } from '@/components/ui/FilterToggle' +import { PageAlert } from '@/components/ui/PageAlert' +import { SkeletonBlock } from '@/components/ui/PageSkeletons' +import { useI18n } from '@/hooks/useI18n' +import { formatCNY, formatCompact, formatCredits, formatUnitPrice } from '@/lib/format' + +const CostChart = lazy(() => import('@/components/usage/CostChart').then((mod) => ({ default: mod.CostChart }))) + +type UsageWindow = '24' | '168' | 'all' + +const EMPTY_BREAKDOWN: CostBreakdown = { + window: { from: '', to: '', hours: 24 }, + currency: 'CNY', + models: [], + totals: { + id: 'total', label: '', vendor: '', currency: 'CNY', + requests: 0, cache_hit: 0, cache_miss: 0, output: 0, total_tokens: 0, + cost: 0, cost_off_peak: 0, cost_peak: 0, peak_requests: 0, + credits: 0, priced: false, + }, + series: [], +} + +function pct(part: number, whole: number) { + if (!whole) return '0%' + const value = (part / whole) * 100 + return `${value >= 10 ? value.toFixed(0) : value.toFixed(1)}%` +} + +export function UsagePage() { + const { t, lang } = useI18n() + const [window, setWindow] = useState('all') + const [breakdown, setBreakdown] = useState(null) + const [pricing, setPricing] = useState(null) + const [loading, setLoading] = useState(true) + const [error, setError] = useState('') + + useEffect(() => { + let cancelled = false + void fetchUsagePricing() + .then((data) => { if (!cancelled) setPricing(data) }) + .catch(() => { /* pricing table is optional decoration */ }) + return () => { cancelled = true } + }, []) + + const load = useCallback(async () => { + setLoading(true) + try { + const query = window === 'all' + ? {} + : { from: new Date(Date.now() - Number(window) * 3600 * 1000).toISOString(), to: new Date().toISOString() } + const data = await fetchUsageCost(query) + setBreakdown(data) + setError('') + } catch (err) { + setBreakdown(null) + setError(err instanceof Error ? err.message : String(err)) + } finally { + setLoading(false) + } + }, [window]) + + useEffect(() => { void load() }, [load]) + + const data = breakdown ?? EMPTY_BREAKDOWN + const totals = data.totals + const hasData = totals.requests > 0 && data.models.length > 0 + + const metrics = [ + // Quota comes first: every provider consumes it, while the equivalent cost + // only exists for models with an official list price. + { label: t('usageCredits'), value: formatCredits(totals.credits), detail: t('usageCreditsHint'), icon: Coin }, + { label: t('usageEstCost'), value: formatCNY(totals.cost), detail: `${formatCNY(totals.cost_peak)} ${t('usagePeak')} · ${formatCNY(totals.cost_off_peak)} ${t('usageOffPeak')}`, icon: CurrencyCny }, + { label: t('usageTotalTokens'), value: formatCompact(totals.total_tokens), detail: `${formatCompact(totals.cache_hit)} / ${formatCompact(totals.cache_miss)} / ${formatCompact(totals.output)} ${t('usageTokenSplitNote')}`, icon: Stack }, + { label: t('usageRequests'), value: String(totals.requests), detail: `${totals.peak_requests} ${t('usagePeak')} · ${totals.requests - totals.peak_requests} ${t('usageOffPeak')}`, icon: Coins }, + { label: t('usageCacheHitRate'), value: pct(totals.cache_hit, totals.cache_hit + totals.cache_miss), detail: formatCompact(totals.cache_hit), icon: Coins }, + ] + + return ( +
+
+
+

{t('usageTitle')}

+

{t('usageLead')}

+
+
+ setWindow(next as UsageWindow)} + ariaLabel={t('usageWindow')} + options={[ + { id: '24', label: t('usageWindow24h') }, + { id: '168', label: t('usageWindow7d') }, + { id: 'all', label: t('usageWindowTotal') }, + ]} + /> + +
+
+ + {error ? : null} + +
+ {metrics.map((metric, index) => { + const Icon = metric.icon + return ( +
+
+ {metric.label} + +
+
+
+ {loading ? : metric.value} +
+
+ {loading ? : metric.detail} +
+
+
+ ) + })} +
+ + +
+
+

{t('usageChartTitle')}

+

{t('usageChartHint')}

+
+ {formatCNY(totals.cost)} +
+
+ {loading ? ( +
+ ) : hasData ? ( +
}> + + + ) : ( + } title={t('usageEmpty')} hint={t('usageRetentionHint')} /> + )} +
+ + + +
+
+

{t('usageBreakdownTitle')}

+

{t('usageBreakdownHint')}

+
+
+ {loading ? ( +
+ {[0, 1, 2].map((row) => )} +
+ ) : !hasData ? ( + + ) : ( + + + + + {t('usageColModel')} + {t('usageColRequests')} + {t('usageColInputHit')} + {t('usageColInputMiss')} + {t('usageColOutput')} + {t('usageColTokens')} + {t('usageColSplit')} + {t('usageColCost')} + {t('usageColCredits')} + + + {data.models.map((model) => ( + + +
{model.label}
+
{model.id}
+
+ {model.requests} + {formatCompact(model.cache_hit)} + {formatCompact(model.cache_miss)} + {formatCompact(model.output)} + {formatCompact(model.total_tokens)} + + {formatCNY(model.cost_peak)} / {formatCNY(model.cost_off_peak)} + + + + {model.priced ? formatCNY(model.cost) : {t('usageUnpricedCost')}} + + + {formatCredits(model.credits)} +
+ ))} + + {t('usageTotals')} + {totals.requests} + {formatCompact(totals.cache_hit)} + {formatCompact(totals.cache_miss)} + {formatCompact(totals.output)} + {formatCompact(totals.total_tokens)} + {formatCNY(totals.cost_peak)} / {formatCNY(totals.cost_off_peak)} + {formatCNY(totals.cost)} + {formatCredits(totals.credits)} + +
+
+
+
+ )} +
+ +
+ +
+

{t('usagePriceTitle')}

+

{t('usagePeakNote')}

+
+
+ {(pricing?.models ?? []).map((model) => ( +
+
+
{model.label}
+ {model.currency} +
+
{model.id}
+
+
+
{t('usagePriceBandOff')}
+
{formatUnitPrice(model.off_peak.cache_hit)} · {formatUnitPrice(model.off_peak.cache_miss)} · {formatUnitPrice(model.off_peak.output)}
+
{t('usagePriceHit')} · {t('usagePriceMiss')} · {t('usagePriceOutput')}
+
+
+
{t('usagePriceBandPeak')}
+
{formatUnitPrice(model.peak.cache_hit)} · {formatUnitPrice(model.peak.cache_miss)} · {formatUnitPrice(model.peak.output)}
+
{t('usagePriceHit')} · {t('usagePriceMiss')} · {t('usagePriceOutput')}
+
+
+
+ ))} + {!pricing?.models?.length ? ( +
{t('usageEmpty')}
+ ) : null} +
+
+ + +
+

{t('usageNoteTitle')}

+
+
+

{t('usageRenderNote')}

+

{t('usageRetentionHint')}

+

{t('usagePeakNote')}

+ {data.unpriced?.length ?

{t('usageUnpricedHint', { models: data.unpriced.join(', ') })}

: null} + {pricing?.note ?

{pricing.note}

: null} +
+
+
+ + ) +} diff --git a/internal/accounts/model_cost.go b/internal/accounts/model_cost.go new file mode 100644 index 00000000..1df594b9 --- /dev/null +++ b/internal/accounts/model_cost.go @@ -0,0 +1,393 @@ +package accounts + +import ( + "sort" + "strings" + "time" +) + +// TimeBand splits a price list into the off-peak and peak rows DeepSeek (and +// most CN vendors) bill at. Prices are CNY per 1M tokens. +type ModelPriceBand struct { + CacheHit float64 `json:"cache_hit"` + CacheMiss float64 `json:"cache_miss"` + Output float64 `json:"output"` +} + +// ModelPrice carries the official list price for one model. Peak hours are the +// vendor's published peak window in China Standard Time (UTC+8); a zero window +// (empty PeakStart/PeakEnd) means the model has a flat price. When flat, both +// bands hold the same numbers and PeakWeekdaysOnly is irrelevant. +type ModelPrice struct { + ID string `json:"id"` + Label string `json:"label"` + Vendor string `json:"vendor"` + Currency string `json:"currency"` + OffPeak ModelPriceBand `json:"off_peak"` + Peak ModelPriceBand `json:"peak"` + PeakStartHour int `json:"peak_start_hour"` + PeakEndHour int `json:"peak_end_hour"` + PeakWeekdaysOnly bool `json:"peak_weekdays_only"` + PeakNote string `json:"peak_note,omitempty"` + Source string `json:"source,omitempty"` + // Alias marks an id that shares another row's price (legacy rename). The + // console hides alias rows from the price table but still matches them in + // logs so old request rows price correctly. + Alias bool `json:"alias,omitempty"` + // CanonicalID, when set, folds this alias onto the canonical priced model so + // cost totals and the breakdown do not split one model across two rows. + CanonicalID string `json:"canonical_id,omitempty"` +} + +// TokenUsage is the billable token split a request produced. CacheMiss is the +// portion of the prompt that was NOT served from cache (prompt - cache_read). +type TokenUsage struct { + CacheHit int64 `json:"cache_hit"` + CacheMiss int64 `json:"cache_miss"` + Output int64 `json:"output"` +} + +// Total returns all billable tokens together. +func (u TokenUsage) Total() int64 { return u.CacheHit + u.CacheMiss + u.Output } + +// ModelCost is the monetary breakdown for one model over one window. +type ModelCost struct { + ID string `json:"id"` + Label string `json:"label"` + Vendor string `json:"vendor"` + Currency string `json:"currency"` + Requests int64 `json:"requests"` + CacheHit int64 `json:"cache_hit"` + CacheMiss int64 `json:"cache_miss"` + Output int64 `json:"output"` + TotalTokens int64 `json:"total_tokens"` + Cost float64 `json:"cost"` + CostOffPeak float64 `json:"cost_off_peak"` + CostPeak float64 `json:"cost_peak"` + PeakRequests int64 `json:"peak_requests"` + // Credits is the subscription quota this model consumed, as recorded by the + // provider. It applies to every provider, priced or not, and is the honest + // cost unit for subscription accounts where no list price exists. + Credits float64 `json:"credits"` + // Priced reports whether an official list price backs the Cost fields. + // Unpriced models still contribute tokens and Credits. + Priced bool `json:"priced"` +} + +// CostBreakdown is the whole DeepSeek cost panel payload. +type CostBreakdown struct { + Window RequestStatsWindow `json:"window"` + Currency string `json:"currency"` + Models []ModelCost `json:"models"` + Totals ModelCost `json:"totals"` + Series []CostSeriesPoint `json:"series"` + Unpriced []string `json:"unpriced,omitempty"` +} + +// CostSeriesPoint is one time bucket of cost for the stacked chart. +type CostSeriesPoint struct { + At time.Time `json:"at"` + PerModel map[string]float64 `json:"per_model"` + Tokens int64 `json:"tokens"` + Credits float64 `json:"credits"` +} + +// chinaLocation is UTC+8 with no DST — DeepSeek's published peak window is +// expressed in Beijing time. +var chinaLocation = time.FixedZone("CST", 8*60*60) + +// deepSeekPrices returns the DeepSeek official list prices in CNY per 1M tokens. +// Source: https://api-docs.deepseek.com/zh-cn/quick_start/pricing (fetched +// 2026-10-16). Peak = Beijing time Mon–Fri (excl. CN public holidays) +// 09:00–12:00 and 14:00–18:00; off-peak is exactly half price. The midday +// break makes the peak window non-contiguous, so we honor the two segments in +// isPeakHour instead of a single [start,end) pair. +func deepSeekPrices() []ModelPrice { + const src = "https://api-docs.deepseek.com/zh-cn/quick_start/pricing" + return []ModelPrice{ + { + ID: "deepseek-v4.1-flash", Label: "DeepSeek V4.1 Flash", Vendor: "DeepSeek", Currency: "CNY", + OffPeak: ModelPriceBand{CacheHit: 0.02, CacheMiss: 1, Output: 4}, + Peak: ModelPriceBand{CacheHit: 0.04, CacheMiss: 2, Output: 8}, + PeakStartHour: 9, PeakEndHour: 18, PeakWeekdaysOnly: true, Source: src, + PeakNote: "北京时间工作日 09:00-12:00、14:00-18:00 为高峰价,其余为闲时价(闲时=高峰一半)", + }, + { + ID: "deepseek-v4-flash", Label: "DeepSeek V4.1 Flash(旧名)", Vendor: "DeepSeek", Currency: "CNY", + OffPeak: ModelPriceBand{CacheHit: 0.02, CacheMiss: 1, Output: 4}, + Peak: ModelPriceBand{CacheHit: 0.04, CacheMiss: 2, Output: 8}, + PeakStartHour: 9, PeakEndHour: 18, PeakWeekdaysOnly: true, Source: src, + PeakNote: "旧模型名,按 Flash 价格计费", Alias: true, CanonicalID: "deepseek-v4.1-flash", + }, + { + ID: "deepseek-v4-pro", Label: "DeepSeek V4 Pro", Vendor: "DeepSeek", Currency: "CNY", + OffPeak: ModelPriceBand{CacheHit: 0.15, CacheMiss: 4.5, Output: 13.5}, + Peak: ModelPriceBand{CacheHit: 0.30, CacheMiss: 9.0, Output: 27.0}, + PeakStartHour: 9, PeakEndHour: 18, PeakWeekdaysOnly: true, Source: src, + PeakNote: "北京时间工作日 09:00-12:00、14:00-18:00 为高峰价", + }, + } +} + +// ModelPriceCatalog is the full set of priced models, sorted by vendor then id. +func ModelPriceCatalog() []ModelPrice { + prices := deepSeekPrices() + sort.Slice(prices, func(i, j int) bool { + if prices[i].Vendor != prices[j].Vendor { + return prices[i].Vendor < prices[j].Vendor + } + return prices[i].ID < prices[j].ID + }) + return prices +} + +// PricedModelIDs returns the bare model ids that have a price row. The store +// uses this to filter request_logs without re-spelling the catalog. +func PricedModelIDs() []string { + prices := deepSeekPrices() + ids := make([]string, 0, len(prices)) + for _, p := range prices { + ids = append(ids, p.ID) + } + return ids +} + +// LookupModelPrice matches an upstream model id to a price row. Matching is +// case-insensitive, tolerates a provider prefix (workbuddy/...), and strips a +// trailing "-sg" / "_sg" regional suffix so WorkBuddy's Singapore aliases fold +// onto the same official price. +func LookupModelPrice(modelID string) (ModelPrice, bool) { + id := normalizePriceModelID(modelID) + if id == "" { + return ModelPrice{}, false + } + for _, p := range deepSeekPrices() { + if p.ID == id { + return p, true + } + } + return ModelPrice{}, false +} + +func normalizePriceModelID(modelID string) string { + id := strings.ToLower(strings.TrimSpace(modelID)) + if idx := strings.LastIndex(id, "/"); idx >= 0 { + id = id[idx+1:] + } + for _, suffix := range []string{"-sg", "_sg"} { + if strings.HasSuffix(id, suffix) { + id = strings.TrimSuffix(id, suffix) + } + } + return id +} + +// isPeakHour reports whether the UTC timestamp falls in the vendor peak window. +func (p ModelPrice) isPeakHour(at time.Time) bool { + if p.PeakStartHour == 0 && p.PeakEndHour == 0 { + return false + } + local := at.In(chinaLocation) + if p.PeakWeekdaysOnly && (local.Weekday() == time.Saturday || local.Weekday() == time.Sunday) { + return false + } + hour := local.Hour() + // DeepSeek's peak window is 09:00–12:00 and 14:00–18:00, not a single span. + // Models with a single contiguous morning/afternoon window still fit the + // [start,end) test below because the published midday break is the only gap. + if p.PeakStartHour == 9 && p.PeakEndHour == 18 { + return (hour >= 9 && hour < 12) || (hour >= 14 && hour < 18) + } + return hour >= p.PeakStartHour && hour < p.PeakEndHour +} + +// bandCost prices a token split at the given band. +func bandCost(u TokenUsage, b ModelPriceBand) float64 { + const million = 1_000_000 + return (float64(u.CacheHit)*b.CacheHit + float64(u.CacheMiss)*b.CacheMiss + float64(u.Output)*b.Output) / million +} + +// Cost prices one request's usage; when peak is true it bills the whole split +// at the peak band. (Per-request granularity is the caller's; a request that +// straddles the boundary is billed by its start time, which matches how the +// provider stamps usage.) +func (p ModelPrice) Cost(u TokenUsage, peak bool) float64 { + if peak { + return bandCost(u, p.Peak) + } + return bandCost(u, p.OffPeak) +} + +// CostUsageRow is one pre-aggregated slice the store hands back: token usage for +// one model in one whole-hour UTC bucket. Bucketing by hour keeps every row on +// one side of DeepSeek's peak boundary (which is set on Beijing whole hours), so +// the peak/off-peak split stays exact even when callers ask for a daily view. +type CostUsageRow struct { + Model string + HourStart time.Time // UTC, truncated to the hour + Requests int64 + Usage TokenUsage + // Credits is the quota consumed in this bucket; it is provider-agnostic and + // survives models that have no official list price. + Credits float64 +} + +// accumulateUsage folds one bucket's tokens and quota into a target row. Cost is +// added by the caller because only priced rows carry it. +func accumulateUsage(target *ModelCost, row CostUsageRow, cost float64) { + target.Requests += row.Requests + target.CacheHit += row.Usage.CacheHit + target.CacheMiss += row.Usage.CacheMiss + target.Output += row.Usage.Output + target.TotalTokens += row.Usage.Total() + target.Credits += row.Credits + target.Cost += cost +} + +// BuildCostBreakdown prices pre-aggregated usage rows into the console payload. +// When daily is true the series is bucketed by UTC day, otherwise by hour. +func BuildCostBreakdown(rows []CostUsageRow, from, to time.Time, daily bool) CostBreakdown { + from = from.UTC() + to = to.UTC() + hours := int(to.Sub(from).Round(time.Hour) / time.Hour) + if hours < 1 { + hours = 1 + } + + byModel := map[string]*ModelCost{} + order := make([]string, 0, len(rows)) + seen := map[string]bool{} + + // Series buckets keyed by ISO-ish string; we keep the bucket start for sort. + type seriesAcc struct { + at time.Time + perModel map[string]float64 + tokens int64 + credits float64 + } + series := map[string]*seriesAcc{} + seriesOrder := make([]string, 0) + + bucketKey := func(t time.Time) (string, time.Time) { + if daily { + day := time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, time.UTC) + return day.Format("2006-01-02"), day + } + h := t.Truncate(time.Hour) + return h.Format("2006-01-02T15"), h + } + + var total ModelCost + unpricedSet := map[string]bool{} + var unpriced []string + for _, row := range rows { + price, ok := LookupModelPrice(row.Model) + if ok && price.CanonicalID != "" { + if canonical, found := LookupModelPrice(price.CanonicalID); found { + price = canonical + } + } + if !ok { + // No official list price, but the request still consumed quota and + // tokens. Keep the row so the usage table and credit totals stay + // complete; only the monetary columns stay zero. + if row.Requests > 0 || row.Usage.Total() > 0 || row.Credits > 0 { + key := strings.TrimSpace(row.Model) + if key == "" { + key = "(unknown)" + } + if !unpricedSet[key] { + unpricedSet[key] = true + unpriced = append(unpriced, key) + } + } + mc := byModel[row.Model] + if mc == nil { + label := strings.TrimSpace(row.Model) + if label == "" { + label = "(unknown)" + } + mc = &ModelCost{ID: label, Label: label, Currency: ""} + byModel[row.Model] = mc + } + if !seen[row.Model] { + seen[row.Model] = true + order = append(order, row.Model) + } + accumulateUsage(mc, row, 0) + accumulateUsage(&total, row, 0) + key, at := bucketKey(row.HourStart) + acc := series[key] + if acc == nil { + acc = &seriesAcc{at: at, perModel: map[string]float64{}} + series[key] = acc + seriesOrder = append(seriesOrder, key) + } + acc.tokens += row.Usage.Total() + acc.credits += row.Credits + continue + } + mc := byModel[price.ID] + if mc == nil { + mc = &ModelCost{ID: price.ID, Label: price.Label, Vendor: price.Vendor, Currency: price.Currency} + byModel[price.ID] = mc + } + if !seen[price.ID] { + seen[price.ID] = true + order = append(order, price.ID) + } + peak := price.isPeakHour(row.HourStart) + cost := price.Cost(row.Usage, peak) + + mc.Priced = true + accumulateUsage(mc, row, cost) + if peak { + mc.CostPeak += cost + mc.PeakRequests += row.Requests + } else { + mc.CostOffPeak += cost + } + + accumulateUsage(&total, row, cost) + if peak { + total.CostPeak += cost + total.PeakRequests += row.Requests + } else { + total.CostOffPeak += cost + } + + key, at := bucketKey(row.HourStart) + acc := series[key] + if acc == nil { + acc = &seriesAcc{at: at, perModel: map[string]float64{}} + series[key] = acc + seriesOrder = append(seriesOrder, key) + } + acc.perModel[price.ID] += cost + acc.tokens += row.Usage.Total() + acc.credits += row.Credits + } + + sort.Slice(order, func(i, j int) bool { return byModel[order[i]].Cost > byModel[order[j]].Cost }) + models := make([]ModelCost, 0, len(order)) + for _, id := range order { + models = append(models, *byModel[id]) + } + + sort.Strings(seriesOrder) + points := make([]CostSeriesPoint, 0, len(seriesOrder)) + for _, key := range seriesOrder { + acc := series[key] + points = append(points, CostSeriesPoint{At: acc.at, PerModel: acc.perModel, Tokens: acc.tokens, Credits: acc.credits}) + } + + sort.Strings(unpriced) + return CostBreakdown{ + Window: RequestStatsWindow{From: from, To: to, Hours: hours}, + Currency: "CNY", + Models: models, + Totals: total, + Series: points, + Unpriced: unpriced, + } +} diff --git a/internal/accounts/model_cost_test.go b/internal/accounts/model_cost_test.go new file mode 100644 index 00000000..e6a0d277 --- /dev/null +++ b/internal/accounts/model_cost_test.go @@ -0,0 +1,177 @@ +package accounts + +import ( + "math" + "strings" + "testing" + "time" +) + +func TestLookupModelPriceNormalizesIDs(t *testing.T) { + cases := map[string]string{ + "deepseek-v4.1-flash": "deepseek-v4.1-flash", + "DeepSeek-V4.1-Flash": "deepseek-v4.1-flash", + "workbuddy/deepseek-v4.1-flash": "deepseek-v4.1-flash", + "deepseek-v4.1-flash-sg": "deepseek-v4.1-flash", + "deepseek-v4-flash": "deepseek-v4-flash", + "deepseek-v4-pro": "deepseek-v4-pro", + } + for in, want := range cases { + price, ok := LookupModelPrice(in) + if !ok { + t.Fatalf("LookupModelPrice(%q) not found", in) + } + if price.ID != want { + t.Fatalf("LookupModelPrice(%q).ID = %q, want %q", in, price.ID, want) + } + } + if _, ok := LookupModelPrice("glm-5.3-flash"); ok { + t.Fatal("glm-5.3-flash must not be priced as DeepSeek") + } + if _, ok := LookupModelPrice(""); ok { + t.Fatal("empty id must not resolve") + } +} + +func TestPeakHourBeijingWindow(t *testing.T) { + price, _ := LookupModelPrice("deepseek-v4.1-flash") + // Beijing is UTC+8. Monday 2026-10-12. + mk := func(beijingHour, minute int) time.Time { + return time.Date(2026, 10, 12, beijingHour, minute, 0, 0, chinaLocation).UTC() + } + peaks := []time.Time{mk(9, 0), mk(11, 59), mk(14, 0), mk(17, 59)} + for _, at := range peaks { + if !price.isPeakHour(at) { + t.Fatalf("%s should be peak", at.In(chinaLocation).Format("Mon 15:04")) + } + } + offpeak := []time.Time{mk(8, 59), mk(12, 0), mk(13, 59), mk(18, 0), mk(3, 0)} + for _, at := range offpeak { + if price.isPeakHour(at) { + t.Fatalf("%s should be off-peak", at.In(chinaLocation).Format("Mon 15:04")) + } + } + // Weekend day is off-peak regardless of hour. + sat := time.Date(2026, 10, 10, 10, 0, 0, 0, chinaLocation).UTC() + if price.isPeakHour(sat) { + t.Fatal("Saturday 10:00 Beijing must be off-peak") + } +} + +func TestModelPriceCost(t *testing.T) { + price, _ := LookupModelPrice("deepseek-v4.1-flash") + usage := TokenUsage{CacheHit: 1_000_000, CacheMiss: 1_000_000, Output: 1_000_000} + // Off-peak: 0.02 + 1 + 4 = 5.02 + if got := price.Cost(usage, false); math.Abs(got-5.02) > 1e-9 { + t.Fatalf("off-peak cost = %v, want 5.02", got) + } + // Peak is exactly double. + if got := price.Cost(usage, true); math.Abs(got-10.04) > 1e-9 { + t.Fatalf("peak cost = %v, want 10.04", got) + } +} + +func TestBuildCostBreakdownSplitsPeakAndOffPeak(t *testing.T) { + // 2026-10-12 02:00 UTC = 10:00 Beijing (peak). 2026-10-12 20:00 UTC = 04:00 + // Beijing next day (off-peak) — both same UTC day so the daily series merges. + peakHour := time.Date(2026, 10, 12, 2, 0, 0, 0, time.UTC) + offHour := time.Date(2026, 10, 12, 20, 0, 0, 0, time.UTC) + rows := []CostUsageRow{ + {Model: "deepseek-v4.1-flash", HourStart: peakHour, Requests: 3, Usage: TokenUsage{CacheHit: 1_000_000, Output: 1_000_000}}, + {Model: "workbuddy/deepseek-v4.1-flash", HourStart: offHour, Requests: 2, Usage: TokenUsage{CacheMiss: 1_000_000, Output: 1_000_000}}, + {Model: "glm-5.3-flash", HourStart: peakHour, Requests: 9, Usage: TokenUsage{Output: 5_000_000}}, // unpriced + } + from := time.Date(2026, 10, 10, 0, 0, 0, 0, time.UTC) + to := time.Date(2026, 10, 16, 0, 0, 0, 0, time.UTC) + got := BuildCostBreakdown(rows, from, to, true) + + // Every model that carried usage is reported; glm-5.3-flash has no list + // price, so it appears with Priced=false and zero cost while still + // contributing its tokens. + if len(got.Models) != 2 { + t.Fatalf("models = %d, want 2 (1 priced + 1 unpriced)", len(got.Models)) + } + var m ModelCost + for _, candidate := range got.Models { + if candidate.Priced { + m = candidate + } else if !strings.Contains(candidate.ID, "glm") { + t.Fatalf("unpriced model = %q, want glm-5.3-flash", candidate.ID) + } + } + if m.Requests != 5 { + t.Fatalf("requests = %d, want 5", m.Requests) + } + // Peak hour: 1M hit*0.04 + 1M out*8 = 8.04 + // Off hour: 1M miss*1 + 1M out*4 = 5.0 + wantPeak, wantOff := 8.04, 5.0 + if math.Abs(m.CostPeak-wantPeak) > 1e-9 || math.Abs(m.CostOffPeak-wantOff) > 1e-9 { + t.Fatalf("peak/off = %v/%v, want %v/%v", m.CostPeak, m.CostOffPeak, wantPeak, wantOff) + } + if math.Abs(m.Cost-(wantPeak+wantOff)) > 1e-9 { + t.Fatalf("total cost = %v, want %v", m.Cost, wantPeak+wantOff) + } + if m.PeakRequests != 3 { + t.Fatalf("peak requests = %d, want 3", m.PeakRequests) + } + if len(got.Unpriced) != 1 || got.Unpriced[0] != "glm-5.3-flash" { + t.Fatalf("unpriced = %v, want [glm-5.3-flash]", got.Unpriced) + } + // Both hours fall on the same UTC day, so the daily series has one point. + if len(got.Series) != 1 { + t.Fatalf("series points = %d, want 1", len(got.Series)) + } + if math.Abs(got.Series[0].PerModel["deepseek-v4.1-flash"]-(wantPeak+wantOff)) > 1e-9 { + t.Fatalf("series bucket = %v, want %v", got.Series[0].PerModel["deepseek-v4.1-flash"], wantPeak+wantOff) + } +} + +func TestBuildCostBreakdownReportsCreditsForUnpricedModels(t *testing.T) { + // Subscription accounts consume quota even for models with no official list + // price, so those rows must still surface tokens and credits with zero cost. + peakHour := time.Date(2026, 10, 12, 2, 0, 0, 0, time.UTC) + rows := []CostUsageRow{ + {Model: "deepseek-v4.1-flash", HourStart: peakHour, Requests: 2, + Usage: TokenUsage{CacheHit: 1_000_000, Output: 1_000_000}, Credits: 1.5}, + {Model: "glm-5.3-flash", HourStart: peakHour, Requests: 4, + Usage: TokenUsage{CacheMiss: 2_000_000, Output: 3_000_000}, Credits: 7.25}, + } + from := time.Date(2026, 10, 10, 0, 0, 0, 0, time.UTC) + to := time.Date(2026, 10, 16, 0, 0, 0, 0, time.UTC) + got := BuildCostBreakdown(rows, from, to, true) + + var priced, unpriced *ModelCost + for i := range got.Models { + if got.Models[i].Priced { + priced = &got.Models[i] + } else { + unpriced = &got.Models[i] + } + } + if priced == nil || unpriced == nil { + t.Fatalf("models = %d, want one priced and one unpriced", len(got.Models)) + } + if unpriced.Credits != 7.25 { + t.Fatalf("unpriced credits = %v, want 7.25", unpriced.Credits) + } + if unpriced.TotalTokens != 5_000_000 { + t.Fatalf("unpriced tokens = %d, want 5000000", unpriced.TotalTokens) + } + if unpriced.Cost != 0 { + t.Fatalf("unpriced cost = %v, want 0", unpriced.Cost) + } + if priced.Credits != 1.5 { + t.Fatalf("priced credits = %v, want 1.5", priced.Credits) + } + // Totals keep both kinds of cost unit so the console can show quota consumed + // across every provider next to the DeepSeek-equivalent money. + if got.Totals.Credits != 8.75 { + t.Fatalf("total credits = %v, want 8.75", got.Totals.Credits) + } + if got.Totals.Requests != 6 { + t.Fatalf("total requests = %d, want 6", got.Totals.Requests) + } + if len(got.Series) != 1 || got.Series[0].Credits != 8.75 { + t.Fatalf("series credits = %+v, want one point with 8.75", got.Series) + } +} diff --git a/internal/api/logs_test.go b/internal/api/logs_test.go index c6d1dad9..52cb5502 100644 --- a/internal/api/logs_test.go +++ b/internal/api/logs_test.go @@ -4,6 +4,7 @@ import ( "context" "encoding/json" "fmt" + "math" "net/http" "net/http/httptest" "strings" @@ -254,3 +255,63 @@ func TestGetRequestLogExposesUsageDetail(t *testing.T) { t.Fatalf("usage_detail = %+v", got.UsageDetail) } } + +func TestUsageCostEndpointPricesDeepSeek(t *testing.T) { + dir := t.TempDir() + srv := New(config.Config{ + Host: "127.0.0.1", Port: 3010, ProxyAPIKey: "secret", + QoderHome: dir, DataDir: dir, + }) + defer srv.Close() + + ctx := context.Background() + // Noon UTC on a Monday is 20:00 Beijing => off-peak. + at := time.Date(2026, 10, 12, 12, 0, 0, 0, time.UTC) + prompt, completion, cacheRead := 1_000_000, 1_000_000, 500_000 + if err := srv.Recorder.Store().InsertRequestLog(ctx, accounts.RequestLog{ + ID: accounts.NewRequestID(), CreatedAt: at, Status: accounts.RequestStatusOK, + RequestedModel: "deepseek-v4.1-flash", AccountID: "acc_wb", Provider: "workbuddy", + PromptTokens: &prompt, CompletionTokens: &completion, CacheReadTokens: &cacheRead, + }); err != nil { + t.Fatal(err) + } + + req := httptest.NewRequest(http.MethodGet, "/api/usage/cost?from=2026-10-12T00:00:00Z&to=2026-10-13T00:00:00Z", nil) + req.Header.Set("Authorization", "Bearer secret") + rec := httptest.NewRecorder() + srv.Handler().ServeHTTP(rec, req) + if rec.Code != http.StatusOK { + t.Fatalf("status=%d body=%s", rec.Code, rec.Body.String()) + } + var got accounts.CostBreakdown + if err := json.Unmarshal(rec.Body.Bytes(), &got); err != nil { + t.Fatal(err) + } + if got.Totals.Requests != 1 || len(got.Models) != 1 { + t.Fatalf("breakdown = %+v", got.Totals) + } + // Off-peak 500k hit*0.02 + 500k miss*1 + 1M out*4 = 0.01 + 0.5 + 4 = 4.51 + if math.Abs(got.Totals.Cost-4.51) > 1e-6 { + t.Fatalf("cost = %v, want 4.51", got.Totals.Cost) + } + if got.Currency != "CNY" { + t.Fatalf("currency = %q", got.Currency) + } +} + +func TestUsageCostAndPricingRequireConsoleKey(t *testing.T) { + dir := t.TempDir() + srv := New(config.Config{ + Host: "127.0.0.1", Port: 3010, ProxyAPIKey: "secret", + QoderHome: dir, DataDir: dir, + }) + defer srv.Close() + for _, path := range []string{"/api/usage/cost", "/api/usage/pricing"} { + req := httptest.NewRequest(http.MethodGet, path, nil) + rec := httptest.NewRecorder() + srv.Handler().ServeHTTP(rec, req) + if rec.Code != http.StatusUnauthorized { + t.Fatalf("%s without key status=%d, want 401", path, rec.Code) + } + } +} diff --git a/internal/console/usage.go b/internal/console/usage.go new file mode 100644 index 00000000..208c38d7 --- /dev/null +++ b/internal/console/usage.go @@ -0,0 +1,82 @@ +package console + +import ( + "net/http" + "strings" + "time" + + "github.com/caigee-cmd/cli2api/internal/accounts" +) + +// exportWindowHours is the widest range the cost panel can ask for. Request logs +// are pruned after 7 days / 20k rows, so a longer window would silently return +// partial data; 168h makes that ceiling explicit instead of misleading. +const exportWindowHours = 24 * 7 + +func (h *Handler) HandleUsage(w http.ResponseWriter, r *http.Request) { + path := strings.Trim(r.URL.Path, "/") + switch path { + case "api/usage/pricing": + if r.Method != http.MethodGet { + writeErr(w, http.StatusMethodNotAllowed, "method_not_allowed", "GET only") + return + } + catalog := make([]accounts.ModelPrice, 0) + for _, model := range accounts.ModelPriceCatalog() { + if model.Alias { + continue + } + catalog = append(catalog, model) + } + // No display copy here: the console renders localized text from its own + // i18n messages, so the API stays language-neutral. + writeJSON(w, http.StatusOK, map[string]any{ + "currency": "CNY", + "models": catalog, + }) + case "api/usage/cost": + if r.Method != http.MethodGet { + writeErr(w, http.StatusMethodNotAllowed, "method_not_allowed", "GET only") + return + } + h.handleUsageCost(w, r) + default: + writeErr(w, http.StatusNotFound, "not_found", "unknown usage endpoint") + } +} + +func (h *Handler) handleUsageCost(w http.ResponseWriter, r *http.Request) { + if h.Recorder == nil { + writeErr(w, http.StatusServiceUnavailable, "logs_unavailable", "request logs unavailable") + return + } + now := time.Now().UTC() + to := ParseQueryTime(r.URL.Query().Get("to"), true) + if to == nil { + to = &now + } + from := ParseQueryTime(r.URL.Query().Get("from"), false) + if from == nil { + earliest := to.Add(-exportWindowHours * time.Hour) + from = &earliest + } + // Clamp to the retention ceiling so a wide custom range cannot imply + // full coverage of data the pruner already dropped. + if floor := to.Add(-exportWindowHours * time.Hour); from.Before(floor) { + from = &floor + } + if !to.After(*from) { + start := to.Add(-24 * time.Hour) + from = &start + } + breakdown, err := h.Recorder.CostBreakdown(r.Context(), *from, *to) + if err != nil { + if err.Error() == "request logs unavailable" { + writeErr(w, http.StatusServiceUnavailable, "logs_unavailable", err.Error()) + return + } + writeErr(w, http.StatusInternalServerError, "cost_failed", err.Error()) + return + } + writeJSON(w, http.StatusOK, breakdown) +} diff --git a/internal/logs/recorder.go b/internal/logs/recorder.go index 8b1288a1..ba295e15 100644 --- a/internal/logs/recorder.go +++ b/internal/logs/recorder.go @@ -30,6 +30,7 @@ type RequestQuery interface { ListRequestLogs(ctx context.Context, filter accounts.RequestLogFilter) (accounts.RequestLogList, error) GetRequestLog(ctx context.Context, id string) (accounts.RequestLog, error) SummarizeRequestLogs(ctx context.Context, from, to time.Time) (accounts.RequestStats, error) + SummarizeModelCosts(ctx context.Context, from, to time.Time) ([]accounts.CostUsageRow, error) } // RequestStore is the union the SQLite store already implements. It keeps @@ -253,6 +254,22 @@ func (r *RequestRecorder) StatsCacheSize() int { return len(r.statsCache) } +// CostBreakdown prices the DeepSeek usage in the window against the official +// list prices. It is computed live (not cached) because the panel is opened on +// demand and the hourly aggregate is cheap. +func (r *RequestRecorder) CostBreakdown(ctx context.Context, from, to time.Time) (accounts.CostBreakdown, error) { + store := r.Store() + if store == nil { + return accounts.CostBreakdown{}, fmt.Errorf("request logs unavailable") + } + rows, err := store.SummarizeModelCosts(ctx, from, to) + if err != nil { + return accounts.CostBreakdown{}, err + } + span := to.Sub(from) + return accounts.BuildCostBreakdown(rows, from, to, span > 48*time.Hour), nil +} + func logf(format string, args ...any) { log.Printf("[logs] "+format, args...) } diff --git a/internal/server/router.go b/internal/server/router.go index c00e14e3..edde5f62 100644 --- a/internal/server/router.go +++ b/internal/server/router.go @@ -30,6 +30,8 @@ func (s *Server) routes() { s.mux.HandleFunc("/api/accounts/", s.withConsoleKey(s.consoleHandler().HandleAccountByID)) s.mux.HandleFunc("/api/logs", s.withConsoleKey(s.consoleHandler().HandleLogs)) s.mux.HandleFunc("/api/logs/", s.withConsoleKey(s.consoleHandler().HandleLogs)) + s.mux.HandleFunc("/api/usage", s.withConsoleKey(s.consoleHandler().HandleUsage)) + s.mux.HandleFunc("/api/usage/", s.withConsoleKey(s.consoleHandler().HandleUsage)) s.mux.HandleFunc("/api/chat", s.withConsoleKey(s.consoleHandler().HandleChat)) s.mux.HandleFunc(endpoint.ModelsPath, s.withAPIKey(s.gatewayHandler().HandleModels)) s.mux.HandleFunc(endpoint.ChatCompletionsPath, s.withAPIKey(s.gatewayHandler().HandleChatCompletions)) @@ -52,7 +54,7 @@ func (s *Server) routes() { r.URL.Path != "/og-card.svg" && r.URL.Path != "/site.webmanifest" { switch r.URL.Path { - case "/login", "/auth", "/providers", "/access", "/accounts", "/system", "/logs", "/keys": + case "/login", "/auth", "/providers", "/access", "/accounts", "/system", "/logs", "/keys", "/usage": default: http.NotFound(w, r) return diff --git a/internal/store/request_logs.go b/internal/store/request_logs.go index 6382afd1..1f3f9ad6 100644 --- a/internal/store/request_logs.go +++ b/internal/store/request_logs.go @@ -860,3 +860,72 @@ func nullIntPtr(value sql.NullInt64) *int { converted := int(value.Int64) return &converted } + +// SummarizeModelCosts aggregates token usage and consumed quota per model per +// whole UTC hour. It covers every provider, not only the ones with an official +// list price: subscription accounts still consume quota for unpriced models, and +// the console reports that quota alongside tokens. Rows with a NULL +// prompt_tokens (failed before usage was known) contribute no tokens but still +// count their recorded credits. +func (s *Store) SummarizeModelCosts(ctx context.Context, from, to time.Time) ([]accounts.CostUsageRow, error) { + if from.IsZero() { + from = time.Now().UTC().Add(-24 * time.Hour) + } + if to.IsZero() { + to = time.Now().UTC() + } + from = from.UTC() + to = to.UTC() + if !to.After(from) { + to = from.Add(time.Hour) + } + + // The model id is normalized so WorkBuddy's "workbuddy/deepseek-v4.1-flash" + // and "-sg" aliases fold onto the same row; pricing then decides whether a + // row is billable at list price. + rows, err := s.db.QueryContext(ctx, ` +SELECT + COALESCE(NULLIF(requested_model, ''), mapped_model, '') AS model_id, + substr(created_at, 1, 13) AS hour_key, + COALESCE(SUM(CASE WHEN prompt_tokens IS NOT NULL OR completion_tokens IS NOT NULL THEN 1 ELSE 0 END), 0), + COALESCE(SUM(COALESCE(cache_read_tokens, 0)), 0), + COALESCE(SUM(CASE WHEN prompt_tokens IS NULL THEN 0 ELSE MAX(prompt_tokens - COALESCE(cache_read_tokens, 0), 0) END), 0), + COALESCE(SUM(COALESCE(completion_tokens, 0)), 0), + COALESCE(SUM(COALESCE(credits, 0)), 0) +FROM request_logs +WHERE substr(created_at, 1, 19) >= ? AND substr(created_at, 1, 19) <= ? + AND COALESCE(NULLIF(requested_model, ''), mapped_model, '') <> '' +GROUP BY model_id, hour_key`, from.Format("2006-01-02T15:04:05"), to.Format("2006-01-02T15:04:05")) + if err != nil { + return nil, fmt.Errorf("summarize model costs: %w", err) + } + defer rows.Close() + + out := make([]accounts.CostUsageRow, 0, 128) + for rows.Next() { + var ( + model string + hourKey string + requests int64 + hit int64 + miss int64 + output int64 + credits float64 + ) + if err := rows.Scan(&model, &hourKey, &requests, &hit, &miss, &output, &credits); err != nil { + return nil, fmt.Errorf("scan model cost row: %w", err) + } + hour, err := time.Parse("2006-01-02T15", hourKey) + if err != nil { + continue + } + out = append(out, accounts.CostUsageRow{ + Model: model, + HourStart: hour.UTC(), + Requests: requests, + Usage: accounts.TokenUsage{CacheHit: hit, CacheMiss: miss, Output: output}, + Credits: credits, + }) + } + return out, rows.Err() +} diff --git a/internal/store/request_logs_test.go b/internal/store/request_logs_test.go index 5a5f532c..55159fa9 100644 --- a/internal/store/request_logs_test.go +++ b/internal/store/request_logs_test.go @@ -3,6 +3,7 @@ package store import ( "context" "github.com/caigee-cmd/cli2api/internal/accounts" + "math" "path/filepath" "testing" "time" @@ -439,3 +440,76 @@ func TestRequestLogPersistsRouting(t *testing.T) { t.Fatalf("detail = %+v, err=%v", detail, err) } } + +func TestSummarizeModelCostsAggregatesPricedModels(t *testing.T) { + ctx := context.Background() + store, err := OpenStore(filepath.Join(t.TempDir(), "qoder.db")) + if err != nil { + t.Fatal(err) + } + defer store.Close() + + // Peak hour (Beijing 10:00 = UTC 02:00) and off-peak hour, same day. + peak := time.Date(2026, 10, 12, 2, 15, 0, 0, time.UTC) + off := time.Date(2026, 10, 12, 20, 15, 0, 0, time.UTC) + insert := func(id, model string, at time.Time, prompt, completion, cacheRead int) { + p, c, cr := prompt, completion, cacheRead + if err := store.InsertRequestLog(ctx, accounts.RequestLog{ + ID: id, CreatedAt: at, Status: accounts.RequestStatusOK, RequestedModel: model, + PromptTokens: &p, CompletionTokens: &c, CacheReadTokens: &cr, UsageSource: "estimate", + }); err != nil { + t.Fatal(err) + } + } + insert("req_peak1", "deepseek-v4.1-flash", peak, 1_000_000, 1_000_000, 400_000) + insert("req_peak2", "deepseek-v4.1-flash", peak, 500_000, 0, 500_000) + insert("req_off1", "workbuddy/deepseek-v4.1-flash", off, 1_000_000, 1_000_000, 0) + insert("req_glm", "glm-5.3-flash", peak, 10, 10, 0) // unpriced, must be excluded + // A failed row with NULL prompt tokens must contribute nothing. + if err := store.InsertRequestLog(ctx, accounts.RequestLog{ + ID: "req_failed", CreatedAt: peak, Status: accounts.RequestStatusError, RequestedModel: "deepseek-v4.1-flash", + }); err != nil { + t.Fatal(err) + } + + from := time.Date(2026, 10, 12, 0, 0, 0, 0, time.UTC) + to := time.Date(2026, 10, 13, 0, 0, 0, 0, time.UTC) + rows, err := store.SummarizeModelCosts(ctx, from, to) + if err != nil { + t.Fatal(err) + } + breakdown := accounts.BuildCostBreakdown(rows, from, to, true) + // Model rows now include unpriced models so the console can still report + // their tokens and quota; only the priced one carries the monetary columns. + if len(breakdown.Models) != 2 { + t.Fatalf("models = %d, want 2 (priced + unpriced glm)", len(breakdown.Models)) + } + var m accounts.ModelCost + var unpriced accounts.ModelCost + for _, candidate := range breakdown.Models { + if candidate.Priced { + m = candidate + } else { + unpriced = candidate + } + } + if unpriced.ID != "glm-5.3-flash" { + t.Fatalf("unpriced id = %q, want glm-5.3-flash", unpriced.ID) + } + if unpriced.Output != 10 || unpriced.Cost != 0 { + t.Fatalf("unpriced output/cost = %d/%v, want 10/0", unpriced.Output, unpriced.Cost) + } + // Peak rows: hit 400k+500k=900k, miss (600k+0)=600k, output 1M. + // Off row: hit 0, miss 1M, output 1M. + if m.CacheHit != 900_000 || m.CacheMiss != 1_600_000 || m.Output != 2_000_000 { + t.Fatalf("tokens hit/miss/out = %d/%d/%d", m.CacheHit, m.CacheMiss, m.Output) + } + if m.Requests != 3 { + t.Fatalf("requests = %d, want 3", m.Requests) + } + wantPeak := (900_000*0.04 + 600_000*2 + 1_000_000*8) / 1_000_000 + wantOff := (0*0.02 + 1_000_000*1 + 1_000_000*4) / 1_000_000 + if math.Abs(m.CostPeak-wantPeak) > 1e-9 || math.Abs(m.CostOffPeak-wantOff) > 1e-9 { + t.Fatalf("peak/off = %v/%v, want %v/%v", m.CostPeak, m.CostOffPeak, wantPeak, wantOff) + } +} diff --git a/internal/webui/static/assets/CartesianChart-DzLjYABO.js b/internal/webui/static/assets/CartesianChart-DzLjYABO.js new file mode 100644 index 00000000..1cb1b492 --- /dev/null +++ b/internal/webui/static/assets/CartesianChart-DzLjYABO.js @@ -0,0 +1,53 @@ +import{a as e,c as t,d as n,f as r,l as i,s as a,u as o}from"./index-6muxC58d.js";var s=r(i()),c=r(t()),l=`dangerouslySetInnerHTML.onCopy.onCopyCapture.onCut.onCutCapture.onPaste.onPasteCapture.onCompositionEnd.onCompositionEndCapture.onCompositionStart.onCompositionStartCapture.onCompositionUpdate.onCompositionUpdateCapture.onFocus.onFocusCapture.onBlur.onBlurCapture.onChange.onChangeCapture.onBeforeInput.onBeforeInputCapture.onInput.onInputCapture.onReset.onResetCapture.onSubmit.onSubmitCapture.onInvalid.onInvalidCapture.onLoad.onLoadCapture.onError.onErrorCapture.onKeyDown.onKeyDownCapture.onKeyPress.onKeyPressCapture.onKeyUp.onKeyUpCapture.onAbort.onAbortCapture.onCanPlay.onCanPlayCapture.onCanPlayThrough.onCanPlayThroughCapture.onDurationChange.onDurationChangeCapture.onEmptied.onEmptiedCapture.onEncrypted.onEncryptedCapture.onEnded.onEndedCapture.onLoadedData.onLoadedDataCapture.onLoadedMetadata.onLoadedMetadataCapture.onLoadStart.onLoadStartCapture.onPause.onPauseCapture.onPlay.onPlayCapture.onPlaying.onPlayingCapture.onProgress.onProgressCapture.onRateChange.onRateChangeCapture.onSeeked.onSeekedCapture.onSeeking.onSeekingCapture.onStalled.onStalledCapture.onSuspend.onSuspendCapture.onTimeUpdate.onTimeUpdateCapture.onVolumeChange.onVolumeChangeCapture.onWaiting.onWaitingCapture.onAuxClick.onAuxClickCapture.onClick.onClickCapture.onContextMenu.onContextMenuCapture.onDoubleClick.onDoubleClickCapture.onDrag.onDragCapture.onDragEnd.onDragEndCapture.onDragEnter.onDragEnterCapture.onDragExit.onDragExitCapture.onDragLeave.onDragLeaveCapture.onDragOver.onDragOverCapture.onDragStart.onDragStartCapture.onDrop.onDropCapture.onMouseDown.onMouseDownCapture.onMouseEnter.onMouseLeave.onMouseMove.onMouseMoveCapture.onMouseOut.onMouseOutCapture.onMouseOver.onMouseOverCapture.onMouseUp.onMouseUpCapture.onSelect.onSelectCapture.onTouchCancel.onTouchCancelCapture.onTouchEnd.onTouchEndCapture.onTouchMove.onTouchMoveCapture.onTouchStart.onTouchStartCapture.onPointerDown.onPointerDownCapture.onPointerMove.onPointerMoveCapture.onPointerUp.onPointerUpCapture.onPointerCancel.onPointerCancelCapture.onPointerEnter.onPointerEnterCapture.onPointerLeave.onPointerLeaveCapture.onPointerOver.onPointerOverCapture.onPointerOut.onPointerOutCapture.onGotPointerCapture.onGotPointerCaptureCapture.onLostPointerCapture.onLostPointerCaptureCapture.onScroll.onScrollCapture.onWheel.onWheelCapture.onAnimationStart.onAnimationStartCapture.onAnimationEnd.onAnimationEndCapture.onAnimationIteration.onAnimationIterationCapture.onTransitionEnd.onTransitionEndCapture`.split(`.`);function u(e){return typeof e==`string`&&l.includes(e)}var d=new Set(`aria-activedescendant.aria-atomic.aria-autocomplete.aria-busy.aria-checked.aria-colcount.aria-colindex.aria-colspan.aria-controls.aria-current.aria-describedby.aria-details.aria-disabled.aria-errormessage.aria-expanded.aria-flowto.aria-haspopup.aria-hidden.aria-invalid.aria-keyshortcuts.aria-label.aria-labelledby.aria-level.aria-live.aria-modal.aria-multiline.aria-multiselectable.aria-orientation.aria-owns.aria-placeholder.aria-posinset.aria-pressed.aria-readonly.aria-relevant.aria-required.aria-roledescription.aria-rowcount.aria-rowindex.aria-rowspan.aria-selected.aria-setsize.aria-sort.aria-valuemax.aria-valuemin.aria-valuenow.aria-valuetext.className.color.height.id.lang.max.media.method.min.name.style.target.width.role.tabIndex.accentHeight.accumulate.additive.alignmentBaseline.allowReorder.alphabetic.amplitude.arabicForm.ascent.attributeName.attributeType.autoReverse.azimuth.baseFrequency.baselineShift.baseProfile.bbox.begin.bias.by.calcMode.capHeight.clip.clipPath.clipPathUnits.clipRule.colorInterpolation.colorInterpolationFilters.colorProfile.colorRendering.contentScriptType.contentStyleType.cursor.cx.cy.d.decelerate.descent.diffuseConstant.direction.display.divisor.dominantBaseline.dur.dx.dy.edgeMode.elevation.enableBackground.end.exponent.externalResourcesRequired.fill.fillOpacity.fillRule.filter.filterRes.filterUnits.floodColor.floodOpacity.focusable.fontFamily.fontSize.fontSizeAdjust.fontStretch.fontStyle.fontVariant.fontWeight.format.from.fx.fy.g1.g2.glyphName.glyphOrientationHorizontal.glyphOrientationVertical.glyphRef.gradientTransform.gradientUnits.hanging.horizAdvX.horizOriginX.href.ideographic.imageRendering.in2.in.intercept.k1.k2.k3.k4.k.kernelMatrix.kernelUnitLength.kerning.keyPoints.keySplines.keyTimes.lengthAdjust.letterSpacing.lightingColor.limitingConeAngle.local.markerEnd.markerHeight.markerMid.markerStart.markerUnits.markerWidth.mask.maskContentUnits.maskUnits.mathematical.mode.numOctaves.offset.opacity.operator.order.orient.orientation.origin.overflow.overlinePosition.overlineThickness.paintOrder.panose1.pathLength.patternContentUnits.patternTransform.patternUnits.pointerEvents.pointsAtX.pointsAtY.pointsAtZ.preserveAlpha.preserveAspectRatio.primitiveUnits.r.radius.refX.refY.renderingIntent.repeatCount.repeatDur.requiredExtensions.requiredFeatures.restart.result.rotate.rx.ry.seed.shapeRendering.slope.spacing.specularConstant.specularExponent.speed.spreadMethod.startOffset.stdDeviation.stemh.stemv.stitchTiles.stopColor.stopOpacity.strikethroughPosition.strikethroughThickness.string.stroke.strokeDasharray.strokeDashoffset.strokeLinecap.strokeLinejoin.strokeMiterlimit.strokeOpacity.strokeWidth.surfaceScale.systemLanguage.tableValues.targetX.targetY.textAnchor.textDecoration.textLength.textRendering.to.transform.u1.u2.underlinePosition.underlineThickness.unicode.unicodeBidi.unicodeRange.unitsPerEm.vAlphabetic.values.vectorEffect.version.vertAdvY.vertOriginX.vertOriginY.vHanging.vIdeographic.viewTarget.visibility.vMathematical.widths.wordSpacing.writingMode.x1.x2.x.xChannelSelector.xHeight.xlinkActuate.xlinkArcrole.xlinkHref.xlinkRole.xlinkShow.xlinkTitle.xlinkType.xmlBase.xmlLang.xmlns.xmlnsXlink.xmlSpace.y1.y2.y.yChannelSelector.z.zoomAndPan.ref.key.angle`.split(`.`));function f(e){return typeof e==`string`&&d.has(e)}function p(e){return typeof e==`string`&&e.startsWith(`data-`)}function m(e){if(typeof e!=`object`||!e)return{};var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(f(n)||p(n))&&(t[n]=e[n]);return t}function h(e){if(e==null)return null;if((0,s.isValidElement)(e)&&typeof e.props==`object`&&e.props!==null){var t=e.props;return m(t)}return typeof e==`object`&&!Array.isArray(e)?m(e):null}function g(e){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(f(n)||p(n)||u(n))&&(t[n]=e[n]);return t}function _(e){return e==null?null:(0,s.isValidElement)(e)?g(e.props):typeof e==`object`&&!Array.isArray(e)?g(e):null}var v=[`children`,`width`,`height`,`viewBox`,`className`,`style`,`title`,`desc`];function y(){return y=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=e.children,r=e.width,i=e.height,o=e.viewBox,c=e.className,l=e.style,u=e.title,d=e.desc,f=b(e,v),p=o||{width:r,height:i,x:0,y:0},m=a(`recharts-surface`,c);return s.createElement(`svg`,y({},g(f),{className:m,width:r,height:i,style:l,viewBox:`${p.x} ${p.y} ${p.width} ${p.height}`,ref:t}),s.createElement(`title`,null,u),s.createElement(`desc`,null,d),n)}),C=[`children`,`className`];function w(){return w=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=e.children,r=e.className,i=T(e,C),o=a(`recharts-layer`,r);return s.createElement(`g`,w({className:o},g(i),{ref:t}),n)});function O(e){return e===`__proto__`}var k=/\.|(\[(?:[^[\]]*|(["'])(?:(?!\2)[^\\]|\\.)*?\2)\])/;function A(e){switch(typeof e){case`number`:case`symbol`:return!1;case`string`:return e===``||e.startsWith(`.`)||e.endsWith(`.`)?!1:k.test(e);default:return!1}}function j(e){return typeof e==`string`||typeof e==`symbol`?e:Object.is(e?.valueOf?.(),-0)?`-0`:String(e)}function M(e){return typeof e==`symbol`||e instanceof Symbol}function N(e){return e==null?``:ee(e)}function ee(e){if(typeof e==`string`)return e;if(Array.isArray(e))return e.map(ee).join(`,`);if(M(e))return e.toString();let t=e+``;return t===`0`&&Object.is(Number(e),-0)?`-0`:t}function te(e){if(Array.isArray(e))return e.map(j);if(typeof e==`symbol`)return[e];e=N(e);let t=[],n=e.length;if(n===0)return t;let r=0,i=``,a=``,o=!1,s=!1,c=/^-?\d+(?:\.\d+)?$/;for(e.charCodeAt(0)===46&&t.push(``);r1&&arguments[1]!==void 0?arguments[1]:ie),n=Math.round(e*t)/t;return Object.is(n,-0)?0:n}function P(e){var t=[...arguments].slice(1);return e.reduce((e,n,r)=>{var i=t[r-1];return typeof i==`string`?e+i+n:i===void 0?e+n:e+ae(i)+n},``)}var oe=e=>e===0?0:e>0?1:-1,F=e=>typeof e==`number`&&e!=+e,se=e=>typeof e==`string`&&e.length>1&&e.indexOf(`%`)===e.length-1,I=e=>(typeof e==`number`||e instanceof Number)&&!F(e),ce=e=>I(e)||typeof e==`string`,le=0,ue=e=>{var t=++le;return`${e||``}${t}`},de=function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0&&arguments[3];if(!I(e)&&typeof e!=`string`)return n;var i;if(se(e)){if(t==null)return n;var a=e.indexOf(`%`);i=t*parseFloat(e.slice(0,a))/100}else i=+e;return F(i)&&(i=n),r&&t!=null&&i>t&&(i=t),i},fe=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;re&&(typeof t==`function`?t(e):ne(e,t))===n)}var he=e=>e==null,ge=e=>he(e)?e:`${e.charAt(0).toUpperCase()}${e.slice(1)}`;function _e(e){return e!=null}function ve(){}function ye(e){if(e)return{x:e.x,y:e.y,upperWidth:`upperWidth`in e?e.upperWidth:e.width,lowerWidth:`lowerWidth`in e?e.lowerWidth:e.width,width:e.width,height:e.height}}function be(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function xe(e){for(var t=1;t{var t=e.viewBox,n=e.position,r=e.offset,i=r===void 0?0:r,a=e.parentViewBox,o=e.clamp,s=ye(t),c=s.x,l=s.y,u=s.height,d=s.upperWidth,f=s.lowerWidth,p=c,m=c+(d-f)/2,h=(p+m)/2,g=(d+f)/2,_=p+d/2,v=u>=0?1:-1,y=v*i,b=v>0?`end`:`start`,x=v>0?`start`:`end`,S=d>=0?1:-1,C=S*i,w=S>0?`end`:`start`,T=S>0?`start`:`end`,E=a;if(n===`top`){var D={x:p+d/2,y:l-y,horizontalAnchor:`middle`,verticalAnchor:b};return o&&E&&(D.height=Math.max(l-E.y,0),D.width=d),D}if(n===`bottom`){var O={x:m+f/2,y:l+u+y,horizontalAnchor:`middle`,verticalAnchor:x};return o&&E&&(O.height=Math.max(E.y+E.height-(l+u),0),O.width=f),O}if(n===`left`){var k={x:h-C,y:l+u/2,horizontalAnchor:w,verticalAnchor:`middle`};return o&&E&&(k.width=Math.max(k.x-E.x,0),k.height=u),k}if(n===`right`){var A={x:h+g+C,y:l+u/2,horizontalAnchor:T,verticalAnchor:`middle`};return o&&E&&(A.width=Math.max(E.x+E.width-A.x,0),A.height=u),A}var j=o&&E?{width:g,height:u}:{};return n===`insideLeft`?xe({x:h+C,y:l+u/2,horizontalAnchor:T,verticalAnchor:`middle`},j):n===`insideRight`?xe({x:h+g-C,y:l+u/2,horizontalAnchor:w,verticalAnchor:`middle`},j):n===`insideTop`?xe({x:p+d/2,y:l+y,horizontalAnchor:`middle`,verticalAnchor:x},j):n===`insideBottom`?xe({x:m+f/2,y:l+u-y,horizontalAnchor:`middle`,verticalAnchor:b},j):n===`insideTopLeft`?xe({x:p+C,y:l+y,horizontalAnchor:T,verticalAnchor:x},j):n===`insideTopRight`?xe({x:p+d-C,y:l+y,horizontalAnchor:w,verticalAnchor:x},j):n===`insideBottomLeft`?xe({x:m+C,y:l+u-y,horizontalAnchor:T,verticalAnchor:b},j):n===`insideBottomRight`?xe({x:m+f-C,y:l+u-y,horizontalAnchor:w,verticalAnchor:b},j):n&&typeof n==`object`&&(I(n.x)||se(n.x))&&(I(n.y)||se(n.y))?xe({x:c+de(n.x,g),y:l+de(n.y,u),horizontalAnchor:`end`,verticalAnchor:`end`},j):xe({x:_,y:l+u/2,horizontalAnchor:`middle`,verticalAnchor:`middle`},j)},Ee=[`top`,`left`,`right`,`bottom`];function De(e){return e==null?!1:typeof e==`object`||Ee.includes(e)}var Oe=(0,s.createContext)(null);function L(e){return function(){return e}}var ke=Math.PI,Ae=2*ke,je=1e-6,Me=Ae-je;function Ne(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw Error(`invalid digits: ${e}`);if(t>15)return Ne;let n=10**t;return function(e){this._+=e[0];for(let t=1,r=e.length;tje){if(!(Math.abs(u*s-c*l)>je)||!i)this._append`L${this._x1=e},${this._y1=t}`;else{let f=n-a,p=r-o,m=s*s+c*c,h=f*f+p*p,g=Math.sqrt(m),_=Math.sqrt(d),v=i*Math.tan((ke-Math.acos((m+d-h)/(2*g*_)))/2),y=v/_,b=v/g;Math.abs(y-1)>je&&this._append`L${e+y*l},${t+y*u}`,this._append`A${i},${i},0,0,${+(u*f>l*p)},${this._x1=e+b*s},${this._y1=t+b*c}`}}}arc(e,t,n,r,i,a){if(e=+e,t=+t,n=+n,a=!!a,n<0)throw Error(`negative radius: ${n}`);let o=n*Math.cos(r),s=n*Math.sin(r),c=e+o,l=t+s,u=1^a,d=a?r-i:i-r;this._x1===null?this._append`M${c},${l}`:(Math.abs(this._x1-c)>je||Math.abs(this._y1-l)>je)&&this._append`L${c},${l}`,n&&(d<0&&(d=d%Ae+Ae),d>Me?this._append`A${n},${n},0,1,${u},${e-o},${t-s}A${n},${n},0,1,${u},${this._x1=c},${this._y1=l}`:d>je&&this._append`A${n},${n},0,${+(d>=ke)},${u},${this._x1=e+n*Math.cos(i)},${this._y1=t+n*Math.sin(i)}`)}rect(e,t,n,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${n=+n}v${+r}h${-n}Z`}toString(){return this._}};Fe.prototype;function Ie(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{let e=Math.floor(n);if(!(e>=0))throw RangeError(`invalid digits: ${n}`);t=e}return e},()=>new Fe(t)}Array.prototype.slice;function Le(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function Re(e){this._context=e}Re.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};function ze(e){return new Re(e)}function Be(e){return e[0]}function Ve(e){return e[1]}function He(e,t){var n=L(!0),r=null,i=ze,a=null,o=Ie(s);e=typeof e==`function`?e:e===void 0?Be:L(e),t=typeof t==`function`?t:t===void 0?Ve:L(t);function s(s){var c,l=(s=Le(s)).length,u,d=!1,f;for(r??(a=i(f=o())),c=0;c<=l;++c)!(c=d;--f)s.point(_[f],v[f]);s.lineEnd(),s.areaEnd()}}h&&(_[u]=+e(m,u,l),v[u]=+t(m,u,l),s.point(r?+r(m,u,l):_[u],n?+n(m,u,l):v[u]))}if(g)return s=null,g+``||null}function u(){return He().defined(i).curve(o).context(a)}return l.x=function(t){return arguments.length?(e=typeof t==`function`?t:L(+t),r=null,l):e},l.x0=function(t){return arguments.length?(e=typeof t==`function`?t:L(+t),l):e},l.x1=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:L(+e),l):r},l.y=function(e){return arguments.length?(t=typeof e==`function`?e:L(+e),n=null,l):t},l.y0=function(e){return arguments.length?(t=typeof e==`function`?e:L(+e),l):t},l.y1=function(e){return arguments.length?(n=e==null?null:typeof e==`function`?e:L(+e),l):n},l.lineX0=l.lineY0=function(){return u().x(e).y(t)},l.lineY1=function(){return u().x(e).y(n)},l.lineX1=function(){return u().x(r).y(t)},l.defined=function(e){return arguments.length?(i=typeof e==`function`?e:L(!!e),l):i},l.curve=function(e){return arguments.length?(o=e,a!=null&&(s=o(a)),l):o},l.context=function(e){return arguments.length?(e==null?a=s=null:s=o(a=e),l):a},l}var We=class{constructor(e,t){this._context=e,this._x=t}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,t,e,t):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+t)/2,e,this._y0,e,t)}this._x0=e,this._y0=t}};function Ge(e){return new We(e,!0)}function Ke(e){return new We(e,!1)}function qe(){}function Je(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function Ye(e){this._context=e}Ye.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Je(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Je(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Xe(e){return new Ye(e)}function Ze(e){this._context=e}Ze.prototype={areaStart:qe,areaEnd:qe,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Je(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Qe(e){return new Ze(e)}function $e(e){this._context=e}$e.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:Je(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function et(e){return new $e(e)}function tt(e){this._context=e}tt.prototype={areaStart:qe,areaEnd:qe,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function nt(e){return new tt(e)}function rt(e){return e<0?-1:1}function it(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),o=(n-e._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(rt(a)+rt(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function at(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function ot(e,t,n){var r=e._x0,i=e._y0,a=e._x1,o=e._y1,s=(a-r)/3;e._context.bezierCurveTo(r+s,i+s*t,a-s,o-s*n,a,o)}function st(e){this._context=e}st.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:ot(this,this._t0,at(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,e!==this._x1||t!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,ot(this,at(this,n=it(this,e,t)),n);break;default:ot(this,this._t0,n=it(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function ct(e){this._context=new lt(e)}(ct.prototype=Object.create(st.prototype)).point=function(e,t){st.prototype.point.call(this,t,e)};function lt(e){this._context=e}lt.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,i,a){this._context.bezierCurveTo(t,e,r,n,a,i)}};function ut(e){return new st(e)}function dt(e){return new ct(e)}function ft(e){this._context=e}ft.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n){if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=pt(e),i=pt(t),a=0,o=1;o=0;--t)i[t]=(o[t]-i[t+1])/a[t];for(a[n-1]=(e[n]+i[n-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}}this._x=e,this._y=t}};function gt(e){return new ht(e,.5)}function _t(e){return new ht(e,0)}function vt(e){return new ht(e,1)}function yt(e,t){if((o=e.length)>1)for(var n=1,r,i,a=e[t[0]],o,s=a.length;n=0;)n[t]=t;return n}function xt(e,t){return e[t]}function St(e){let t=[];return t.key=e,t}function Ct(){var e=L([]),t=bt,n=yt,r=xt;function i(i){var a=Array.from(e.apply(this,arguments),St),o,s=a.length,c=-1,l;for(let e of i)for(o=0,++c;o0){for(var n,r,i=0,a=e[0].length,o;i0){for(var n=0,r=e[t[0]],i,a=r.length;n0)||!((a=(i=e[t[0]]).length)>0))){for(var n=0,r=1,i,a,o;r`radius`in e&&`startAngle`in e&&`endAngle`in e,Ot=(e,t)=>{if(!e||typeof e==`function`||typeof e==`boolean`)return null;var n=e;if((0,s.isValidElement)(e)&&(n=e.props),typeof n!=`object`&&typeof n!=`function`)return null;var r={};return Object.keys(n).forEach(e=>{u(e)&&typeof n[e]==`function`&&(r[e]=t||(t=>n[e](n,t)))}),r},kt=(e,t,n)=>r=>(e(t,n,r),null),At=(e,t,n)=>{if(e===null||typeof e!=`object`&&typeof e!=`function`)return null;var r=null;return Object.keys(e).forEach(i=>{var a=e[i];u(i)&&typeof a==`function`&&(r||={},r[i]=kt(a,t,n))}),r};function jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){for(var t=1;t(e[t]===void 0&&r[t]!==void 0&&(e[t]=r[t]),e),n)}function Lt(e,t){let n=new Map;for(let r=0;r=0}function Vt(e){return e!=null&&typeof e!=`function`&&Bt(e.length)}function Ht(e){return function(t){return ne(t,e)}}function Ut(e){return e==null||typeof e!=`object`&&typeof e!=`function`}function Wt(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Gt(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function Kt(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:Object.prototype.toString.call(e)}var qt=`[object RegExp]`,Jt=`[object String]`,Yt=`[object Number]`,Xt=`[object Boolean]`,Zt=`[object Arguments]`,Qt=`[object Symbol]`,$t=`[object Date]`,en=`[object Map]`,tn=`[object Set]`,nn=`[object Array]`,rn=`[object Function]`,an=`[object ArrayBuffer]`,on=`[object Object]`,sn=`[object Error]`,cn=`[object DataView]`,ln=`[object Uint8Array]`,un=`[object Uint8ClampedArray]`,dn=`[object Uint16Array]`,fn=`[object Uint32Array]`,pn=`[object BigUint64Array]`,mn=`[object Int8Array]`,hn=`[object Int16Array]`,gn=`[object Int32Array]`,_n=`[object BigInt64Array]`,vn=`[object Float32Array]`,yn=`[object Float64Array]`,bn=typeof globalThis==`object`&&globalThis||typeof window==`object`&&window||typeof self==`object`&&self||typeof global==`object`&&global||(function(){return this})();function xn(e){return bn.Buffer!==void 0&&bn.Buffer.isBuffer(e)}function Sn(e,t){return Cn(e,void 0,e,new Map,t)}function Cn(e,t,n,r=new Map,i=void 0){let a=i?.(e,t,n,r);if(a!==void 0)return a;if(Ut(e))return e;if(r.has(e))return r.get(e);if(Array.isArray(e)){let t=Array(e.length);r.set(e,t);for(let a=0;avoid 0)}function An(e,t,n,r,i=!1){if(t===e)return!0;switch(typeof t){case`object`:return jn(e,t,n,r,i);case`function`:return Object.keys(t).length>0?An(e,{...t},n,r,i):Dn(e,t);default:return On(e)&&i?typeof t!=`string`||t===``:Dn(e,t)}}function jn(e,t,n,r,i=!1){if(t==null)return!0;if(Array.isArray(t))return Nn(e,t,n,r);if(t instanceof Map)return Mn(e,t,n,r);if(t instanceof Set)return Pn(e,t,n,r);let a=Object.keys(t);if(e==null)return i&&a.length===0;if(i)Ut(e)&&(e=Object(e));else{let t=Kt(e);if(t!==`[object Object]`&&t!==`[object Arguments]`)return!1}if(a.length===0)return!0;if(r?.has(t))return r.get(t)===e;r?.set(t,e);try{for(let i=0;ivoid 0)}function In(e){return e=En(e),t=>Fn(t,e)}function Ln(e,t){return Sn(e,(n,r,i,a)=>{let o=t?.(n,r,i,a);if(o!==void 0)return o;if(typeof e==`object`){if(Kt(e)===`[object Object]`&&typeof e.constructor!=`function`){let t={};return a.set(e,t),wn(t,e,i,a),t}switch(Object.prototype.toString.call(e)){case Yt:case Jt:case Xt:{let t=new e.constructor(e?.valueOf());return wn(t,e),t}case Zt:{let t={};return wn(t,e),t.length=e.length,t[Symbol.iterator]=e[Symbol.iterator],t}default:return}}})}function Rn(e){return Ln(e)}var zn=/^(?:0|[1-9]\d*)$/;function Bn(e,t=2**53-1){switch(typeof e){case`number`:return Number.isInteger(e)&&e>=0&&e{var n=i(),r=e();function a(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var o=typeof Object.is==`function`?Object.is:a,s=r.useSyncExternalStore,c=n.useRef,l=n.useEffect,u=n.useMemo,d=n.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var a=c(null);if(a.current===null){var f={hasValue:!1,value:null};a.current=f}else f=a.current;a=u(function(){function e(e){if(!a){if(a=!0,s=e,e=r(e),i!==void 0&&f.hasValue){var t=f.value;if(i(t,e))return c=t}return c=e}if(t=c,o(s,e))return t;var n=r(e);return i!==void 0&&i(t,n)?(s=e,t):(s=e,c=n)}var a=!1,s,c,l=n===void 0?null:n;return[function(){return e(t())},l===null?void 0:function(){return e(l())}]},[t,n,r,i]);var p=s(e,a[0],a[1]);return l(function(){f.hasValue=!0,f.value=p},[p]),d(p),p}})),Yn=o(((e,t)=>{t.exports=Jn()}))(),Xn=(0,s.createContext)(null),Zn=e=>e,R=()=>{var e=(0,s.useContext)(Xn);return e?e.store.dispatch:Zn},Qn=()=>{},$n=()=>Qn,er=(e,t)=>e===t;function z(e){var t=(0,s.useContext)(Xn),n=(0,s.useMemo)(()=>t?t=>{if(t!=null)return e(t)}:Qn,[t,e]);return(0,Yn.useSyncExternalStoreWithSelector)(t?t.subscription.addNestedSub:$n,t?t.store.getState:Qn,t?t.store.getState:Qn,n,er)}function tr(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!=`function`)throw TypeError(t)}function nr(e,t=`expected all items to be functions, instead received the following types: `){if(!e.every(e=>typeof e==`function`)){let n=e.map(e=>typeof e==`function`?`function ${e.name||`unnamed`}()`:typeof e).join(`, `);throw TypeError(`${t}[${n}]`)}}var rr=e=>Array.isArray(e)?e:[e];function ir(e){let t=Array.isArray(e[0])?e[0]:e;return nr(t,`createSelector expects all input-selectors to be functions, but received the following types: `),t}function ar(e,t){let n=[],{length:r}=e;for(let i=0;i`u`?or:WeakRef,cr=0,lr=1;function ur(){return{s:cr,v:void 0,o:null,p:null}}function dr(e){return e instanceof sr?e.deref():e}function fr(e,t={}){let n=ur(),{resultEqualityCheck:r}=t,i,a=0;function o(){let t=n,{length:o}=arguments;for(let e=0,n=o;e{n=ur(),o.resetResultsCount()},o.resultsCount=()=>a,o.resetResultsCount=()=>{a=0},o}function pr(e,...t){let n=typeof e==`function`?{memoize:e,memoizeOptions:t}:e,r=(...e)=>{let t=0,r=0,i,a={},o=e.pop();typeof o==`object`&&(a=o,o=e.pop()),tr(o,`createSelector expects an output function after the inputs, but received: [${typeof o}]`);let{memoize:s,memoizeOptions:c=[],argsMemoize:l=fr,argsMemoizeOptions:u=[]}={...n,...a},d=rr(c),f=rr(u),p=ir(e),m=s(function(){return t++,o.apply(null,arguments)},...d),h=l(function(){r++;let e=ar(p,arguments);return i=m.apply(null,e),i},...f);return Object.assign(h,{resultFunc:o,memoizedResultFunc:m,dependencies:p,dependencyRecomputations:()=>r,resetDependencyRecomputations:()=>{r=0},lastResult:()=>i,recomputations:()=>t,resetRecomputations:()=>{t=0},memoize:s,argsMemoize:l})};return Object.assign(r,{withTypes:()=>r}),r}var B=pr(fr);function mr(e,t=1){let n=[],r=Math.floor(t),i=(e,t)=>{for(let a=0;a{if(e!==t){let r=gr(e),i=gr(t);if(r===i&&r===0){if(et)return n===`desc`?-1:1}return n===`desc`?i-r:r-i}return 0},vr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,yr=/^\w*$/;function br(e,t){return Array.isArray(e)?!1:typeof e==`number`||typeof e==`boolean`||e==null||M(e)?!0:typeof e==`string`&&(yr.test(e)||!vr.test(e))||t!=null&&Object.hasOwn(t,e)}function xr(e,t,n,r){if(e==null)return[];n=r?void 0:n,Array.isArray(e)||(e=Vt(e)?Array.from(e):Object.values(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(n)||(n=n==null?[]:[n]),n=n.map(e=>String(e));let i=(e,t)=>{let n=e,r=0;for(;r0&&r===t.length?n:void 0},a=(e,t)=>{if(e==null)return t;if(t!=null)return typeof e==`object`&&`key`in e?Object.hasOwn(t,e.key)?t[e.key]:i(t,e.path):typeof e==`function`?e(t):Array.isArray(e)?i(t,e):t[e]},o=t.map(e=>(Array.isArray(e)&&e.length===1&&(e=e[0]),e==null||typeof e==`function`||Array.isArray(e)||br(e)?e:{key:e,path:te(e)}));return e.map(e=>({original:e,criteria:o.map(t=>a(t,e))})).slice().sort((e,t)=>{for(let r=0;re.original)}function Sr(e,...t){let n=t.length;return n>1&&hr(e,t[0],t[1])?t=[]:n>2&&hr(t[0],t[1],t[2])&&(t=[t[0]]),xr(e,mr(t),[`asc`])}var Cr=e=>e.legend.settings,wr=e=>e.legend.size;B([e=>e.legend.payload,Cr],(e,t)=>{var n=t.itemSorter,r=e.flat(1);return n?Sr(r,n):r});function Tr(e,t){return Ar(e)||kr(e,t)||Dr(e,t)||Er()}function Er(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Dr(e,t){if(e){if(typeof e==`string`)return Or(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Or(e,t):void 0}}function Or(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);njr||Math.abs(e.left-t.left)>jr||Math.abs(e.top-t.top)>jr||Math.abs(e.width-t.width)>jr}function Nr(e){var t=e.getBoundingClientRect();return{height:t.height,left:t.left,top:t.top,width:t.width}}function Pr(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=Tr((0,s.useState)({height:0,left:0,top:0,width:0}),2),n=t[0],r=t[1],i=(0,s.useRef)(null),a=(0,s.useRef)(n);a.current=n;var o=(0,s.useCallback)(e=>{if(i.current!=null&&(i.current.disconnect(),i.current=null),e!=null){var t=Nr(e);if(Mr(t,a.current)&&r(t),typeof ResizeObserver<`u`){var n=new ResizeObserver(()=>{var t=Nr(e);Mr(t,a.current)&&r(t)});n.observe(e),i.current=n}}},[...e]);return(0,s.useEffect)(()=>()=>{var e;(e=i.current)==null||e.disconnect()},[]),[n,o]}function Fr(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Ir=typeof Symbol==`function`&&Symbol.observable||`@@observable`,Lr=()=>Math.random().toString(36).substring(7).split(``).join(`.`),Rr={INIT:`@@redux/INIT${Lr()}`,REPLACE:`@@redux/REPLACE${Lr()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${Lr()}`};function zr(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function Br(e,t,n){if(typeof e!=`function`)throw Error(Fr(2));if(typeof t==`function`&&typeof n==`function`||typeof n==`function`&&typeof arguments[3]==`function`)throw Error(Fr(0));if(typeof t==`function`&&n===void 0&&(n=t,t=void 0),n!==void 0){if(typeof n!=`function`)throw Error(Fr(1));return n(Br)(e,t)}let r=e,i=t,a=new Map,o=a,s=0,c=!1;function l(){o===a&&(o=new Map,a.forEach((e,t)=>{o.set(t,e)}))}function u(){if(c)throw Error(Fr(3));return i}function d(e){if(typeof e!=`function`)throw Error(Fr(4));if(c)throw Error(Fr(5));let t=!0;l();let n=s++;return o.set(n,e),function(){if(t){if(c)throw Error(Fr(6));t=!1,l(),o.delete(n),a=null}}}function f(e){if(!zr(e))throw Error(Fr(7));if(e.type===void 0)throw Error(Fr(8));if(typeof e.type!=`string`)throw Error(Fr(17));if(c)throw Error(Fr(9));try{c=!0,i=r(i,e)}finally{c=!1}return(a=o).forEach(e=>{e()}),e}function p(e){if(typeof e!=`function`)throw Error(Fr(10));r=e,f({type:Rr.REPLACE})}function m(){let e=d;return{subscribe(t){if(typeof t!=`object`||!t)throw Error(Fr(11));function n(){let e=t;e.next&&e.next(u())}return n(),{unsubscribe:e(n)}},[Ir](){return this}}}return f({type:Rr.INIT}),{dispatch:f,subscribe:d,getState:u,replaceReducer:p,[Ir]:m}}function Vr(e){Object.keys(e).forEach(t=>{let n=e[t];if(n(void 0,{type:Rr.INIT})===void 0)throw Error(Fr(12));if(n(void 0,{type:Rr.PROBE_UNKNOWN_ACTION()})===void 0)throw Error(Fr(13))})}function Hr(e){let t=Object.keys(e),n={};for(let r=0;re:e.length===1?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}function Wr(...e){return t=>(n,r)=>{let i=t(n,r),a=()=>{throw Error(Fr(15))},o={getState:i.getState,dispatch:(e,...t)=>a(e,...t)};return a=Ur(...e.map(e=>e(o)))(i.dispatch),{...i,dispatch:a}}}function Gr(e){return zr(e)&&`type`in e&&typeof e.type==`string`}var Kr=Symbol.for(`immer-nothing`),qr=Symbol.for(`immer-draftable`),Jr=Symbol.for(`immer-state`);function Yr(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Xr=Object,Zr=Xr.getPrototypeOf,Qr=`constructor`,$r=`prototype`,ei=`configurable`,ti=`enumerable`,ni=`writable`,ri=`value`,ii=e=>!!e&&!!e[Jr];function ai(e){return e?ci(e)||hi(e)||!!e[qr]||!!e[Qr]?.[qr]||gi(e)||_i(e):!1}var oi=Xr[$r][Qr].toString(),si=new WeakMap;function ci(e){if(!e||!vi(e))return!1;let t=Zr(e);if(t===null||t===Xr[$r])return!0;let n=Xr.hasOwnProperty.call(t,Qr)&&t[Qr];if(n===Object)return!0;if(!yi(n))return!1;let r=si.get(n);return r===void 0&&(r=Function.toString.call(n),si.set(n,r)),r===oi}function li(e,t,n=!0){ui(e)===0?(n?Reflect.ownKeys(e):Xr.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function ui(e){let t=e[Jr];return t?t.type_:hi(e)?1:gi(e)?2:_i(e)?3:0}var di=(e,t,n=ui(e))=>n===2?e.has(t):Xr[$r].hasOwnProperty.call(e,t),fi=(e,t,n=ui(e))=>n===2?e.get(t):e[t],pi=(e,t,n,r=ui(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function mi(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var hi=Array.isArray,gi=e=>e instanceof Map,_i=e=>e instanceof Set,vi=e=>typeof e==`object`,yi=e=>typeof e==`function`,bi=e=>typeof e==`boolean`;function xi(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var Si=e=>e.copy_||e.base_,Ci=e=>e.modified_?e.copy_:e.base_;function wi(e,t){if(gi(e))return new Map(e);if(_i(e))return new Set(e);if(hi(e))return Array[$r].slice.call(e);let n=ci(e);if(t===!0||t===`class_only`&&!n){let t=Xr.getOwnPropertyDescriptors(e);delete t[Jr];let n=Reflect.ownKeys(t);for(let r=0;r1&&Xr.defineProperties(e,{set:Di,add:Di,clear:Di,delete:Di}),Xr.freeze(e),t&&li(e,(e,t)=>{Ti(t,!0)},!1),e)}function Ei(){Yr(2)}var Di={[ri]:Ei};function Oi(e){return e===null||!vi(e)||Xr.isFrozen(e)}var ki=`MapSet`,Ai=`Patches`,ji=`ArrayMethods`,Mi={};function Ni(e){let t=Mi[e];return t||Yr(0,e),t}var Pi=e=>!!Mi[e],Fi,Ii=()=>Fi,Li=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Pi(ki)?Ni(ki):void 0,arrayMethodsPlugin_:Pi(ji)?Ni(ji):void 0});function Ri(e,t){t&&(e.patchPlugin_=Ni(Ai),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function zi(e){Bi(e),e.drafts_.forEach(Hi),e.drafts_=null}function Bi(e){e===Fi&&(Fi=e.parent_)}var Vi=e=>Fi=Li(Fi,e);function Hi(e){let t=e[Jr];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Ui(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[Jr].modified_&&(zi(t),Yr(4)),ai(e)&&(e=Wi(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[Jr].base_,e,t)}else e=Wi(t,n);return Gi(t,e,!0),zi(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===Kr?void 0:e}function Wi(e,t){if(Oi(t))return t;let n=t[Jr];if(!n)return $i(t,e.handledSet_,e);if(!qi(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){let{callbacks_:t}=n;if(t)for(;t.length>0;)t.pop()(e);Zi(n,e)}return n.copy_}function Gi(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Ti(t,n)}function Ki(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var qi=(e,t)=>e.scope_===t,Ji=[];function Yi(e,t,n,r){let i=Si(e),a=e.type_;if(r!==void 0&&fi(i,r,a)===t){pi(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;li(i,(e,n)=>{if(ii(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??Ji;for(let e of o)pi(i,e,n,a)}function Xi(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!qi(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=Ci(i);Yi(e,i.draft_??i,a,n),Zi(i,r)})}function Zi(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){let{patchPlugin_:n}=t;if(n){let r=n.getPath(e);r&&n.generatePatches_(e,r,t)}Ki(e)}}function Qi(e,t,n){let{scope_:r}=e;if(ii(n)){let i=n[Jr];qi(i,r)&&i.callbacks_.push(function(){ca(e),Yi(e,n,Ci(i),t)})}else ai(n)&&e.callbacks_.push(function(){let i=Si(e);e.type_===3?i.has(n)&&$i(n,r.handledSet_,r):fi(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&$i(fi(e.copy_,t,e.type_),r.handledSet_,r)})}function $i(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||ii(e)||t.has(e)||!ai(e)||Oi(e)?e:(t.add(e),li(e,(r,i)=>{if(ii(i)){let t=i[Jr];qi(t,n)&&(pi(e,r,Ci(t),e.type_),Ki(t))}else ai(i)&&$i(i,t,n)}),e)}function ea(e,t){let n=hi(e),r={type_:+!!n,scope_:t?t.scope_:Ii(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0},i=r,a=ta;n&&(i=[r],a=na);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var ta={get(e,t){if(t===Jr)return e;let n=e.scope_.arrayMethodsPlugin_,r=e.type_===1&&typeof t==`string`;if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);let i=Si(e);if(!di(i,t,e.type_))return aa(e,i,t);let a=i[t];if(e.finalized_||!ai(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&xi(t))return a;if(a===ra(e.base_,t)||ia(e,t,a)){ca(e);let n=e.type_===1?+t:t,r=ua(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in Si(e)},ownKeys(e){return Reflect.ownKeys(Si(e))},set(e,t,n){let r=oa(Si(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=ra(Si(e),t),i=r?.[Jr];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(mi(n,r)&&(n!==void 0||di(e.base_,t,e.type_)))return!0;ca(e),sa(e)}return e.copy_[t]===n&&(n!==void 0||di(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),Qi(e,t,n),!0)},deleteProperty(e,t){return ca(e),ra(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),sa(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=Si(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[ni]:!0,[ei]:e.type_!==1||t!==`length`,[ti]:r[ti],[ri]:n[t]}},defineProperty(){Yr(11)},getPrototypeOf(e){return Zr(e.base_)},setPrototypeOf(){Yr(12)}},na={};for(let e in ta){let t=ta[e];na[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}na.deleteProperty=function(e,t){return na.set.call(this,e,t,void 0)},na.set=function(e,t,n){return ta.set.call(this,e[0],t,n,e[0])};function ra(e,t){let n=e[Jr];return(n?Si(n):e)[t]}function ia(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||e.assigned_?.get(t)||!ai(n)||n[Jr]?!1:e.baseRefs_.has(n)}function aa(e,t,n){let r=oa(t,n);return r?ri in r?r[ri]:r.get?.call(e.draft_):void 0}function oa(e,t){if(!(t in e))return;let n=Zr(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=Zr(n)}}function sa(e){e.modified_||(e.modified_=!0,e.parent_&&sa(e.parent_))}function ca(e){e.copy_||=(e.assigned_=new Map,wi(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var la=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(yi(e)&&!yi(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}yi(t)||Yr(6),n!==void 0&&!yi(n)&&Yr(7);let r;if(ai(e)){let i=Vi(this),a=ua(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?zi(i):Bi(i)}return Ri(i,n),Ui(r,i)}if(!e||!vi(e)){if(r=t(e),r===void 0&&(r=e),r===Kr&&(r=void 0),this.autoFreeze_&&Ti(r,!0),n){let t=[],i=[];Ni(Ai).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}Yr(1,e)},this.produceWithPatches=(e,t)=>{if(yi(e))return(t,...n)=>this.produceWithPatches(t,t=>e(t,...n));let n,r;return[this.produce(e,t,(e,t)=>{n=e,r=t}),n,r]},bi(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),bi(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),bi(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){ai(e)||Yr(8),ii(e)&&(e=da(e));let t=Vi(this),n=ua(t,e,void 0);return n[Jr].isManual_=!0,Bi(t),n}finishDraft(e,t){let n=e&&e[Jr];(!n||!n.isManual_)&&Yr(9);let{scope_:r}=n;return Ri(r,t),Ui(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){let r=t[n];if(r.path.length===0&&r.op===`replace`){e=r.value;break}}n>-1&&(t=t.slice(n+1));let r=Ni(Ai).applyPatches_;return ii(e)?r(e,t):this.produce(e,e=>r(e,t))}};function ua(e,t,n,r){let[i,a]=gi(t)?Ni(ki).proxyMap_(t,n):_i(t)?Ni(ki).proxySet_(t,n):ea(t,n);return(n?.scope_??Ii()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?Xi(n,a,r):a.callbacks_.push(function(e){e.mapSetPlugin_?.fixSetContents(a);let{patchPlugin_:t}=e;a.modified_&&t&&t.generatePatches_(a,[],e)}),i}function da(e){return ii(e)||Yr(10,e),fa(e)}function fa(e){if(!ai(e)||Oi(e))return e;let t=e[Jr],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=wi(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=wi(e,!0);return li(n,(e,t)=>{pi(n,e,fa(t))},r),t&&(t.finalized_=!1),n}globalThis.Iterator?.from;var pa=new la().produce,V=e=>e;function ma(e){return({dispatch:t,getState:n})=>r=>i=>typeof i==`function`?i(t,n,e):r(i)}var ha=ma(),ga=ma,_a=typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]==`object`?Ur:Ur.apply(null,arguments)};typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__;function va(e,t){function n(...n){if(t){let r=t(...n);if(!r)throw Error(Do(0));return{type:e,payload:r.payload,...`meta`in r&&{meta:r.meta},...`error`in r&&{error:r.error}}}return{type:e,payload:n[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=t=>Gr(t)&&t.type===e,n}var ya=class e extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,e.prototype)}static get[Symbol.species](){return e}concat(...e){return super.concat.apply(this,e)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new e(...t[0].concat(this)):new e(...t.concat(this))}};function ba(e){return ai(e)?pa(e,()=>{}):e}function xa(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function Sa(e){return typeof e==`boolean`}var Ca=()=>function(e){let{thunk:t=!0,immutableCheck:n=!0,serializableCheck:r=!0,actionCreatorCheck:i=!0}=e??{},a=new ya;return t&&(Sa(t)?a.push(ha):a.push(ga(t.extraArgument))),a},wa=`RTK_autoBatch`,H=()=>e=>({payload:e,meta:{[wa]:!0}}),Ta=e=>t=>{setTimeout(t,e)},Ea=(e,t)=>n=>{let r=!1,i=()=>{r||(r=!0,cancelAnimationFrame(a),clearTimeout(o),n())},a=e(i),o=setTimeout(i,t)},Da=(e={type:`raf`})=>t=>(...n)=>{let r=t(...n),i=!0,a=!1,o=!1,s=new Set,c=e.type===`tick`?queueMicrotask:e.type===`raf`?typeof window<`u`&&window.requestAnimationFrame?Ea(window.requestAnimationFrame,100):Ta(10):e.type===`callback`?e.queueNotification:Ta(e.timeout),l=()=>{o=!1,a&&(a=!1,s.forEach(e=>e()))};return Object.assign({},r,{subscribe(e){let t=r.subscribe(()=>i&&e());return s.add(e),()=>{t(),s.delete(e)}},dispatch(e){try{return i=!e?.meta?.[wa],a=!i,a&&(o||(o=!0,c(l))),r.dispatch(e)}finally{i=!0}}})},Oa=e=>function(t){let{autoBatch:n=!0}=t??{},r=new ya(e);return n&&r.push(Da(typeof n==`object`?n:void 0)),r};function ka(e){let t=Ca(),{reducer:n=void 0,middleware:r,devTools:i=!0,duplicateMiddlewareCheck:a=!0,preloadedState:o=void 0,enhancers:s=void 0}=e||{},c;if(typeof n==`function`)c=n;else if(zr(n))c=Hr(n);else throw Error(Do(1));let l;l=typeof r==`function`?r(t):t();let u=Ur;i&&(u=_a({trace:!1,...typeof i==`object`&&i}));let d=Oa(Wr(...l)),f=typeof s==`function`?s(d):d(),p=u(...f);return Br(c,o,p)}function Aa(e){let t={},n=[],r,i={addCase(e,n){let r=typeof e==`string`?e:e.type;if(!r)throw Error(Do(28));if(r in t)throw Error(Do(29));return t[r]=n,i},addAsyncThunk(e,r){return r.pending&&(t[e.pending.type]=r.pending),r.rejected&&(t[e.rejected.type]=r.rejected),r.fulfilled&&(t[e.fulfilled.type]=r.fulfilled),r.settled&&n.push({matcher:e.settled,reducer:r.settled}),i},addMatcher(e,t){return n.push({matcher:e,reducer:t}),i},addDefaultCase(e){return r=e,i}};return e(i),[t,n,r]}function ja(e){return typeof e==`function`}function Ma(e,t){let[n,r,i]=Aa(t),a;if(ja(e))a=()=>ba(e());else{let t=ba(e);a=()=>t}function o(e=a(),t){let o=[n[t.type],...r.filter(({matcher:e})=>e(t)).map(({reducer:e})=>e)];return o.filter(e=>!!e).length===0&&(o=[i]),o.reduce((e,n)=>{if(n){if(ii(e)){let r=n(e,t);return r===void 0?e:r}if(ai(e))return pa(e,e=>n(e,t));{let r=n(e,t);if(r===void 0){if(e===null)return e;throw Error(`A case reducer on a non-draftable value must not return undefined`)}return r}}return e},e)}return o.getInitialState=a,o}var Na=`ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW`,Pa=(e=21)=>{let t=``,n=e;for(;n--;)t+=Na[Math.random()*64|0];return t},Fa=Symbol.for(`rtk-slice-createasyncthunk`);function Ia(e,t){return`${e}/${t}`}function La({creators:e}={}){let t=e?.asyncThunk?.[Fa];return function(e){let{name:n,reducerPath:r=n}=e;if(!n)throw Error(Do(11));let i=(typeof e.reducers==`function`?e.reducers(Ba()):e.reducers)||{},a=Object.keys(i),o={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},s={addCase(e,t){let n=typeof e==`string`?e:e.type;if(!n)throw Error(Do(12));if(n in o.sliceCaseReducersByType)throw Error(Do(13));return o.sliceCaseReducersByType[n]=t,s},addMatcher(e,t){return o.sliceMatchers.push({matcher:e,reducer:t}),s},exposeAction(e,t){return o.actionCreators[e]=t,s},exposeCaseReducer(e,t){return o.sliceCaseReducersByName[e]=t,s}};a.forEach(r=>{let a=i[r],o={reducerName:r,type:Ia(n,r),createNotation:typeof e.reducers==`function`};Ha(a)?Wa(o,a,s,t):Va(o,a,s)});function c(){let[t={},n=[],r=void 0]=typeof e.extraReducers==`function`?Aa(e.extraReducers):[e.extraReducers],i={...t,...o.sliceCaseReducersByType};return Ma(e.initialState,e=>{for(let t in i)e.addCase(t,i[t]);for(let t of o.sliceMatchers)e.addMatcher(t.matcher,t.reducer);for(let t of n)e.addMatcher(t.matcher,t.reducer);r&&e.addDefaultCase(r)})}let l=e=>e,u=new Map,d=new WeakMap,f;function p(e,t){return f||=c(),f(e,t)}function m(){return f||=c(),f.getInitialState()}function h(t,n=!1){function r(e){let i=e[t];return i===void 0&&n&&(i=xa(d,r,m)),i}function i(t=l){return xa(xa(u,n,()=>new WeakMap),t,()=>{let r={};for(let[i,a]of Object.entries(e.selectors??{}))r[i]=Ra(a,t,()=>xa(d,t,m),n);return r})}return{reducerPath:t,getSelectors:i,get selectors(){return i(r)},selectSlice:r}}let g={name:n,reducer:p,actions:o.actionCreators,caseReducers:o.sliceCaseReducersByName,getInitialState:m,...h(r),injectInto(e,{reducerPath:t,...n}={}){let i=t??r;return e.inject({reducerPath:i,reducer:p},n),{...g,...h(i,!0)}}};return g}}function Ra(e,t,n,r){function i(i,...a){let o=t(i);return o===void 0&&r&&(o=n()),e(o,...a)}return i.unwrapped=e,i}var za=La();function Ba(){function e(e,t){return{_reducerDefinitionType:`asyncThunk`,payloadCreator:e,...t}}return e.withTypes=()=>e,{reducer(e){return Object.assign({[e.name](...t){return e(...t)}}[e.name],{_reducerDefinitionType:`reducer`})},preparedReducer(e,t){return{_reducerDefinitionType:`reducerWithPrepare`,prepare:e,reducer:t}},asyncThunk:e}}function Va({type:e,reducerName:t,createNotation:n},r,i){let a,o;if(`reducer`in r){if(n&&!Ua(r))throw Error(Do(17));a=r.reducer,o=r.prepare}else a=r;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,o?va(e,o):va(e))}function Ha(e){return e._reducerDefinitionType===`asyncThunk`}function Ua(e){return e._reducerDefinitionType===`reducerWithPrepare`}function Wa({type:e,reducerName:t},n,r,i){if(!i)throw Error(Do(18));let{payloadCreator:a,fulfilled:o,pending:s,rejected:c,settled:l,options:u}=n,d=i(e,a,u);r.exposeAction(t,d),o&&r.addCase(d.fulfilled,o),s&&r.addCase(d.pending,s),c&&r.addCase(d.rejected,c),l&&r.addMatcher(d.settled,l),r.exposeCaseReducer(t,{fulfilled:o||Ga,pending:s||Ga,rejected:c||Ga,settled:l||Ga})}function Ga(){}var Ka=`task`,qa=`listener`,Ja=`completed`,Ya=`cancelled`,Xa=`task-${Ya}`,Za=`task-${Ja}`,Qa=`${qa}-${Ya}`,$a=`${qa}-${Ja}`,eo=class{constructor(e){this.code=e,this.message=`${Ka} ${Ya} (reason: ${e})`}code;name=`TaskAbortError`;message},to=(e,t)=>{if(typeof e!=`function`)throw TypeError(Do(32))},no=()=>{},ro=(e,t=no)=>(e.catch(t),e),io=(e,t)=>(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)),ao=e=>{if(e.aborted)throw new eo(e.reason)};function oo(e,t){let n=no;return new Promise((r,i)=>{let a=()=>i(new eo(e.reason));if(e.aborted){a();return}n=io(e,a),t.finally(()=>n()).then(r,i)}).finally(()=>{n=no})}var so=async(e,t)=>{try{return await Promise.resolve(),{status:`ok`,value:await e()}}catch(e){return{status:e instanceof eo?`cancelled`:`rejected`,error:e}}finally{t?.()}},co=e=>t=>ro(oo(e,t).then(t=>(ao(e),t))),lo=e=>{let t=co(e);return e=>t(new Promise(t=>setTimeout(t,e)))},{assign:uo}=Object,fo={},po=`listenerMiddleware`,mo=(e,t)=>{let n=t=>io(e,()=>t.abort(e.reason));return(r,i)=>{to(r,`taskExecutor`);let a=new AbortController;n(a);let o=so(async()=>{ao(e),ao(a.signal);let t=await r({pause:co(a.signal),delay:lo(a.signal),signal:a.signal});return ao(a.signal),t},()=>a.abort(Za));return i?.autoJoin&&t.push(o.catch(no)),{result:co(e)(o),cancel(){a.abort(Xa)}}}},ho=(e,t)=>{let n=async(n,r)=>{ao(t);let i=()=>{},a=[new Promise((t,r)=>{let a=e({predicate:n,effect:(e,n)=>{n.unsubscribe(),t([e,n.getState(),n.getOriginalState()])}});i=()=>{a(),r()}})];r!=null&&a.push(new Promise(e=>setTimeout(e,r,null)));try{let e=await oo(t,Promise.race(a));return ao(t),e}finally{i()}};return((e,t)=>ro(n(e,t)))},go=e=>{let{type:t,actionCreator:n,matcher:r,predicate:i,effect:a}=e;if(t)i=va(t).match;else if(n)t=n.type,i=n.match;else if(r)i=r;else if(!i)throw Error(Do(21));return to(a,`options.listener`),{predicate:i,type:t,effect:a}},_o=uo(e=>{let{type:t,predicate:n,effect:r}=go(e);return{id:Pa(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw Error(Do(22))}}},{withTypes:()=>_o}),vo=(e,t)=>{let{type:n,effect:r,predicate:i}=go(t);return Array.from(e.values()).find(e=>(typeof n==`string`?e.type===n:e.predicate===i)&&e.effect===r)},yo=e=>{e.pending.forEach(e=>{e.abort(Qa)})},bo=(e,t)=>()=>{for(let e of t.keys())yo(e);e.clear()},xo=(e,t,n)=>{try{e(t,n)}catch(e){setTimeout(()=>{throw e},0)}},So=uo(va(`${po}/add`),{withTypes:()=>So}),Co=va(`${po}/removeAll`),wo=uo(va(`${po}/remove`),{withTypes:()=>wo}),To=(...e)=>{console.error(`${po}/error`,...e)},Eo=(e={})=>{let t=new Map,n=new Map,r=e=>{let t=n.get(e)??0;n.set(e,t+1)},i=e=>{let t=n.get(e)??1;t===1?n.delete(e):n.set(e,t-1)},{extra:a,onError:o=To}=e;to(o,`onError`);let s=e=>(e.unsubscribe=()=>t.delete(e.id),t.set(e.id,e),t=>{e.unsubscribe(),t?.cancelActive&&yo(e)}),c=(e=>{let n=vo(t,e)??_o(e);return s(n)});uo(c,{withTypes:()=>c});let l=e=>{let n=vo(t,e);return n&&(n.unsubscribe(),e.cancelActive&&yo(n)),!!n};uo(l,{withTypes:()=>l});let u=async(e,n,s,l)=>{let u=new AbortController,d=ho(c,u.signal),f=[];try{e.pending.add(u),r(e),await Promise.resolve(e.effect(n,uo({},s,{getOriginalState:l,condition:(e,t)=>d(e,t).then(Boolean),take:d,delay:lo(u.signal),pause:co(u.signal),extra:a,signal:u.signal,fork:mo(u.signal,f),unsubscribe:e.unsubscribe,subscribe:()=>{t.set(e.id,e)},cancelActiveListeners:()=>{e.pending.forEach((e,t,n)=>{e!==u&&(e.abort(Qa),n.delete(e))})},cancel:()=>{u.abort(Qa),e.pending.delete(u)},throwIfCancelled:()=>{ao(u.signal)}})))}catch(e){e instanceof eo||xo(o,e,{raisedBy:`effect`})}finally{await Promise.all(f),u.abort($a),i(e),e.pending.delete(u)}},d=bo(t,n);return{middleware:e=>n=>r=>{if(!Gr(r))return n(r);if(So.match(r))return c(r.payload);if(Co.match(r)){d();return}if(wo.match(r))return l(r.payload);let i=e.getState(),a=()=>{if(i===fo)throw Error(Do(23));return i},s;try{if(s=n(r),t.size>0){let n=e.getState(),s=Array.from(t.values());for(let t of s){let s=!1;try{s=t.predicate(r,n,i)}catch(e){s=!1,xo(o,e,{raisedBy:`predicate`})}s&&u(t,r,e,a)}}}finally{i=fo}return s},startListening:c,stopListening:l,clearListeners:d}};function Do(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Oo=za({name:`chartLayout`,initialState:{layoutType:`horizontal`,width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){e.margin.top=t.payload.top??0,e.margin.right=t.payload.right??0,e.margin.bottom=t.payload.bottom??0,e.margin.left=t.payload.left??0},setScale(e,t){e.scale=t.payload}}}),ko=Oo.actions,Ao=ko.setMargin,jo=ko.setLayout,Mo=ko.setChartSize,No=ko.setScale,Po=Oo.reducer;function Fo(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function U(e){return Number.isFinite(e)}function Io(e){return typeof e==`number`&&e>0&&Number.isFinite(e)}function Lo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ro(e){for(var t=1;t{if(t&&n){var r=n.width,i=n.height,a=t.align,o=t.verticalAlign,s=t.layout,c=t.position,l=t.offset,u=l===void 0?0:l;if(c!=null){if(De(c)){if(c===`top`&&I(e.top))return Ro(Ro({},e),{},{top:e.top+(i||0)+u});if(c===`bottom`&&I(e.bottom))return Ro(Ro({},e),{},{bottom:e.bottom+(i||0)+u});if(c===`left`&&I(e.left))return Ro(Ro({},e),{},{left:e.left+(r||0)+u});if(c===`right`&&I(e.right))return Ro(Ro({},e),{},{right:e.right+(r||0)+u})}return e}if((s===`vertical`||s===`horizontal`&&o===`middle`)&&a!==`center`&&I(e[a]))return Ro(Ro({},e),{},{[a]:e[a]+(r||0)});if((s===`horizontal`||s===`vertical`&&a===`center`)&&o!==`middle`&&I(e[o]))return Ro(Ro({},e),{},{[o]:e[o]+(i||0)})}return e},Uo=(e,t)=>e===`horizontal`&&t===`xAxis`||e===`vertical`&&t===`yAxis`||e===`centric`&&t===`angleAxis`||e===`radial`&&t===`radiusAxis`,Wo=(e,t,n,r)=>{if(r)return e.map(e=>e.coordinate);var i,a,o=e.map(e=>(e.coordinate===t&&(i=!0),e.coordinate===n&&(a=!0),e.coordinate));return i||o.push(t),a||o.push(n),o},Go=(e,t,n)=>{if(!e)return null;var r=e.duplicateDomain,i=e.type,a=e.range,o=e.scale,s=e.realScaleType,c=e.isCategorical,l=e.categoricalDomain,u=e.tickCount,d=e.ticks,f=e.niceTicks,p=e.axisType;if(!o)return null;var m=s===`scaleBand`&&o.bandwidth?o.bandwidth()/2:2,h=(t||n)&&i===`category`&&o.bandwidth?o.bandwidth()/m:0;return h=p===`angleAxis`&&a&&a.length>=2?oe(a[0]-a[1])*2*h:h,t&&(d||f)?(d||f||[]).map((e,t)=>{var n=r?r.indexOf(e):e,i=o.map(n);return U(i)?{coordinate:i+h,value:e,offset:h,index:t}:null}).filter(_e):c&&l?l.map((e,t)=>{var n=o.map(e);return U(n)?{coordinate:n+h,value:e,index:t,offset:h}:null}).filter(_e):o.ticks&&!n&&u!=null?o.ticks(u).map((e,t)=>{var n=o.map(e);return U(n)?{coordinate:n+h,value:e,index:t,offset:h}:null}).filter(_e):o.domain().map((e,t)=>{var n=o.map(e);return U(n)?{coordinate:n+h,value:r?r[e]:e,index:t,offset:h}:null}).filter(_e)},Ko={sign:e=>{var t=e.length;if(!(t<=0)){var n=e[0]?.length;if(!(n==null||n<=0))for(var r=0;r=0?(s[0]=i,i+=u,s[1]=i):(s[0]=a,a+=u,s[1]=a)}}}},expand:wt,none:yt,silhouette:Tt,wiggle:Et,positive:e=>{var t=e.length;if(!(t<=0)){var n=e[0]?.length;if(!(n==null||n<=0))for(var r=0;r=0?(o[0]=i,i+=s,o[1]=i):(o[0]=0,o[1]=0)}}}}},qo=(e,t,n)=>{var r=Ko[n]??yt,i=Ct().keys(t).value((e,t)=>Number(W(e,t,0))).order(bt).offset(r)(e);return i.forEach((n,r)=>{n.forEach((n,i)=>{var a=W(e[i],t[r],0);Array.isArray(a)&&a.length===2&&I(a[0])&&I(a[1])&&(n[0]=a[0],n[1]=a[1])})}),i};function Jo(e){return e==null?void 0:String(e)}function Yo(e){var t=e.axis,n=e.ticks,r=e.bandSize,i=e.entry,a=e.index,o=e.dataKey;if(t.type===`category`){if(!t.allowDuplicatedCategory&&t.dataKey&&!he(i[t.dataKey])){var s=me(n,`value`,i[t.dataKey]);if(s)return s.coordinate+r/2}return n!=null&&n[a]?n[a].coordinate+r/2:null}var c=W(i,he(o)?t.dataKey:o),l=t.scale.map(c);return I(l)?l:null}var Xo=e=>{var t=e.flat(2).filter(I);return[Math.min(...t),Math.max(...t)]},Zo=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],Qo=(e,t,n)=>{if(e!=null&&Object.keys(e).length!==0)return Zo(Object.keys(e).reduce((r,i)=>{var a=e[i];if(!a)return r;var o=a.stackedData.reduce((e,r)=>{var i=Xo(Fo(r,t,n));return!U(i[0])||!U(i[1])?e:[Math.min(e[0],i[0]),Math.max(e[1],i[1])]},[1/0,-1/0]);return[Math.min(o[0],r[0]),Math.max(o[1],r[1])]},[1/0,-1/0]))},$o=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,es=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,ts=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();if(!n||r>0)return r}if(e&&t&&t.length>=2){for(var i=Sr(t,e=>e.coordinate),a=[],o=0,s=1,c=i.length;su&&(d=Math.min(f,d));return d===1/0?0:d}return n?void 0:0};function ns(e){var t=e.tooltipEntrySettings,n=e.dataKey,r=e.payload,i=e.value,a=e.name;return Ro(Ro({},t),{},{dataKey:n,payload:r,value:i,name:a})}function rs(e,t){if(e!=null)return String(e);if(typeof t==`string`)return t}var is=(e,t)=>{if(t===`horizontal`)return e.relativeX;if(t===`vertical`)return e.relativeY},as=(e,t)=>t===`centric`?e.angle:e.radius,os=e=>e.layout.width,ss=e=>e.layout.height,cs=e=>e.layout.scale,ls=e=>e.layout.margin,us=B(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),ds=B(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),fs=`data-recharts-item-index`;function ps(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ms(e){for(var t=1;te.brush.height;function ys(e){return ds(e).reduce((e,t)=>t.orientation===`left`&&!t.mirror&&!t.hide?e+(typeof t.width==`number`?t.width:60):e,0)}function bs(e){return ds(e).reduce((e,t)=>t.orientation===`right`&&!t.mirror&&!t.hide?e+(typeof t.width==`number`?t.width:60):e,0)}function xs(e){return us(e).reduce((e,t)=>t.orientation===`top`&&!t.mirror&&!t.hide?e+(typeof t.height==`number`?t.height:30):e,0)}function Ss(e){return us(e).reduce((e,t)=>t.orientation===`bottom`&&!t.mirror&&!t.hide?e+(typeof t.height==`number`?t.height:30):e,0)}var Cs=B([os,ss,ls,vs,ys,bs,xs,Ss,Cr,wr],(e,t,n,r,i,a,o,s,c,l)=>{var u={left:(n.left||0)+i,right:(n.right||0)+a},d=ms(ms({},{top:(n.top||0)+o,bottom:(n.bottom||0)+s}),u),f=d.bottom;d.bottom+=r,d=Ho(d,c,l);var p=e-d.left-d.right,m=t-d.top-d.bottom;return ms(ms({brushBottom:f},d),{},{width:Math.max(p,0),height:Math.max(m,0)})}),ws=B(Cs,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Ts=B(os,ss,(e,t)=>({x:0,y:0,width:e,height:t})),Es=(0,s.createContext)(null),Ds=()=>(0,s.useContext)(Es)!=null,Os=e=>e.brush,ks=B([Os,Cs,ls],(e,t,n)=>({height:e.height,x:I(e.x)?e.x:t.left,y:I(e.y)?e.y:t.top+t.height+t.brushBottom-(n?.bottom||0),width:I(e.width)?e.width:t.width}));function As(e,t,{signal:n,edges:r}={}){let i,a=null,o=r!=null&&r.includes(`leading`),s=r==null||r.includes(`trailing`),c=()=>{a!==null&&(e.apply(i,a),i=void 0,a=null)},l=()=>{s&&c(),p()},u=null,d=()=>{u!=null&&clearTimeout(u),u=setTimeout(()=>{u=null,l()},t)},f=()=>{u!==null&&(clearTimeout(u),u=null)},p=()=>{f(),i=void 0,a=null},m=()=>{c()},h=function(...e){if(n?.aborted)return;i=this,a=e;let t=u==null;d(),o&&t&&c()};return h.schedule=d,h.cancel=p,h.flush=m,n?.addEventListener(`abort`,p,{once:!0}),h}function js(e,t=0,n={}){typeof n!=`object`&&(n={});let{leading:r=!1,trailing:i=!0,maxWait:a}=n,o=[,,];r&&(o[0]=`leading`),i&&(o[1]=`trailing`);let s,c=null,l=As(function(...t){s=e.apply(this,t),c=null},t,{edges:o}),u=function(...t){return a!=null&&(c===null&&(c=Date.now()),Date.now()-c>=a)?((r||i)&&(s=e.apply(this,t)),c=Date.now(),l.cancel(),l.schedule(),s):(l.apply(this,t),s)};return u.cancel=l.cancel,u.flush=()=>(l.flush(),s),u}function Ms(e,t=0,n={}){let{leading:r=!0,trailing:i=!0}=n;return js(e,t,{leading:r,maxWait:t,trailing:i})}var Ns=function(e,t){var n=[...arguments].slice(2);if(typeof console<`u`&&console.warn&&(t===void 0&&console.warn(`LogUtils requires an error message argument`),!e)){if(t===void 0)console.warn(`Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.`);else{var r=0;console.warn(t.replace(/%s/g,()=>n[r++]))}}},Ps={width:`100%`,height:`100%`,debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},Fs=(e,t,n)=>{var r=n.width,i=r===void 0?Ps.width:r,a=n.height,o=a===void 0?Ps.height:a,s=n.aspect,c=n.maxHeight,l=se(i)?e:Number(i),u=se(o)?t:Number(o);return s&&s>0&&(l?u=l/s:u&&(l=u*s),c&&u!=null&&u>c&&(u=c)),{calculatedWidth:l,calculatedHeight:u}},Is={width:0,height:0,overflow:`visible`},Ls={width:0,overflowX:`visible`},Rs={height:0,overflowY:`visible`},zs={},Bs=e=>{var t=e.width,n=e.height,r=se(t),i=se(n);return r&&i?Is:r?Ls:i?Rs:zs};function Vs(e){var t=e.width,n=e.height,r=e.aspect,i=t,a=n;return i===void 0&&a===void 0?(i=Ps.width,a=Ps.height):i===void 0?i=r&&r>0?void 0:Ps.width:a===void 0&&(a=r&&r>0?void 0:Ps.height),{width:i,height:a}}var Hs=[`aspect`,`initialDimension`,`width`,`height`,`minWidth`,`minHeight`,`maxHeight`,`children`,`debounce`,`id`,`className`,`onResize`,`style`];function Us(){return Us=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n({width:n,height:r}),[n,r]);return ic(i)?s.createElement(rc.Provider,{value:i},t):null}var oc=()=>(0,s.useContext)(rc),sc=(0,s.forwardRef)((e,t)=>{var n=e.aspect,r=e.initialDimension,i=r===void 0?Ps.initialDimension:r,o=e.width,c=e.height,l=e.minWidth,u=l===void 0?Ps.minWidth:l,d=e.minHeight,f=e.maxHeight,p=e.children,m=e.debounce,h=m===void 0?Ps.debounce:m,g=e.id,_=e.className,v=e.onResize,y=e.style,b=y===void 0?{}:y,x=tc(e,Hs),S=(0,s.useRef)(null),C=(0,s.useRef)();C.current=v,(0,s.useImperativeHandle)(t,()=>S.current);var w=Ys((0,s.useState)({containerWidth:i.width,containerHeight:i.height}),2),T=w[0],E=w[1],D=(0,s.useCallback)((e,t)=>{E(n=>{var r=Math.round(e),i=Math.round(t);return n.containerWidth===r&&n.containerHeight===i?n:{containerWidth:r,containerHeight:i}})},[]);(0,s.useEffect)(()=>{if(S.current==null||typeof ResizeObserver>`u`)return ve;var e=e=>{var t,n=e[0];if(n!=null){var r=n.contentRect,i=r.width,a=r.height;D(i,a),(t=C.current)==null||t.call(C,i,a)}};h>0&&(e=Ms(e,h,{trailing:!0,leading:!1}));var t=new ResizeObserver(e),n=S.current.getBoundingClientRect(),r=n.width,i=n.height;return D(r,i),t.observe(S.current),()=>{t.disconnect()}},[D,h]);var O=T.containerWidth,k=T.containerHeight;Ns(!n||n>0,`The aspect(%s) must be greater than zero.`,n);var A=Fs(O,k,{width:o,height:c,aspect:n,maxHeight:f}),j=A.calculatedWidth,M=A.calculatedHeight;return Ns(O<0||k<0||j!=null&&j>0||M!=null&&M>0,`The width(%s) and height(%s) of chart should be greater than 0, + please check the style of container, or the props width(%s) and height(%s), + or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the + height and width.`,j,M,o,c,u,d,n),s.createElement(`div`,Us({id:g?`${g}`:void 0,className:a(`recharts-responsive-container`,_),style:Gs(Gs({},b),{},{width:o,height:c,minWidth:u,minHeight:d,maxHeight:f}),ref:S},x),s.createElement(`div`,{style:Bs({width:o,height:c})},s.createElement(ac,{width:j,height:M},p)))}),cc=(0,s.forwardRef)((e,t)=>{var n=oc();if(Io(n.width)&&Io(n.height))return e.children;var r=Vs({width:e.width,height:e.height,aspect:e.aspect}),i=r.width,a=r.height,o=Fs(void 0,void 0,{width:i,height:a,aspect:e.aspect,maxHeight:e.maxHeight}),c=o.calculatedWidth,l=o.calculatedHeight;return I(c)&&I(l)?s.createElement(ac,{width:c,height:l},e.children):s.createElement(sc,Us({},e,{width:i,height:a,ref:t}))}),lc=()=>{var e=Ds(),t=z(ws),n=z(ks),r=z(Os)?.padding;return!e||!n||!r?t:{width:n.width-r.left-r.right,height:n.height-r.top-r.bottom,x:r.left,y:r.top}},uc={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},dc=()=>z(Cs)??uc,fc=()=>z(os),pc=()=>z(ss),G=e=>e.layout.layoutType,mc=()=>z(G),hc=()=>{var e=mc();if(e===`horizontal`||e===`vertical`)return e},gc=e=>{var t=e.layout.layoutType;if(t===`centric`||t===`radial`)return t},_c=()=>mc()!==void 0,vc=e=>{var t=R(),n=Ds(),r=e.width,i=e.height,a=oc(),o=r,c=i;return a&&(o=a.width>0?a.width:r,c=a.height>0?a.height:i),(0,s.useEffect)(()=>{!n&&Io(o)&&Io(c)&&t(Mo({width:o,height:c}))},[t,n,o,c]),null},yc=za({name:`legend`,initialState:{settings:{layout:`horizontal`,align:`center`,verticalAlign:`bottom`,itemSorter:`value`,position:void 0,offset:0},size:{width:0,height:0},payload:[]},reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter,e.settings.position=t.payload.position,e.settings.offset=t.payload.offset},addLegendPayload:{reducer(e,t){e.payload.push(V(t.payload))},prepare:H()},replaceLegendPayload:{reducer(e,t){var n=t.payload,r=n.prev,i=n.next,a=da(e).payload.indexOf(V(r));a>-1&&(e.payload[a]=V(i))},prepare:H()},removeLegendPayload:{reducer(e,t){var n=da(e).payload.indexOf(V(t.payload));n>-1&&e.payload.splice(n,1)},prepare:H()}}}),bc=yc.actions;bc.setLegendSize,bc.setLegendSettings;var xc=bc.addLegendPayload,Sc=bc.replaceLegendPayload,Cc=bc.removeLegendPayload,wc=yc.reducer,Tc=o((e=>{var t=i();t.useSyncExternalStore,t.useRef,t.useEffect,t.useMemo,t.useDebugValue}));o(((e,t)=>{t.exports=Tc()}))();function Ec(e){e()}function Dc(){let e=null,t=null;return{clear(){e=null,t=null},notify(){Ec(()=>{let t=e;for(;t;)t.callback(),t=t.next})},get(){let t=[],n=e;for(;n;)t.push(n),n=n.next;return t},subscribe(n){let r=!0,i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!r||e===null||(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var Oc={notify(){},get:()=>[]};function kc(e,t){let n,r=Oc,i=0,a=!1;function o(e){u();let t=r.subscribe(e),n=!1;return()=>{n||(n=!0,t(),d())}}function s(){r.notify()}function c(){m.onStateChange&&m.onStateChange()}function l(){return a}function u(){i++,n||(n=t?t.addNestedSub(c):e.subscribe(c),r=Dc())}function d(){i--,n&&i===0&&(n(),n=void 0,r.clear(),r=Oc)}function f(){a||(a=!0,u())}function p(){a&&(a=!1,d())}let m={addNestedSub:o,notifyNestedSubs:s,handleChangeWrapper:c,isSubscribed:l,trySubscribe:f,tryUnsubscribe:p,getListeners:()=>r};return m}var Ac=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,jc=typeof navigator<`u`&&navigator.product===`ReactNative`,Mc=Ac||jc?s.useLayoutEffect:s.useEffect;function Nc(e,t){return e===t?e!==0||t!==0||1/e==1/t:e!==e&&t!==t}function Pc(e,t){if(Nc(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r=0;r{let e=kc(i);return{store:i,subscription:e,getServerState:r?()=>r:void 0}},[i,r]),o=s.useMemo(()=>i.getState(),[i]);Mc(()=>{let{subscription:e}=a;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),o!==i.getState()&&e.notifyNestedSubs(),()=>{e.tryUnsubscribe(),e.onStateChange=void 0}},[a,o]);let c=n||Rc;return s.createElement(c.Provider,{value:a},t)}var Bc=zc,Vc=new Set([`axisLine`,`tickLine`,`activeBar`,`activeDot`,`activeLabel`,`activeShape`,`allowEscapeViewBox`,`background`,`cursor`,`dot`,`label`,`line`,`margin`,`padding`,`position`,`shape`,`style`,`tick`,`wrapperStyle`,`radius`,`throttledEvents`]);function Hc(e,t){return e==null&&t==null?!0:typeof e==`number`&&typeof t==`number`?e===t||e!==e&&t!==t:e===t}function Uc(e,t){for(var n of new Set([...Object.keys(e),...Object.keys(t)]))if(Vc.has(n)){if(e[n]==null&&t[n]==null)continue;if(!Pc(e[n],t[n]))return!1}else if(!Hc(e[n],t[n]))return!1;return!0}function Wc(){return Wc=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.separator,n=t===void 0?rl.separator:t,r=e.contentStyle,i=e.itemStyle,o=e.labelStyle,c=o===void 0?rl.labelStyle:o,l=e.payload,u=e.formatter,d=e.itemSorter,f=e.wrapperClassName,p=e.labelClassName,m=e.label,h=e.labelFormatter,g=e.accessibilityLayer,_=g===void 0?rl.accessibilityLayer:g,v=()=>{if(l&&l.length){var e={padding:0,margin:0},t=il(l,d).map((e,t)=>{if(!e||e.type===`none`)return null;var r=e.formatter||u||nl,a=e.value,o=e.name,c=a,d=o;if(r){var f=r(a,o,e,t,l);if(Array.isArray(f)){var p=Xc(f,2);c=p[0],d=p[1]}else if(f!=null)c=f;else return null}var m=Kc(Kc({},rl.itemStyle),{},{color:e.color||rl.itemStyle.color},i);return s.createElement(`li`,{className:`recharts-tooltip-item`,key:`tooltip-item-${t}`,style:m},ce(d)?s.createElement(`span`,{className:`recharts-tooltip-item-name`},d):null,ce(d)?s.createElement(`span`,{className:`recharts-tooltip-item-separator`},n):null,s.createElement(`span`,{className:`recharts-tooltip-item-value`},c),s.createElement(`span`,{className:`recharts-tooltip-item-unit`},e.unit||``))});return s.createElement(`ul`,{className:`recharts-tooltip-item-list`,style:e},t)}return null},y=Kc(Kc({},rl.contentStyle),r),b=Kc({margin:0},c),x=!he(m),S=x?m:``,C=a(`recharts-default-tooltip`,f),w=a(`recharts-tooltip-label`,p);x&&h&&l!=null&&(S=h(m,l));var T=_?{role:`status`,"aria-live":`assertive`}:{};return s.createElement(`div`,Wc({className:C,style:y},T),s.createElement(`p`,{className:w,style:b},s.isValidElement(S)?S:`${S}`),v())},ol=`recharts-tooltip-wrapper`,sl={visibility:`hidden`};function cl(e){var t=e.coordinate,n=e.translateX,r=e.translateY;return a(ol,{[`${ol}-right`]:I(n)&&t&&I(t.x)&&n>=t.x,[`${ol}-left`]:I(n)&&t&&I(t.x)&&n=t.y,[`${ol}-top`]:I(r)&&t&&I(t.y)&&r0?i:0),d=n[r]+i;if(t[r])return o[r]?u:d;var f=c[r];return f==null?0:o[r]?Math.max(uf+l?Math.max(u,f):Math.max(d,f)}function ul(e){var t=e.translateX,n=e.translateY;return{transform:e.useTranslate3d?`translate3d(${t}px, ${n}px, 0)`:`translate(${t}px, ${n}px)`}}function dl(e){var t=e.allowEscapeViewBox,n=e.coordinate,r=e.offsetTop,i=e.offsetLeft,a=e.position,o=e.reverseDirection,s=e.tooltipBox,c=e.useTranslate3d,l=e.viewBox,u,d,f;return s&&s.height>0&&s.width>0&&n?(d=ll({allowEscapeViewBox:t,coordinate:n,key:`x`,offset:i,position:a,reverseDirection:o,tooltipDimension:s.width,viewBox:l,viewBoxDimension:l.width}),f=ll({allowEscapeViewBox:t,coordinate:n,key:`y`,offset:r,position:a,reverseDirection:o,tooltipDimension:s.height,viewBox:l,viewBoxDimension:l.height}),u=ul({translateX:d,translateY:f,useTranslate3d:c})):u=sl,{cssProperties:u,cssClasses:cl({translateX:d,translateY:f,coordinate:n})}}var fl={devToolsEnabled:!0,isSsr:!(typeof window<`u`&&window.document&&window.document.createElement&&window.setTimeout)};function pl(e,t){return vl(e)||_l(e,t)||hl(e,t)||ml()}function ml(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hl(e,t){if(e){if(typeof e==`string`)return gl(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?gl(e,t):void 0}}function gl(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nfl.isSsr||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches),2),t=e[0],n=e[1];return(0,s.useEffect)(()=>{if(window.matchMedia){var e=window.matchMedia(`(prefers-reduced-motion: reduce)`),t=()=>{n(e.matches)};return e.addEventListener(`change`,t),()=>{e.removeEventListener(`change`,t)}}},[]),t}function bl(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function xl(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}})),2),r=n[0],i=n[1];s.useEffect(()=>{var t=t=>{t.key===`Escape`&&i({dismissed:!0,dismissedAtCoordinate:{x:e.coordinate?.x??0,y:e.coordinate?.y??0}})};return document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`keydown`,t)}},[e.coordinate?.x,e.coordinate?.y]),r.dismissed&&((e.coordinate?.x??0)!==r.dismissedAtCoordinate.x||(e.coordinate?.y??0)!==r.dismissedAtCoordinate.y)&&i(xl(xl({},r),{},{dismissed:!1}));var a=dl({allowEscapeViewBox:e.allowEscapeViewBox,coordinate:e.coordinate,offsetLeft:typeof e.offset==`number`?e.offset:e.offset.x,offsetTop:typeof e.offset==`number`?e.offset:e.offset.y,position:e.position,reverseDirection:e.reverseDirection,tooltipBox:e.lastBoundingBox,useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),o=a.cssClasses,c=a.cssProperties,l=xl(xl({},e.hasPortalFromProps?{}:xl(xl({transition:jl({prefersReducedMotion:t,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},c),{},{pointerEvents:`none`,position:`absolute`,top:0,left:0})),{},{visibility:!r.dismissed&&e.active&&e.hasPayload?`visible`:`hidden`},e.wrapperStyle);return s.createElement(`div`,{xmlns:`http://www.w3.org/1999/xhtml`,tabIndex:-1,className:o,style:l,ref:e.innerRef},e.children)}var Nl=s.memo(Ml),Pl=()=>z(e=>e.rootProps.accessibilityLayer)??!0;function Fl(){return Fl=Object.assign?Object.assign.bind():function(e){for(var t=1;tU(e.x)&&U(e.y),Ul=e=>e.base!=null&&Hl(e.base)&&Hl(e),Wl=e=>e.x,Gl=e=>e.y,Kl=(e,t)=>{if(typeof e==`function`)return e;var n=`curve${ge(e)}`;if((n===`curveMonotone`||n===`curveBump`)&&t){var r=Vl[`${n}${t===`vertical`?`Y`:`X`}`];if(r)return r}return Vl[n]||ze},ql={connectNulls:!1,type:`linear`},Jl=e=>{var t=e.type,n=t===void 0?ql.type:t,r=e.points,i=r===void 0?[]:r,a=e.baseLine,o=e.layout,s=e.connectNulls,c=s===void 0?ql.connectNulls:s,l=Kl(n,o),u=c?i.filter(Hl):i;if(Array.isArray(a)){var d,f=i.map((e,t)=>Ll(Ll({},e),{},{base:a[t]}));return d=o===`vertical`?Ue().y(Gl).x1(Wl).x0(e=>e.base.x):Ue().x(Wl).y1(Gl).y0(e=>e.base.y),d.defined(Ul).curve(l)(c?f.filter(Ul):f)}return(o===`vertical`&&I(a)?Ue().y(Gl).x1(Wl).x0(a):I(a)?Ue().x(Wl).y1(Gl).y0(a):He().x(Wl).y(Gl)).defined(Hl).curve(l)(u)},Yl=e=>{var t=e.className,n=e.points,r=e.path,i=e.pathRef,o=mc();if((!n||!n.length)&&!r)return null;var c={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||o,connectNulls:e.connectNulls},l=n&&n.length?Jl(c):r;return s.createElement(`path`,Fl({},m(e),Ot(e),{className:a(`recharts-curve`,t),d:l===null?void 0:l,ref:i}))},Xl=[`x`,`y`,`top`,`left`,`width`,`height`,`className`];function Zl(){return Zl=Object.assign?Object.assign.bind():function(e){for(var t=1;t`M${e},${i}v${r}M${a},${t}h${n}`,ou=e=>{var t=e.x,n=t===void 0?0:t,r=e.y,i=r===void 0?0:r,o=e.top,c=o===void 0?0:o,l=e.left,u=l===void 0?0:l,d=e.width,f=d===void 0?0:d,p=e.height,m=p===void 0?0:p,h=e.className,_=ru(e,Xl),v=$l({x:n,y:i,top:c,left:u,width:f,height:m},_);return!I(n)||!I(i)||!I(f)||!I(m)||!I(c)||!I(u)?null:s.createElement(`path`,Zl({},g(v),{className:a(`recharts-cross`,h),d:au(n,i,f,m,c,u)}))};function su(e,t,n,r){var i=r/2;return{stroke:`none`,fill:`#ccc`,x:e===`horizontal`?t.x-i:n.left+.5,y:e===`horizontal`?n.top+.5:t.y-i,width:e===`horizontal`?r:n.width-1,height:e===`horizontal`?n.height-1:r}}var cu=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],lu=(e,t)=>e.map((e,n)=>e*t**n).reduce((e,t)=>e+t),uu=(e,t)=>n=>lu(cu(e,t),n),du=(e,t)=>n=>lu([...cu(e,t).map((e,t)=>e*t).slice(1),0],n),fu=e=>{var t,n=e.split(`(`);if(n.length!==2||n[0]!==`cubic-bezier`)return null;var r=(t=n[1])==null||(t=t.split(`)`)[0])==null?void 0:t.split(`,`);if(r==null||r.length!==4)return null;var i=r.map(e=>parseFloat(e));return[i[0],i[1],i[2],i[3]]},pu=function(){var e=[...arguments];if(e.length===1)switch(e[0]){case`linear`:return[0,0,1,1];case`ease`:return[.25,.1,.25,1];case`ease-in`:return[.42,0,1,1];case`ease-out`:return[.42,0,.58,1];case`ease-in-out`:return[0,0,.58,1];default:var t=fu(e[0]);if(t)return t}return e.length===4?e:[0,0,1,1]},mu=(e,t,n,r)=>{var i=uu(e,n),a=uu(t,r),o=du(e,n),s=e=>e>1?1:e<0?0:e,c=e=>{for(var t=e>1?1:e,n=t,r=0;r<8;++r){var c=i(n)-t,l=o(n);if(Math.abs(c-t)<1e-4||l<1e-4)return a(n);n=s(n-c/l)}return a(n)};return c.isStepper=!1,c},hu=function(){return mu(...pu(...arguments))},gu=function(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.stiff,n=t===void 0?100:t,r=e.damping,i=r===void 0?8:r,a=e.dt,o=a===void 0?16.67:a,s=1,c=[0],l=0,u=0,d=1e4,f=0;f{if(e<=0)return 0;if(e>=1)return s;var t=e*h,n=Math.floor(t),r=t-n;return(c[n]??0)+((c[n+1]??0)-(c[n]??0))*r}},_u=e=>{if(typeof e==`string`)switch(e){case`ease`:case`ease-in-out`:case`ease-out`:case`ease-in`:case`linear`:return hu(e);case`spring`:return gu();default:if(e.split(`(`)[0]===`cubic-bezier`)return hu(e)}return typeof e==`function`?e:null},vu=(0,s.createContext)((e,t,n)=>{var r,i=a=>{var o=t.tick(a);if(t.getState()===`active`){if(n(t.getInterpolated()),t.getProgress()===1){t.complete(),r=void 0;return}r=e.setTimeout(i,o);return}r=e.setTimeout(i,o)};return r=e.setTimeout(i,0),()=>r?.()});vu.Provider;function yu(e){var t=(0,s.useContext)(vu);return(0,s.useMemo)(()=>e??t,[e,t])}function bu(e,t,n){return(t=xu(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xu(e){var t=Su(e,`string`);return typeof t==`symbol`?t:t+``}function Su(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var Cu=`init`,wu=`pending`,Tu=`active`,Eu=`completed`;function Du(e){return Math.max(0,e)}var Ou=class{getAnimationStartedTime(){return this.animationStartedTime}getBeginStartedTime(){return this.beginStartedTime}constructor(e){var t;bu(this,`state`,Cu),this.animationId=e.animationId,this.onAnimationEnd=e.onAnimationEnd,this.animationDuration=Du(e.animationDuration),this.animationBegin=Du(e.animationBegin),this.progress=0,this.from=e.from,this.to=e.to,this.easing=e.easing,(t=e.onAnimationStart)==null||t.call(e)}getState(){return this.state}getEasing(){return this.easing}getAnimationDuration(){return this.animationDuration}tick(e){if(this.getState()===Cu)return this.state=wu,this.beginStartedTime=e,this.animationBegin;if(this.getState()===wu){if(this.beginStartedTime==null)throw Error();var t=e-this.beginStartedTime;return t>=this.animationBegin?(this.state=Tu,this.animationStartedTime=e,this.nextAnimationUpdate(0)):Du(this.animationBegin-t)}if(this.getState()===Tu){if(this.animationStartedTime==null)throw Error();var n=e-this.animationStartedTime;return this.setProgress(n/this.animationDuration),this.nextAnimationUpdate(n)}return 0}setProgress(e){this.progress=Math.min(1,Math.max(0,e))}getProgress(){return this.progress}complete(){if(this.progress=1,this.state===`active`){var e;(e=this.onAnimationEnd)==null||e.call(this)}this.state=Eu}getFrom(){return this.from}getTo(){return this.to}getAnimationId(){return this.animationId}getAnimationBegin(){return this.animationBegin}},ku=class extends Ou{nextAnimationUpdate(){return 0}getInterpolated(){return this.easing(pe(this.getFrom(),this.getTo(),this.getProgress()))}},Au=class{setTimeout(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=performance.now(),r=null,i=a=>{a-n>=t?e(a):r=requestAnimationFrame(i)};return r=requestAnimationFrame(i),()=>{r!=null&&cancelAnimationFrame(r)}}};function ju(e,t){return Iu(e)||Fu(e,t)||Nu(e,t)||Mu()}function Mu(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Nu(e,t){if(e){if(typeof e==`string`)return Pu(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Pu(e,t):void 0}}function Pu(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{},onAnimationStart:()=>{}},Ru=0,zu=1;function Bu(e){var t=It(e,Lu),n=t.animationId,r=t.isActive,i=t.canBegin,a=t.duration,o=t.easing,c=t.begin,l=t.onAnimationEnd,u=t.onAnimationStart,d=t.children,f=yl(),p=r===`auto`?!fl.isSsr&&!f:r,m=yu(t.animationController),h=ju((0,s.useState)(p?Ru:zu),2),g=h[0],_=h[1];return(0,s.useEffect)(()=>{p||_(zu)},[p]),(0,s.useEffect)(()=>{var e=_u(o);return!p||!i||e==null?ve:m(new Au,new ku({animationId:n,easing:e,animationDuration:a,animationBegin:c,onAnimationStart:u,onAnimationEnd:l,from:Ru,to:zu}),_)},[m,n,p,i,a,o,c,u,l]),d(Number(g))}function Vu(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`animation-`,n=(0,s.useRef)(ue(t)),r=(0,s.useRef)(e);return r.current!==e&&(n.current=ue(t),r.current=e),n.current}var Hu=e=>e.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`),Uu=(e,t,n)=>e.map(e=>`${Hu(e)} ${t}ms ${n}`).join(`,`),Wu=[`radius`],Gu=[`radius`],Ku,qu,Ju,Yu,Xu,Zu,Qu,$u,ed,td;function nd(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function rd(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{var a=ae(n),o=ae(r),s=Math.min(Math.abs(a)/2,Math.abs(o)/2),c=o>=0?1:-1,l=a>=0?1:-1,u=+(o>=0&&a>=0||o<0&&a<0),d;if(s>0&&Array.isArray(i)){for(var f=[0,0,0,0],p=0,m=4;ps?s:h}d=P(Ku||=gd([`M`,`,`,``]),e,t+c*f[0]),f[0]>0&&(d+=P(qu||=gd([`A `,`,`,`,0,0,`,`,`,`,`,``]),f[0],f[0],u,e+l*f[0],t)),d+=P(Ju||=gd([`L `,`,`,``]),e+n-l*f[1],t),f[1]>0&&(d+=P(Yu||=gd([`A `,`,`,`,0,0,`,`, + `,`,`,``]),f[1],f[1],u,e+n,t+c*f[1])),d+=P(Xu||=gd([`L `,`,`,``]),e+n,t+r-c*f[2]),f[2]>0&&(d+=P(Zu||=gd([`A `,`,`,`,0,0,`,`, + `,`,`,``]),f[2],f[2],u,e+n-l*f[2],t+r)),d+=P(Qu||=gd([`L `,`,`,``]),e+l*f[3],t+r),f[3]>0&&(d+=P($u||=gd([`A `,`,`,`,0,0,`,`, + `,`,`,``]),f[3],f[3],u,e,t+r-c*f[3])),d+=`Z`}else if(s>0&&i===+i&&i>0){var g=Math.min(s,i);d=P(ed||=gd(`M .,. + A .,.,0,0,.,.,. + L .,. + A .,.,0,0,.,.,. + L .,. + A .,.,0,0,.,.,. + L .,. + A .,.,0,0,.,.,. Z`.split(`.`)),e,t+c*g,g,g,u,e+l*g,t,e+n-l*g,t,g,g,u,e+n,t+c*g,e+n,t+r-c*g,g,g,u,e+n-l*g,t+r,e+l*g,t+r,g,g,u,e,t+r-c*g)}else d=P(td||=gd([`M `,`,`,` h `,` v `,` h `,` Z`]),e,t,n,r,-n);return d},vd={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:`ease`},yd=e=>{var t=It(e,vd),n=(0,s.useRef)(null),r=ud((0,s.useState)(-1),2),i=r[0],o=r[1];(0,s.useEffect)(()=>{if(n.current&&n.current.getTotalLength)try{var e=n.current.getTotalLength();e&&o(e)}catch{}},[]);var c=t.x,l=t.y,u=t.width,d=t.height,f=t.radius,p=t.className,m=t.animationEasing,h=t.animationDuration,_=t.animationBegin,v=t.isAnimationActive,y=t.isUpdateAnimationActive,b=(0,s.useRef)(u),x=(0,s.useRef)(d),S=(0,s.useRef)(c),C=(0,s.useRef)(l),w=Vu((0,s.useMemo)(()=>({x:c,y:l,width:u,height:d,radius:f}),[c,l,u,d,f]),`rectangle-`);if(c!==+c||l!==+l||u!==+u||d!==+d||u===0||d===0)return null;var T=a(`recharts-rectangle`,p);if(!y){var E=g(t);E.radius;var D=cd(E,Wu);return s.createElement(`path`,sd({},D,{x:ae(c),y:ae(l),width:ae(u),height:ae(d),radius:typeof f==`number`?f:void 0,className:T,d:_d(c,l,u,d,f)}))}var O=b.current,k=x.current,A=S.current,j=C.current,M=`0px ${i===-1?1:i}px`,N=`${i}px ${i}px`,ee=Uu([`strokeDasharray`],h,typeof m==`string`?m:vd.animationEasing);return s.createElement(Bu,{animationId:w,key:w,canBegin:i>0,duration:h,easing:m,isActive:y,begin:_},e=>{var r=pe(O,u,e),i=pe(k,d,e),a=pe(A,c,e),o=pe(j,l,e);n.current&&(b.current=r,x.current=i,S.current=a,C.current=o);var p=v?e>0?{transition:ee,strokeDasharray:N}:{strokeDasharray:M}:{strokeDasharray:N},m=g(t);m.radius;var h=cd(m,Gu);return s.createElement(`path`,sd({},h,{radius:typeof f==`number`?f:void 0,className:T,d:_d(a,o,r,i,f),ref:n,style:rd(rd({},p),t.style)}))})};function bd(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function xd(e){for(var t=1;te*180/Math.PI,Dd=(e,t,n,r)=>({x:e+Math.cos(-Td*r)*n,y:t+Math.sin(-Td*r)*n}),Od=function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0,width:0,height:0,brushBottom:0};return Math.min(Math.abs(e-(n.left||0)-(n.right||0)),Math.abs(t-(n.top||0)-(n.bottom||0)))/2},kd=(e,t)=>{var n=e.x,r=e.y,i=t.x,a=t.y;return Math.sqrt((n-i)**2+(r-a)**2)},Ad=(e,t)=>{var n=e.x,r=e.y,i=t.cx,a=t.cy,o=kd({x:n,y:r},{x:i,y:a});if(o<=0)return{radius:o,angle:0};var s=(n-i)/o,c=Math.acos(s);return r>a&&(c=2*Math.PI-c),{radius:o,angle:Ed(c),angleInRadian:c}},jd=e=>{var t=e.startAngle,n=e.endAngle,r=Math.floor(t/360),i=Math.floor(n/360),a=Math.min(r,i);return{startAngle:t-a*360,endAngle:n-a*360}},Md=(e,t)=>{var n=t.startAngle,r=t.endAngle,i=Math.floor(n/360),a=Math.floor(r/360);return e+Math.min(i,a)*360},Nd=(e,t)=>{var n=e.relativeX,r=e.relativeY,i=Ad({x:n,y:r},t),a=i.radius,o=i.angle,s=t.innerRadius,c=t.outerRadius;if(ac||a===0)return null;var l=jd(t),u=l.startAngle,d=l.endAngle,f=o,p;if(u<=d){for(;f>d;)f-=360;for(;f=u&&f<=d}else{for(;f>u;)f-=360;for(;f=d&&f<=u}return p?xd(xd({},t),{},{radius:a,angle:Md(f,t)}):null};function Pd(e){var t=e.cx,n=e.cy,r=e.radius,i=e.startAngle,a=e.endAngle;return{points:[Dd(t,n,r,i),Dd(t,n,r,a)],cx:t,cy:n,radius:r,startAngle:i,endAngle:a}}var Fd,Id,Ld,Rd,zd,Bd,Vd;function Hd(){return Hd=Object.assign?Object.assign.bind():function(e){for(var t=1;toe(t-e)*Math.min(Math.abs(t-e),359.999),Gd=e=>{var t=e.cx,n=e.cy,r=e.radius,i=e.angle,a=e.sign,o=e.isExternal,s=e.cornerRadius,c=e.cornerIsExternal,l=s*(o?1:-1)+r,u=Math.asin(s/l)/Td,d=c?i:i+a*u,f=Dd(t,n,l,d),p=Dd(t,n,r,d),m=c?i-a*u:i;return{center:f,circleTangency:p,lineTangency:Dd(t,n,l*Math.cos(u*Td),m),theta:u}},Kd=e=>{var t=e.cx,n=e.cy,r=e.innerRadius,i=e.outerRadius,a=e.startAngle,o=e.endAngle,s=Wd(a,o),c=a+s,l=Dd(t,n,i,a),u=Dd(t,n,i,c),d=P(Fd||=Ud([`M `,`,`,` + A `,`,`,`,0, + `,`,`,`, + `,`,`,` + `]),l.x,l.y,i,i,+(Math.abs(s)>180),+(a>c),u.x,u.y);if(r>0){var f=Dd(t,n,r,a),p=Dd(t,n,r,c);d+=P(Id||=Ud([`L `,`,`,` + A `,`,`,`,0, + `,`,`,`, + `,`,`,` Z`]),p.x,p.y,r,r,+(Math.abs(s)>180),+(a<=c),f.x,f.y)}else d+=P(Ld||=Ud([`L `,`,`,` Z`]),t,n);return d},qd=e=>{var t=e.cx,n=e.cy,r=e.innerRadius,i=e.outerRadius,a=e.cornerRadius,o=e.forceCornerRadius,s=e.cornerIsExternal,c=e.startAngle,l=e.endAngle,u=oe(l-c),d=Gd({cx:t,cy:n,radius:i,angle:c,sign:u,cornerRadius:a,cornerIsExternal:s}),f=d.circleTangency,p=d.lineTangency,m=d.theta,h=Gd({cx:t,cy:n,radius:i,angle:l,sign:-u,cornerRadius:a,cornerIsExternal:s}),g=h.circleTangency,_=h.lineTangency,v=h.theta,y=s?Math.abs(c-l):Math.abs(c-l)-m-v;if(y<0)return o?P(Rd||=Ud([`M `,`,`,` + a`,`,`,`,0,0,1,`,`,0 + a`,`,`,`,0,0,1,`,`,0 + `]),p.x,p.y,a,a,a*2,a,a,-a*2):Kd({cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:c,endAngle:l});var b=P(zd||=Ud([`M `,`,`,` + A`,`,`,`,0,0,`,`,`,`,`,` + A`,`,`,`,0,`,`,`,`,`,`,`,` + A`,`,`,`,0,0,`,`,`,`,`,` + `]),p.x,p.y,a,a,+(u<0),f.x,f.y,i,i,+(y>180),+(u<0),g.x,g.y,a,a,+(u<0),_.x,_.y);if(r>0){var x=Gd({cx:t,cy:n,radius:r,angle:c,sign:u,isExternal:!0,cornerRadius:a,cornerIsExternal:s}),S=x.circleTangency,C=x.lineTangency,w=x.theta,T=Gd({cx:t,cy:n,radius:r,angle:l,sign:-u,isExternal:!0,cornerRadius:a,cornerIsExternal:s}),E=T.circleTangency,D=T.lineTangency,O=T.theta,k=s?Math.abs(c-l):Math.abs(c-l)-w-O;if(k<0&&a===0)return`${b}L${t},${n}Z`;b+=P(Bd||=Ud([`L`,`,`,` + A`,`,`,`,0,0,`,`,`,`,`,` + A`,`,`,`,0,`,`,`,`,`,`,`,` + A`,`,`,`,0,0,`,`,`,`,`,`Z`]),D.x,D.y,a,a,+(u<0),E.x,E.y,r,r,+(k>180),+(u>0),S.x,S.y,a,a,+(u<0),C.x,C.y)}else b+=P(Vd||=Ud([`L`,`,`,`Z`]),t,n);return b},Jd={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},Yd=e=>{var t=It(e,Jd),n=t.cx,r=t.cy,i=t.innerRadius,o=t.outerRadius,c=t.cornerRadius,l=t.forceCornerRadius,u=t.cornerIsExternal,d=t.startAngle,f=t.endAngle,p=t.className;if(o0&&Math.abs(d-f)<360?qd({cx:n,cy:r,innerRadius:i,outerRadius:o,cornerRadius:Math.min(_,h/2),forceCornerRadius:l,cornerIsExternal:u,startAngle:d,endAngle:f}):Kd({cx:n,cy:r,innerRadius:i,outerRadius:o,startAngle:d,endAngle:f});return s.createElement(`path`,Hd({},g(t),{className:m,d:v}))};function Xd(e,t,n){if(e===`horizontal`)return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e===`vertical`)return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(Dt(t)){if(e===`centric`){var r=t.cx,i=t.cy,a=t.innerRadius,o=t.outerRadius,s=t.angle,c=Dd(r,i,a,s),l=Dd(r,i,o,s);return[{x:c.x,y:c.y},{x:l.x,y:l.y}]}return Pd(t)}}function Zd(e){return M(e)?NaN:Number(e)}function Qd(e){return e?(e=Zd(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}function $d(e,t,n){n&&typeof n!=`number`&&hr(e,t,n)&&(t=n=void 0),e=Qd(e),t===void 0?(t=e,e=0):t=Qd(t),n=n===void 0?ee.chartData,tf=B([ef],e=>{var t=e.chartData==null?0:e.chartData.length-1;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),nf=(e,t,n,r)=>r?tf(e):ef(e),rf=(e,t,n)=>n?tf(e):ef(e),af=B([nf],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t==null?[]:t.slice(n,r+1)});B([tf],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t==null?[]:t.slice(n,r+1)});var of=B([ef],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t==null?[]:t.slice(n,r+1)});function sf(e,t){return ff(e)||df(e,t)||lf(e,t)||cf()}function cf(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function lf(e,t){if(e){if(typeof e==`string`)return uf(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?uf(e,t):void 0}}function uf(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{(function(e){var n=1e9,r={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:`2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286`},i=!0,a=`[DecimalError] `,o=a+`Invalid argument: `,s=a+`Exponent out of range: `,c=Math.floor,l=Math.pow,u=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,d,f=1e7,p=7,m=9007199254740991,h=c(m/p),g={};g.absoluteValue=g.abs=function(){var e=new this.constructor(this);return e.s&&=1,e},g.comparedTo=g.cmp=function(e){var t,n,r,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(r=a.d.length,i=e.d.length,t=0,n=re.d[t]^a.s<0?1:-1;return r===i?0:r>i^a.s<0?1:-1},g.decimalPlaces=g.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*p;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n},g.dividedBy=g.div=function(e){return b(this,new this.constructor(e))},g.dividedToIntegerBy=g.idiv=function(e){var t=this,n=t.constructor;return D(b(t,new n(e),0,1),n.precision)},g.equals=g.eq=function(e){return!this.cmp(e)},g.exponent=function(){return S(this)},g.greaterThan=g.gt=function(e){return this.cmp(e)>0},g.greaterThanOrEqualTo=g.gte=function(e){return this.cmp(e)>=0},g.isInteger=g.isint=function(){return this.e>this.d.length-2},g.isNegative=g.isneg=function(){return this.s<0},g.isPositive=g.ispos=function(){return this.s>0},g.isZero=function(){return this.s===0},g.lessThan=g.lt=function(e){return this.cmp(e)<0},g.lessThanOrEqualTo=g.lte=function(e){return this.cmp(e)<1},g.logarithm=g.log=function(e){var t,n=this,r=n.constructor,o=r.precision,s=o+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(d))throw Error(a+`NaN`);if(n.s<1)throw Error(a+(n.s?`NaN`:`-Infinity`));return n.eq(d)?new r(0):(i=!1,t=b(T(n,s),T(e,s),s),i=!0,D(t,o))},g.minus=g.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?O(t,e):_(t,(e.s=-e.s,e))},g.modulo=g.mod=function(e){var t,n=this,r=n.constructor,o=r.precision;if(e=new r(e),!e.s)throw Error(a+`NaN`);return n.s?(i=!1,t=b(n,e,0,1).times(e),i=!0,n.minus(t)):D(new r(n),o)},g.naturalExponential=g.exp=function(){return x(this)},g.naturalLogarithm=g.ln=function(){return T(this)},g.negated=g.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e},g.plus=g.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?_(t,e):O(t,(e.s=-e.s,e))},g.precision=g.sd=function(e){var t,n,r,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(o+e);if(t=S(i)+1,r=i.d.length-1,n=r*p+1,r=i.d[r],r){for(;r%10==0;r/=10)n--;for(r=i.d[0];r>=10;r/=10)n++}return e&&t>n?t:n},g.squareRoot=g.sqrt=function(){var e,t,n,r,o,s,l,u=this,d=u.constructor;if(u.s<1){if(!u.s)return new d(0);throw Error(a+`NaN`)}for(e=S(u),i=!1,o=Math.sqrt(+u),o==0||o==1/0?(t=y(u.d),(t.length+e)%2==0&&(t+=`0`),o=Math.sqrt(t),e=c((e+1)/2)-(e<0||e%2),o==1/0?t=`5e`+e:(t=o.toExponential(),t=t.slice(0,t.indexOf(`e`)+1)+e),r=new d(t)):r=new d(o.toString()),n=d.precision,o=l=n+3;;)if(s=r,r=s.plus(b(u,s,l+2)).times(.5),y(s.d).slice(0,l)===(t=y(r.d)).slice(0,l)){if(t=t.slice(l-3,l+1),o==l&&t==`4999`){if(D(s,n+1,0),s.times(s).eq(u)){r=s;break}}else if(t!=`9999`)break;l+=4}return i=!0,D(r,n)},g.times=g.mul=function(e){var t,n,r,a,o,s,c,l,u,d=this,p=d.constructor,m=d.d,h=(e=new p(e)).d;if(!d.s||!e.s)return new p(0);for(e.s*=d.s,n=d.e+e.e,l=m.length,u=h.length,l=0;){for(t=0,a=l+r;a>r;)c=o[a]+h[r]*m[a-r-1]+t,o[a--]=c%f|0,t=c/f|0;o[a]=(o[a]+t)%f|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=n,i?D(e,p.precision):e},g.toDecimalPlaces=g.todp=function(e,t){var r=this,i=r.constructor;return r=new i(r),e===void 0?r:(v(e,0,n),t===void 0?t=i.rounding:v(t,0,8),D(r,e+S(r)+1,t))},g.toExponential=function(e,t){var r,i=this,a=i.constructor;return e===void 0?r=k(i,!0):(v(e,0,n),t===void 0?t=a.rounding:v(t,0,8),i=D(new a(i),e+1,t),r=k(i,!0,e+1)),r},g.toFixed=function(e,t){var r,i,a=this,o=a.constructor;return e===void 0?k(a):(v(e,0,n),t===void 0?t=o.rounding:v(t,0,8),i=D(new o(a),e+S(a)+1,t),r=k(i.abs(),!1,e+S(i)+1),a.isneg()&&!a.isZero()?`-`+r:r)},g.toInteger=g.toint=function(){var e=this,t=e.constructor;return D(new t(e),S(e)+1,t.rounding)},g.toNumber=function(){return+this},g.toPower=g.pow=function(e){var t,n,r,o,s,l,u=this,f=u.constructor,h=12,g=+(e=new f(e));if(!e.s)return new f(d);if(u=new f(u),!u.s){if(e.s<1)throw Error(a+`Infinity`);return u}if(u.eq(d))return u;if(r=f.precision,e.eq(d))return D(u,r);if(t=e.e,n=e.d.length-1,l=t>=n,s=u.s,!l){if(s<0)throw Error(a+`NaN`)}else if((n=g<0?-g:g)<=m){for(o=new f(d),t=Math.ceil(r/p+4),i=!1;n%2&&(o=o.times(u),A(o.d,t)),n=c(n/2),n!==0;)u=u.times(u),A(u.d,t);return i=!0,e.s<0?new f(d).div(o):D(o,r)}return s=s<0&&e.d[Math.max(t,n)]&1?-1:1,u.s=1,i=!1,o=e.times(T(u,r+h)),i=!0,o=x(o),o.s=s,o},g.toPrecision=function(e,t){var r,i,a=this,o=a.constructor;return e===void 0?(r=S(a),i=k(a,r<=o.toExpNeg||r>=o.toExpPos)):(v(e,1,n),t===void 0?t=o.rounding:v(t,0,8),a=D(new o(a),e,t),r=S(a),i=k(a,e<=r||r<=o.toExpNeg,e)),i},g.toSignificantDigits=g.tosd=function(e,t){var r=this,i=r.constructor;return e===void 0?(e=i.precision,t=i.rounding):(v(e,1,n),t===void 0?t=i.rounding:v(t,0,8)),D(new i(r),e,t)},g.toString=g.valueOf=g.val=g.toJSON=function(){var e=this,t=S(e),n=e.constructor;return k(e,t<=n.toExpNeg||t>=n.toExpPos)};function _(e,t){var n,r,a,o,s,c,l,u,d=e.constructor,m=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),i?D(t,m):t;if(l=e.d,u=t.d,s=e.e,a=t.e,l=l.slice(),o=s-a,o){for(o<0?(r=l,o=-o,c=u.length):(r=u,a=s,c=l.length),s=Math.ceil(m/p),c=s>c?s+1:c+1,o>c&&(o=c,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for(c=l.length,o=u.length,c-o<0&&(o=c,r=u,u=l,l=r),n=0;o;)n=(l[--o]=l[o]+u[o]+n)/f|0,l[o]%=f;for(n&&(l.unshift(n),++a),c=l.length;l[--c]==0;)l.pop();return t.d=l,t.e=a,i?D(t,m):t}function v(e,t,n){if(e!==~~e||en)throw Error(o+e)}function y(e){var t,n,r,i=e.length-1,a=``,o=e[0];if(i>0){for(a+=o,t=1;tr?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function n(e,t,n){for(var r=0;n--;)e[n]-=r,r=+(e[n]1;)e.shift()}return function(r,i,o,s){var c,l,u,d,m,h,g,_,v,y,b,x,C,w,T,E,O,k,A=r.constructor,j=r.s==i.s?1:-1,M=r.d,N=i.d;if(!r.s)return new A(r);if(!i.s)throw Error(a+`Division by zero`);for(l=r.e-i.e,O=N.length,T=M.length,g=new A(j),_=g.d=[],u=0;N[u]==(M[u]||0);)++u;if(N[u]>(M[u]||0)&&--l,x=o==null?o=A.precision:s?o+(S(r)-S(i))+1:o,x<0)return new A(0);if(x=x/p+2|0,u=0,O==1)for(d=0,N=N[0],x++;(u1&&(N=e(N,d),M=e(M,d),O=N.length,T=M.length),w=O,v=M.slice(0,O),y=v.length;y=f/2&&++E;do d=0,c=t(N,v,O,y),c<0?(b=v[0],O!=y&&(b=b*f+(v[1]||0)),d=b/E|0,d>1?(d>=f&&(d=f-1),m=e(N,d),h=m.length,y=v.length,c=t(m,v,h,y),c==1&&(d--,n(m,O16)throw Error(s+S(e));if(!e.s)return new m(d);for(t==null?(i=!1,u=h):u=t,c=new m(.03125);e.abs().gte(.1);)e=e.times(c),p+=5;for(r=Math.log(l(2,p))/Math.LN10*2+5|0,u+=r,n=a=o=new m(d),m.precision=u;;){if(a=D(a.times(e),u),n=n.times(++f),c=o.plus(b(a,n,u)),y(c.d).slice(0,u)===y(o.d).slice(0,u)){for(;p--;)o=D(o.times(o),u);return m.precision=h,t==null?(i=!0,D(o,h)):o}o=c}}function S(e){for(var t=e.e*p,n=e.d[0];n>=10;n/=10)t++;return t}function C(e,t,n){if(t>e.LN10.sd())throw i=!0,n&&(e.precision=n),Error(a+`LN10 precision limit exceeded`);return D(new e(e.LN10),t)}function w(e){for(var t=``;e--;)t+=`0`;return t}function T(e,t){var n,r,o,s,c,l,u,f,p,m=1,h=10,g=e,_=g.d,v=g.constructor,x=v.precision;if(g.s<1)throw Error(a+(g.s?`NaN`:`-Infinity`));if(g.eq(d))return new v(0);if(t==null?(i=!1,f=x):f=t,g.eq(10))return t??(i=!0),C(v,f);if(f+=h,v.precision=f,n=y(_),r=n.charAt(0),s=S(g),Math.abs(s)<0x5543df729c000){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)g=g.times(e),n=y(g.d),r=n.charAt(0),m++;s=S(g),r>1?(g=new v(`0.`+n),s++):g=new v(r+`.`+n.slice(1))}else return u=C(v,f+2,x).times(s+``),g=T(new v(r+`.`+n.slice(1)),f-h).plus(u),v.precision=x,t==null?(i=!0,D(g,x)):g;for(l=c=g=b(g.minus(d),g.plus(d),f),p=D(g.times(g),f),o=3;;){if(c=D(c.times(p),f),u=l.plus(b(c,new v(o),f)),y(u.d).slice(0,f)===y(l.d).slice(0,f))return l=l.times(2),s!==0&&(l=l.plus(C(v,f+2,x).times(s+``))),l=b(l,new v(m),f),v.precision=x,t==null?(i=!0,D(l,x)):l;l=u,o+=2}}function E(e,t){var n,r,a;for((n=t.indexOf(`.`))>-1&&(t=t.replace(`.`,``)),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(a=t.length;t.charCodeAt(a-1)===48;)--a;if(t=t.slice(r,a),t){if(a-=r,n=n-r-1,e.e=c(n/p),e.d=[],r=(n+1)%p,n<0&&(r+=p),rh||e.e<-h))throw Error(s+n)}else e.s=0,e.e=0,e.d=[0];return e}function D(e,t,n){var r,a,o,u,d,m,g,_,v=e.d;for(u=1,o=v[0];o>=10;o/=10)u++;if(r=t-u,r<0)r+=p,a=t,g=v[_=0];else{if(_=Math.ceil((r+1)/p),o=v.length,_>=o)return e;for(g=o=v[_],u=1;o>=10;o/=10)u++;r%=p,a=r-p+u}if(n!==void 0&&(o=l(10,u-a-1),d=g/o%10|0,m=t<0||v[_+1]!==void 0||g%o,m=n<4?(d||m)&&(n==0||n==(e.s<0?3:2)):d>5||d==5&&(n==4||m||n==6&&(r>0?a>0?g/l(10,u-a):0:v[_-1])%10&1||n==(e.s<0?8:7))),t<1||!v[0])return m?(o=S(e),v.length=1,t=t-o-1,v[0]=l(10,(p-t%p)%p),e.e=c(-t/p)||0):(v.length=1,v[0]=e.e=e.s=0),e;if(r==0?(v.length=_,o=1,_--):(v.length=_+1,o=l(10,p-r),v[_]=a>0?(g/l(10,u-a)%l(10,a)|0)*o:0),m)for(;;)if(_==0){(v[0]+=o)==f&&(v[0]=1,++e.e);break}else{if(v[_]+=o,v[_]!=f)break;v[_--]=0,o=1}for(r=v.length;v[--r]===0;)v.pop();if(i&&(e.e>h||e.e<-h))throw Error(s+S(e));return e}function O(e,t){var n,r,a,o,s,c,l,u,d,m,h=e.constructor,g=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),i?D(t,g):t;if(l=e.d,m=t.d,r=t.e,u=e.e,l=l.slice(),s=u-r,s){for(d=s<0,d?(n=l,s=-s,c=m.length):(n=m,r=u,c=l.length),a=Math.max(Math.ceil(g/p),c)+2,s>a&&(s=a,n.length=1),n.reverse(),a=s;a--;)n.push(0);n.reverse()}else{for(a=l.length,c=m.length,d=a0;--a)l[c++]=0;for(a=m.length;a>s;){if(l[--a]0?a=a.charAt(0)+`.`+a.slice(1)+w(r):o>1&&(a=a.charAt(0)+`.`+a.slice(1)),a=a+(i<0?`e`:`e+`)+i):i<0?(a=`0.`+w(-i-1)+a,n&&(r=n-o)>0&&(a+=w(r))):i>=o?(a+=w(i+1-o),n&&(r=n-i-1)>0&&(a=a+`.`+w(r))):((r=i+1)0&&(i+1===o&&(a+=`.`),a+=w(r))),e.s<0?`-`+a:a}function A(e,t){if(e.length>t)return e.length=t,!0}function j(e){var t,n,r;function i(e){var t=this;if(!(t instanceof i))return new i(e);if(t.constructor=i,e instanceof i){t.s=e.s,t.e=e.e,t.d=(e=e.d)?e.slice():e;return}if(typeof e==`number`){if(e*0!=0)throw Error(o+e);if(e>0)t.s=1;else if(e<0)e=-e,t.s=-1;else{t.s=0,t.e=0,t.d=[0];return}if(e===~~e&&e<1e7){t.e=0,t.d=[e];return}return E(t,e.toString())}if(typeof e!=`string`)throw Error(o+e);if(e.charCodeAt(0)===45?(e=e.slice(1),t.s=-1):t.s=1,u.test(e))E(t,e);else throw Error(o+e)}if(i.prototype=g,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=j,i.config=i.set=M,e===void 0&&(e={}),e)for(r=[`precision`,`rounding`,`toExpNeg`,`toExpPos`,`LN10`],t=0;t=s[t+1]&&i<=s[t+2])this[r]=i;else throw Error(o+r+`: `+i)}if((i=e[r=`LN10`])!==void 0){if(i==Math.LN10)this[r]=new this(i);else throw Error(o+r+`: `+i)}return this}r=j(r),r.default=r.Decimal=r,d=new r(1),typeof define==`function`&&define.amd?define(function(){return r}):t!==void 0&&t.exports?t.exports=r:(e||=typeof self<`u`&&self&&self.self==self?self:Function(`return this`)(),e.Decimal=r)})(e)}))());function _f(e){return e===0?1:Math.floor(new K.default(e).abs().log(10).toNumber())+1}function vf(e,t,n){for(var r=new K.default(e),i=0,a=[];r.lt(t)&&i<1e5;)a.push(r.toNumber()),r=r.add(n),i++;return a}function yf(e,t){return wf(e)||Cf(e,t)||xf(e,t)||bf()}function bf(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xf(e,t){if(e){if(typeof e==`string`)return Sf(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Sf(e,t):void 0}}function Sf(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=yf(e,2),n=t[0],r=t[1],i=n,a=r;return n>r&&(i=r,a=n),[i,a]},Ef=(e,t,n)=>{if(e.lte(0))return new K.default(0);var r=_f(e.toNumber()),i=new K.default(10).pow(r),a=e.div(i),o=r===1?.1:.05,s=new K.default(Math.ceil(a.div(o).toNumber())).add(n).mul(o).mul(i);return t?new K.default(s.toNumber()):new K.default(Math.ceil(s.toNumber()))},Df=(e,t,n)=>{if(e.lte(0))return new K.default(0);var r=[1,2,2.5,5],i=e.toNumber(),a=Math.floor(new K.default(i).abs().log(10).toNumber()),o=new K.default(10).pow(a),s=e.div(o).toNumber(),c=r.findIndex(e=>e>=s-1e-10);if(c===-1&&(o=o.mul(10),c=0),c+=n,c>=r.length){var l=Math.floor(c/r.length);c%=r.length,o=o.mul(new K.default(10).pow(l))}var u=r[c]??1,d=new K.default(u).mul(o);return t?d:new K.default(Math.ceil(d.toNumber()))},Of=(e,t,n)=>{var r=new K.default(1),i=new K.default(e);if(!i.isint()&&n){var a=Math.abs(e);a<1?(r=new K.default(10).pow(_f(e)-1),i=new K.default(Math.floor(i.div(r).toNumber())).mul(r)):a>1&&(i=new K.default(Math.floor(e)))}else e===0?i=new K.default(Math.floor((t-1)/2)):n||(i=new K.default(Math.floor(e)));for(var o=Math.floor((t-1)/2),s=[],c=0;c4&&arguments[4]!==void 0?arguments[4]:0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Ef;if(!Number.isFinite((t-e)/(n-1)))return{step:new K.default(0),tickMin:new K.default(0),tickMax:new K.default(0)};var o=a(new K.default(t).sub(e).div(n-1),r,i),s;e<=0&&t>=0?s=new K.default(0):(s=new K.default(e).add(t).div(2),s=s.sub(new K.default(s).mod(o)));var c=Math.ceil(s.sub(e).div(o).toNumber()),l=Math.ceil(new K.default(t).sub(s).div(o).toNumber()),u=c+l+1;return u>n?kf(e,t,n,r,i+1,a):(u0?l+(n-u):l,c=t>0?c:c+(n-u)),{step:o,tickMin:s.sub(new K.default(c).mul(o)),tickMax:s.add(new K.default(l).mul(o))})},Af=function(e){var t=yf(e,2),n=t[0],r=t[1],i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`auto`,s=Math.max(i,2),c=yf(Tf([n,r]),2),l=c[0],u=c[1];if(l===-1/0||u===1/0){var d=u===1/0?[l,...Array(i-1).fill(1/0)]:[...Array(i-1).fill(-1/0),u];return n>r?d.reverse():d}if(l===u)return Of(l,i,a);var f=kf(l,u,s,a,0,o===`snap125`?Df:Ef),p=f.step,m=f.tickMin,h=f.tickMax,g=vf(m,h.add(new K.default(.1).mul(p)),p);return n>r?g.reverse():g},jf=function(e,t){var n=yf(e,2),r=n[0],i=n[1],a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`auto`,s=yf(Tf([r,i]),2),c=s[0],l=s[1];if(c===-1/0||l===1/0)return[r,i];if(c===l)return[c];var u=o===`snap125`?Df:Ef,d=Math.max(t,2),f=u(new K.default(l).sub(c).div(d-1),a,0),p=[...vf(new K.default(c),new K.default(l),f),l];if(a===!1){p=p.map(e=>Math.round(e));var m=p.length-1;m>0&&p[m]===p[m-1]&&(p=p.slice(0,m))}return r>i?p.reverse():p},Mf=e=>e.rootProps.barCategoryGap,Nf=e=>e.rootProps.stackOffset,Pf=e=>e.rootProps.reverseStackOrder,Ff=e=>e.options.chartName,If=e=>e.rootProps.syncId,Lf=e=>e.rootProps.syncMethod,Rf=e=>e.options.eventEmitter,zf=e=>e.rootProps.baseValue,Bf={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},Vf={allowDecimals:!1,allowDuplicatedCategory:!0,allowDataOverflow:!1,angle:0,angleAxisId:0,axisLine:!0,axisLineType:`polygon`,cx:0,cy:0,hide:!1,includeHidden:!1,label:!1,niceTicks:`auto`,orientation:`outer`,reversed:!1,scale:`auto`,tick:!0,tickLine:!0,tickSize:8,type:`auto`,zIndex:Bf.axis},Hf={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,angle:0,axisLine:!0,includeHidden:!1,hide:!1,niceTicks:`auto`,label:!1,orientation:`right`,radiusAxisId:0,reversed:!1,scale:`auto`,stroke:`#ccc`,tick:!0,tickCount:5,tickLine:!0,type:`auto`,zIndex:Bf.axis},Uf=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function Wf(e,t,n){if(n!==`auto`)return n;if(e!=null)return Uo(e,t)?`category`:`number`}function Gf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Kf(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},gc],(e,t)=>{if(e!=null)return e;var n=Wf(t,`angleAxis`,Xf.type)??`category`;return Kf(Kf({},Xf),{},{type:n})}),$f=B([(e,t)=>e.polarAxis.radiusAxis[t],gc],(e,t)=>{if(e!=null)return e;var n=Wf(t,`radiusAxis`,Zf.type)??`category`;return Kf(Kf({},Zf),{},{type:n})}),ep=e=>e.polarOptions,tp=B([os,ss,Cs],Od),np=B([ep,tp],(e,t)=>{if(e!=null)return de(e.innerRadius,t,0)}),rp=B([ep,tp],(e,t)=>{if(e!=null)return de(e.outerRadius,t,t*.8)}),ip=B([ep],e=>e==null?[0,0]:[e.startAngle,e.endAngle]);B([Qf,ip],Uf);var ap=B([tp,np,rp],(e,t,n)=>{if(e!=null&&t!=null&&n!=null)return[t,n]});B([$f,ap],Uf);var op=B([G,ep,np,rp,os,ss],(e,t,n,r,i,a)=>{if(!(e!==`centric`&&e!==`radial`||t==null||n==null||r==null)){var o=t.cx,s=t.cy,c=t.startAngle,l=t.endAngle;return{cx:de(o,i,i/2),cy:de(s,a,a/2),innerRadius:n,outerRadius:r,startAngle:c,endAngle:l,clockWise:!1}}}),sp=(e,t)=>t,cp=(e,t,n)=>n;function lp(e){return e?.id}function up(e,t,n){var r=t.chartData,i=r===void 0?[]:r,a=n.allowDuplicatedCategory,o=n.dataKey,s=new Map;return e.forEach(e=>{var t=e.data??i;if(t!=null&&t.length!==0){var n=lp(e);t.forEach((t,r)=>{var i=o==null||a?r:String(W(t,o,null)),c=W(t,e.dataKey,0),l=s.has(i)?s.get(i):{};Object.assign(l,{[n]:c}),s.set(i,l)})}}),Array.from(s.values())}function dp(e){return`stackId`in e&&e.stackId!=null&&e.dataKey!=null}var fp=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function pp(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function mp(e,t){if(e.length===t.length){for(var n=0;n{var t=G(e);return t===`horizontal`?`xAxis`:t===`vertical`?`yAxis`:t===`centric`?`angleAxis`:`radiusAxis`},gp=e=>e.tooltip.settings.axisId;function _p(e){if(e!=null){var t=e.ticks,n=e.bandwidth,r=e.range(),i=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(()=>i),rangeMin:()=>i[0],rangeMax:()=>i[1],isInRange(e){var t=i[0],n=i[1];return t<=n?e>=t&&e<=n:e>=n&&e<=t},bandwidth:n?()=>n.call(e):void 0,ticks:t?n=>t.call(e,n):void 0,map:(t,n)=>{var r=e(t);if(r!=null){if(e.bandwidth&&n!=null&&n.position){var i=e.bandwidth();switch(n.position){case`middle`:r+=i/2;break;case`end`:r+=i}}return r}}}}}var vp=(e,t)=>{if(t!=null)switch(e){case`linear`:if(!pf(t)){for(var n,r,i=0;ir)&&(r=a))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t;default:return t}};function yp(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function bp(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function xp(e){let t,n,r;e.length===2?(t=e===yp||e===bp?e:Sp,n=e,r=e):(t=yp,n=(t,n)=>yp(e(t),n),r=(t,n)=>e(t)-n);function i(e,r,i=0,a=e.length){if(i>>1;n(e[t],r)<0?i=t+1:a=t}while(i>>1;n(e[t],r)<=0?i=t+1:a=t}while(in&&r(e[o-1],t)>-r(e[o],t)?o-1:o}return{left:i,center:o,right:a}}function Sp(){return 0}function Cp(e){return e===null?NaN:+e}function*wp(e,t){if(t===void 0)for(let t of e)t!=null&&(t=+t)>=t&&(yield t);else{let n=-1;for(let r of e)(r=t(r,++n,e))!=null&&(r=+r)>=r&&(yield r)}}var Tp=xp(yp),Ep=Tp.right;Tp.left,xp(Cp).center;var Dp=class extends Map{constructor(e,t=jp){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),e!=null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(Op(this,e))}has(e){return super.has(Op(this,e))}set(e,t){return super.set(kp(this,e),t)}delete(e){return super.delete(Ap(this,e))}};function Op({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):n}function kp({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function Ap({_intern:e,_key:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function jp(e){return typeof e==`object`&&e?e.valueOf():e}function Mp(e=yp){if(e===yp)return Np;if(typeof e!=`function`)throw TypeError(`compare is not a function`);return(t,n)=>{let r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function Np(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et))}var Pp=Math.sqrt(50),Fp=Math.sqrt(10),Ip=Math.sqrt(2);function Lp(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/10**i,o=a>=Pp?10:a>=Fp?5:a>=Ip?2:1,s,c,l;return i<0?(l=10**-i/o,s=Math.round(e*l),c=Math.round(t*l),s/lt&&--c,l=-l):(l=10**i*o,s=Math.round(e/l),c=Math.round(t/l),s*lt&&--c),c0))return[];if(e===t)return[e];let r=t=i))return[];let s=a-i+1,c=Array(s);if(r){if(o<0)for(let e=0;e=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n=i)&&(n=i)}return n}function Hp(e,t){let n;if(t===void 0)for(let t of e)t!=null&&(n>t||n===void 0&&t>=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function Up(e,t,n=0,r=1/0,i){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(i=i===void 0?Np:Mp(i);r>n;){if(r-n>600){let a=r-n+1,o=t-n+1,s=Math.log(a),c=.5*Math.exp(2*s/3),l=.5*Math.sqrt(s*c*(a-c)/a)*(o-a/2<0?-1:1),u=Math.max(n,Math.floor(t-o*c/a+l)),d=Math.min(r,Math.floor(t+(a-o)*c/a+l));Up(e,t,u,d,i)}let a=e[t],o=n,s=r;for(Wp(e,n,t),i(e[r],a)>0&&Wp(e,n,r);o0;)--s}i(e[n],a)===0?Wp(e,n,s):(++s,Wp(e,s,r)),s<=t&&(n=s+1),t<=s&&(r=s-1)}return e}function Wp(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}function Gp(e,t,n){if(e=Float64Array.from(wp(e,n)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return Hp(e);if(t>=1)return Vp(e);var r,i=(r-1)*t,a=Math.floor(i),o=Vp(Up(e,a).subarray(0,a+1));return o+(Hp(e.subarray(a+1))-o)*(i-a)}}function Kp(e,t,n=Cp){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,i=(r-1)*t,a=Math.floor(i),o=+n(e[a],a,e);return o+(+n(e[a+1],a+1,e)-o)*(i-a)}}function qp(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Cm(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Cm(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=um.exec(e))?new Em(t[1],t[2],t[3],1):(t=dm.exec(e))?new Em(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=fm.exec(e))?Cm(t[1],t[2],t[3],t[4]):(t=pm.exec(e))?Cm(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=mm.exec(e))?Nm(t[1],t[2]/100,t[3]/100,1):(t=hm.exec(e))?Nm(t[1],t[2]/100,t[3]/100,t[4]):gm.hasOwnProperty(e)?Sm(gm[e]):e===`transparent`?new Em(NaN,NaN,NaN,0):null}function Sm(e){return new Em(e>>16&255,e>>8&255,e&255,1)}function Cm(e,t,n,r){return r<=0&&(e=t=n=NaN),new Em(e,t,n,r)}function wm(e){return e instanceof rm||(e=xm(e)),e?(e=e.rgb(),new Em(e.r,e.g,e.b,e.opacity)):new Em}function Tm(e,t,n,r){return arguments.length===1?wm(e):new Em(e,t,n,r??1)}function Em(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}tm(Em,Tm,nm(rm,{brighter(e){return e=e==null?am:am**+e,new Em(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?im:im**+e,new Em(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Em(jm(this.r),jm(this.g),jm(this.b),Am(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Dm,formatHex:Dm,formatHex8:Om,formatRgb:km,toString:km}));function Dm(){return`#${Mm(this.r)}${Mm(this.g)}${Mm(this.b)}`}function Om(){return`#${Mm(this.r)}${Mm(this.g)}${Mm(this.b)}${Mm((isNaN(this.opacity)?1:this.opacity)*255)}`}function km(){let e=Am(this.opacity);return`${e===1?`rgb(`:`rgba(`}${jm(this.r)}, ${jm(this.g)}, ${jm(this.b)}${e===1?`)`:`, ${e})`}`}function Am(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function jm(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Mm(e){return e=jm(e),(e<16?`0`:``)+e.toString(16)}function Nm(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Im(e,t,n,r)}function Pm(e){if(e instanceof Im)return new Im(e.h,e.s,e.l,e.opacity);if(e instanceof rm||(e=xm(e)),!e)return new Im;if(e instanceof Im)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n0&&c<1?0:o,new Im(o,s,c,e.opacity)}function Fm(e,t,n,r){return arguments.length===1?Pm(e):new Im(e,t,n,r??1)}function Im(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}tm(Im,Fm,nm(rm,{brighter(e){return e=e==null?am:am**+e,new Im(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?im:im**+e,new Im(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new Em(zm(e>=240?e-240:e+120,i,r),zm(e,i,r),zm(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Im(Lm(this.h),Rm(this.s),Rm(this.l),Am(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Am(this.opacity);return`${e===1?`hsl(`:`hsla(`}${Lm(this.h)}, ${Rm(this.s)*100}%, ${Rm(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function Lm(e){return e=(e||0)%360,e<0?e+360:e}function Rm(e){return Math.max(0,Math.min(1,e||0))}function zm(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var Bm=e=>()=>e;function Vm(e,t){return function(n){return e+n*t}}function Hm(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function Um(e){return(e=+e)==1?Wm:function(t,n){return n-t?Hm(t,n,e):Bm(isNaN(t)?n:t)}}function Wm(e,t){var n=t-e;return n?Vm(e,n):Bm(isNaN(e)?t:e)}var Gm=(function e(t){var n=Um(t);function r(e,t){var r=n((e=Tm(e)).r,(t=Tm(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=Wm(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function Km(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;in&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:Xm(r,i)})),n=$m.lastIndex;return nt&&(n=e,e=t,t=n),function(n){return Math.max(e,Math.min(t,n))}}function fh(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return i2?ph:fh,c=l=null,d}function d(i){return i==null||isNaN(i=+i)?a:(c||=s(e.map(r),t,n))(r(o(i)))}return d.invert=function(n){return o(i((l||=s(t,e.map(r),Xm))(n)))},d.domain=function(t){return arguments.length?(e=Array.from(t,sh),u()):e.slice()},d.range=function(e){return arguments.length?(t=Array.from(e),u()):t.slice()},d.rangeRound=function(e){return t=Array.from(e),n=ih,u()},d.clamp=function(e){return arguments.length?(o=e?!0:lh,u()):o!==lh},d.interpolate=function(e){return arguments.length?(n=e,u()):n},d.unknown=function(e){return arguments.length?(a=e,d):a},function(e,t){return r=e,i=t,u()}}function gh(){return hh()(lh,lh)}function _h(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString(`en`).replace(/,/g,``):e.toString(10)}function vh(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf(`e`),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function yh(e){return e=vh(Math.abs(e)),e?e[1]:NaN}function bh(e,t){return function(n,r){for(var i=n.length,a=[],o=0,s=e[0],c=0;i>0&&s>0&&(c+s+1>r&&(s=Math.max(1,r-c)),a.push(n.substring(i-=s,i+s)),!((c+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function xh(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}var Sh=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Ch(e){if(!(t=Sh.exec(e)))throw Error(`invalid format: `+e);var t;return new wh({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}Ch.prototype=wh.prototype;function wh(e){this.fill=e.fill===void 0?` `:e.fill+``,this.align=e.align===void 0?`>`:e.align+``,this.sign=e.sign===void 0?`-`:e.sign+``,this.symbol=e.symbol===void 0?``:e.symbol+``,this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?``:e.type+``}wh.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?`0`:``)+(this.width===void 0?``:Math.max(1,this.width|0))+(this.comma?`,`:``)+(this.precision===void 0?``:`.`+Math.max(0,this.precision|0))+(this.trim?`~`:``)+this.type};function Th(e){out:for(var t=e.length,n=1,r=-1,i;n0&&(r=0)}return r>0?e.slice(0,r)+e.slice(i+1):e}var Eh;function Dh(e,t){var n=vh(e,t);if(!n)return Eh=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(Eh=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return a===o?r:a>o?r+Array(a-o+1).join(`0`):a>0?r.slice(0,a)+`.`+r.slice(a):`0.`+Array(1-a).join(`0`)+vh(e,Math.max(0,t+a-1))[0]}function Oh(e,t){var n=vh(e,t);if(!n)return e+``;var r=n[0],i=n[1];return i<0?`0.`+Array(-i).join(`0`)+r:r.length>i+1?r.slice(0,i+1)+`.`+r.slice(i+1):r+Array(i-r.length+2).join(`0`)}var kh={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+``,d:_h,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Oh(e*100,t),r:Oh,s:Dh,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Ah(e){return e}var jh=Array.prototype.map,Mh=[`y`,`z`,`a`,`f`,`p`,`n`,`µ`,`m`,``,`k`,`M`,`G`,`T`,`P`,`E`,`Z`,`Y`];function Nh(e){var t=e.grouping===void 0||e.thousands===void 0?Ah:bh(jh.call(e.grouping,Number),e.thousands+``),n=e.currency===void 0?``:e.currency[0]+``,r=e.currency===void 0?``:e.currency[1]+``,i=e.decimal===void 0?`.`:e.decimal+``,a=e.numerals===void 0?Ah:xh(jh.call(e.numerals,String)),o=e.percent===void 0?`%`:e.percent+``,s=e.minus===void 0?`−`:e.minus+``,c=e.nan===void 0?`NaN`:e.nan+``;function l(e,l){e=Ch(e);var u=e.fill,d=e.align,f=e.sign,p=e.symbol,m=e.zero,h=e.width,g=e.comma,_=e.precision,v=e.trim,y=e.type;y===`n`?(g=!0,y=`g`):kh[y]||(_===void 0&&(_=12),v=!0,y=`g`),(m||u===`0`&&d===`=`)&&(m=!0,u=`0`,d=`=`);var b=(l&&l.prefix!==void 0?l.prefix:``)+(p===`$`?n:p===`#`&&/[boxX]/.test(y)?`0`+y.toLowerCase():``),x=(p===`$`?r:/[%p]/.test(y)?o:``)+(l&&l.suffix!==void 0?l.suffix:``),S=kh[y],C=/[defgprs%]/.test(y);_=_===void 0?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,_)):Math.max(0,Math.min(20,_));function w(e){var n=b,r=x,o,l,p;if(y===`c`)r=S(e)+r,e=``;else{e=+e;var w=e<0||1/e<0;if(e=isNaN(e)?c:S(Math.abs(e),_),v&&(e=Th(e)),w&&+e==0&&f!==`+`&&(w=!1),n=(w?f===`(`?f:s:f===`-`||f===`(`?``:f)+n,r=(y===`s`&&!isNaN(e)&&Eh!==void 0?Mh[8+Eh/3]:``)+r+(w&&f===`(`?`)`:``),C){for(o=-1,l=e.length;++op||p>57){r=(p===46?i+e.slice(o+1):e.slice(o))+r,e=e.slice(0,o);break}}}g&&!m&&(e=t(e,1/0));var T=n.length+e.length+r.length,E=T>1)+n+e+r+E.slice(T);break;default:e=E+n+e+r}return a(e)}return w.toString=function(){return e+``},w}function u(e,t){var n=Math.max(-8,Math.min(8,Math.floor(yh(t)/3)))*3,r=10**-n,i=l((e=Ch(e),e.type=`f`,e),{suffix:Mh[8+n/3]});return function(e){return i(r*e)}}return{format:l,formatPrefix:u}}var Ph,Fh,Ih;Lh({thousands:`,`,grouping:[3],currency:[`$`,``]});function Lh(e){return Ph=Nh(e),Fh=Ph.format,Ih=Ph.formatPrefix,Ph}function Rh(e){return Math.max(0,-yh(Math.abs(e)))}function zh(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(yh(t)/3)))*3-yh(Math.abs(e)))}function Bh(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,yh(t)-yh(e))+1}function Vh(e,t,n,r){var i=Bp(e,t,n),a;switch(r=Ch(r??`,f`),r.type){case`s`:var o=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=zh(i,o))&&(r.precision=a),Ih(r,o);case``:case`e`:case`g`:case`p`:case`r`:r.precision==null&&!isNaN(a=Bh(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type===`e`));break;case`f`:case`%`:r.precision==null&&!isNaN(a=Rh(i))&&(r.precision=a-(r.type===`%`)*2)}return Fh(r)}function Hh(e){var t=e.domain;return e.ticks=function(e){var n=t();return Rp(n[0],n[n.length-1],e??10)},e.tickFormat=function(e,n){var r=t();return Vh(r[0],r[r.length-1],e??10,n)},e.nice=function(n){n??=10;var r=t(),i=0,a=r.length-1,o=r[i],s=r[a],c,l,u=10;for(s0;){if(l=zp(o,s,n),l===c)return r[i]=o,r[a]=s,t(r);if(l>0)o=Math.floor(o/l)*l,s=Math.ceil(s/l)*l;else if(l<0)o=Math.ceil(o*l)/l,s=Math.floor(s*l)/l;else break;c=l}return e},e}function Uh(){var e=gh();return e.copy=function(){return mh(e,Uh())},Jp.apply(e,arguments),Hh(e)}function Wh(e){var t;function n(e){return e==null||isNaN(e=+e)?t:e}return n.invert=n,n.domain=n.range=function(t){return arguments.length?(e=Array.from(t,sh),n):e.slice()},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return Wh(e).unknown(t)},e=arguments.length?Array.from(e,sh):[0,1],Hh(n)}function Gh(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],o;return ae**+t}function Qh(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function $h(e){return(t,n)=>-e(-t,n)}function eg(e){let t=e(Kh,qh),n=t.domain,r=10,i,a;function o(){return i=Qh(r),a=Zh(r),n()[0]<0?(i=$h(i),a=$h(a),e(Jh,Yh)):e(Kh,qh),t}return t.base=function(e){return arguments.length?(r=+e,o()):r},t.domain=function(e){return arguments.length?(n(e),o()):n()},t.ticks=e=>{let t=n(),o=t[0],s=t[t.length-1],c=s0){for(;l<=u;++l)for(d=1;ds)break;m.push(f)}}else for(;l<=u;++l)for(d=r-1;d>=1;--d)if(f=l>0?d/a(-l):d*a(l),!(fs)break;m.push(f)}m.length*2{if(e??=10,n??=r===10?`s`:`,`,typeof n!=`function`&&(!(r%1)&&(n=Ch(n)).precision==null&&(n.trim=!0),n=Fh(n)),e===1/0)return n;let o=Math.max(1,r*e/t.ticks().length);return e=>{let t=e/a(Math.round(i(e)));return t*rn(Gh(n(),{floor:e=>a(Math.floor(i(e))),ceil:e=>a(Math.ceil(i(e)))})),t}function tg(){let e=eg(hh()).domain([1,10]);return e.copy=()=>mh(e,tg()).base(e.base()),Jp.apply(e,arguments),e}function ng(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function rg(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function ig(e){var t=1,n=e(ng(t),rg(t));return n.constant=function(n){return arguments.length?e(ng(t=+n),rg(t)):t},Hh(n)}function ag(){var e=ig(hh());return e.copy=function(){return mh(e,ag()).constant(e.constant())},Jp.apply(e,arguments)}function og(e){return function(t){return t<0?-((-t)**+e):t**+e}}function sg(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function cg(e){return e<0?-e*e:e*e}function lg(e){var t=e(lh,lh),n=1;function r(){return n===1?e(lh,lh):n===.5?e(sg,cg):e(og(n),og(1/n))}return t.exponent=function(e){return arguments.length?(n=+e,r()):n},Hh(t)}function ug(){var e=lg(hh());return e.copy=function(){return mh(e,ug()).exponent(e.exponent())},Jp.apply(e,arguments),e}function dg(){return ug.apply(null,arguments).exponent(.5)}function fg(e){return Math.sign(e)*e*e}function pg(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function mg(){var e=gh(),t=[0,1],n=!1,r;function i(t){var i=pg(e(t));return isNaN(i)?r:n?Math.round(i):i}return i.invert=function(t){return e.invert(fg(t))},i.domain=function(t){return arguments.length?(e.domain(t),i):e.domain()},i.range=function(n){return arguments.length?(e.range((t=Array.from(n,sh)).map(fg)),i):t.slice()},i.rangeRound=function(e){return i.range(e).round(!0)},i.round=function(e){return arguments.length?(n=!!e,i):n},i.clamp=function(t){return arguments.length?(e.clamp(t),i):e.clamp()},i.unknown=function(e){return arguments.length?(r=e,i):r},i.copy=function(){return mg(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},Jp.apply(i,arguments),Hh(i)}function hg(){var e=[],t=[],n=[],r;function i(){var r=0,i=Math.max(1,t.length);for(n=Array(i-1);++r0?n[i-1]:e[0],i=n?[r[n-1],t]:[r[o-1],r[o]]},o.unknown=function(e){return arguments.length&&(a=e),o},o.thresholds=function(){return r.slice()},o.copy=function(){return gg().domain([e,t]).range(i).unknown(a)},Jp.apply(Hh(o),arguments)}function _g(){var e=[.5],t=[0,1],n,r=1;function i(i){return i!=null&&i<=i?t[Ep(e,i,0,r)]:n}return i.domain=function(n){return arguments.length?(e=Array.from(n),r=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(n){return arguments.length?(t=Array.from(n),r=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(n){var r=t.indexOf(n);return[e[r-1],e[r]]},i.unknown=function(e){return arguments.length?(n=e,i):n},i.copy=function(){return _g().domain(e).range(t).unknown(n)},Jp.apply(i,arguments)}var vg=new Date,yg=new Date;function q(e,t,n,r){function i(t){return e(t=arguments.length===0?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=n=>(e(n=new Date(n-1)),t(n,1),e(n),n),i.round=e=>{let t=i(e),n=i.ceil(e);return e-t(t(e=new Date(+e),n==null?1:Math.floor(n)),e),i.range=(n,r,a)=>{let o=[];if(n=i.ceil(n),a=a==null?1:Math.floor(a),!(n0))return o;let s;do o.push(s=new Date(+n)),t(n,a),e(n);while(sq(t=>{if(t>=t)for(;e(t),!n(t);)t.setTime(t-1)},(e,r)=>{if(e>=e){if(r<0)for(;++r<=0;)for(;t(e,-1),!n(e););else for(;--r>=0;)for(;t(e,1),!n(e););}}),n&&(i.count=(t,r)=>(vg.setTime(+t),yg.setTime(+r),e(vg),e(yg),Math.floor(n(vg,yg))),i.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?i.filter(r?t=>r(t)%e===0:t=>i.count(0,t)%e===0):i)),i}var bg=q(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);bg.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?q(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):bg),bg.range;var xg=1e3,Sg=xg*60,Cg=Sg*60,wg=Cg*24,Tg=wg*7,Eg=wg*30,Dg=wg*365,Og=q(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*xg)},(e,t)=>(t-e)/xg,e=>e.getUTCSeconds());Og.range;var kg=q(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*xg)},(e,t)=>{e.setTime(+e+t*Sg)},(e,t)=>(t-e)/Sg,e=>e.getMinutes());kg.range;var Ag=q(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Sg)},(e,t)=>(t-e)/Sg,e=>e.getUTCMinutes());Ag.range;var jg=q(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*xg-e.getMinutes()*Sg)},(e,t)=>{e.setTime(+e+t*Cg)},(e,t)=>(t-e)/Cg,e=>e.getHours());jg.range;var Mg=q(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*Cg)},(e,t)=>(t-e)/Cg,e=>e.getUTCHours());Mg.range;var Ng=q(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Sg)/wg,e=>e.getDate()-1);Ng.range;var Pg=q(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/wg,e=>e.getUTCDate()-1);Pg.range;var Fg=q(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/wg,e=>Math.floor(e/wg));Fg.range;function Ig(e){return q(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Sg)/Tg)}var Lg=Ig(0),Rg=Ig(1),zg=Ig(2),Bg=Ig(3),Vg=Ig(4),Hg=Ig(5),Ug=Ig(6);Lg.range,Rg.range,zg.range,Bg.range,Vg.range,Hg.range,Ug.range;function Wg(e){return q(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/Tg)}var Gg=Wg(0),Kg=Wg(1),qg=Wg(2),Jg=Wg(3),Yg=Wg(4),Xg=Wg(5),Zg=Wg(6);Gg.range,Kg.range,qg.range,Jg.range,Yg.range,Xg.range,Zg.range;var Qg=q(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());Qg.range;var $g=q(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());$g.range;var e_=q(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());e_.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:q(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)}),e_.range;var t_=q(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());t_.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:q(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)}),t_.range;function n_(e,t,n,r,i,a){let o=[[Og,1,xg],[Og,5,5*xg],[Og,15,15*xg],[Og,30,30*xg],[a,1,Sg],[a,5,5*Sg],[a,15,15*Sg],[a,30,30*Sg],[i,1,Cg],[i,3,3*Cg],[i,6,6*Cg],[i,12,12*Cg],[r,1,wg],[r,2,2*wg],[n,1,Tg],[t,1,Eg],[t,3,3*Eg],[e,1,Dg]];function s(e,t,n){let r=te).right(o,i);if(a===o.length)return e.every(Bp(t/Dg,n/Dg,r));if(a===0)return bg.every(Math.max(Bp(t,n,r),1));let[s,c]=o[i/o[a-1][2]53)return null;`w`in r||(r.w=1),`Z`in r?(a=c_(l_(r.y,0,1)),o=a.getUTCDay(),a=o>4||o===0?Kg.ceil(a):Kg(a),a=Pg.offset(a,(r.V-1)*7),r.y=a.getUTCFullYear(),r.m=a.getUTCMonth(),r.d=a.getUTCDate()+(r.w+6)%7):(a=s_(l_(r.y,0,1)),o=a.getDay(),a=o>4||o===0?Rg.ceil(a):Rg(a),a=Ng.offset(a,(r.V-1)*7),r.y=a.getFullYear(),r.m=a.getMonth(),r.d=a.getDate()+(r.w+6)%7)}else(`W`in r||`U`in r)&&(`w`in r||(r.w=`u`in r?r.u%7:+(`W`in r)),o=`Z`in r?c_(l_(r.y,0,1)).getUTCDay():s_(l_(r.y,0,1)).getDay(),r.m=0,r.d=`W`in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7);return`Z`in r?(r.H+=r.Z/100|0,r.M+=r.Z%100,c_(r)):s_(r)}}function w(e,t,n,r){for(var i=0,a=t.length,o=n.length,s,c;i=o)return-1;if(s=t.charCodeAt(i++),s===37){if(s=t.charAt(i++),c=x[s in d_?t.charAt(i++):s],!c||(r=c(e,n,r))<0)return-1}else if(s!=n.charCodeAt(r++))return-1}return r}function T(e,t,n){var r=l.exec(t.slice(n));return r?(e.p=u.get(r[0].toLowerCase()),n+r[0].length):-1}function E(e,t,n){var r=p.exec(t.slice(n));return r?(e.w=m.get(r[0].toLowerCase()),n+r[0].length):-1}function D(e,t,n){var r=d.exec(t.slice(n));return r?(e.w=f.get(r[0].toLowerCase()),n+r[0].length):-1}function O(e,t,n){var r=_.exec(t.slice(n));return r?(e.m=v.get(r[0].toLowerCase()),n+r[0].length):-1}function k(e,t,n){var r=h.exec(t.slice(n));return r?(e.m=g.get(r[0].toLowerCase()),n+r[0].length):-1}function A(e,n,r){return w(e,t,n,r)}function j(e,t,r){return w(e,n,t,r)}function M(e,t,n){return w(e,r,t,n)}function N(e){return o[e.getDay()]}function ee(e){return a[e.getDay()]}function te(e){return c[e.getMonth()]}function ne(e){return s[e.getMonth()]}function re(e){return i[+(e.getHours()>=12)]}function ie(e){return 1+~~(e.getMonth()/3)}function ae(e){return o[e.getUTCDay()]}function P(e){return a[e.getUTCDay()]}function oe(e){return c[e.getUTCMonth()]}function F(e){return s[e.getUTCMonth()]}function se(e){return i[+(e.getUTCHours()>=12)]}function I(e){return 1+~~(e.getUTCMonth()/3)}return{format:function(e){var t=S(e+=``,y);return t.toString=function(){return e},t},parse:function(e){var t=C(e+=``,!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+=``,b);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+=``,!0);return t.toString=function(){return e},t}}}var d_={"-":``,_:` `,0:`0`},J=/^\s*\d+/,f_=/^%/,p_=/[\\^$*+?|[\]().{}]/g;function Y(e,t,n){var r=e<0?`-`:``,i=(r?-e:e)+``,a=i.length;return r+(a[e.toLowerCase(),t]))}function __(e,t,n){var r=J.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function v_(e,t,n){var r=J.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function y_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function b_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function x_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function S_(e,t,n){var r=J.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function C_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function w_(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||`00`)),n+r[0].length):-1}function T_(e,t,n){var r=J.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function E_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function D_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function O_(e,t,n){var r=J.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function k_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function A_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function j_(e,t,n){var r=J.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function M_(e,t,n){var r=J.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function N_(e,t,n){var r=J.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function P_(e,t,n){var r=f_.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function F_(e,t,n){var r=J.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function I_(e,t,n){var r=J.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function L_(e,t){return Y(e.getDate(),t,2)}function R_(e,t){return Y(e.getHours(),t,2)}function z_(e,t){return Y(e.getHours()%12||12,t,2)}function B_(e,t){return Y(1+Ng.count(e_(e),e),t,3)}function V_(e,t){return Y(e.getMilliseconds(),t,3)}function H_(e,t){return V_(e,t)+`000`}function U_(e,t){return Y(e.getMonth()+1,t,2)}function W_(e,t){return Y(e.getMinutes(),t,2)}function G_(e,t){return Y(e.getSeconds(),t,2)}function K_(e){var t=e.getDay();return t===0?7:t}function q_(e,t){return Y(Lg.count(e_(e)-1,e),t,2)}function J_(e){var t=e.getDay();return t>=4||t===0?Vg(e):Vg.ceil(e)}function Y_(e,t){return e=J_(e),Y(Vg.count(e_(e),e)+(e_(e).getDay()===4),t,2)}function X_(e){return e.getDay()}function Z_(e,t){return Y(Rg.count(e_(e)-1,e),t,2)}function Q_(e,t){return Y(e.getFullYear()%100,t,2)}function $_(e,t){return e=J_(e),Y(e.getFullYear()%100,t,2)}function ev(e,t){return Y(e.getFullYear()%1e4,t,4)}function tv(e,t){var n=e.getDay();return e=n>=4||n===0?Vg(e):Vg.ceil(e),Y(e.getFullYear()%1e4,t,4)}function nv(e){var t=e.getTimezoneOffset();return(t>0?`-`:(t*=-1,`+`))+Y(t/60|0,`0`,2)+Y(t%60,`0`,2)}function rv(e,t){return Y(e.getUTCDate(),t,2)}function iv(e,t){return Y(e.getUTCHours(),t,2)}function av(e,t){return Y(e.getUTCHours()%12||12,t,2)}function ov(e,t){return Y(1+Pg.count(t_(e),e),t,3)}function sv(e,t){return Y(e.getUTCMilliseconds(),t,3)}function cv(e,t){return sv(e,t)+`000`}function lv(e,t){return Y(e.getUTCMonth()+1,t,2)}function uv(e,t){return Y(e.getUTCMinutes(),t,2)}function dv(e,t){return Y(e.getUTCSeconds(),t,2)}function fv(e){var t=e.getUTCDay();return t===0?7:t}function pv(e,t){return Y(Gg.count(t_(e)-1,e),t,2)}function mv(e){var t=e.getUTCDay();return t>=4||t===0?Yg(e):Yg.ceil(e)}function hv(e,t){return e=mv(e),Y(Yg.count(t_(e),e)+(t_(e).getUTCDay()===4),t,2)}function gv(e){return e.getUTCDay()}function _v(e,t){return Y(Kg.count(t_(e)-1,e),t,2)}function vv(e,t){return Y(e.getUTCFullYear()%100,t,2)}function yv(e,t){return e=mv(e),Y(e.getUTCFullYear()%100,t,2)}function bv(e,t){return Y(e.getUTCFullYear()%1e4,t,4)}function xv(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Yg(e):Yg.ceil(e),Y(e.getUTCFullYear()%1e4,t,4)}function Sv(){return`+0000`}function Cv(){return`%`}function wv(e){return+e}function Tv(e){return Math.floor(e/1e3)}var Ev,Dv,Ov;kv({dateTime:`%x, %X`,date:`%-m/%-d/%Y`,time:`%-I:%M:%S %p`,periods:[`AM`,`PM`],days:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],shortDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],shortMonths:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`]});function kv(e){return Ev=u_(e),Dv=Ev.format,Ev.parse,Ov=Ev.utcFormat,Ev.utcParse,Ev}function Av(e){return new Date(e)}function jv(e){return e instanceof Date?+e:+new Date(+e)}function Mv(e,t,n,r,i,a,o,s,c,l){var u=gh(),d=u.invert,f=u.domain,p=l(`.%L`),m=l(`:%S`),h=l(`%I:%M`),g=l(`%I %p`),_=l(`%a %d`),v=l(`%b %d`),y=l(`%B`),b=l(`%Y`);function x(e){return(c(e)t(r/(e.length-1)))},n.quantiles=function(t){return Array.from({length:t+1},(n,r)=>Gp(e,r/t))},n.copy=function(){return Hv(t).domain(e)},Yp.apply(n,arguments)}function Uv(){var e=0,t=.5,n=1,r=1,i,a,o,s,c,l=lh,u,d=!1,f;function p(e){return isNaN(e=+e)?f:(e=.5+((e=+u(e))-a)*(r*eQp,scaleDiverging:()=>Wv,scaleDivergingLog:()=>Gv,scaleDivergingPow:()=>qv,scaleDivergingSqrt:()=>Jv,scaleDivergingSymlog:()=>Kv,scaleIdentity:()=>Wh,scaleImplicit:()=>Xp,scaleLinear:()=>Uh,scaleLog:()=>tg,scaleOrdinal:()=>Zp,scalePoint:()=>em,scalePow:()=>ug,scaleQuantile:()=>hg,scaleQuantize:()=>gg,scaleRadial:()=>mg,scaleSequential:()=>Lv,scaleSequentialLog:()=>Rv,scaleSequentialPow:()=>Bv,scaleSequentialQuantile:()=>Hv,scaleSequentialSqrt:()=>Vv,scaleSequentialSymlog:()=>zv,scaleSqrt:()=>dg,scaleSymlog:()=>ag,scaleThreshold:()=>_g,scaleTime:()=>Nv,scaleUtc:()=>Pv,tickFormat:()=>Vh});function Xv(e){var t=Yv;if(e in t&&typeof t[e]==`function`)return t[e]();var n=`scale${ge(e)}`;if(n in t&&typeof t[n]==`function`)return t[n]()}function Zv(e,t,n){if(typeof e==`function`)return e.copy().domain(t).range(n);if(e!=null){var r=Xv(e);if(r!=null)return r.domain(t).range(n),r}}function Qv(e,t,n,r){if(n!=null&&r!=null)return typeof e.scale==`function`?Zv(e.scale,n,r):Zv(t,n,r)}function $v(e){return`scale${ge(e)}`}function ey(e){return $v(e)in Yv}var ty=(e,t,n)=>{if(e!=null){var r=e.scale,i=e.type;if(r===`auto`)return i===`category`&&n&&(n.indexOf(`LineChart`)>=0||n.indexOf(`AreaChart`)>=0||n.indexOf(`ComposedChart`)>=0&&!t)?`point`:i===`category`?`band`:`linear`;if(typeof r==`string`)return ey(r)?r:`point`}};function ny(e,t){for(var n=0,r=e.length,i=e[0]t)?n=a+1:r=a}return n}function ry(e,t){if(e){var n=t??e.domain(),r=n.map(t=>e(t)??0),i=e.range();if(!(n.length===0||i.length<2))return e=>{var t=ny(r,e);if(t<=0)return n[0];if(t>=n.length)return n[n.length-1];var i=r[t-1]??0,a=r[t]??0;return Math.abs(e-i)<=Math.abs(e-a)?n[t-1]:n[t]}}}function iy(e){if(e!=null)return`invert`in e&&typeof e.invert==`function`?e.invert.bind(e):ry(e,void 0)}function ay(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function oy(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);ne.cartesianAxis.xAxis[t],vy=(e,t)=>_y(e,t)??X,Z={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:gy,hide:!0,id:0,includeHidden:!1,interval:`preserveEnd`,minTickGap:5,mirror:!1,name:void 0,orientation:`left`,padding:{top:0,bottom:0},reversed:!1,scale:`auto`,tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:`number`,unit:void 0,niceTicks:`auto`,width:60},yy=(e,t)=>e.cartesianAxis.yAxis[t],by=(e,t)=>yy(e,t)??Z,xy={domain:[0,`auto`],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:``,range:[64,64],scale:`auto`,type:`number`,unit:``},Sy=(e,t)=>e.cartesianAxis.zAxis[t]??xy,Cy=(e,t,n)=>{switch(t){case`xAxis`:return vy(e,n);case`yAxis`:return by(e,n);case`zAxis`:return Sy(e,n);case`angleAxis`:return Qf(e,n);case`radiusAxis`:return $f(e,n);default:throw Error(`Unexpected axis type: ${t}`)}},wy=(e,t,n)=>{switch(t){case`xAxis`:return vy(e,n);case`yAxis`:return by(e,n);default:throw Error(`Unexpected axis type: ${t}`)}},Ty=(e,t,n)=>{switch(t){case`xAxis`:return vy(e,n);case`yAxis`:return by(e,n);case`angleAxis`:return Qf(e,n);case`radiusAxis`:return $f(e,n);default:throw Error(`Unexpected axis type: ${t}`)}},Ey=e=>e.graphicalItems.cartesianItems.some(e=>e.type===`bar`)||e.graphicalItems.polarItems.some(e=>e.type===`radialBar`);function Dy(e,t){return n=>{switch(e){case`xAxis`:return`xAxisId`in n&&n.xAxisId===t;case`yAxis`:return`yAxisId`in n&&n.yAxisId===t;case`zAxis`:return`zAxisId`in n&&n.zAxisId===t;case`angleAxis`:return`angleAxisId`in n&&n.angleAxisId===t;case`radiusAxis`:return`radiusAxisId`in n&&n.radiusAxisId===t;default:return!1}}}var Oy=e=>e.graphicalItems.cartesianItems,ky=B([sp,cp],Dy),Ay=(e,t,n)=>e.filter(n).filter(e=>t?.includeHidden===!0||!e.hide),jy=B([Oy,Cy,ky],Ay,{memoizeOptions:{resultEqualityCheck:pp}}),My=B([jy],e=>e.filter(e=>e.type===`area`||e.type===`bar`).filter(dp)),Ny=e=>e.filter(e=>!(`stackId`in e)||e.stackId===void 0),Py=B([jy],Ny),Fy=e=>e.map(e=>e.data).filter(Boolean).flat(1),Iy=B([jy],e=>e.some(e=>!e.data)),Ly=B([jy],Fy,{memoizeOptions:{resultEqualityCheck:pp}}),Ry=(e,t)=>{var n=t.chartData,r=n===void 0?[]:n,i=t.dataStartIndex,a=t.dataEndIndex;return e.length>0?e:r.slice(i,a+1)},zy=B([Ly,nf],Ry),By=(e,t,n)=>t?.dataKey==null?n.length>0?n.map(e=>e.dataKey).flatMap(t=>e.map(e=>({value:W(e,t)}))):e.map(e=>({value:e})):e.map(e=>({value:W(e,t.dataKey)})),Vy=(e,t,n,r,i,a)=>{var o=r.chartData,s=o===void 0?[]:o,c=r.dataStartIndex,l=r.dataEndIndex,u=By(e,t,n);return i&&t?.dataKey!=null&&a.length>0?[...s.slice(c,l+1).map(e=>({value:W(e,t.dataKey)})).filter(e=>e.value!=null),...u]:u},Hy=B([zy,Cy,jy,nf,Iy,Ly],Vy);function Uy(e){if(ce(e)||e instanceof Date){var t=Number(e);if(U(t))return t}}function Wy(e){if(Array.isArray(e)){var t=[Uy(e[0]),Uy(e[1])];return pf(t)?t:void 0}var n=Uy(e);if(n!=null)return[n,n]}function Gy(e){return e.map(Uy).filter(_e)}function Ky(e,t){var n=Uy(e),r=Uy(t);return n==null&&r==null?0:n==null?-1:r==null?1:n-r}var qy=B([Hy],e=>e?.map(e=>e.value).sort(Ky));function Jy(e,t){switch(e){case`xAxis`:return t.direction===`x`;case`yAxis`:return t.direction===`y`;default:return!1}}function Yy(e,t,n){if(!n||!n.length)return[];var r;if(typeof t==`number`&&!F(t))r=t;else if(Array.isArray(t)){var i=Gy(t);i.length>0&&(r=Math.max(...i))}return r==null?[]:Gy(n.flatMap(t=>{var n=W(e,t.dataKey),i,a;if(Array.isArray(n)){var o=uy(n,2);i=o[0],a=o[1]}else i=a=n;if(!(!U(i)||!U(a)))return[r-i,r+a]}))}var Q=e=>Ty(e,hp(e),gp(e)),Xy=B([Q],e=>e?.dataKey),Zy=B([My,nf,Q],up),Qy=(e,t,n,r)=>{var i=t.reduce((e,t)=>{if(t.stackId==null)return e;var n=e[t.stackId];return n??=[],n.push(t),e[t.stackId]=n,e},{});return Object.fromEntries(Object.entries(i).map(t=>{var i=uy(t,2),a=i[0],o=i[1],s=r?[...o].reverse():o;return[a,{stackedData:qo(e,s.map(lp),n),graphicalItems:s}]}))},$y=B([Zy,My,Nf,Pf],Qy),eb=(e,t,n,r)=>{var i=t.dataStartIndex,a=t.dataEndIndex;if(r==null&&n!==`zAxis`)return Qo(e,i,a)},tb=B([Cy],e=>e.allowDataOverflow),nb=e=>{if(e==null||!(`domain`in e))return gy;if(e.domain!=null)return e.domain;if(`ticks`in e&&e.ticks!=null){if(e.type===`number`){var t=Gy(e.ticks);return[Math.min(...t),Math.max(...t)]}if(e.type===`category`)return e.ticks.map(String)}return e?.domain??gy},rb=B([Cy],nb),ib=B([rb,tb],hf),ab=B([$y,ef,sp,ib],eb,{memoizeOptions:{resultEqualityCheck:fp}}),ob=e=>e.errorBars,sb=(e,t,n)=>e.flatMap(e=>t[e.id]).filter(Boolean).filter(e=>Jy(n,e)),cb=function(){var e=[...arguments].filter(Boolean);if(e.length!==0){var t=e.flat();return[Math.min(...t),Math.max(...t)]}},lb=function(e,t,n,r,i){var a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],o,s;if(n.length>0&&n.forEach(e=>{var n=e.data==null?a:[...e.data],c=r[e.id]?.filter(e=>Jy(i,e));n.forEach(n=>{var r=W(n,t.dataKey??e.dataKey),i=Yy(n,r,c);if(i.length>=2){var a=Math.min(...i),l=Math.max(...i);(o==null||as)&&(s=l)}var u=Wy(r);u!=null&&(o=o==null?u[0]:Math.min(o,u[0]),s=s==null?u[1]:Math.max(s,u[1]))})}),t?.dataKey!=null&&n.length===0&&e.forEach(e=>{var n=Wy(W(e,t.dataKey));n!=null&&(o=o==null?n[0]:Math.min(o,n[0]),s=s==null?n[1]:Math.max(s,n[1]))}),U(o)&&U(s))return[o,s]},ub=B([zy,Cy,Py,ob,sp,af],lb,{memoizeOptions:{resultEqualityCheck:fp}});function db(e){var t=e.value;if(ce(t)||t instanceof Date)return t}var fb=(e,t,n)=>{var r=e.map(db).filter(e=>e!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&fe(r))?$d(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},pb=e=>e.referenceElements.dots,mb=(e,t,n)=>e.filter(e=>e.ifOverflow===`extendDomain`).filter(e=>t===`xAxis`?e.xAxisId===n:e.yAxisId===n),hb=B([pb,sp,cp],mb),gb=e=>e.referenceElements.areas,_b=B([gb,sp,cp],mb),vb=e=>e.referenceElements.lines,yb=B([vb,sp,cp],mb),bb=(e,t)=>{if(e!=null){var n=Gy(e.map(e=>t===`xAxis`?e.x:e.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},xb=B(hb,sp,bb),Sb=(e,t)=>{if(e!=null){var n=Gy(e.flatMap(e=>[t===`xAxis`?e.x1:e.y1,t===`xAxis`?e.x2:e.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},Cb=B([_b,sp],Sb);function wb(e){if(e.x!=null)return Gy([e.x]);var t=e.segment?.map(e=>e.x);return t==null||t.length===0?[]:Gy(t)}function Tb(e){if(e.y!=null)return Gy([e.y]);var t=e.segment?.map(e=>e.y);return t==null||t.length===0?[]:Gy(t)}var Eb=(e,t)=>{if(e!=null){var n=e.flatMap(e=>t===`xAxis`?wb(e):Tb(e));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},Db=B(xb,B([yb,sp],Eb),Cb,(e,t,n)=>cb(e,n,t)),Ob=(e,t,n,r,i,a,o,s,c)=>{if(n!=null)return n;var l=o===`vertical`&&s===`xAxis`||o===`horizontal`&&s===`yAxis`?cb(r,a,i):cb(a,i),u=gf(t,l,e.allowDataOverflow);return u==null&&e.allowDataOverflow&&l==null&&c!=null?c:u},kb=B([Cy,rb,ib,ab,ub,Db,G,sp,B([Cy],e=>{if(!(e==null||e.type!==`number`||!(`ticks`in e)||e.ticks==null)){var t=Gy(e.ticks);if(t.length!==0)return[Math.min(...t),Math.max(...t)]}},{memoizeOptions:{resultEqualityCheck:fp}})],Ob,{memoizeOptions:{resultEqualityCheck:fp}}),Ab=[0,1],jb=(e,t,n,r,i,a,o)=>{if(e!=null&&n!=null&&n.length!==0||o!==void 0){var s=e.dataKey,c=e.type,l=Uo(t,a);return l&&s==null?$d(0,n?.length??0):c===`category`?fb(r,e,l):i===`expand`&&!l?Ab:o}},Mb=B([Cy,G,zy,Hy,Nf,sp,kb],jb),Nb=B([Cy,Ey,Ff],ty),Pb=(e,t,n)=>{var r=t.niceTicks;if(r!==`none`){var i=nb(t),a=Array.isArray(i)&&(i[0]===`auto`||i[1]===`auto`);if((r===`snap125`||r===`adaptive`)&&t!=null&&t.tickCount&&pf(e)){if(a)return Af(e,t.tickCount,t.allowDecimals,r);if(t.type===`number`)return jf(e,t.tickCount,t.allowDecimals,r)}if(r===`auto`&&n===`linear`&&t!=null&&t.tickCount){if(a&&pf(e))return Af(e,t.tickCount,t.allowDecimals,`adaptive`);if(t.type===`number`&&pf(e))return jf(e,t.tickCount,t.allowDecimals,`adaptive`)}}},Fb=B([Mb,Ty,Nb],Pb),Ib=(e,t,n,r)=>{if(r!==`angleAxis`&&e?.type===`number`&&pf(t)&&Array.isArray(n)&&n.length>0){var i=t[0],a=n[0]??0,o=t[1],s=n[n.length-1]??0;return[Math.min(i,a),Math.max(o,s)]}return t},Lb=B([Cy,Mb,Fb,sp],Ib),Rb=B(B(Hy,Cy,(e,t)=>{if(!(!t||t.type!==`number`)){var n=1/0,r=Array.from(Gy(e.map(e=>e.value))).sort((e,t)=>e-t),i=r[0],a=r[r.length-1];if(i==null||a==null)return 1/0;var o=a-i;if(o===0)return 1/0;for(var s=0;si,(e,t,n,r,i)=>{if(!U(e))return 0;var a=t===`vertical`?r.height:r.width;if(i===`gap`)return e*a/2;if(i===`no-gap`){var o=de(n,e*a),s=e*a/2;return s-o-(s-o)/a*o}return 0}),zb=(e,t,n)=>{var r=vy(e,t);return r==null||typeof r.padding!=`string`?0:Rb(e,`xAxis`,t,n,r.padding)},Bb=(e,t,n)=>{var r=by(e,t);return r==null||typeof r.padding!=`string`?0:Rb(e,`yAxis`,t,n,r.padding)},Vb=B(vy,zb,(e,t)=>{if(e==null)return{left:0,right:0};var n=e.padding;return typeof n==`string`?{left:t,right:t}:{left:(n.left??0)+t,right:(n.right??0)+t}}),Hb=B(by,Bb,(e,t)=>{if(e==null)return{top:0,bottom:0};var n=e.padding;return typeof n==`string`?{top:t,bottom:t}:{top:(n.top??0)+t,bottom:(n.bottom??0)+t}}),Ub=B([Cs,Vb,ks,Os,(e,t,n)=>n],(e,t,n,r,i)=>{var a=r.padding;return i?[a.left,n.width-a.right]:[e.left+t.left,e.left+e.width-t.right]}),Wb=B([Cs,G,Hb,ks,Os,(e,t,n)=>n],(e,t,n,r,i,a)=>{var o=i.padding;return a?[r.height-o.bottom,o.top]:t===`horizontal`?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),Gb=(e,t,n,r)=>{switch(t){case`xAxis`:return Ub(e,n,r);case`yAxis`:return Wb(e,n,r);case`zAxis`:return Sy(e,n)?.range;case`angleAxis`:return ip(e);case`radiusAxis`:return ap(e,n);default:return}},Kb=B([Cy,Gb],Uf),qb=B([Cy,Nb,B([Nb,Lb],vp),Kb],Qv),Jb=(e,t,n,r)=>{if(n!=null&&n.dataKey!=null){var i=n.type,a=n.scale;if(Uo(e,r)&&(i===`number`||a!==`auto`))return t.map(e=>e.value)}},Yb=B([G,Hy,Ty,sp],Jb),Xb=B([qb],_p);B([qb],iy),B([qb,qy],ry),B([jy,ob,sp],sb);function Zb(e,t){return e.idt.id)}var Qb=(e,t)=>t,$b=(e,t,n)=>n,ex=B(us,Qb,$b,(e,t,n)=>e.filter(e=>e.orientation===t).filter(e=>e.mirror===n).sort(Zb)),tx=B(ds,Qb,$b,(e,t,n)=>e.filter(e=>e.orientation===t).filter(e=>e.mirror===n).sort(Zb)),nx=(e,t)=>{var n=typeof t.height==`number`?t.height:30;return{width:e.width,height:n}},rx=(e,t)=>({width:typeof t.width==`number`?t.width:60,height:e.height}),ix=B(Cs,vy,nx),ax=(e,t,n)=>{switch(t){case`top`:return e.top;case`bottom`:return n-e.bottom;default:return 0}},ox=(e,t,n)=>{switch(t){case`left`:return e.left;case`right`:return n-e.right;default:return 0}},sx=B(ss,Cs,ex,Qb,$b,(e,t,n,r,i)=>{var a={},o;return n.forEach(n=>{var s=nx(t,n);o??=ax(t,r,e);var c=r===`top`&&!i||r===`bottom`&&i;a[n.id]=o-Number(c)*s.height,o+=(c?-1:1)*s.height}),a}),cx=B(os,Cs,tx,Qb,$b,(e,t,n,r,i)=>{var a={},o;return n.forEach(n=>{var s=rx(t,n);o??=ox(t,r,e);var c=r===`left`&&!i||r===`right`&&i;a[n.id]=o-Number(c)*s.width,o+=(c?-1:1)*s.width}),a}),lx=B([Cs,vy,(e,t)=>{var n=vy(e,t);if(n!=null)return sx(e,n.orientation,n.mirror)},(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n?.[r];return i==null?{x:e.left,y:0}:{x:e.left,y:i}}}),ux=B([Cs,by,(e,t)=>{var n=by(e,t);if(n!=null)return cx(e,n.orientation,n.mirror)},(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n?.[r];return i==null?{x:0,y:e.top}:{x:i,y:e.top}}}),dx=B(Cs,by,(e,t)=>({width:typeof t.width==`number`?t.width:60,height:e.height})),fx=(e,t,n,r)=>{if(n!=null){var i=n.allowDuplicatedCategory,a=n.type,o=n.dataKey,s=Uo(e,r),c=t.map(e=>e.value),l=c.filter(e=>e!=null);if(o&&s&&a===`category`&&i&&fe(l))return c}},px=B([G,Hy,Cy,sp],fx),mx=B([G,wy,Nb,Xb,px,Yb,Gb,Fb,sp],(e,t,n,r,i,a,o,s,c)=>{if(t!=null){var l=Uo(e,c);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:c,categoricalDomain:a,duplicateDomain:i,isCategorical:l,niceTicks:s,range:o,realScaleType:n,scale:r}}}),hx=B([G,Ty,Nb,Xb,Fb,Gb,px,Yb,sp],(e,t,n,r,i,a,o,s,c)=>{if(t!=null&&r!=null){var l=Uo(e,c),u=t.type,d=t.ticks,f=t.tickCount,p=n===`scaleBand`&&typeof r.bandwidth==`function`?r.bandwidth()/2:2,m=u===`category`&&r.bandwidth?r.bandwidth()/p:0;m=c===`angleAxis`&&a!=null&&a.length>=2?oe(a[0]-a[1])*2*m:m;var h=d||i;return h?h.map((e,t)=>{var n=o?o.indexOf(e):e,i=r.map(n);return U(i)?{index:t,coordinate:i+m,value:e,offset:m}:null}).filter(_e):l&&s?s.map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+m,value:e,index:t,offset:m}:null}).filter(_e):r.ticks?r.ticks(f).map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+m,value:e,index:t,offset:m}:null}).filter(_e):r.domain().map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+m,value:o?o[e]:e,index:t,offset:m}:null}).filter(_e)}}),gx=B([G,Ty,Xb,Gb,px,Yb,sp],(e,t,n,r,i,a,o)=>{if(t!=null&&n!=null&&r!=null&&r[0]!==r[1]){var s=Uo(e,o),c=t.tickCount,l=0;return l=o===`angleAxis`&&r?.length>=2?oe(r[0]-r[1])*2*l:l,s&&a?a.map((e,t)=>{var r=n.map(e);return U(r)?{coordinate:r+l,value:e,index:t,offset:l}:null}).filter(_e):n.ticks?n.ticks(c).map((e,t)=>{var r=n.map(e);return U(r)?{coordinate:r+l,value:e,index:t,offset:l}:null}).filter(_e):n.domain().map((e,t)=>{var r=n.map(e);return U(r)?{coordinate:r+l,value:i?i[e]:e,index:t,offset:l}:null}).filter(_e)}}),_x=B(Cy,Xb,(e,t)=>{if(e!=null&&t!=null)return oy(oy({},e),{},{scale:t})});B((e,t,n)=>Sy(e,n),B([B([Cy,Nb,Mb,Kb],Qv)],_p),(e,t)=>{if(e!=null&&t!=null)return oy(oy({},e),{},{scale:t})});var vx=B([G,us,ds],(e,t,n)=>{switch(e){case`horizontal`:return t.some(e=>e.reversed)?`right-to-left`:`left-to-right`;case`vertical`:return n.some(e=>e.reversed)?`bottom-to-top`:`top-to-bottom`;case`centric`:case`radial`:return`left-to-right`;default:return}});B([(e,t,n)=>e.renderedTicks[t]?.[n]],e=>{if(!(!e||e.length===0))return t=>{var n=1/0,r=e[0];for(var i of e){var a=Math.abs(i.coordinate-t);ae.options.defaultTooltipEventType,bx=e=>e.options.validateTooltipEventTypes;function xx(e,t,n){if(e==null)return t;var r=e?`axis`:`item`;return n==null?t:n.includes(r)?r:t}function Sx(e,t){return xx(t,yx(e),bx(e))}function Cx(e){return z(t=>Sx(t,e))}var wx=(e,t)=>{var n,r=Number(t);if(!(F(r)||t==null))return r>=0?e==null||(n=e[r])==null?void 0:n.value:void 0},Tx=e=>e.tooltip.settings,Ex={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},Dx=za({name:`tooltip`,initialState:{itemInteraction:{click:Ex,hover:Ex},axisInteraction:{click:Ex,hover:Ex},keyboardInteraction:Ex,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:`hover`,axisId:0,active:!1,defaultIndex:void 0}},reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(V(t.payload))},prepare:H()},replaceTooltipEntrySettings:{reducer(e,t){var n=t.payload,r=n.prev,i=n.next,a=da(e).tooltipItemPayloads.indexOf(V(r));a>-1&&(e.tooltipItemPayloads[a]=V(i))},prepare:H()},removeTooltipEntrySettings:{reducer(e,t){var n=da(e).tooltipItemPayloads.indexOf(V(t.payload));n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:H()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),Ox=Dx.actions,kx=Ox.addTooltipEntrySettings,Ax=Ox.replaceTooltipEntrySettings,jx=Ox.removeTooltipEntrySettings,Mx=Ox.setTooltipSettingsState,Nx=Ox.setActiveMouseOverItemIndex;Ox.mouseLeaveItem;var Px=Ox.mouseLeaveChart;Ox.setActiveClickItemIndex;var Fx=Ox.setMouseOverAxisIndex,Ix=Ox.setMouseClickAxisIndex,Lx=Ox.setSyncInteraction,Rx=Ox.setKeyboardInteraction,zx=Dx.reducer;function Bx(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Vx(e){for(var t=1;t{if(t==null)return Ex;var i=Gx(e,t,n);if(i==null)return Ex;if(i.active)return i;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var a=e.settings.active===!0;if(Kx(i)){if(a)return Vx(Vx({},i),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Vx(Vx({},Ex),{},{coordinate:i.coordinate})};function Jx(e){if(typeof e==`number`)return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function Yx(e,t){var n=Jx(e),r=t[0],i=t[1];return n!==void 0&&n>=Math.min(r,i)&&n<=Math.max(r,i)}function Xx(e,t,n){if(n==null||t==null)return!0;var r=W(e,t);return r==null||!pf(n)||Yx(r,n)}var Zx=(e,t,n,r)=>{var i=e?.index;if(i==null)return null;var a=Number(i);if(!U(a))return i;var o=0,s=1/0;t.length>0&&(s=t.length-1);var c=Math.max(o,Math.min(a,s)),l=t[c];return l==null||Xx(l,n,r)?String(c):null},Qx=(e,t,n,r,i,a,o)=>{if(a!=null){var s=o[0]?.getPosition(a);if(s!=null)return s;var c=i?.[Number(a)];if(c)switch(n){case`horizontal`:return{x:c.coordinate,y:(r.top+t)/2};default:return{x:(r.left+e)/2,y:c.coordinate}}}},$x=(e,t,n,r)=>{if(t===`axis`)return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var i=n===`hover`?e.itemInteraction.hover.graphicalItemId:e.itemInteraction.click.graphicalItemId;if(e.syncInteraction.active&&i==null)return e.tooltipItemPayloads;if(i==null&&(r!=null||e.keyboardInteraction.active)){var a=e.tooltipItemPayloads[0];return a==null?[]:[a]}return e.tooltipItemPayloads.filter(e=>e.settings?.graphicalItemId===i)},eS=e=>e.options.tooltipPayloadSearcher,tS=e=>e.tooltip;function nS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function rS(e){for(var t=1;te(t)}function uS(e){if(typeof e==`string`)return e}function dS(e){if(!(typeof e!=`object`||!e))return{name:`name`in e?sS(e.name):void 0,unit:`unit`in e?cS(e.unit):void 0,dataKey:`dataKey`in e?lS(e.dataKey):void 0,payload:`payload`in e?e.payload:void 0,color:`color`in e?uS(e.color):void 0,fill:`fill`in e?uS(e.fill):void 0}}function fS(e,t){return e??t}var pS=(e,t,n,r,i,a,o)=>{if(t!=null&&a!=null){var s=n.chartData,c=n.computedData,l=n.dataStartIndex,u=n.dataEndIndex;return e.reduce((e,n)=>{var d=n.dataDefinedOnItem,f=n.settings,p=fS(d,s),m=Array.isArray(p)?Fo(p,l,u):p,h=f?.dataKey??r,g=f?.nameKey,_;return r&&Array.isArray(m)&&!Array.isArray(m[0])&&o===`axis`?(_=me(m,r,i),_??=a(m,t,c,g)):_=a(m,t,c,g),Array.isArray(_)?_.forEach(t=>{var n=dS(t),r=n?.name,i=n?.dataKey,a=n?.payload,o=rS(rS({},f),{},{name:r,unit:n?.unit,color:n?.color??f?.color,fill:n?.fill??f?.fill});e.push(ns({tooltipEntrySettings:o,dataKey:i,payload:a,value:W(a,i),name:r==null?void 0:String(r)}))}):e.push(ns({tooltipEntrySettings:f,dataKey:h,payload:_,value:W(_,h),name:W(_,g)??f?.name})),e},[])}},mS=B([Q,Ey,Ff],ty),hS=B([B([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),Q,B([hp,gp],Dy)],Ay,{memoizeOptions:{resultEqualityCheck:pp}}),gS=B([hS],e=>e.filter(dp)),_S=B([hS],Fy,{memoizeOptions:{resultEqualityCheck:pp}}),vS=B([hS],e=>e.some(e=>!e.data)),yS=B([_S,ef],Ry),bS=B([gS,ef,Q],up),xS=B([yS,Q,hS,ef,vS,_S],Vy),SS=B([Q],nb),CS=B([SS,B([Q],e=>e.allowDataOverflow)],hf),wS=B([B([bS,B([hS],e=>e.filter(dp)),Nf,Pf],Qy),ef,hp,CS],eb),TS=B([yS,Q,B([hS],Ny),ob,hp,of],lb,{memoizeOptions:{resultEqualityCheck:fp}}),ES=B([B([pb,hp,gp],mb),hp],bb),DS=B([B([gb,hp,gp],mb),hp],Sb),OS=B([Q,G,yS,xS,Nf,hp,B([Q,SS,CS,wS,TS,B([ES,B([B([vb,hp,gp],mb),hp],Eb),DS],cb),G,hp],Ob)],jb),kS=B([Q,OS,B([OS,Q,mS],Pb),hp],Ib),AS=e=>Gb(e,hp(e),gp(e),!1),jS=B([Q,AS],Uf),MS=B([B([Q,mS,kS,jS],Qv)],_p),NS=B([G,Q,mS,MS,AS,B([G,xS,Q,hp],fx),B([G,xS,Q,hp],Jb),hp],(e,t,n,r,i,a,o,s)=>{if(t){var c=t.type,l=Uo(e,s);if(r){var u=n===`scaleBand`&&r.bandwidth?r.bandwidth()/2:2,d=c===`category`&&r.bandwidth?r.bandwidth()/u:0;return d=s===`angleAxis`&&i!=null&&i?.length>=2?oe(i[0]-i[1])*2*d:d,l&&o?o.map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+d,value:e,index:t,offset:d}:null}).filter(_e):r.domain().map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+d,value:a?a[e]:e,index:t,offset:d}:null}).filter(_e)}}}),PS=B([yx,bx,Tx],(e,t,n)=>xx(n.shared,e,t)),FS=e=>e.tooltip.settings.trigger,IS=e=>e.tooltip.settings.defaultIndex,LS=B([tS,PS,FS,IS],qx),RS=B([LS,yS,Xy,OS],Zx),zS=B([NS,RS],wx),BS=B([LS],e=>{if(e)return e.dataKey}),VS=B([LS],e=>{if(e)return e.graphicalItemId}),HS=B([tS,PS,FS,IS],$x),US=B([LS,B([os,ss,G,Cs,NS,IS,HS],Qx)],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),WS=B([LS],e=>e?.active??!1),GS=B([B([HS,RS,ef,Xy,zS,eS,PS],pS)],e=>{if(e!=null){var t=e.map(e=>e.payload).filter(e=>e!=null);return Array.from(new Set(t))}});function KS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function qS(e){for(var t=1;tz(Q),QS=()=>{var e=ZS(),t=z(NS),n=z(MS);return ts(!e||!n?void 0:qS(qS({},e),{},{scale:n}),t)};function $S(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function eC(e){for(var t=1;t{var i=t.find(e=>e&&e.index===n);if(i){if(e===`horizontal`)return{x:i.coordinate,y:r.relativeY};if(e===`vertical`)return{x:r.relativeX,y:i.coordinate}}return{x:0,y:0}},aC=(e,t,n,r)=>{var i=t.find(e=>e&&e.index===n);if(i){if(e===`centric`){var a=i.coordinate,o=r.radius;return eC(eC(eC({},r),Dd(r.cx,r.cy,o,a)),{},{angle:a,radius:o})}var s=i.coordinate,c=r.angle;return eC(eC(eC({},r),Dd(r.cx,r.cy,s,c)),{},{angle:c,radius:s})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function oC(e,t){var n=e.relativeX,r=e.relativeY;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var sC=(e,t,n,r,i)=>{var a=t?.length??0;if(a<=1||e==null)return 0;if(r===`angleAxis`&&i!=null&&Math.abs(Math.abs(i[1]-i[0])-360)<=1e-6)for(var o=i[1]-i[0],s=(t,n,r)=>[e,e+o,e-o].some(e=>(r?e>=t:e>t)&&e<=n),c=0;c0?n[c-1]?.coordinate:n[a-1]?.coordinate,u=n[c]?.coordinate,d=c>=a-1?n[0]?.coordinate:n[c+1]?.coordinate,f=void 0;if(l!=null&&u!=null&&d!=null){if(oe(u-l)!==oe(d-u)){var p=[];if(oe(d-u)===oe(i[1]-i[0])){f=d;var m=u+i[1]-i[0];p[0]=Math.min(m,(m+l)/2),p[1]=Math.max(m,(m+l)/2)}else{f=l;var h=d+i[1]-i[0];p[0]=Math.min(u,(h+u)/2),p[1]=Math.max(u,(h+u)/2)}var g=[Math.min(u,(f+u)/2),Math.max(u,(f+u)/2)];if(s(g[0],g[1],!1)||s(p[0],p[1],!0))return n[c]?.index}else{var _=Math.min(l,d),v=Math.max(l,d);if(s((_+u)/2,(v+u)/2,!1))return n[c]?.index}}}else if(t)for(var y=0;y(b.coordinate+S.coordinate)/2||y>0&&y(b.coordinate+S.coordinate)/2&&e<=(b.coordinate+x.coordinate)/2)return b.index}}return-1},cC=()=>z(Ff),lC=(e,t)=>t,uC=(e,t,n)=>n,dC=(e,t,n,r)=>r,fC=B(NS,e=>Sr(e,e=>e.coordinate)),pC=B([tS,lC,uC,dC],qx),mC=B([pC,yS,Xy,OS],Zx),hC=(e,t,n)=>{if(t!=null){var r=tS(e);return t===`axis`?n===`hover`?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n===`hover`?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},gC=B([tS,lC,uC,dC],$x),_C=B([os,ss,G,Cs,NS,dC,gC],Qx),vC=B([pC,_C],(e,t)=>e.coordinate??t),yC=B([NS,mC],wx),bC=B([gC,mC,ef,Xy,yC,eS,lC],pS),xC=B([pC,mC],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),SC=(e,t,n,r,i,a,o)=>{if(!(!e||!n||!r||!i)&&oC(e,o)){var s=sC(is(e,t),a,i,n,r),c=iC(t,i,s,e);return{activeIndex:String(s),activeCoordinate:c}}},CC=(e,t,n,r,i,a,o)=>{if(!(!e||!r||!i||!a||!n)){var s=Nd(e,n);if(s){var c=sC(as(s,t),o,a,r,i),l=aC(t,a,c,s);return{activeIndex:String(c),activeCoordinate:l}}}},wC=(e,t,n,r,i,a,o,s)=>{if(!(!e||!t||!r||!i||!a))return t===`horizontal`||t===`vertical`?SC(e,t,r,i,a,o,s):CC(e,t,n,r,i,a,o)},TC=B(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),EC=B(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(e=>parseInt(e,10)).concat(Object.values(Bf));return Array.from(new Set(t)).sort((e,t)=>e-t)},{memoizeOptions:{resultEqualityCheck:mp}});function DC(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function OC(e){for(var t=1;tOC(OC({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),{})},NC=new Set(Object.values(Bf));function PC(e){return NC.has(e)}var FC=za({name:`zIndex`,initialState:MC,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:H()},unregisterZIndexPortal:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]&&(--e.zIndexMap[n].consumers,e.zIndexMap[n].consumers<=0&&!PC(n)&&delete e.zIndexMap[n])},prepare:H()},registerZIndexPortalElement:{reducer:(e,t)=>{var n=t.payload,r=n.zIndex,i=n.element,a=n.isPanorama;e.zIndexMap[r]?a?e.zIndexMap[r].panoramaElement=V(i):e.zIndexMap[r].element=V(i):e.zIndexMap[r]={consumers:0,element:a?void 0:V(i),panoramaElement:a?V(i):void 0}},prepare:H()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:H()}}}),IC=FC.actions,LC=IC.registerZIndexPortal,RC=IC.unregisterZIndexPortal,zC=IC.registerZIndexPortalElement,BC=IC.unregisterZIndexPortalElement,VC=FC.reducer;function HC(e){var t=e.zIndex,n=e.children,r=_c()&&t!==void 0&&t!==0,i=Ds(),a=(0,s.useRef)(void 0),o=(0,s.useRef)(new Set),l=R(),u=z(e=>TC(e,t,i));if((0,s.useLayoutEffect)(()=>{if(!r){var e=o.current;e.forEach(e=>{l(RC({zIndex:e}))}),e.clear(),a.current=void 0;return}if(o.current.has(t)||(l(LC({zIndex:t})),o.current.add(t)),u){a.current=u;var n=o.current;n.forEach(e=>{e!==t&&(l(RC({zIndex:e})),n.delete(e))})}},[l,t,r,u]),(0,s.useLayoutEffect)(()=>{var e=o.current;return()=>{e.forEach(e=>{l(RC({zIndex:e}))}),e.clear()}},[l]),!r)return n;var d=u??a.current;return d?(0,c.createPortal)(n,d):null}function UC(){return UC=Object.assign?Object.assign.bind():function(e){for(var t=1;t(0,s.useContext)(QC),ew=r(o(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!F(n))return e[n]}},aw=za({name:`options`,initialState:{chartName:``,tooltipPayloadSearcher:()=>void 0,eventEmitter:void 0,defaultTooltipEventType:`axis`},reducers:{createEventEmitter:e=>{e.eventEmitter??=Symbol(`rechartsEventEmitter`)}}}),ow=aw.reducer,sw=aw.actions.createEventEmitter;function cw(e){return e.tooltip.syncInteraction}var lw=za({name:`chartData`,initialState:{chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},reducers:{setChartData(e,t){if(e.chartData=V(t.payload),t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var n=t.payload,r=n.startIndex,i=n.endIndex;r!=null&&(e.dataStartIndex=r),i!=null&&(e.dataEndIndex=i)}}}),uw=lw.actions,dw=uw.setChartData,fw=uw.setDataStartEndIndexes;uw.setComputedData;var pw=lw.reducer,mw=[`x`,`y`];function hw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function gw(e){for(var t=1;te.rootProps.className);(0,s.useEffect)(()=>{if(e==null)return ve;var s=(s,c,l)=>{if(t!==l&&e===s){if(c.payload.active===!1){n(Lx({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(r===`index`){var u;if(o&&c!=null&&(u=c.payload)!=null&&u.coordinate&&c.payload.sourceViewBox){var d=c.payload.coordinate,f=d.x,p=d.y,m=bw(d,mw),h=c.payload.sourceViewBox,g=h.x,_=h.y,v=h.width,y=h.height,b=gw(gw({},m),{},{x:o.x+(v?(f-g)/v:0)*o.width,y:o.y+(y?(p-_)/y:0)*o.height});n(gw(gw({},c),{},{payload:gw(gw({},c.payload),{},{coordinate:b})}))}else n(c);return}if(i!=null){var x;typeof r==`function`?x=i[r(i,{activeTooltipIndex:c.payload.index==null?void 0:Number(c.payload.index),isTooltipActive:c.payload.active,activeIndex:c.payload.index==null?void 0:Number(c.payload.index),activeLabel:c.payload.label,activeDataKey:c.payload.dataKey,activeCoordinate:c.payload.coordinate})]:r===`value`&&(x=i.find(e=>String(e.value)===c.payload.label));var S=c.payload.coordinate;if(S==null||o==null){n(Lx({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(x==null){n(Lx({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:c.payload.sourceViewBox,graphicalItemId:void 0}));return}var C=S.x,w=S.y,T=Math.min(C,o.x+o.width),E=Math.min(w,o.y+o.height),D={x:a===`horizontal`?x.coordinate:T,y:a===`horizontal`?E:x.coordinate};n(Lx({active:c.payload.active,coordinate:D,dataKey:c.payload.dataKey,index:String(x.index),label:c.payload.label,sourceViewBox:c.payload.sourceViewBox,graphicalItemId:c.payload.graphicalItemId}))}}};return tw.on(nw,s),()=>{tw.off(nw,s)}},[c,n,t,e,r,i,a,o])}function Cw(){var e=z(If),t=z(Rf),n=R();(0,s.useEffect)(()=>{if(e==null)return ve;var r=(r,i,a)=>{t!==a&&e===r&&n(fw(i))};return tw.on(rw,r),()=>{tw.off(rw,r)}},[n,t,e])}function ww(){var e=R();(0,s.useEffect)(()=>{e(sw())},[e]),Sw(),Cw()}function Tw(e,t,n,r,i,a){var o=z(n=>hC(n,e,t)),c=z(VS),l=z(Rf),u=z(If),d=z(Lf),f=z(cw)?.sourceViewBox!=null,p=lc();(0,s.useEffect)(()=>{if(!f&&u!=null&&l!=null){var e=Lx({active:a,coordinate:n,dataKey:o,index:i,label:typeof r==`number`?String(r):r,sourceViewBox:p,graphicalItemId:c});tw.emit(nw,u,e,l)}},[f,n,o,c,i,r,l,u,d,a,p])}function Ew(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Dw(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{C(Mx({shared:v,trigger:y,axisId:S,active:n,defaultIndex:w}))},[C,v,y,S,n,w]);var T=lc(),E=Pl(),D=Cx(v),O=z(e=>xC(e,D,y,w))??{},k=O.activeIndex,A=O.isActive,j=z(e=>bC(e,D,y,w)),M=z(e=>yC(e,D,y,w)),N=z(e=>vC(e,D,y,w)),ee=j,te=$C(),ne=n??A??!1,re=jw(Pr([ee,ne]),2),ie=re[0],ae=re[1],P=D===`axis`?M:void 0;Tw(D,y,N,P,k,ne);var oe=x??te;if(oe==null||T==null||D==null)return null;var F=ee??zw;ne||(F=zw),l&&F.length&&(F=qn(F.filter(e=>e.value!=null&&(e.hide!==!0||t.includeHidden)),f,Lw));var se=F.length>0,I=Dw(Dw({},t),{},{payload:F,label:P,active:ne,activeIndex:k,coordinate:N,accessibilityLayer:E}),ce=s.createElement(Nl,{allowEscapeViewBox:r,animationDuration:i,animationEasing:a,isAnimationActive:u,active:ne,coordinate:N,hasPayload:se,offset:d,position:p,reverseDirection:m,useTranslate3d:h,viewBox:T,wrapperStyle:g,lastBoundingBox:ie,innerRef:ae,hasPortalFromProps:!!x},Rw(o,I));return s.createElement(s.Fragment,null,(0,c.createPortal)(ce,oe),ne&&s.createElement(ZC,{cursor:_,tooltipEventType:D,coordinate:N,payload:F,index:k}))}function Hw(e,t,n){return(t=Uw(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Uw(e){var t=Ww(e,`string`);return typeof t==`symbol`?t:t+``}function Ww(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var Gw=class{constructor(e){Hw(this,`cache`,new Map),this.maxSize=e}get(e){var t=this.cache.get(e);return t!==void 0&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.maxSize){var n=this.cache.keys().next().value;n!=null&&this.cache.delete(n)}this.cache.set(e,t)}clear(){this.cache.clear()}size(){return this.cache.size}};function Kw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function qw(e){for(var t=1;t{try{var n=document.getElementById(eT);n||(n=document.createElement(`span`),n.setAttribute(`id`,eT),n.setAttribute(`aria-hidden`,`true`),document.body.appendChild(n)),Object.assign(n.style,$w,t),n.textContent=`${e}`;var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},rT=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(e==null||fl.isSsr)return{width:0,height:0};if(!Zw.enableCache)return nT(e,t);var n=tT(e,t),r=Qw.get(n);if(r)return r;var i=nT(e,t);return Qw.set(n,i),i},iT;function aT(e,t){return uT(e)||lT(e,t)||sT(e,t)||oT()}function oT(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function sT(e,t){if(e){if(typeof e==`string`)return cT(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?cT(e,t):void 0}}function cT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.children,n=e.breakAll,r=e.style;try{var i=[];return he(t)||(i=n?t.toString().split(``):t.toString().split(VT)),{wordsWithComputedWidth:i.map(e=>({word:e,width:rT(e,r).width})),spaceWidth:n?0:rT(`\xA0`,r).width}}catch{return null}};function UT(e){return e===`start`||e===`middle`||e===`end`||e===`inherit`}function WT(e){return he(e)||typeof e==`string`||typeof e==`number`||typeof e==`boolean`}var GT=(e,t,n,r)=>e.reduce((e,i)=>{var a=i.word,o=i.width,s=e[e.length-1];if(s&&o!=null&&(t==null||r||s.width+o+ne.reduce((e,t)=>e.width>t.width?e:t),qT=`…`,JT=(e,t,n,r,i,a,o,s)=>{var c=HT({breakAll:n,style:r,children:e.slice(0,t)+qT});if(!c)return[!1,[]];var l=GT(c.wordsWithComputedWidth,a,o,s);return[l.length>i||KT(l).width>Number(a),l]},YT=(e,t,n,r,i)=>{var a=e.maxLines,o=e.children,s=e.style,c=e.breakAll,l=I(a),u=String(o),d=GT(t,r,n,i);if(!l||i||!(d.length>a||KT(d).width>Number(r)))return d;for(var f=0,p=u.length-1,m=0,h;f<=p&&m<=u.length-1;){var g=Math.floor((f+p)/2),_=FT(JT(u,g-1,c,s,a,r,n,i),2),v=_[0],y=_[1],b=FT(JT(u,g,c,s,a,r,n,i),1)[0];if(!v&&!b&&(f=g+1),v&&b&&(p=g-1),!v&&b){h=y;break}m++}return h||d},XT=e=>[{words:he(e)?[]:e.toString().split(VT),width:void 0}],ZT=e=>{var t=e.width,n=e.scaleToFit,r=e.children,i=e.style,a=e.breakAll,o=e.maxLines;if((t||n)&&!fl.isSsr){var s,c,l=HT({breakAll:a,children:r,style:i});if(l){var u=l.wordsWithComputedWidth,d=l.spaceWidth;s=u,c=d}else return XT(r);return YT({breakAll:a,children:r,maxLines:o,style:i},s,c,t,!!n)}return XT(r)},QT=`#808080`,$T={angle:0,breakAll:!1,capHeight:`0.71em`,fill:QT,lineHeight:`1em`,scaleToFit:!1,textAnchor:`start`,verticalAnchor:`end`,x:0,y:0},eE=(0,s.forwardRef)((e,t)=>{var n=It(e,$T),r=n.x,i=n.y,o=n.lineHeight,c=n.capHeight,l=n.fill,u=n.scaleToFit,d=n.textAnchor,f=n.verticalAnchor,p=NT(n,AT),m=(0,s.useMemo)(()=>ZT({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:u,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,u,p.style,p.width]),h=p.dx,_=p.dy,v=p.angle,y=p.className,b=p.breakAll,x=NT(p,jT);if(!ce(r)||!ce(i)||m.length===0)return null;var S=Number(r)+(I(h)?h:0),C=Number(i)+(I(_)?_:0);if(!U(S)||!U(C))return null;var w;switch(f){case`start`:w=kT(`calc(${c})`);break;case`middle`:w=kT(`calc(${(m.length-1)/2} * -${o} + (${c} / 2))`);break;default:w=kT(`calc(${m.length-1} * -${o})`)}var T=[],E=m[0];if(u&&E!=null){var D=E.width,O=p.width;T.push(`scale(${I(O)&&I(D)?O/D:1})`)}return v&&T.push(`rotate(${v}, ${S}, ${C})`),T.length&&(x.transform=T.join(` `)),s.createElement(`text`,MT({},g(x),{ref:t,x:S,y:C,className:a(`recharts-text`,y),textAnchor:d,fill:l.includes(`url`)?QT:l}),m.map((e,t)=>{var n=e.words.join(b?``:` `);return s.createElement(`tspan`,{x:S,dy:t===0?w:o,key:`${n}-${t}`},n)}))});eE.displayName=`Text`;var tE=[`labelRef`],nE=[`content`];function rE(e,t){if(e==null)return{};var n,r,i=iE(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var t=e.x,n=e.y,r=e.upperWidth,i=e.lowerWidth,a=e.width,o=e.height,c=e.children,l=(0,s.useMemo)(()=>({x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:o}),[t,n,r,i,a,o]);return s.createElement(dE.Provider,{value:l},c)},pE=()=>{var e=(0,s.useContext)(dE),t=lc();return e||(t?ye(t):void 0)},mE=(0,s.createContext)(null),hE=()=>{var e=(0,s.useContext)(mE),t=z(op);return e||t},gE=e=>{var t=e.value,n=e.formatter,r=he(e.children)?t:e.children;return typeof n==`function`?n(r):r},_E=e=>e!=null&&typeof e==`function`,vE=(e,t)=>oe(t-e)*Math.min(Math.abs(t-e),360),yE=(e,t,n,r,i)=>{var o=e.offset,c=e.className,l=i.cx,u=i.cy,d=i.innerRadius,f=i.outerRadius,p=i.startAngle,m=i.endAngle,h=i.clockWise,g=(d+f)/2,_=vE(p,m),v=_>=0?1:-1,y,b;switch(t){case`insideStart`:y=p+v*o,b=h;break;case`insideEnd`:y=m-v*o,b=!h;break;case`end`:y=m+v*o,b=h;break;default:throw Error(`Unsupported position ${t}`)}b=_<=0?b:!b;var x=Dd(l,u,g,y),S=Dd(l,u,g,y+(b?1:-1)*359),C=`M${x.x},${x.y} + A${g},${g},0,1,${+!b}, + ${S.x},${S.y}`,w=he(e.id)?ue(`recharts-radial-line-`):e.id;return s.createElement(`text`,uE({},r,{dominantBaseline:`central`,className:a(`recharts-radial-bar-label`,c)}),s.createElement(`defs`,null,s.createElement(`path`,{id:w,d:C})),s.createElement(`textPath`,{xlinkHref:`#${w}`},n))},bE=(e,t,n)=>{var r=e.cx,i=e.cy,a=e.innerRadius,o=e.outerRadius,s=(e.startAngle+e.endAngle)/2;if(n===`outside`){var c=Dd(r,i,o+t,s),l=c.x;return{x:l,y:c.y,textAnchor:l>=r?`start`:`end`,verticalAnchor:`middle`}}if(n===`center`)return{x:r,y:i,textAnchor:`middle`,verticalAnchor:`middle`};if(n===`centerTop`)return{x:r,y:i,textAnchor:`middle`,verticalAnchor:`start`};if(n===`centerBottom`)return{x:r,y:i,textAnchor:`middle`,verticalAnchor:`end`};var u=Dd(r,i,(a+o)/2,s);return{x:u.x,y:u.y,textAnchor:`middle`,verticalAnchor:`middle`}},xE=e=>e!=null&&`cx`in e&&I(e.cx),SE={angle:0,offset:5,zIndex:Bf.label,position:`middle`,textBreakAll:!1};function CE(e){if(!xE(e))return e;var t=e.cx,n=e.cy,r=e.outerRadius,i=r*2;return{x:t-r,y:n-r,width:i,upperWidth:i,lowerWidth:i,height:i}}function wE(e){var t=It(e,SE),n=t.viewBox,r=t.parentViewBox,i=t.position,o=t.value,c=t.children,l=t.content,u=t.className,d=u===void 0?``:u,f=t.textBreakAll,p=t.labelRef,m=hE(),h=pE(),_=n==null?i===`center`?h:m??h:xE(n)?n:ye(n),v,y,b=CE(_);if(!_||he(o)&&he(c)&&!(0,s.isValidElement)(l)&&typeof l!=`function`)return null;var x=xE(_)&&(i===`insideStart`||i===`insideEnd`||i===`end`);if(xE(_))x||(y=bE(_,t.offset,t.position));else if(b){var S=Te({viewBox:b,position:i,offset:t.offset,parentViewBox:xE(r)?void 0:r,clamp:!0});y=oE(oE({x:S.x,y:S.y,textAnchor:S.horizontalAnchor,verticalAnchor:S.verticalAnchor},S.width===void 0?{}:{width:S.width}),S.height===void 0?{}:{height:S.height})}var C=oE(oE(oE(oE({},y?.x===void 0?{}:{x:y.x}),y?.y===void 0?{}:{y:y.y}),t),{},{viewBox:_});if((0,s.isValidElement)(l)){C.labelRef;var w=rE(C,tE);return(0,s.cloneElement)(l,w)}if(typeof l==`function`){C.content;var T=rE(C,nE);if(v=(0,s.createElement)(l,T),(0,s.isValidElement)(v))return v}else v=gE(t);var E=g(t);return x&&xE(_)?yE(t,i,v,E,_):y==null?null:s.createElement(HC,{zIndex:t.zIndex},s.createElement(eE,uE({ref:p,className:a(`recharts-label`,d)},E,y,{textAnchor:UT(E.textAnchor)?E.textAnchor:y.textAnchor,breakAll:f}),v))}wE.displayName=`Label`;var TE=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?s.createElement(wE,uE({key:`label-implicit`},r)):ce(e)?s.createElement(wE,uE({key:`label-implicit`,value:e},r)):(0,s.isValidElement)(e)?e.type===wE?(0,s.cloneElement)(e,oE({key:`label-implicit`},r)):s.createElement(wE,uE({key:`label-implicit`,content:e},r)):_E(e)?s.createElement(wE,uE({key:`label-implicit`,content:e},r)):e&&typeof e==`object`?s.createElement(wE,uE({},e,{key:`label-implicit`},r)):null};function EE(e){var t=e.label,n=e.labelRef;return TE(t,pE(),n)||null}var DE=[`valueAccessor`],OE=[`dataKey`,`clockWise`,`id`,`textBreakAll`,`zIndex`];function kE(){return kE=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=Array.isArray(e.value)?e.value[e.value.length-1]:e.value;if(WT(t))return t},NE=(0,s.createContext)(void 0),PE=NE.Provider,FE=(0,s.createContext)(void 0);FE.Provider;function IE(){return(0,s.useContext)(NE)}function LE(){return(0,s.useContext)(FE)}function RE(e){var t=e.valueAccessor,n=t===void 0?ME:t,r=AE(e,DE),i=r.dataKey;r.clockWise;var a=r.id,o=r.textBreakAll,c=r.zIndex,l=AE(r,OE),u=IE(),d=LE(),f=u||d;return!f||!f.length?null:s.createElement(HC,{zIndex:c??Bf.label},s.createElement(D,{className:`recharts-label-list`},f.map((e,t)=>{var c=he(i)?n(e,t):W(e.payload,i),u=he(a)?{}:{id:`${a}-${t}`};return s.createElement(wE,kE({key:`label-${t}`},g(e),l,u,{fill:r.fill??e.fill,parentViewBox:e.parentViewBox,value:c,textBreakAll:o,viewBox:e.viewBox,index:t,zIndex:0}))})))}RE.displayName=`LabelList`;function zE(e){var t=e.label;return t?t===!0?s.createElement(RE,{key:`labelList-implicit`}):s.isValidElement(t)||_E(t)?s.createElement(RE,{key:`labelList-implicit`,content:t}):typeof t==`object`?s.createElement(RE,kE({key:`labelList-implicit`},t,{type:String(t.type)})):null:null}function BE(){return BE=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=e.cx,n=e.cy,r=e.r,i=e.className,o=a(`recharts-dot`,i);return I(t)&&I(n)&&I(r)?s.createElement(`circle`,BE({},m(e),Ot(e),{className:o,cx:t,cy:n,r})):null},HE=za({name:`polarAxis`,initialState:{radiusAxis:{},angleAxis:{}},reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=V(t.payload)},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=V(t.payload)},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),UE=HE.actions;UE.addRadiusAxis,UE.removeRadiusAxis,UE.addAngleAxis,UE.removeAngleAxis;var WE=HE.reducer;function GE(e){return e&&typeof e==`object`&&`className`in e&&typeof e.className==`string`?e.className:``}var KE=o((e=>{typeof Symbol==`function`&&Symbol.for}));o(((e,t)=>{t.exports=KE()}))();var qE=e=>e&&typeof e==`object`&&`clipDot`in e?!!e.clipDot:!0;function JE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function YE(e){for(var t=1;t{r||(i.current===null?n(kx(t)):i.current!==t&&n(Ax({prev:i.current,next:t})),i.current=t)},[t,n,r]),(0,s.useLayoutEffect)(()=>()=>{i.current&&=(n(jx(i.current)),null)},[n]),null}function oD(e){var t=e.legendPayload,n=R(),r=Ds(),i=(0,s.useRef)(null);return(0,s.useLayoutEffect)(()=>{r||(i.current===null?n(xc(t)):i.current!==t&&n(Sc({prev:i.current,next:t})),i.current=t)},[n,r,t]),(0,s.useLayoutEffect)(()=>()=>{i.current&&=(n(Cc(i.current)),null)},[n]),null}function sD(e,t){return fD(e)||dD(e,t)||lD(e,t)||cD()}function cD(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function lD(e,t){if(e){if(typeof e==`string`)return uD(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?uD(e,t):void 0}}function uD(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n2&&arguments[2]!==void 0?arguments[2]:[],r=[];for(var i of n)r.push({status:`removed`,prev:i});for(var a=0;ae[Math.floor(r*n)]),t)}function gD(e,t){return mD(t.map((t,n)=>e[n]),t)}function _D(e,t){for(var n=new Map,r=0;r{var a=n(e,t);if(a!=null){var o=r.get(a);if(o!==void 0)return i.add(a),o}}),o=[];for(var s of r){var c=sD(s,2),l=c[0],u=c[1];i.has(l)||o.push(u)}return mD(a,t,o)}function yD(e,t,n){return t==null?null:e==null?t.map(e=>({status:`added`,next:e})):n===`index`?hD(e,t):n===`append`?gD(e,t):vD(e,t,n)}function bD(e,t){var n=(0,s.useRef)(e),r=(0,s.useRef)(t.current),i=(0,s.useRef)(!0);n.current!==e&&(n.current=e,r.current=t.current,i.current=!1);var a=(0,s.useCallback)(function(e,n){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(n===0){i.current=!0;return}n===1&&(r.current=e),n>0&&i.current&&a&&(t.current=e)},[t]);return{startValue:r.current,syncStepValue:a}}function xD(e,t){return ED(e)||TD(e,t)||CD(e,t)||SD()}function SD(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function CD(e,t){if(e){if(typeof e==`string`)return wD(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?wD(e,t):void 0}}function wD(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{typeof e==`function`&&e(),i(!0)},[e]),handleAnimationEnd:(0,s.useCallback)(()=>{typeof t==`function`&&t(),i(!1)},[t])}}function OD(e){var t=e.animationInput,n=e.animationIdPrefix,r=e.items,i=e.previousItemsRef,a=e.isAnimationActive,o=e.animationBegin,c=e.animationDuration,l=e.animationEasing,u=e.onAnimationStart,d=e.onAnimationEnd,f=e.animationInterpolateFn,p=e.animationMatchBy,m=e.shouldUpdatePreviousRef,h=e.children,g=e.layout,_=Vu(t,n),v=bD(_,i),y=v.startValue??null,b=yD(y,r,p??pD);return s.createElement(Bu,{animationId:_,begin:o,duration:c,isActive:a,easing:l,onAnimationEnd:d,onAnimationStart:u,key:_},e=>{var t=y==null,n=r==null?r:f(b,e,g),i=m?m(e):e>0;return v.syncStepValue(n,e,i),n==null?null:h(n,e,t)})}function kD(e,t){return PD(e)||ND(e,t)||jD(e,t)||AD()}function AD(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function jD(e,t){if(e){if(typeof e==`string`)return MD(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?MD(e,t):void 0}}function MD(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nkD(s.useState(()=>ue(`uid-`)),1)[0]);function ID(e,t){var n=FD();return t||(e?`${e}-${n}`:n)}var LD=(0,s.createContext)(void 0),RD=e=>{var t=e.id,n=e.type,r=e.children,i=ID(`recharts-${n}`,t);return s.createElement(LD.Provider,{value:i},r(i))},zD=za({name:`graphicalItems`,initialState:{cartesianItems:[],polarItems:[]},reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(V(t.payload))},prepare:H()},replaceCartesianGraphicalItem:{reducer(e,t){var n=t.payload,r=n.prev,i=n.next,a=da(e).cartesianItems.indexOf(V(r));a>-1&&(e.cartesianItems[a]=V(i))},prepare:H()},removeCartesianGraphicalItem:{reducer(e,t){var n=da(e).cartesianItems.indexOf(V(t.payload));n>-1&&e.cartesianItems.splice(n,1)},prepare:H()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(V(t.payload))},prepare:H()},removePolarGraphicalItem:{reducer(e,t){var n=da(e).polarItems.indexOf(V(t.payload));n>-1&&e.polarItems.splice(n,1)},prepare:H()},replacePolarGraphicalItem:{reducer(e,t){var n=t.payload,r=n.prev,i=n.next,a=da(e).polarItems.indexOf(V(r));a>-1&&(e.polarItems[a]=V(i))},prepare:H()}}}),BD=zD.actions,VD=BD.addCartesianGraphicalItem,HD=BD.replaceCartesianGraphicalItem,UD=BD.removeCartesianGraphicalItem;BD.addPolarGraphicalItem,BD.removePolarGraphicalItem,BD.replacePolarGraphicalItem;var WD=zD.reducer,GD=(0,s.memo)(e=>{var t=R(),n=(0,s.useRef)(null);return(0,s.useLayoutEffect)(()=>{n.current===null?t(VD(e)):n.current!==e&&t(HD({prev:n.current,next:e})),n.current=e},[t,e]),(0,s.useLayoutEffect)(()=>()=>{n.current&&=(t(UD(n.current)),null)},[t]),null}),KD=[`points`];function qD(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function JD(e){for(var t=1;t{var c=JD(JD(JD({r:3},o),p),{},{index:r,cx:e.x??void 0,cy:e.y??void 0,dataKey:a,value:e.value,payload:e.payload,points:t});return s.createElement(tO,{key:`dot-${r}`,option:n,dotProps:c,className:i})}),h={};return c&&l!=null&&(h.clipPath=`url(#clipPath-${f?``:`dots-`}${l})`),s.createElement(HC,{zIndex:d},s.createElement(D,QD({className:r},h),m))}function iO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function aO(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),os,ss],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),xO=()=>z(bO),SO=()=>z(GS);function CO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function wO(e){for(var t=1;t{var t=e.point,n=e.childIndex,r=e.mainColor,i=e.activeDot,a=e.dataKey,o=e.clipPath;if(i===!1||t.x==null||t.y==null)return null;var c=wO(wO(wO({},{index:n,dataKey:a,cx:t.x,cy:t.y,r:4,fill:r??`none`,strokeWidth:2,stroke:`#fff`,payload:t.payload,value:t.value}),h(i)),Ot(i)),l=(0,s.isValidElement)(i)?(0,s.cloneElement)(i,c):typeof i==`function`?i(c):s.createElement(VE,c);return s.createElement(D,{className:`recharts-active-dot`,clipPath:o},l)};function kO(e){var t=e.points,n=e.mainColor,r=e.activeDot,i=e.itemDataKey,a=e.clipPath,o=e.zIndex,c=o===void 0?Bf.activeDot:o,l=z(RS),u=SO();if(t==null||u==null)return null;var d=t.find(e=>u.includes(e.payload));return he(d)?null:s.createElement(HC,{zIndex:c},s.createElement(OO,{point:d,childIndex:Number(l),mainColor:n,dataKey:i,activeDot:r,clipPath:a}))}var AO=e=>{var t=e.chartData,n=R(),r=Ds();return(0,s.useEffect)(()=>r?()=>{}:(n(dw(t)),()=>{n(dw(void 0))}),[t,n,r]),null},jO={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},MO=za({name:`brush`,initialState:jO,reducers:{setBrushSettings(e,t){return t.payload==null?jO:t.payload}}});MO.actions.setBrushSettings;var NO=MO.reducer;function PO(e){return(e%180+180)%180}var FO=function(e){var t=e.width,n=e.height,r=PO(arguments.length>1&&arguments[1]!==void 0?arguments[1]:0)*Math.PI/180,i=Math.atan(n/t),a=r>i&&r{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=da(e).dots.findIndex(e=>e===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=da(e).areas.findIndex(e=>e===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(V(t.payload))},removeLine:(e,t)=>{var n=da(e).lines.findIndex(e=>e===t.payload);n!==-1&&e.lines.splice(n,1)}}}),LO=IO.actions;LO.addDot,LO.removeDot,LO.addArea,LO.removeArea,LO.addLine,LO.removeLine;var RO=IO.reducer;function zO(e,t){return WO(e)||UO(e,t)||VO(e,t)||BO()}function BO(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function VO(e,t){if(e){if(typeof e==`string`)return HO(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?HO(e,t):void 0}}function HO(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.children,n=zO((0,s.useState)(`${ue(`recharts`)}-clip`),1)[0],r=xO();if(r==null)return null;var i=r.x,a=r.y,o=r.width,c=r.height;return s.createElement(GO.Provider,{value:n},s.createElement(`defs`,null,s.createElement(`clipPath`,{id:n},s.createElement(`rect`,{x:i,y:a,height:c,width:o}))),t)};function qO(){}function JO(e){if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null?!1:Object.prototype.toString.call(e)===`[object Object]`}function YO(e,t,n){return XO(e,t,void 0,void 0,void 0,void 0,n)}function XO(e,t,n,r,i,a,o){let s=o(e,t,n,r,i,a);if(s!==void 0)return s;if(typeof e==typeof t)switch(typeof e){case`bigint`:case`string`:case`boolean`:case`symbol`:case`undefined`:return e===t;case`number`:return e===t||Object.is(e,t);case`function`:return e===t;case`object`:return ZO(e,t,a,o)}return ZO(e,t,a,o)}function ZO(e,t,n,r){if(Object.is(e,t))return!0;let i=Kt(e),a=Kt(t);if(i===`[object Arguments]`&&(i=on),a===`[object Arguments]`&&(a=on),i!==a)return!1;switch(i){case Jt:return e.toString()===t.toString();case Yt:return Dn(e.valueOf(),t.valueOf());case Xt:case $t:case Qt:return Object.is(e.valueOf(),t.valueOf());case qt:return e.source===t.source&&e.flags===t.flags;case rn:return e===t}n??=new Map;let o=n.get(e),s=n.get(t);if(o!=null&&s!=null)return o===t;n.set(e,t),n.set(t,e);try{switch(i){case en:if(e.size!==t.size)return!1;for(let[i,a]of e.entries())if(!t.has(i)||!XO(a,t.get(i),i,e,t,n,r))return!1;return!0;case tn:{if(e.size!==t.size)return!1;let i=Array.from(e.values()),a=Array.from(t.values());for(let o=0;oXO(s,i,void 0,e,t,n,r));if(c===-1)return!1;a.splice(c,1)}return!0}case nn:case ln:case un:case dn:case fn:case pn:case mn:case hn:case gn:case _n:case vn:case yn:if(xn(e)!==xn(t)||e.length!==t.length)return!1;for(let i=0;ie*i)return!1;var a=n();return e*(t-e*a/2-r)>=0&&e*(t+e*a/2-i)<=0}function rk(e,t){return $O(e,t+1)}function ik(e,t,n,r,i){for(var a=(r||[]).slice(),o=t.start,s=t.end,c=0,l=1,u=o,d=function(){var t=r?.[c];if(t===void 0)return{v:$O(r,l)};var a=c,d,f=()=>(d===void 0&&(d=n(t,a)),d),p=t.coordinate,m=c===0||nk(e,p,f,u,s);m||(c=0,u=o,l+=1),m&&(u=p+e*(f()/2+i),c+=l)},f;l<=a.length;)if(f=d(),f)return f.v;return[]}function ak(e,t,n,r,i){var a=(r||[]).slice().length;if(a===0)return[];for(var o=t.start,s=t.end,c=1;c<=a;c++){for(var l=(a-1)%c,u=o,d=!0,f=function(){var t=r[m];if(t==null)return 0;var a=m,o,c=()=>(o===void 0&&(o=n(t,a)),o),f=t.coordinate,p=m===l||nk(e,f,c,u,s);if(!p)return d=!1,1;p&&(u=f+e*(c()/2+i))},p,m=l;m(u===void 0&&(u=n(r,t)),u);if(t===o-1){var f=e*(l.coordinate+e*d()/2-c);a[t]=l=sk(sk({},l),{},{tickCoord:f>0?l.coordinate-f*e:l.coordinate})}else a[t]=l=sk(sk({},l),{},{tickCoord:l.coordinate});l.tickCoord!=null&&nk(e,l.tickCoord,d,s,c)&&(c=l.tickCoord-e*(d()/2+i),a[t]=sk(sk({},l),{},{isShow:!0}))},u=o-1;u>=0;u--)if(l(u))continue;return a}function fk(e,t,n,r,i,a){var o=(r||[]).slice(),s=o.length,c=t.start,l=t.end;if(a){var u=r[s-1];if(u!=null){var d=n(u,s-1),f=e*(u.coordinate+e*d/2-l);o[s-1]=u=sk(sk({},u),{},{tickCoord:f>0?u.coordinate-f*e:u.coordinate}),u.tickCoord!=null&&nk(e,u.tickCoord,()=>d,c,l)&&(l=u.tickCoord-e*(d/2+i),o[s-1]=sk(sk({},u),{},{isShow:!0}))}}for(var p=a?s-1:s,m=function(t){var r=o[t];if(r==null)return 1;var a=r,s,u=()=>(s===void 0&&(s=n(r,t)),s);if(t===0){var d=e*(a.coordinate-e*u()/2-c);o[t]=a=sk(sk({},a),{},{tickCoord:d<0?a.coordinate-d*e:a.coordinate})}else o[t]=a=sk(sk({},a),{},{tickCoord:a.coordinate});a.tickCoord!=null&&nk(e,a.tickCoord,u,c,l)&&(c=a.tickCoord+e*(u()/2+i),o[t]=sk(sk({},a),{},{isShow:!0}))},h=0;h{var i=typeof l==`function`?l(e.value,r):e.value;return p===`width`?ek(rT(i,{fontSize:t,letterSpacing:n}),m,d):rT(i,{fontSize:t,letterSpacing:n})[p]},g=i[0],_=i[1],v=i.length>=2&&g!=null&&_!=null?oe(_.coordinate-g.coordinate):1,y=tk(a,v,p);return c===`equidistantPreserveStart`?ik(v,y,h,i,o):c===`equidistantPreserveEnd`?ak(v,y,h,i,o):(f=c===`preserveStart`||c===`preserveStartEnd`?fk(v,y,h,i,o,c===`preserveStartEnd`):dk(v,y,h,i,o),f.filter(e=>e.isShow))}var mk=e=>{var t=e.ticks,n=e.label,r=e.labelGapWithTick,i=r===void 0?5:r,a=e.tickSize,o=a===void 0?0:a,s=e.tickMargin,c=s===void 0?0:s,l=0;if(t){Array.from(t).forEach(e=>{if(e){var t=e.getBoundingClientRect();t.width>l&&(l=t.width)}});var u=n?n.getBoundingClientRect().width:0,d=o+c,f=l+d+u+(n?i:0);return Math.round(f)}return 0},hk=e=>{var t=e.ticks,n=e.label,r=e.labelGapWithTick,i=r===void 0?5:r,a=e.tickSize,o=a===void 0?0:a,s=e.tickMargin,c=s===void 0?0:s,l=0;if(t){Array.from(t).forEach(e=>{if(e){var t=e.getBoundingClientRect();t.height>l&&(l=t.height)}});var u=n?n.getBoundingClientRect().height:0,d=o+c,f=l+d+u+(n?i:0);return Math.round(f)}return 0},gk=za({name:`renderedTicks`,initialState:{xAxis:{},yAxis:{}},reducers:{setRenderedTicks:(e,t)=>{var n=t.payload,r=n.axisType,i=n.axisId,a=n.ticks;e[r][i]=V(a)},removeRenderedTicks:(e,t)=>{var n=t.payload,r=n.axisType,i=n.axisId;delete e[r][i]}}}),_k=gk.actions,vk=_k.setRenderedTicks,yk=_k.removeRenderedTicks,bk=gk.reducer,xk=[`axisLine`,`width`,`height`,`className`,`hide`,`ticks`,`axisType`,`axisId`];function Sk(e,t){return Dk(e)||Ek(e,t)||wk(e,t)||Ck()}function Ck(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function wk(e,t){if(e){if(typeof e==`string`)return Tk(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Tk(e,t):void 0}}function Tk(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{if(r!=null&&n!=null){var e=t.map(e=>({value:e.value,coordinate:e.coordinate,offset:e.offset,index:e.index})),o=a.current;o!=null&&o.axisId===r&&o.axisType===n&&QO(o.ticks,e)||(a.current={ticks:e,axisId:r,axisType:n},i(vk({ticks:e,axisId:r,axisType:n})))}},[i,t,r,n]),(0,s.useEffect)(()=>r==null||n==null?ve:()=>{i(yk({axisId:r,axisType:n}))},[i,r,n]),null}var Hk=(0,s.forwardRef)((e,t)=>{var n=e.ticks,r=n===void 0?[]:n,i=e.tick,o=e.tickLine,c=e.stroke,l=e.tickFormatter,u=e.unit,d=e.padding,f=e.tickTextProps,p=e.orientation,g=e.mirror,_=e.x,v=e.y,y=e.width,b=e.height,x=e.tickSize,S=e.tickMargin,C=e.fontSize,w=e.letterSpacing,T=e.getTicksConfig,E=e.events,O=e.axisType,k=e.axisId,A=pk($($({},T),{},{ticks:r}),C,w),j=m(T),M=h(i),N=UT(j.textAnchor)?j.textAnchor:Rk(p,g),ee=zk(p,g),te={};typeof o==`object`&&(te=o);var re=$($({},j),{},{fill:`none`},te),ie=A.map(e=>$({entry:e},Lk(e,_,v,y,b,p,x,g,S))),ae=ie.map(e=>{var t=e.entry,n=e.line;return s.createElement(D,{className:`recharts-cartesian-axis-tick`,key:`tick-${t.value}-${t.coordinate}-${t.tickCoord}`},o&&s.createElement(`line`,Ak({},re,n,{className:a(`recharts-cartesian-axis-tick-line`,ne(o,`className`))})))}),P=ie.map((e,t)=>{var n=e.entry,r=e.tick,a=$($({},$($($($({verticalAnchor:ee},j),{},{textAnchor:N,stroke:`none`,fill:c},r),{},{index:t,payload:n,visibleTicksCount:A.length,tickFormatter:l,padding:d},f),{},{angle:f?.angle??j.angle??0})),M);return s.createElement(D,Ak({className:`recharts-cartesian-axis-tick-label`,key:`tick-label-${n.value}-${n.coordinate}-${n.tickCoord}`},At(E,n,t)),i&&s.createElement(Bk,{option:i,tickProps:a,value:`${typeof l==`function`?l(n.value,t):n.value}${u||``}`}))});return s.createElement(`g`,{className:`recharts-cartesian-axis-ticks recharts-${O}-ticks`},s.createElement(Vk,{ticks:A,axisId:k,axisType:O}),P.length>0&&s.createElement(HC,{zIndex:Bf.label},s.createElement(`g`,{className:`recharts-cartesian-axis-tick-labels recharts-${O}-tick-labels`,ref:t},P)),ae.length>0&&s.createElement(`g`,{className:`recharts-cartesian-axis-tick-lines recharts-${O}-tick-lines`},ae))}),Uk=(0,s.forwardRef)((e,t)=>{var n=e.axisLine,r=e.width,i=e.height,o=e.className,c=e.hide,l=e.ticks,u=e.axisType,d=e.axisId,f=Ok(e,xk),p=Sk((0,s.useState)(``),2),h=p[0],g=p[1],_=Sk((0,s.useState)(``),2),v=_[0],y=_[1],b=(0,s.useRef)(null);(0,s.useImperativeHandle)(t,()=>({getCalculatedWidth:()=>mk({ticks:b.current,label:e.labelRef?.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin}),getCalculatedHeight:()=>hk({ticks:b.current,label:e.labelRef?.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}));var x=(0,s.useCallback)(e=>{if(e){var t=e.getElementsByClassName(`recharts-cartesian-axis-tick-value`);b.current=t;var n=t[0];if(n){var r=window.getComputedStyle(n),i=r.fontSize,a=r.letterSpacing;(i!==h||a!==v)&&(g(i),y(a))}}},[h,v]);return c||r!=null&&r<=0||i!=null&&i<=0?null:s.createElement(HC,{zIndex:e.zIndex},s.createElement(D,{className:a(`recharts-cartesian-axis`,o)},s.createElement(Ik,{x:e.x,y:e.y,width:r,height:i,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:m(e)}),s.createElement(Hk,{ref:x,axisType:u,events:f,fontSize:h,getTicksConfig:e,height:e.height,letterSpacing:v,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:l,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:d}),s.createElement(fE,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},s.createElement(EE,{label:e.label,labelRef:e.labelRef}),e.children)))}),Wk=s.forwardRef((e,t)=>{var n=It(e,Fk);return s.createElement(Uk,Ak({},n,{ref:t}))});Wk.displayName=`CartesianAxis`;var Gk=(0,s.createContext)({grid:{stroke:`#ccc`,fill:`none`}});Gk.Provider;var Kk=()=>(0,s.useContext)(Gk),qk=[`x1`,`y1`,`x2`,`y2`,`key`],Jk=[`offset`],Yk=[`xAxisId`,`yAxisId`],Xk=[`xAxisId`,`yAxisId`];function Zk(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Qk(e){for(var t=1;t{var t=e.fill;if(!t||t===`none`)return null;var n=e.fillOpacity,r=e.x,i=e.y,a=e.width,o=e.height,c=e.ry;return s.createElement(`rect`,{x:r,y:i,ry:c,width:a,height:o,stroke:`none`,fill:t,fillOpacity:n,className:`recharts-cartesian-grid-bg`})};function oA(e){var t=e.option,n=e.lineItemProps,r;if(s.isValidElement(t))r=s.cloneElement(t,n);else if(typeof t==`function`)r=t(n);else{var i=n.x1,a=n.y1,o=n.x2,c=n.y2,l=n.key,u=m(rA(n,qk))??{};u.offset;var d=rA(u,Jk),f=Array.isArray(d.strokeDasharray)?d.strokeDasharray.join(`,`):d.strokeDasharray;r=s.createElement(`line`,nA({},d,{strokeDasharray:f,x1:i,y1:a,x2:o,y2:c,fill:`none`,key:l}))}return r}function sA(e){var t=e.x,n=e.width,r=e.horizontal,i=r===void 0||r,a=e.horizontalPoints;if(!i||!a||!a.length)return null;e.xAxisId,e.yAxisId;var o=rA(e,Yk),c=a.map((e,r)=>{var a=Qk(Qk({},o),{},{x1:t,y1:e,x2:t+n,y2:e,key:`line-${r}`,index:r});return s.createElement(oA,{key:`line-${r}`,option:i,lineItemProps:a})});return s.createElement(`g`,{className:`recharts-cartesian-grid-horizontal`},c)}function cA(e){var t=e.y,n=e.height,r=e.vertical,i=r===void 0||r,a=e.verticalPoints;if(!i||!a||!a.length)return null;e.xAxisId,e.yAxisId;var o=rA(e,Xk),c=a.map((e,r)=>{var a=Qk(Qk({},o),{},{x1:e,y1:t,x2:e,y2:t+n,key:`line-${r}`,index:r});return s.createElement(oA,{option:i,lineItemProps:a,key:`line-${r}`})});return s.createElement(`g`,{className:`recharts-cartesian-grid-vertical`},c)}function lA(e){var t=e.horizontalFill,n=e.fillOpacity,r=e.x,i=e.y,a=e.width,o=e.height,c=e.horizontalPoints,l=e.horizontal;if(!(l===void 0||l)||!t||!t.length||c==null)return null;var u=c.map(e=>Math.round(e+i-i)).sort((e,t)=>e-t);i!==u[0]&&u.unshift(0);var d=u.map((e,c)=>{var l=u[c+1],d=l==null?i+o-e:l-e;if(d<=0)return null;var f=c%t.length;return s.createElement(`rect`,{key:`react-${c}`,y:e,x:r,height:d,width:a,stroke:`none`,fill:t[f],fillOpacity:n,className:`recharts-cartesian-grid-bg`})});return s.createElement(`g`,{className:`recharts-cartesian-gridstripes-horizontal`},d)}function uA(e){var t=e.vertical,n=t===void 0||t,r=e.verticalFill,i=e.fillOpacity,a=e.x,o=e.y,c=e.width,l=e.height,u=e.verticalPoints;if(!n||!r||!r.length)return null;var d=u.map(e=>Math.round(e+a-a)).sort((e,t)=>e-t);a!==d[0]&&d.unshift(0);var f=d.map((e,t)=>{var n=d[t+1],u=n==null?a+c-e:n-e;if(u<=0)return null;var f=t%r.length;return s.createElement(`rect`,{key:`react-${t}`,x:e,y:o,width:u,height:l,stroke:`none`,fill:r[f],fillOpacity:i,className:`recharts-cartesian-grid-bg`})});return s.createElement(`g`,{className:`recharts-cartesian-gridstripes-vertical`},f)}var dA=(e,t)=>{var n=e.xAxis,r=e.width,i=e.height,a=e.offset;return Wo(pk(Qk(Qk(Qk({},Fk),n),{},{ticks:Go(n,!0),viewBox:{x:0,y:0,width:r,height:i}})),a.left,a.left+a.width,t)},fA=(e,t)=>{var n=e.yAxis,r=e.width,i=e.height,a=e.offset;return Wo(pk(Qk(Qk(Qk({},Fk),n),{},{ticks:Go(n,!0),viewBox:{x:0,y:0,width:r,height:i}})),a.top,a.top+a.height,t)},pA={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Bf.grid};function mA(e){var t=fc(),n=pc(),r=dc(),i=Qk(Qk({},It(e,pA)),{},{x:I(e.x)?e.x:r.left,y:I(e.y)?e.y:r.top,width:I(e.width)?e.width:r.width,height:I(e.height)?e.height:r.height}),a=i.xAxisId,o=i.yAxisId,c=i.x,l=i.y,u=i.width,d=i.height,f=i.syncWithTicks,p=i.horizontalValues,m=i.verticalValues,h=Ds(),g=z(e=>mx(e,`xAxis`,a,h)),_=z(e=>mx(e,`yAxis`,o,h)),v=Kk(),y={stroke:i.stroke??v.grid.stroke,strokeWidth:i.strokeWidth??v.grid.strokeWidth,strokeOpacity:i.strokeOpacity??v.grid.strokeOpacity,strokeDasharray:i.strokeDasharray??v.grid.strokeDasharray};if(!Io(u)||!Io(d)||!I(c)||!I(l))return null;var b=i.verticalCoordinatesGenerator||dA,x=i.horizontalCoordinatesGenerator||fA,S=i.horizontalPoints,C=i.verticalPoints;if((!S||!S.length)&&typeof x==`function`){var w=p&&p.length,T=x({yAxis:_?Qk(Qk({},_),{},{ticks:w?p:_.ticks}):void 0,width:t??u,height:n??d,offset:r},w?!0:f);Ns(Array.isArray(T),`horizontalCoordinatesGenerator should return Array but instead it returned [${typeof T}]`),Array.isArray(T)&&(S=T)}if((!C||!C.length)&&typeof b==`function`){var E=m&&m.length,D=b({xAxis:g?Qk(Qk({},g),{},{ticks:E?m:g.ticks}):void 0,width:t??u,height:n??d,offset:r},E?!0:f);Ns(Array.isArray(D),`verticalCoordinatesGenerator should return Array but instead it returned [${typeof D}]`),Array.isArray(D)&&(C=D)}return s.createElement(HC,{zIndex:i.zIndex},s.createElement(`g`,{className:`recharts-cartesian-grid`},s.createElement(aA,{fill:i.fill??v.grid.fill,fillOpacity:i.fillOpacity??v.grid.fillOpacity,x:i.x,y:i.y,width:i.width,height:i.height,ry:i.ry}),s.createElement(lA,nA({},i,{horizontalPoints:S})),s.createElement(uA,nA({},i,{verticalPoints:C})),s.createElement(sA,nA({},i,y,{offset:r,horizontalPoints:S,xAxis:g,yAxis:_})),s.createElement(cA,nA({},i,y,{offset:r,verticalPoints:C,xAxis:g,yAxis:_}))))}mA.displayName=`CartesianGrid`;var hA=za({name:`errorBars`,initialState:{},reducers:{addErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,i=n.errorBar;e[r]||(e[r]=[]),e[r].push(i)},replaceErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,i=n.prev,a=n.next;e[r]&&(e[r]=e[r].map(e=>e.dataKey===i.dataKey&&e.direction===i.direction?a:e))},removeErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,i=n.errorBar;e[r]&&(e[r]=e[r].filter(e=>e.dataKey!==i.dataKey||e.direction!==i.direction))}}}),gA=hA.actions;gA.addErrorBar,gA.replaceErrorBar,gA.removeErrorBar;var _A=hA.reducer;function vA(e,t){var n=z(t=>vy(t,e)),r=z(e=>by(e,t)),i=n?.allowDataOverflow??X.allowDataOverflow,a=r?.allowDataOverflow??Z.allowDataOverflow;return{needClip:i||a,needClipX:i,needClipY:a}}function yA(e){var t=e.xAxisId,n=e.yAxisId,r=e.clipPathId,i=xO(),a=vA(t,n),o=a.needClipX,c=a.needClipY,l=a.needClip,u=z(e=>Ub(e,t,!1)),d=z(e=>Wb(e,n,!1));if(!l||!i)return null;var f=i.x,p=i.y,m=i.width,h=i.height,g=o&&u?Math.min(u[0],u[1]):f-m/2,_=c&&d?Math.min(d[0],d[1]):p-h/2,v=o&&u?Math.abs(u[1]-u[0]):m*2,y=c&&d?Math.abs(d[1]-d[0]):h*2;return s.createElement(`clipPath`,{id:`clipPath-${r}`},s.createElement(`rect`,{x:g,y:_,width:v,height:y}))}function bA(e){var t=h(e),n=3,r=2;if(t!=null){var i=t.r,a=t.strokeWidth,o=Number(i),s=Number(a);return(Number.isNaN(o)||o<0)&&(o=n),(Number.isNaN(s)||s<0)&&(s=r),{r:o,strokeWidth:s}}return{r:n,strokeWidth:r}}function xA(e,t){return e.graphicalItems.cartesianItems.find(e=>e.id===t)?.xAxisId??0}function SA(e,t){return e.graphicalItems.cartesianItems.find(e=>e.id===t)?.yAxisId??0}var CA=(e,t,n)=>_x(e,`xAxis`,xA(e,t),n),wA=(e,t,n)=>gx(e,`xAxis`,xA(e,t),n),TA=(e,t,n)=>_x(e,`yAxis`,SA(e,t),n),EA=(e,t,n)=>gx(e,`yAxis`,SA(e,t),n),DA=B([G,CA,TA,wA,EA],(e,t,n,r,i)=>Uo(e,`xAxis`)?ts(t,r,!1):ts(n,i,!1)),OA=B([Oy,(e,t)=>t],(e,t)=>e.filter(e=>e.type===`area`).find(e=>e.id===t)),kA=e=>Uo(G(e),`xAxis`)?`yAxis`:`xAxis`,AA=(e,t)=>kA(e)===`yAxis`?SA(e,t):xA(e,t),jA=(e,t,n)=>$y(e,kA(e),AA(e,t),n),MA=B([G,CA,TA,wA,EA,B([OA,jA],(e,t)=>{if(e!=null&&t!=null){var n=e.stackId,r=lp(e);if(n!=null&&r!=null){var i=(t[n]?.stackedData)?.find(e=>e.key===r);if(i!=null)return i.map(e=>[e[0],e[1]])}}}),rf,DA,OA,zf,B([OA,jA],(e,t)=>{if(e!=null&&e.stackId!=null&&t!=null){var n=t[e.stackId];if(n!=null)return n.graphicalItems.map(e=>e.dataKey).filter(_e)}})],(e,t,n,r,i,a,o,s,c,l,u)=>{var d=o.chartData,f=o.dataStartIndex,p=o.dataEndIndex;if(!(c==null||e!==`horizontal`&&e!==`vertical`||t==null||n==null||r==null||i==null||r.length===0||i.length===0||s==null)){var m=c.data,h=m&&m.length>0?m:d?.slice(f,p+1);if(h!=null)return dj({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataStartIndex:f,areaSettings:c,stackedData:a,displayedData:h,chartBaseValue:l,bandSize:s,stackDataKeys:u})}}),NA=[`animationElapsedTime`,`isAnimating`,`isEntrance`,`layout`,`isRange`,`stroke`,`connectNulls`],PA=[`id`,`baseLine`];function FA(){return FA=Object.assign?Object.assign.bind():function(e){for(var t=1;te.y||0));return I(n)?l=Math.max(n,l):n&&Array.isArray(n)&&n.length&&(l=Math.max(...n.map(e=>e.y||0),l)),I(l)?s.createElement(`rect`,{x:ae.x||0));return I(n)?l=Math.max(n,l):n&&Array.isArray(n)&&n.length&&(l=Math.max(...n.map(e=>e.x||0),l)),I(l)?s.createElement(`rect`,{x:0,y:ae==null?[]:t===1?e.flatMap(e=>e.status===`removed`?[]:[e.next]):e.flatMap(e=>e.status===`matched`?[JA(JA({},e.next),{},{x:pe(e.prev.x,e.next.x,t),y:pe(e.prev.y,e.next.y,t)})]:e.status===`added`?[e.next]:[]),connectNulls:!1,dot:!1,fill:`#3182bd`,fillOpacity:.6,hide:!1,isAnimationActive:`auto`,legendType:`line`,stroke:`#3182bd`,strokeWidth:1,type:`linear`,label:!1,shape:VA,xAxisId:0,yAxisId:0,zIndex:Bf.area};function $A(e,t){return e&&e!==`none`?e:t}var ej=e=>{var t=e.dataKey,n=e.name,r=e.stroke,i=e.fill,a=e.legendType;return[{inactive:e.hide,dataKey:t,type:a,color:$A(r,i),value:rs(n,t),payload:e}]},tj=s.memo(e=>{var t=e.dataKey,n=e.data,r=e.stroke,i=e.strokeWidth,a=e.fill,o=e.name,c=e.hide,l=e.unit,u=e.formatter,d=e.tooltipType,f=e.id,p={dataDefinedOnItem:n,getPosition:ve,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:rs(o,t),hide:c,type:d,color:$A(r,a),unit:l,formatter:u,graphicalItemId:f}};return s.createElement(aD,{tooltipEntrySettings:p})});function nj(e){var t=e.clipPathId,n=e.points,r=e.props,i=r.needClip,a=r.dot,o=r.dataKey,c=m(r);return s.createElement(rO,{points:n,dot:a,className:`recharts-area-dots`,dotClassName:`recharts-area-dot`,dataKey:o,baseProps:c,needClip:i,clipPathId:t})}function rj(e){var t=e.showLabels,n=e.children,r=e.points.map(e=>{var t={x:e.x??0,y:e.y??0,width:0,lowerWidth:0,upperWidth:0,height:0};return JA(JA({},t),{},{value:e.value,payload:e.payload,parentViewBox:void 0,viewBox:t,fill:void 0})});return s.createElement(PE,{value:t?r:void 0},n)}function ij(e){var t=e.points,n=e.baseLine,r=e.needClip,i=e.clipPathId,a=e.props,o=e.animationElapsedTime,c=e.isAnimating,l=e.isEntrance,u=a.layout,d=a.type,f=a.stroke,p=a.connectNulls,m=a.isRange,h=a.shape,_=a.id,v=GA(a,HA),y=JA(JA({},g(v)),{},{id:_,points:t,connectNulls:p,type:d,baseLine:n,layout:u,stroke:f,isRange:m,animationElapsedTime:o,isAnimating:c,isEntrance:l});return s.createElement(s.Fragment,null,t?.length>1&&s.createElement(D,{clipPath:r?`url(#clipPath-${i})`:void 0},s.createElement(iD,{option:h,DefaultShape:QA.shape,shapeProps:y})),s.createElement(nj,{points:t,props:v,clipPathId:i}))}function aj(e,t,n){return I(e)?pe(I(t)?t:void 0,e,n):he(e)||F(e)?pe(I(t)?t:void 0,0,n):e}function oj(e){var t=e.needClip,n=e.clipPathId,r=e.props,i=e.previousPointsRef,a=e.previousBaselineRef,o=r.points,c=r.baseLine,l=r.isAnimationActive,u=r.animationBegin,d=r.animationDuration,f=r.animationEasing,p=r.animationMatchBy,m=r.animationInterpolateFn,h=(0,s.useMemo)(()=>({points:o,baseLine:c}),[o,c]),g=bD(h,a),_=hc(),v=DD(r.onAnimationStart,r.onAnimationEnd),y=v.isAnimating,b=v.handleAnimationStart,x=v.handleAnimationEnd,S=g.startValue;if(_==null)return null;var C=Array.isArray(c)&&Array.isArray(S)?yD(S,c,p):Array.isArray(c)?yD(null,c,p):null;return s.createElement(OD,{animationInput:h,animationIdPrefix:`recharts-area-`,items:o,previousItemsRef:i,isAnimationActive:l,animationBegin:u,animationDuration:d,animationEasing:f,onAnimationStart:b,onAnimationEnd:x,animationInterpolateFn:m,animationMatchBy:p,layout:_},(e,i,a)=>{var l=i===1?c:Array.isArray(c)?m(C,i,_):a?c:aj(c,S,i);return g.syncStepValue(l,i),s.createElement(rj,{showLabels:!y,points:o},r.children,s.createElement(ij,{points:e,baseLine:l,needClip:t,clipPathId:n,props:r,animationElapsedTime:i,isAnimating:y||i<1,isEntrance:a}),s.createElement(zE,{label:r.label}))})}function sj(e){var t=e.needClip,n=e.clipPathId,r=e.props,i=(0,s.useRef)(null),a=(0,s.useRef)();return s.createElement(oj,{needClip:t,clipPathId:n,props:r,previousPointsRef:i,previousBaselineRef:a})}var cj=class extends s.PureComponent{render(){var e=this.props,t=e.hide,n=e.dot,r=e.points,i=e.className,o=e.top,c=e.left,l=e.needClip,u=e.xAxisId,d=e.yAxisId,f=e.width,p=e.height,m=e.id,h=e.baseLine,g=e.zIndex;if(t)return null;var _=a(`recharts-area`,i),v=m,y=bA(n),b=y.r,x=y.strokeWidth,S=qE(n),C=b*2+x,w=l?`url(#clipPath-${S?``:`dots-`}${v})`:void 0;return s.createElement(HC,{zIndex:g},s.createElement(D,{className:_},l&&s.createElement(`defs`,null,s.createElement(yA,{clipPathId:v,xAxisId:u,yAxisId:d}),!S&&s.createElement(`clipPath`,{id:`clipPath-dots-${v}`},s.createElement(`rect`,{x:c-C/2,y:o-C/2,width:f+C,height:p+C}))),s.createElement(sj,{needClip:l,clipPathId:v,props:this.props})),s.createElement(kO,{points:r,mainColor:$A(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:w}),this.props.isRange&&Array.isArray(h)&&s.createElement(kO,{points:h,mainColor:$A(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:w}))}};function lj(e){var t=e.activeDot,n=e.animationBegin,r=e.animationDuration,i=e.animationEasing,a=e.connectNulls,o=e.dot,c=e.fill,l=e.fillOpacity,u=e.hide,d=e.isAnimationActive,f=e.legendType,p=e.stroke,m=e.xAxisId,h=e.yAxisId,g=GA(e,UA),_=mc(),v=cC(),y=vA(m,h).needClip,b=Ds(),x=z(t=>MA(t,e.id,b))??{},S=x.points,C=x.isRange,w=x.baseLine,T=xO();if(_!==`horizontal`&&_!==`vertical`||T==null||v!==`AreaChart`&&v!==`ComposedChart`)return null;var E=T.height,D=T.width,O=T.x,k=T.y;return!S||!S.length?null:s.createElement(cj,WA({},g,{activeDot:t,animationBegin:n,animationDuration:r,animationEasing:i,baseLine:w,connectNulls:a,dot:o,fill:c,fillOpacity:l,height:E,hide:u,layout:_,isAnimationActive:d,isRange:C,legendType:f,needClip:y,points:S,stroke:p,width:D,left:O,top:k,xAxisId:m,yAxisId:h}))}var uj=(e,t,n,r,i)=>{var a=n??t;if(I(a))return a;var o=e===`horizontal`?i:r,s=o.scale.domain();if(o.type===`number`){var c=Math.max(s[0],s[1]),l=Math.min(s[0],s[1]);return a===`dataMin`?l:a===`dataMax`||c<0?c:Math.max(Math.min(s[0],s[1]),0)}return a===`dataMin`?s[0]:a===`dataMax`?s[1]:s[0]};function dj(e){var t=e.areaSettings,n=t.connectNulls,r=t.baseValue,i=t.dataKey,a=e.stackedData,o=e.layout,s=e.chartBaseValue,c=e.xAxis,l=e.yAxis,u=e.displayedData,d=e.dataStartIndex,f=e.xAxisTicks,p=e.yAxisTicks,m=e.bandSize,h=e.stackDataKeys,g=a&&a.length,_=uj(o,s,r,c,l),v=o===`horizontal`,y=!1,b=u.map((e,t)=>{var r;if(g)r=a[d+t];else{var o=W(e,i);Array.isArray(o)?(r=o,y=!0):r=[_,o]}var s=r?.[1]??null,u=W(e,i),b=g&&u==null&&h!=null&&h.length>0&&h.every(t=>W(e,t)==null),x=s==null||g&&!n&&u==null||b;return v?{x:Yo({axis:c,ticks:f,bandSize:m,entry:e,index:t}),y:x?null:l.scale.map(s)??null,value:r,payload:e}:{x:x?null:c.scale.map(s)??null,y:Yo({axis:l,ticks:p,bandSize:m,entry:e,index:t}),value:r,payload:e}});return{points:b,baseLine:(g||y?b.map(e=>{var t=Array.isArray(e.value)?e.value[0]:null;return v?{x:e.x,y:t!=null&&e.y!=null?l.scale.map(t)??null:null,payload:e.payload}:{x:t==null?null:c.scale.map(t)??null,y:e.y,payload:e.payload}}):v?l.scale.map(_):c.scale.map(_))??0,isRange:y}}function fj(e){var t=It(e,QA),n=Ds();return s.createElement(RD,{id:t.id,type:`area`},e=>s.createElement(s.Fragment,null,s.createElement(oD,{legendPayload:ej(t)}),s.createElement(tj,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:e}),s.createElement(GD,{type:`area`,id:e,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:Jo(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:n,connectNulls:t.connectNulls}),s.createElement(lj,WA({},t,{id:e}))))}var pj=s.memo(fj,Uc);pj.displayName=`Area`;var mj=[`domain`,`range`],hj=[`domain`,`range`];function gj(e,t){if(e==null)return{};var n,r,i=_j(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{if(o!=null)return Tj(Tj({},a),{},{type:o})},[a,o]);return(0,s.useLayoutEffect)(()=>{c!=null&&(n.current===null?t(dO(c)):n.current!==c&&t(fO({prev:n.current,next:c})),n.current=c)},[c,t]),(0,s.useLayoutEffect)(()=>()=>{n.current&&=(t(pO(n.current)),null)},[t]),null}var Mj=e=>{var t=e.xAxisId,n=e.className,r=e.height,i=e.label,o=(0,s.useRef)(null),c=(0,s.useRef)(null),l=z(Ts),u=Ds(),d=R(),f=`xAxis`,p=z(e=>hx(e,f,t,u)),m=z(e=>ix(e,t)),h=z(e=>lx(e,t)),g=z(e=>_y(e,t));if((0,s.useLayoutEffect)(()=>{if(!(r!==`auto`||!m||_E(i)||(0,s.isValidElement)(i)||g==null)){var e=o.current;if(e){var n=e.getCalculatedHeight();Math.round(m.height)!==Math.round(n)&&d(vO({id:t,height:n}))}}},[p,m,d,i,t,r,g]),m==null||h==null||g==null)return null;e.dangerouslySetInnerHTML,e.ticks,e.scale;var _=kj(e,xj);g.id,g.scale;var v=kj(g,Sj);return s.createElement(Wk,Cj({},_,v,{ref:o,labelRef:c,x:h.x,y:h.y,width:m.width,height:m.height,className:a(`recharts-${f} ${f}`,n),viewBox:l,ticks:p,axisType:f,axisId:t}))},Nj={allowDataOverflow:X.allowDataOverflow,allowDecimals:X.allowDecimals,allowDuplicatedCategory:X.allowDuplicatedCategory,angle:X.angle,axisLine:Fk.axisLine,height:X.height,hide:!1,includeHidden:X.includeHidden,interval:X.interval,label:!1,minTickGap:X.minTickGap,mirror:X.mirror,orientation:X.orientation,padding:X.padding,reversed:X.reversed,scale:X.scale,tick:X.tick,tickCount:X.tickCount,tickLine:Fk.tickLine,tickSize:Fk.tickSize,type:X.type,niceTicks:X.niceTicks,xAxisId:0},Pj=s.memo(e=>{var t=It(e,Nj);return s.createElement(s.Fragment,null,s.createElement(jj,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,niceTicks:t.niceTicks}),s.createElement(Mj,t))},yj);Pj.displayName=`XAxis`;var Fj=[`type`],Ij=[`dangerouslySetInnerHTML`,`ticks`,`scale`],Lj=[`id`,`scale`];function Rj(){return Rj=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(o!=null)return Bj(Bj({},a),{},{type:o})},[o,a]);return(0,s.useLayoutEffect)(()=>{c!=null&&(n.current===null?t(mO(c)):n.current!==c&&t(hO({prev:n.current,next:c})),n.current=c)},[c,t]),(0,s.useLayoutEffect)(()=>()=>{n.current&&=(t(gO(n.current)),null)},[t]),null}function qj(e){var t=e.yAxisId,n=e.className,r=e.width,i=e.label,o=(0,s.useRef)(null),c=(0,s.useRef)(null),l=z(Ts),u=Ds(),d=R(),f=`yAxis`,p=z(e=>dx(e,t)),m=z(e=>ux(e,t)),h=z(e=>hx(e,f,t,u)),g=z(e=>yy(e,t));if((0,s.useLayoutEffect)(()=>{if(!(r!==`auto`||!p||_E(i)||(0,s.isValidElement)(i)||g==null)){var e=o.current;if(e){var n=e.getCalculatedWidth();Math.round(p.width)!==Math.round(n)&&d(_O({id:t,width:n}))}}},[h,p,d,i,t,r,g]),p==null||m==null||g==null)return null;e.dangerouslySetInnerHTML,e.ticks,e.scale;var _=Wj(e,Ij);g.id,g.scale;var v=Wj(g,Lj);return s.createElement(Wk,Rj({},_,v,{ref:o,labelRef:c,x:m.x,y:m.y,tickTextProps:r===`auto`?{width:void 0}:{width:r},width:p.width,height:p.height,className:a(`recharts-${f} ${f}`,n),viewBox:l,ticks:h,axisType:f,axisId:t}))}var Jj={allowDataOverflow:Z.allowDataOverflow,allowDecimals:Z.allowDecimals,allowDuplicatedCategory:Z.allowDuplicatedCategory,angle:Z.angle,axisLine:Fk.axisLine,hide:!1,includeHidden:Z.includeHidden,interval:Z.interval,label:!1,minTickGap:Z.minTickGap,mirror:Z.mirror,orientation:Z.orientation,padding:Z.padding,reversed:Z.reversed,scale:Z.scale,tick:Z.tick,tickCount:Z.tickCount,tickLine:Fk.tickLine,tickSize:Fk.tickSize,type:Z.type,niceTicks:Z.niceTicks,width:Z.width,yAxisId:0},Yj=s.memo(e=>{var t=It(e,Jj);return s.createElement(s.Fragment,null,s.createElement(Kj,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter,niceTicks:t.niceTicks}),s.createElement(qj,t))},yj);Yj.displayName=`YAxis`;var Xj=B([(e,t)=>t,G,op,hp,jS,NS,fC,Cs],wC);function Zj(e){return`getBBox`in e.currentTarget&&typeof e.currentTarget.getBBox==`function`}function Qj(e){var t=e.currentTarget.getBoundingClientRect(),n,r;if(Zj(e)){var i=e.currentTarget.getBBox();n=i.width>0?t.width/i.width:1,r=i.height>0?t.height/i.height:1}else{var a=e.currentTarget;n=a.offsetWidth>0?t.width/a.offsetWidth:1,r=a.offsetHeight>0?t.height/a.offsetHeight:1}var o=(e,i)=>({relativeX:Math.round((e-t.left)/n),relativeY:Math.round((i-t.top)/r)});return`touches`in e?Array.from(e.touches).map(e=>o(e.clientX,e.clientY)):o(e.clientX,e.clientY)}var $j=va(`mouseClick`),eM=Eo();eM.startListening({actionCreator:$j,effect:(e,t)=>{var n=e.payload,r=Xj(t.getState(),Qj(n));r?.activeIndex!=null&&t.dispatch(Ix({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var tM=va(`mouseMove`),nM=Eo(),rM=null,iM=null,aM=null;nM.startListening({actionCreator:tM,effect:(e,t)=>{var n=e.payload,r=t.getState().eventSettings,i=r.throttleDelay,a=r.throttledEvents,o=a===`all`||a?.includes(`mousemove`);rM!==null&&(cancelAnimationFrame(rM),rM=null),iM!==null&&(typeof i!=`number`||!o)&&(clearTimeout(iM),iM=null),aM=Qj(n);var s=()=>{var e=t.getState(),n=Sx(e,e.tooltip.settings.shared);if(!aM){rM=null,iM=null;return}if(n===`axis`){var r=Xj(e,aM);r?.activeIndex==null?t.dispatch(Px()):t.dispatch(Fx({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}rM=null,iM=null};if(!o){s();return}i===`raf`?rM=requestAnimationFrame(s):typeof i==`number`&&iM===null&&(iM=setTimeout(s,i))}});function oM(e,t){return t instanceof HTMLElement?`HTMLElement <${t.tagName} class="${t.className}">`:t===window?`global.window`:e===`children`&&typeof t==`object`&&t?`<>`:t}var sM={accessibilityLayer:!0,barCategoryGap:`10%`,barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:`none`,syncId:void 0,syncMethod:`index`,baseValue:void 0,reverseStackOrder:!1},cM=za({name:`rootProps`,initialState:sM,reducers:{updateOptions:(e,t)=>{e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=t.payload.barGap??sM.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),lM=cM.reducer,uM=cM.actions.updateOptions,dM=za({name:`polarOptions`,initialState:null,reducers:{updatePolarOptions:(e,t)=>e===null?t.payload:(e.startAngle=t.payload.startAngle,e.endAngle=t.payload.endAngle,e.cx=t.payload.cx,e.cy=t.payload.cy,e.innerRadius=t.payload.innerRadius,e.outerRadius=t.payload.outerRadius,e)}});dM.actions.updatePolarOptions;var fM=dM.reducer,pM=va(`keyDown`),mM=va(`focus`),hM=va(`blur`),gM=Eo(),_M=null,vM=null,yM=null;gM.startListening({actionCreator:pM,effect:(e,t)=>{yM=e.payload,_M!==null&&(cancelAnimationFrame(_M),_M=null);var n=t.getState().eventSettings,r=n.throttleDelay,i=n.throttledEvents,a=i===`all`||i.includes(`keydown`);vM!==null&&(typeof r!=`number`||!a)&&(clearTimeout(vM),vM=null);var o=()=>{try{var e=t.getState();if(e.rootProps.accessibilityLayer===!1)return;var n=e.tooltip.keyboardInteraction,r=yM;if(r!==`ArrowRight`&&r!==`ArrowLeft`&&r!==`Enter`)return;var i=Zx(n,yS(e),Xy(e),OS(e)),a=i==null?-1:Number(i),o=!Number.isFinite(a)||a<0,s=NS(e),c=yS(e),l=Sx(e,e.tooltip.settings.shared);if(r===`Enter`){if(o)return;var u=_C(e,l,`hover`,String(n.index));t.dispatch(Rx({active:!n.active,activeIndex:n.index,activeCoordinate:u}));return}var d=vx(e)===`left-to-right`?1:-1,f=r===`ArrowRight`?1:-1,p;if(o){var m=Xy(e),h=OS(e),g=f*d,_=e=>({active:!1,index:String(e),dataKey:void 0,graphicalItemId:void 0,coordinate:void 0});if(p=-1,g>0){for(var v=0;v=0;y--)if(Zx(_(y),c,m,h)!=null){p=y;break}if(p<0)return}else{p=a+f*d;var b=s?.length||c.length;if(b===0||p>=b||p<0)return}var x=_C(e,l,`hover`,String(p));t.dispatch(Rx({active:!0,activeIndex:p.toString(),activeCoordinate:x}))}finally{_M=null,vM=null}};if(!a){o();return}r===`raf`?_M=requestAnimationFrame(o):typeof r==`number`&&vM===null&&(o(),yM=null,vM=setTimeout(()=>{yM?o():(vM=null,_M=null)},r))}}),gM.startListening({actionCreator:mM,effect:(e,t)=>{var n=t.getState();if(n.rootProps.accessibilityLayer!==!1){var r=n.tooltip.keyboardInteraction;if(!r.active&&r.index==null){var i=`0`,a=_C(n,Sx(n,n.tooltip.settings.shared),`hover`,String(i));t.dispatch(Rx({active:!0,activeIndex:i,activeCoordinate:a}))}}}}),gM.startListening({actionCreator:hM,effect:(e,t)=>{var n=t.getState();if(n.rootProps.accessibilityLayer!==!1){var r=n.tooltip.keyboardInteraction;r.active&&t.dispatch(Rx({active:!1,activeIndex:r.index,activeCoordinate:r.coordinate}))}}});function bM(e){e.persist();var t=e.currentTarget;return new Proxy(e,{get:(e,n)=>{if(n===`currentTarget`)return t;var r=Reflect.get(e,n);return typeof r==`function`?r.bind(e):r}})}var xM=va(`externalEvent`),SM=Eo(),CM=new Map,wM=new Map,TM=new Map;SM.startListening({actionCreator:xM,effect:(e,t)=>{var n=e.payload,r=n.handler,i=n.reactEvent;if(r!=null){var a=i.type,o=bM(i);TM.set(a,{handler:r,reactEvent:o});var s=CM.get(a);s!==void 0&&(cancelAnimationFrame(s),CM.delete(a));var c=t.getState().eventSettings,l=c.throttleDelay,u=c.throttledEvents,d=u===`all`||u?.includes(a),f=wM.get(a);f!==void 0&&(typeof l!=`number`||!d)&&(clearTimeout(f),wM.delete(a));var p=()=>{var e=TM.get(a);try{if(!e)return;var n=e.handler,r=e.reactEvent,i=t.getState(),o={activeCoordinate:US(i),activeDataKey:BS(i),activeIndex:RS(i),activeLabel:zS(i),activeTooltipIndex:RS(i),isTooltipActive:WS(i)};n&&n(o,r)}finally{CM.delete(a),wM.delete(a),TM.delete(a)}};if(!d){p();return}if(l===`raf`){var m=requestAnimationFrame(p);CM.set(a,m)}else if(typeof l==`number`){if(!wM.has(a)){p();var h=setTimeout(p,l);wM.set(a,h)}}else p()}}});var EM=B([B([tS],e=>e.tooltipItemPayloads),(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(e=>e.settings.graphicalItemId===n);if(r!=null){var i=r.getPosition;if(i!=null)return i(t)}}}),DM=va(`touchMove`),OM=Eo(),kM=null,AM=null,jM=null,MM=null;OM.startListening({actionCreator:DM,effect:(e,t)=>{var n=e.payload;if(n.touches!=null&&n.touches.length!==0){MM=bM(n);var r=t.getState().eventSettings,i=r.throttleDelay,a=r.throttledEvents,o=a===`all`||a.includes(`touchmove`);kM!==null&&(cancelAnimationFrame(kM),kM=null),AM!==null&&(typeof i!=`number`||!o)&&(clearTimeout(AM),AM=null),jM=Array.from(n.touches).map(e=>Qj({clientX:e.clientX,clientY:e.clientY,currentTarget:n.currentTarget}));var s=()=>{if(MM!=null){var e=t.getState(),n=Sx(e,e.tooltip.settings.shared);if(n===`axis`){var r=jM?.[0];if(r==null){kM=null,AM=null;return}var i=Xj(e,r);i?.activeIndex!=null&&t.dispatch(Fx({activeIndex:i.activeIndex,activeDataKey:void 0,activeCoordinate:i.activeCoordinate}))}else if(n===`item`){var a=MM.touches[0];if(document.elementFromPoint==null||a==null)return;var o=document.elementFromPoint(a.clientX,a.clientY);if(!o||!o.getAttribute)return;var s=o.getAttribute(fs),c=o.getAttribute(`data-recharts-item-id`)??void 0,l=hS(e).find(e=>e.id===c);if(s==null||l==null||c==null)return;var u=l.dataKey,d=EM(e,s,c);t.dispatch(Nx({activeDataKey:u,activeIndex:s,activeCoordinate:d,activeGraphicalItemId:c}))}kM=null,AM=null}};if(!o){s();return}i===`raf`?kM=requestAnimationFrame(s):typeof i==`number`&&AM===null&&(s(),MM=null,AM=setTimeout(()=>{MM?s():(AM=null,kM=null)},i))}}});var NM={throttleDelay:`raf`,throttledEvents:[`mousemove`,`touchmove`,`pointermove`,`scroll`,`wheel`]},PM=za({name:`eventSettings`,initialState:NM,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=V(t.payload.throttledEvents))}}}),FM=PM.actions.setEventSettings,IM=PM.reducer,LM=Hr({brush:NO,cartesianAxis:yO,chartData:pw,errorBars:_A,eventSettings:IM,graphicalItems:WD,layout:Po,legend:wc,options:ow,polarAxis:WE,polarOptions:fM,referenceElements:RO,renderedTicks:bk,rootProps:lM,tooltip:zx,zIndex:VC}),RM=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`Chart`;return ka({reducer:LM,preloadedState:e,middleware:e=>e({serializableCheck:!1,immutableCheck:![`commonjs`,`es6`,`production`].includes(`es6`)}).concat([eM.middleware,nM.middleware,gM.middleware,SM.middleware,OM.middleware]),enhancers:e=>{var t=e;return typeof e==`function`&&(t=e()),t.concat(Da({type:`raf`}))},devTools:fl.devToolsEnabled&&{serialize:{replacer:oM},name:`recharts-${t}`}})};function zM(e){var t=e.preloadedState,n=e.children,r=e.reduxStoreName,i=Ds(),a=(0,s.useRef)(null);if(i)return n;a.current??=RM(t,r);var o=Xn;return s.createElement(Bc,{context:o,store:a.current},n)}function BM(e){var t=e.layout,n=e.margin,r=R(),i=Ds();return(0,s.useEffect)(()=>{i||(r(jo(t)),r(Ao(n)))},[r,i,t,n]),null}var VM=(0,s.memo)(BM,Uc);function HM(e){var t=R();return(0,s.useEffect)(()=>{t(uM(e))},[t,e]),null}var UM=(0,s.memo)(e=>{var t=R();return(0,s.useEffect)(()=>{t(FM(e))},[t,e]),null},Uc);function WM(e){var t=e.zIndex,n=e.isPanorama,r=(0,s.useRef)(null),i=R();return(0,s.useLayoutEffect)(()=>(r.current&&i(zC({zIndex:t,element:r.current,isPanorama:n})),()=>{i(BC({zIndex:t,isPanorama:n}))}),[i,t,n]),s.createElement(`g`,{tabIndex:-1,ref:r,className:`recharts-zIndex-layer_${t}`})}function GM(e){var t=e.children,n=e.isPanorama,r=z(EC);if(!r||r.length===0)return t;var i=r.filter(e=>e<0),a=r.filter(e=>e>0);return s.createElement(s.Fragment,null,i.map(e=>s.createElement(WM,{key:e,zIndex:e,isPanorama:n})),t,a.map(e=>s.createElement(WM,{key:e,zIndex:e,isPanorama:n})))}var KM=[`children`];function qM(e,t){if(e==null)return{};var n,r,i=JM(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var n=fc(),r=pc(),i=Pl();if(!Io(n)||!Io(r))return null;var a=e.children,o=e.otherAttributes,c=e.title,l=e.desc,u,d;return o!=null&&(u=typeof o.tabIndex==`number`?o.tabIndex:i?0:void 0,d=typeof o.role==`string`?o.role:i?`application`:void 0),s.createElement(S,YM({},o,{title:c,desc:l,role:d,tabIndex:u,width:n,height:r,style:XM,ref:t}),a)}),QM=e=>{var t=e.children,n=z(ks);if(!n)return null;var r=n.width,i=n.height,a=n.y,o=n.x;return s.createElement(S,{width:r,height:i,x:o,y:a},t)},$M=(0,s.forwardRef)((e,t)=>{var n=e.children,r=qM(e,KM);return Ds()?s.createElement(QM,null,s.createElement(GM,{isPanorama:!0},n)):s.createElement(ZM,YM({ref:t},r),s.createElement(GM,{isPanorama:!1},n))});function eN(e,t){return aN(e)||iN(e,t)||nN(e,t)||tN()}function tN(){throw TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function nN(e,t){if(e){if(typeof e==`string`)return rN(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?rN(e,t):void 0}}function rN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{if(n!=null){var t=n.getBoundingClientRect().width/n.offsetWidth;U(t)&&t!==i&&e(No(t))}},[n,e,i]),r}function sN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function cN(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n(ww(),null);function bN(e){if(typeof e==`number`)return e;if(typeof e==`string`){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var xN=(0,s.forwardRef)((e,t)=>{var n=(0,s.useRef)(null),r=pN((0,s.useState)({containerWidth:bN(e.style?.width),containerHeight:bN(e.style?.height)}),2),i=r[0],a=r[1],o=(0,s.useCallback)((e,t)=>{a(n=>{var r=Math.round(e),i=Math.round(t);return n.containerWidth===r&&n.containerHeight===i?n:{containerWidth:r,containerHeight:i}})},[]),c=(0,s.useCallback)(e=>{if(typeof t==`function`&&t(e),n.current!=null&&(n.current.disconnect(),n.current=null),e!=null&&typeof ResizeObserver<`u`){var r=e.getBoundingClientRect(),i=r.width,a=r.height;o(i,a);var s=new ResizeObserver(e=>{var t=e[0];if(t!=null){var n=t.contentRect,r=n.width,i=n.height;o(r,i)}});s.observe(e),n.current=s}},[t,o]);return(0,s.useEffect)(()=>()=>{n.current?.disconnect()},[o]),s.createElement(s.Fragment,null,s.createElement(vc,{width:i.containerWidth,height:i.containerHeight}),s.createElement(`div`,fN({ref:c},e)))}),SN=(0,s.forwardRef)((e,t)=>{var n=e.width,r=e.height,i=pN((0,s.useState)({containerWidth:bN(n),containerHeight:bN(r)}),2),a=i[0],o=i[1],c=(0,s.useCallback)((e,t)=>{o(n=>{var r=Math.round(e),i=Math.round(t);return n.containerWidth===r&&n.containerHeight===i?n:{containerWidth:r,containerHeight:i}})},[]),l=(0,s.useCallback)(e=>{if(typeof t==`function`&&t(e),e!=null){var n=e.getBoundingClientRect(),r=n.width,i=n.height;c(r,i)}},[t,c]);return s.createElement(s.Fragment,null,s.createElement(vc,{width:a.containerWidth,height:a.containerHeight}),s.createElement(`div`,fN({ref:l},e)))}),CN=(0,s.forwardRef)((e,t)=>{var n=e.width,r=e.height;return s.createElement(s.Fragment,null,s.createElement(vc,{width:n,height:r}),s.createElement(`div`,fN({ref:t},e)))}),wN=(0,s.forwardRef)((e,t)=>{var n=e.width,r=e.height;return typeof n==`string`||typeof r==`string`?s.createElement(SN,fN({},e,{ref:t})):typeof n==`number`&&typeof r==`number`?s.createElement(CN,fN({},e,{width:n,height:r,ref:t})):s.createElement(s.Fragment,null,s.createElement(vc,{width:n,height:r}),s.createElement(`div`,fN({ref:t},e)))});function TN(e){return e?xN:wN}var EN=(0,s.forwardRef)((e,t)=>{var n=e.children,r=e.className,i=e.height,o=e.onClick,c=e.onContextMenu,l=e.onDoubleClick,u=e.onMouseDown,d=e.onMouseEnter,f=e.onMouseLeave,p=e.onMouseMove,m=e.onMouseUp,h=e.onTouchEnd,g=e.onTouchMove,_=e.onTouchStart,v=e.style,y=e.width,b=e.responsive,x=e.dispatchTouchEvents,S=x===void 0||x,C=(0,s.useRef)(null),w=R(),T=pN((0,s.useState)(null),2),E=T[0],D=T[1],O=pN((0,s.useState)(null),2),k=O[0],A=O[1],j=oN(),M=oc(),N=M?.width>0?M.width:y,ee=M?.height>0?M.height:i,te=(0,s.useCallback)(e=>{j(e),typeof t==`function`&&t(e),D(e),A(e),e!=null&&(C.current=e)},[j,t,D,A]),ne=(0,s.useCallback)(e=>{w($j(e)),w(xM({handler:o,reactEvent:e}))},[w,o]),re=(0,s.useCallback)(e=>{w(tM(e)),w(xM({handler:d,reactEvent:e}))},[w,d]),ie=(0,s.useCallback)(e=>{w(Px()),w(xM({handler:f,reactEvent:e}))},[w,f]),ae=(0,s.useCallback)(e=>{w(tM(e)),w(xM({handler:p,reactEvent:e}))},[w,p]),P=(0,s.useCallback)(()=>{w(mM())},[w]),oe=(0,s.useCallback)(()=>{w(hM())},[w]),F=(0,s.useCallback)(e=>{w(pM(e.key))},[w]),se=(0,s.useCallback)(e=>{w(xM({handler:c,reactEvent:e}))},[w,c]),I=(0,s.useCallback)(e=>{w(xM({handler:l,reactEvent:e}))},[w,l]),ce=(0,s.useCallback)(e=>{w(xM({handler:u,reactEvent:e}))},[w,u]),le=(0,s.useCallback)(e=>{w(xM({handler:m,reactEvent:e}))},[w,m]),ue=(0,s.useCallback)(e=>{w(xM({handler:_,reactEvent:e}))},[w,_]),de=(0,s.useCallback)(e=>{S&&w(DM(e)),w(xM({handler:g,reactEvent:e}))},[w,S,g]),fe=(0,s.useCallback)(e=>{w(xM({handler:h,reactEvent:e}))},[w,h]),pe=TN(b);return s.createElement(QC.Provider,{value:E},s.createElement(Oe.Provider,{value:k},s.createElement(pe,{width:N??v?.width,height:ee??v?.height,className:a(`recharts-wrapper`,r),style:cN({position:`relative`,cursor:`default`,width:N,height:ee},v),onClick:ne,onContextMenu:se,onDoubleClick:I,onFocus:P,onBlur:oe,onKeyDown:F,onMouseDown:ce,onMouseEnter:re,onMouseLeave:ie,onMouseMove:ae,onMouseUp:le,onTouchEnd:fe,onTouchMove:de,onTouchStart:ue,ref:te},s.createElement(yN,null),n)))}),DN=[`width`,`height`,`responsive`,`children`,`className`,`style`,`compact`,`title`,`desc`];function ON(e,t){if(e==null)return{};var n,r,i=kN(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var n=e.width,r=e.height,i=e.responsive,a=e.children,o=e.className,c=e.style,l=e.compact,u=e.title,d=e.desc,f=m(ON(e,DN));return l?s.createElement(s.Fragment,null,s.createElement(vc,{width:n,height:r}),s.createElement($M,{otherAttributes:f,title:u,desc:d},a)):s.createElement(EN,{className:o,style:c,width:n,height:r,responsive:i??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},s.createElement($M,{otherAttributes:f,title:u,desc:d,ref:t},s.createElement(KO,null,a)))});function jN(){return jN=Object.assign?Object.assign.bind():function(e){for(var t=1;tp.createElement(d,{chartName:`AreaChart`,defaultTooltipEventType:`axis`,validateTooltipEventTypes:m,tooltipPayloadSearcher:f,categoricalChartProps:e,ref:t})),g=i(),_=[`var(--accent)`,`var(--muted)`,`var(--success)`,`var(--warning)`];function v(e,t,n){let r=new Date(e);return Number.isFinite(r.getTime())?new Intl.DateTimeFormat(n===`zh`?`zh-CN`:`en-US`,t?{month:`short`,day:`numeric`}:{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,hour12:!1}).format(r):``}function y({active:e,payload:t,label:n,daily:i,lang:a,models:o}){if(!e||!t?.length)return null;let s=new Map(o.map(e=>[e.id,e.label])),c=t.filter(e=>(e.value??0)>0).sort((e,t)=>t.value-e.value),l=t.reduce((e,t)=>e+(t.value??0),0);return(0,g.jsxs)(`div`,{className:`rounded-xl border border-border bg-overlay px-3 py-2 text-[11px] text-overlay-foreground shadow-overlay`,children:[(0,g.jsx)(`div`,{className:`mono text-muted`,children:v(String(n),i,a)}),(0,g.jsxs)(`div`,{className:`mt-1.5 grid gap-1`,children:[c.map(e=>(0,g.jsxs)(`div`,{className:`flex items-center justify-between gap-6`,children:[(0,g.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,g.jsx)(`span`,{className:`size-1.5 rounded-full`,style:{background:_[o.findIndex(t=>t.id===e.dataKey)%_.length]}}),s.get(e.dataKey)||e.dataKey]}),(0,g.jsx)(`span`,{className:`mono font-medium`,children:r(e.value)})]},e.dataKey)),(0,g.jsxs)(`div`,{className:`flex items-center justify-between gap-6 border-t border-separator pt-1`,children:[(0,g.jsx)(`span`,{className:`text-muted`,children:`合计`}),(0,g.jsx)(`span`,{className:`mono font-medium`,children:r(l)})]})]})]})}function b({series:e,models:n,lang:r,emptyLabel:i}){let d=(0,p.useRef)(null),f=(0,p.useMemo)(()=>n.map(e=>e.id),[n]),m=(0,p.useMemo)(()=>e.map(e=>{let t={at:e.at};for(let n of f)t[n]=Number((e.per_model[n]??0).toFixed(4));return t}),[e,f]),b=Math.max(0,...m.map(e=>f.reduce((t,n)=>t+Number(e[n]??0),0)))>0,x=(m.length>1?Date.parse(m[m.length-1].at)-Date.parse(m[0].at):0)>1728e5,S=m.map(e=>`${e.at}:${f.map(t=>Number(e[t])).join(`,`)}`).join(`|`);return(0,p.useLayoutEffect)(()=>{let e=d.current;if(!e||!b)return;let n=t.context(()=>{let n=t.utils.toArray(`.recharts-area-area`,e);t.fromTo(n,{autoAlpha:0},{autoAlpha:1,duration:.5,ease:`power2.out`,stagger:.05})},e);return()=>n.revert()},[b,S]),!e.length||!b?(0,g.jsx)(`div`,{className:`grid min-h-56 place-items-center px-6 py-12 text-center text-sm text-muted`,children:i}):(0,g.jsxs)(`div`,{ref:d,className:`min-w-0`,children:[(0,g.jsx)(`div`,{className:`h-72 w-full`,children:(0,g.jsx)(o,{width:`100%`,height:`100%`,children:(0,g.jsxs)(h,{data:m,margin:{top:8,right:8,bottom:0,left:0},children:[(0,g.jsx)(`defs`,{children:f.map((e,t)=>(0,g.jsxs)(`linearGradient`,{id:`cost-${e}`,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,g.jsx)(`stop`,{offset:`0%`,stopColor:_[t%_.length],stopOpacity:.32}),(0,g.jsx)(`stop`,{offset:`100%`,stopColor:_[t%_.length],stopOpacity:.04})]},e))}),(0,g.jsx)(s,{vertical:!1,stroke:`var(--separator)`,strokeDasharray:`3 6`}),(0,g.jsx)(u,{dataKey:`at`,tickLine:!1,axisLine:!1,minTickGap:28,tick:{fill:`var(--muted)`,fontSize:10,fontFamily:`var(--font-mono)`},tickFormatter:e=>v(e,x,r)}),(0,g.jsx)(l,{width:48,tickLine:!1,axisLine:!1,tick:{fill:`var(--muted)`,fontSize:10,fontFamily:`var(--font-mono)`},tickFormatter:e=>`¥${e>=10?Math.round(e):Number(e.toFixed(1))}`}),(0,g.jsx)(a,{cursor:{stroke:`var(--border)`,strokeDasharray:`3 3`},content:(0,g.jsx)(y,{daily:x,lang:r,models:n})}),f.map((e,t)=>(0,g.jsx)(c,{type:`monotone`,dataKey:e,stackId:`cost`,stroke:_[t%_.length],strokeWidth:1.5,fill:`url(#cost-${e})`,isAnimationActive:!1,dot:!1,activeDot:{r:3,strokeWidth:1.2}},e))]})})}),(0,g.jsx)(`div`,{className:`mt-2 flex flex-wrap items-center gap-x-4 gap-y-1 text-[10px] text-muted`,children:n.map((e,t)=>(0,g.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,g.jsx)(`span`,{className:`size-1.5 rounded-full`,style:{background:_[t%_.length]}}),e.label]},e.id))})]})}export{b as CostChart}; \ No newline at end of file diff --git a/internal/webui/static/assets/TrafficChart-BQJ2uhUR.js b/internal/webui/static/assets/TrafficChart-BQJ2uhUR.js new file mode 100644 index 00000000..6a97e8bc --- /dev/null +++ b/internal/webui/static/assets/TrafficChart-BQJ2uhUR.js @@ -0,0 +1 @@ +import{f as e,i as t,l as n,o as r,r as i,s as a,t as o}from"./index-6muxC58d.js";import{A as s,B as c,C as l,D as u,E as d,F as f,G as p,H as m,I as h,J as g,K as _,L as v,M as y,N as b,O as x,P as S,R as C,S as w,T,U as ee,V as E,W as D,X as O,Y as te,Z as ne,_ as re,a as ie,b as ae,c as oe,d as se,f as ce,g as le,h as ue,i as k,j as de,k as fe,l as pe,m as me,n as he,o as ge,p as _e,q as A,r as j,s as M,t as N,u as P,v as F,w as I,x as ve,y as ye,z as L}from"./CartesianChart-DzLjYABO.js";var R=e(n()),be=[`animationElapsedTime`,`isAnimating`,`isEntrance`,`visibleLength`,`strokeDasharray`,`connectNulls`];function z(){return z=Object.assign?Object.assign.bind():function(e){for(var t=1;te+t,0);if(!i)return B(t,e);for(var a=Math.floor(e/i),o=e%i,s=[],c=0,l=0;co){s=[...r.slice(0,c),o-l];break}}var f=s.length%2==0?[0,t]:[t];return[...Te(r,a),...s,...f].map(e=>`${e}px`).join(`, `)}function De(e,t,n){return e?Ee(n,t,`${e}`.split(/[,\s]+/gim).map(e=>parseFloat(e))):B(t,n)}function Oe(e){e.animationElapsedTime,e.isAnimating,e.isEntrance;var t=e.visibleLength,n=e.strokeDasharray,r=e.connectNulls,i=xe(e,be),a=r??!1,o;if(t!=null){var s=i.pathRef;o=De(n,Ce(s?.current??null),t)}else n!=null&&(o=String(n));return R.createElement(de,z({},i,{connectNulls:a,strokeDasharray:o}))}function ke(e){var t=(0,R.useRef)(0),n=(0,R.useRef)(0),r=(0,R.useRef)(!1),i=(0,R.useRef)(e);return i.current!==e&&(t.current=n.current,i.current=e),(0,R.useCallback)((e,i)=>{if(r.current)return null;var a=Math.min(g(t.current+e*i),i);return e>0&&i>0&&(n.current=Math.max(n.current,a),a>=i)?(r.current=!0,null):a},[])}var Ae=[`children`];function je(e,t){if(e==null)return{};var n,r,i=Me(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0});function Pe(e){var t=e.children,n=je(e,Ae);return R.createElement(Ne.Provider,{value:n},t)}var V=(e,t,n,r)=>d(e,`xAxis`,t,r),H=(e,t,n,r)=>u(e,`xAxis`,t,r),U=(e,t,n,r)=>d(e,`yAxis`,n,r),W=(e,t,n,r)=>u(e,`yAxis`,n,r),Fe=m([b,V,U,H,W],(e,t,n,r,i)=>E(e,`xAxis`)?v(t,r,!1):v(n,i,!1)),Ie=(e,t,n,r,i)=>i;function Le(e){return e.type===`line`}var Re=m([x,Ie],(e,t)=>e.filter(Le).find(e=>e.id===t)),ze=m([b,V,U,H,W,Re,Fe,s],(e,t,n,r,i,a,o,s)=>{var c=s.chartData,l=s.dataStartIndex,u=s.dataEndIndex;if(!(a==null||t==null||n==null||r==null||i==null||r.length===0||i.length===0||o==null||e!==`horizontal`&&e!==`vertical`)){var d=a.dataKey,f=a.data,p=f!=null&&f.length>0?f:c?.slice(l,u+1);if(p!=null)return it({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataKey:d,bandSize:o,displayedData:p})}}),Be=[`id`],Ve=[`type`,`layout`,`connectNulls`,`needClip`,`shape`,`strokeDasharray`],He=[`activeDot`,`animateNewValues`,`animationBegin`,`animationDuration`,`animationEasing`,`connectNulls`,`dot`,`hide`,`isAnimationActive`,`label`,`legendType`,`xAxisId`,`yAxisId`,`id`];function G(){return G=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?t/n:0}var Y={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:`ease`,animationInterpolateFn:(e,t)=>{if(e==null)return[];if(t===1)return e.flatMap(e=>e.status===`removed`?[]:[e.next]);var n=Je(e),r=[];for(var i of e)if(i.status===`matched`)r.push(J(J({},i.next),{},{x:p(i.prev.x,i.next.x,t),y:p(i.prev.y,i.next.y,t)}));else if(i.status===`added`){if(i.next.x!=null){var a=i.next.x-n;r.push(J(J({},i.next),{},{x:p(a,i.next.x,t),y:i.next.y}))}else r.push(i.next)}else if(i.status===`removed`&&i.prev.x!=null){var o=i.prev.x+n;r.push(J(J({},i.prev),{},{x:p(i.prev.x,o,t),y:i.prev.y}))}return r},animationMatchBy:le,connectNulls:!1,dot:!0,fill:`#fff`,hide:!1,isAnimationActive:`auto`,label:!1,legendType:`line`,shape:Oe,stroke:`#3182bd`,strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:fe.line,type:`linear`},Ye=e=>{var t=e.dataKey,n=e.name,r=e.stroke,i=e.legendType;return[{inactive:e.hide,dataKey:t,type:i,color:r,value:L(n,t),payload:e}]},Xe=R.memo(e=>{var t=e.dataKey,n=e.data,r=e.stroke,i=e.strokeWidth,a=e.fill,o=e.name,s=e.hide,c=e.unit,l=e.formatter,u=e.tooltipType,d=e.id,f={dataDefinedOnItem:n,getPosition:A,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:L(o,t),hide:s,type:u,color:r,unit:c,formatter:l,graphicalItemId:d}};return R.createElement(F,{tooltipEntrySettings:f})});function Ze(e){var t=e.clipPathId,n=e.points,r=e.props,i=r.dot,a=r.dataKey,o=r.needClip;r.id;var s=K(r,Be),c=ne(s);return R.createElement(se,{points:n,dot:i,className:`recharts-line-dots`,dotClassName:`recharts-line-dot`,dataKey:a,baseProps:c,needClip:o,clipPathId:t})}function Qe(e){var t=e.showLabels,n=e.children,r=e.points,i=(0,R.useMemo)(()=>r?.map(e=>{var t={x:e.x??0,y:e.y??0,width:0,lowerWidth:0,upperWidth:0,height:0};return J(J({},t),{},{value:e.value,payload:e.payload,viewBox:t,parentViewBox:void 0,fill:void 0})}),[r]);return R.createElement(ve,{value:t?i:void 0},n)}function $e(e){var t=e.clipPathId,n=e.pathRef,r=e.points,i=e.props,a=e.animationElapsedTime,o=e.isAnimating,s=e.isEntrance,c=e.visibleLength,l=i.type,u=i.layout,d=i.connectNulls,f=i.needClip,p=i.shape,m=i.strokeDasharray,h=K(i,Ve),g=J(J({},O(h)),{},{fill:`none`,className:`recharts-line-curve`,clipPath:f?`url(#clipPath-${t})`:void 0,points:r,type:l,layout:u,connectNulls:d,strokeDasharray:m??i.strokeDasharray,pathRef:n,animationElapsedTime:a,isAnimating:o,isEntrance:i.animateNewValues?s:!1,visibleLength:c});return R.createElement(R.Fragment,null,r?.length>1&&R.createElement(ye,{option:p,DefaultShape:Y.shape,shapeProps:g}),R.createElement(Ze,{points:r,clipPathId:t,props:i}))}function et(e){var t=e.clipPathId,n=e.props,r=e.pathRef,i=e.previousPointsRef,a=n.points,o=n.isAnimationActive,s=n.animationBegin,c=n.animationDuration,l=n.animationEasing,u=n.animationMatchBy,d=n.animationInterpolateFn,f=n.layout,p=qe(r.current),m=ue(n.onAnimationStart,n.onAnimationEnd),h=m.isAnimating,g=m.handleAnimationStart,_=m.handleAnimationEnd,v=!h,y=ke(a),b=(0,R.useCallback)(e=>e>0&&p>0,[p]);return R.createElement(Qe,{points:a,showLabels:v},n.children,R.createElement(me,{animationInput:a,animationIdPrefix:`recharts-line-`,items:a,previousItemsRef:i,isAnimationActive:o,animationBegin:s,animationDuration:c,animationEasing:l,onAnimationStart:g,onAnimationEnd:_,animationInterpolateFn:d,animationMatchBy:u,shouldUpdatePreviousRef:b,layout:f},(e,i,a)=>{var o=h||i<1,s=o?y(i,p):null;return R.createElement($e,{props:n,points:e,clipPathId:t,pathRef:r,animationElapsedTime:i,isAnimating:o,isEntrance:a,visibleLength:s})}),R.createElement(w,{label:n.label}))}function X(e){var t=e.clipPathId,n=e.props,r=(0,R.useRef)(null),i=(0,R.useRef)(null);return R.createElement(et,{props:n,clipPathId:t,previousPointsRef:r,pathRef:i})}var tt=(e,t)=>({x:e.x??void 0,y:e.y??void 0,value:e.value,errorVal:c(e.payload,t)}),nt=class extends R.Component{render(){var e=this.props,t=e.hide,n=e.dot,r=e.points,i=e.className,o=e.xAxisId,s=e.yAxisId,c=e.top,l=e.left,u=e.width,d=e.height,f=e.id,p=e.needClip,m=e.zIndex;if(t)return null;var h=a(`recharts-line`,i),g=f,_=ie(n),v=_.r,y=_.strokeWidth,b=ae(n),x=v*2+y,S=p?`url(#clipPath-${b?``:`dots-`}${g})`:void 0;return R.createElement(T,{zIndex:m},R.createElement(te,{className:h},p&&R.createElement(`defs`,null,R.createElement(ge,{clipPathId:g,xAxisId:o,yAxisId:s}),!b&&R.createElement(`clipPath`,{id:`clipPath-dots-${g}`},R.createElement(`rect`,{x:l-x/2,y:c-x/2,width:u+x,height:d+x}))),R.createElement(Pe,{xAxisId:o,yAxisId:s,data:r,dataPointFormatter:tt,errorBarOffset:0},R.createElement(X,{props:this.props,clipPathId:g}))),R.createElement(pe,{activeDot:this.props.activeDot,points:r,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:S}))}};function rt(e){var t=D(e,Y),n=t.activeDot,r=t.animateNewValues,i=t.animationBegin,a=t.animationDuration,o=t.animationEasing,s=t.connectNulls,c=t.dot,l=t.hide,u=t.isAnimationActive,d=t.label,f=t.legendType,p=t.xAxisId,m=t.yAxisId,g=t.id,_=K(t,He),v=M(p,m).needClip,y=P(),b=S(),x=h(),C=ee(e=>ze(e,p,m,x,g));if(b!==`horizontal`&&b!==`vertical`||C==null||y==null)return null;var w=y.height,T=y.width,E=y.x,O=y.y;return R.createElement(nt,G({},_,{id:g,connectNulls:s,dot:c,activeDot:n,animateNewValues:r,animationBegin:i,animationDuration:a,animationEasing:o,isAnimationActive:u,hide:l,label:d,legendType:f,xAxisId:p,yAxisId:m,points:C,layout:b,height:w,width:T,left:E,top:O,needClip:v}))}function it(e){var t=e.layout,n=e.xAxis,r=e.yAxis,i=e.xAxisTicks,a=e.yAxisTicks,o=e.dataKey,s=e.bandSize;return e.displayedData.map((e,l)=>{var u=c(e,o);if(t===`horizontal`)return{x:C({axis:n,ticks:i,bandSize:s,entry:e,index:l}),y:(_(u)?null:r.scale.map(u))??null,value:u,payload:e};var d=_(u)?null:n.scale.map(u),f=C({axis:r,ticks:a,bandSize:s,entry:e,index:l});return d==null||f==null?null:{x:d,y:f,value:u,payload:e}}).filter(Boolean)}function at(e){var t=D(e,Y),n=h();return R.createElement(_e,{id:t.id,type:`line`},e=>R.createElement(R.Fragment,null,R.createElement(re,{legendPayload:Ye(t)}),R.createElement(Xe,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:e}),R.createElement(ce,{type:`line`,id:e,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),R.createElement(rt,G({},t,{id:e}))))}var Z=R.memo(at,y);Z.displayName=`Line`;var ot=[`axis`],st=(0,R.forwardRef)((e,t)=>R.createElement(N,{chartName:`ComposedChart`,defaultTooltipEventType:`axis`,validateTooltipEventTypes:ot,tooltipPayloadSearcher:I,categoricalChartProps:e,ref:t})),Q=r();function $(e,t,n){let r=new Date(e);return Number.isFinite(r.getTime())?new Intl.DateTimeFormat(n===`zh`?`zh-CN`:`en-US`,t?{month:`short`,day:`numeric`}:{hour:`2-digit`,minute:`2-digit`,hour12:!1}).format(r):``}function ct(e){if(e<=1)return 1;let t=10**Math.floor(Math.log10(e)),n=e/t;return(n<=1?1:n<=2?2:n<=5?5:10)*t}function lt({active:e,payload:t,daily:n,lang:r,okLabel:i,errorLabel:a}){if(!e||!t?.[0])return null;let o=t[0].payload;return(0,Q.jsxs)(`div`,{className:`rounded-xl border border-border bg-overlay px-3 py-2 text-[11px] text-overlay-foreground shadow-overlay`,children:[(0,Q.jsx)(`div`,{className:`mono text-muted`,children:$(o.at,n,r)}),(0,Q.jsxs)(`div`,{className:`mt-1.5 grid gap-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-6`,children:[(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Q.jsx)(`span`,{className:`size-1.5 rounded-full bg-success`}),i]}),(0,Q.jsx)(`span`,{className:`mono font-medium`,children:o.okCount})]}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-6`,children:[(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Q.jsx)(`span`,{className:`size-1.5 rounded-full bg-danger`}),a]}),(0,Q.jsx)(`span`,{className:`mono font-medium`,children:o.errorCount})]}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-6 border-t border-separator pt-1`,children:[(0,Q.jsx)(`span`,{className:`text-muted`,children:`total`}),(0,Q.jsx)(`span`,{className:`mono font-medium`,children:o.requests})]})]})]})}function ut({series:e,lang:n,emptyLabel:r,okLabel:a,errorLabel:s}){let c=(0,R.useRef)(null),u=(0,R.useMemo)(()=>e.map(e=>{let t=Math.max(0,e.ok??e.requests-e.error),n=Math.min(Math.max(0,e.requests-t),Math.max(0,e.requests));return{...e,okCount:t,errorCount:n}}),[e]),d=u[0],p=u[u.length-1],m=(d&&p?Date.parse(p.at)-Date.parse(d.at):0)>1728e5,h=Math.max(0,...u.map(e=>e.requests)),g=ct(h),_=u.some(e=>e.requests>0),v=u.map(e=>`${e.at}:${e.requests}:${e.error}`).join(`|`);return(0,R.useLayoutEffect)(()=>{let e=c.current;if(!e||!_)return;let n=!1,r=null,i=t.context(()=>{let i=t.matchMedia(),a=()=>{let n=t.utils.toArray(`.recharts-area-area`,e),r=t.utils.toArray(`.recharts-line-curve`,e);return!n.length&&!r.length?!1:(i.add(`(prefers-reduced-motion: reduce)`,()=>{t.set(r,{clearProps:`strokeDashoffset,strokeDasharray`}),t.set(n,{clearProps:`autoAlpha`})}),i.add(`(prefers-reduced-motion: no-preference)`,()=>{t.fromTo(n,{autoAlpha:0},{autoAlpha:1,duration:.45,ease:`power2.out`,stagger:.05}),r.forEach((e,n)=>{let r=e.getTotalLength();t.fromTo(e,{strokeDasharray:r,strokeDashoffset:r},{strokeDashoffset:0,duration:.7,delay:n*.05,ease:`power2.out`})})}),!0)};if(a()){n=!0;return}r=new MutationObserver(()=>{n||a()&&(n=!0,r?.disconnect())}),r.observe(e,{childList:!0,subtree:!0})},e);return()=>{r?.disconnect(),i.revert()}},[_,v]),!e.length||!_?(0,Q.jsx)(o,{emptyLabel:r}):(0,Q.jsxs)(`div`,{ref:c,className:`min-w-0`,children:[(0,Q.jsx)(`div`,{className:`h-72 w-full`,children:(0,Q.jsx)(f,{width:`100%`,height:`100%`,children:(0,Q.jsxs)(st,{data:u,margin:{top:8,right:8,bottom:0,left:0},children:[(0,Q.jsxs)(`defs`,{children:[(0,Q.jsxs)(`linearGradient`,{id:`traffic-ok`,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,Q.jsx)(`stop`,{offset:`0%`,stopColor:`var(--success)`,stopOpacity:.28}),(0,Q.jsx)(`stop`,{offset:`100%`,stopColor:`var(--success)`,stopOpacity:.02})]}),(0,Q.jsxs)(`linearGradient`,{id:`traffic-error`,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,Q.jsx)(`stop`,{offset:`0%`,stopColor:`var(--danger)`,stopOpacity:.22}),(0,Q.jsx)(`stop`,{offset:`100%`,stopColor:`var(--danger)`,stopOpacity:.02})]})]}),(0,Q.jsx)(oe,{vertical:!1,stroke:`var(--separator)`,strokeDasharray:`3 6`}),(0,Q.jsx)(j,{dataKey:`at`,tickLine:!1,axisLine:!1,minTickGap:28,tick:{fill:`var(--muted)`,fontSize:10,fontFamily:`var(--font-mono)`},tickFormatter:e=>$(e,m,n)}),(0,Q.jsx)(he,{width:36,domain:[0,g],tickLine:!1,axisLine:!1,allowDecimals:!1,tick:{fill:`var(--muted)`,fontSize:10,fontFamily:`var(--font-mono)`},tickFormatter:e=>i(e)}),(0,Q.jsx)(l,{cursor:{stroke:`var(--border)`,strokeDasharray:`3 3`},content:(0,Q.jsx)(lt,{daily:m,lang:n,okLabel:a,errorLabel:s})}),(0,Q.jsx)(k,{type:`monotone`,dataKey:`okCount`,stroke:`none`,fill:`url(#traffic-ok)`,isAnimationActive:!1,activeDot:!1,dot:!1,className:`traffic-ok-area`}),(0,Q.jsx)(k,{type:`monotone`,dataKey:`errorCount`,stroke:`none`,fill:`url(#traffic-error)`,isAnimationActive:!1,activeDot:!1,dot:!1,className:`traffic-error-area`}),(0,Q.jsx)(Z,{type:`monotone`,dataKey:`okCount`,stroke:`var(--success)`,strokeWidth:1.75,dot:!1,isAnimationActive:!1,activeDot:{r:4,fill:`var(--surface)`,stroke:`var(--success)`,strokeWidth:1.5},className:`traffic-ok-line`}),(0,Q.jsx)(Z,{type:`monotone`,dataKey:`errorCount`,stroke:`var(--danger)`,strokeWidth:1.25,strokeOpacity:.7,dot:!1,isAnimationActive:!1,activeDot:{r:4,fill:`var(--surface)`,stroke:`var(--danger)`,strokeWidth:1.5},className:`traffic-error-line`})]})})}),(0,Q.jsxs)(`div`,{className:`mt-2 flex min-h-5 items-center justify-between gap-3 text-[10px] text-muted`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Q.jsx)(`span`,{className:`size-1.5 rounded-full bg-success`}),a]}),(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Q.jsx)(`span`,{className:`size-1.5 rounded-full bg-danger`}),s]})]}),(0,Q.jsxs)(`span`,{className:`mono`,children:[i(h),` peak`]})]})]})}export{ut as TrafficChart}; \ No newline at end of file diff --git a/internal/webui/static/assets/TrafficChart-CqvdSilQ.js b/internal/webui/static/assets/TrafficChart-CqvdSilQ.js deleted file mode 100644 index fc199f74..00000000 --- a/internal/webui/static/assets/TrafficChart-CqvdSilQ.js +++ /dev/null @@ -1,53 +0,0 @@ -import{a as e,c as t,d as n,i as r,l as i,n as a,o,r as s,s as c,t as l,u}from"./index-DpTCDqhM.js";var d=`dangerouslySetInnerHTML.onCopy.onCopyCapture.onCut.onCutCapture.onPaste.onPasteCapture.onCompositionEnd.onCompositionEndCapture.onCompositionStart.onCompositionStartCapture.onCompositionUpdate.onCompositionUpdateCapture.onFocus.onFocusCapture.onBlur.onBlurCapture.onChange.onChangeCapture.onBeforeInput.onBeforeInputCapture.onInput.onInputCapture.onReset.onResetCapture.onSubmit.onSubmitCapture.onInvalid.onInvalidCapture.onLoad.onLoadCapture.onError.onErrorCapture.onKeyDown.onKeyDownCapture.onKeyPress.onKeyPressCapture.onKeyUp.onKeyUpCapture.onAbort.onAbortCapture.onCanPlay.onCanPlayCapture.onCanPlayThrough.onCanPlayThroughCapture.onDurationChange.onDurationChangeCapture.onEmptied.onEmptiedCapture.onEncrypted.onEncryptedCapture.onEnded.onEndedCapture.onLoadedData.onLoadedDataCapture.onLoadedMetadata.onLoadedMetadataCapture.onLoadStart.onLoadStartCapture.onPause.onPauseCapture.onPlay.onPlayCapture.onPlaying.onPlayingCapture.onProgress.onProgressCapture.onRateChange.onRateChangeCapture.onSeeked.onSeekedCapture.onSeeking.onSeekingCapture.onStalled.onStalledCapture.onSuspend.onSuspendCapture.onTimeUpdate.onTimeUpdateCapture.onVolumeChange.onVolumeChangeCapture.onWaiting.onWaitingCapture.onAuxClick.onAuxClickCapture.onClick.onClickCapture.onContextMenu.onContextMenuCapture.onDoubleClick.onDoubleClickCapture.onDrag.onDragCapture.onDragEnd.onDragEndCapture.onDragEnter.onDragEnterCapture.onDragExit.onDragExitCapture.onDragLeave.onDragLeaveCapture.onDragOver.onDragOverCapture.onDragStart.onDragStartCapture.onDrop.onDropCapture.onMouseDown.onMouseDownCapture.onMouseEnter.onMouseLeave.onMouseMove.onMouseMoveCapture.onMouseOut.onMouseOutCapture.onMouseOver.onMouseOverCapture.onMouseUp.onMouseUpCapture.onSelect.onSelectCapture.onTouchCancel.onTouchCancelCapture.onTouchEnd.onTouchEndCapture.onTouchMove.onTouchMoveCapture.onTouchStart.onTouchStartCapture.onPointerDown.onPointerDownCapture.onPointerMove.onPointerMoveCapture.onPointerUp.onPointerUpCapture.onPointerCancel.onPointerCancelCapture.onPointerEnter.onPointerEnterCapture.onPointerLeave.onPointerLeaveCapture.onPointerOver.onPointerOverCapture.onPointerOut.onPointerOutCapture.onGotPointerCapture.onGotPointerCaptureCapture.onLostPointerCapture.onLostPointerCaptureCapture.onScroll.onScrollCapture.onWheel.onWheelCapture.onAnimationStart.onAnimationStartCapture.onAnimationEnd.onAnimationEndCapture.onAnimationIteration.onAnimationIterationCapture.onTransitionEnd.onTransitionEndCapture`.split(`.`);function f(e){return typeof e==`string`&&d.includes(e)}var p=n(t()),m=new Set(`aria-activedescendant.aria-atomic.aria-autocomplete.aria-busy.aria-checked.aria-colcount.aria-colindex.aria-colspan.aria-controls.aria-current.aria-describedby.aria-details.aria-disabled.aria-errormessage.aria-expanded.aria-flowto.aria-haspopup.aria-hidden.aria-invalid.aria-keyshortcuts.aria-label.aria-labelledby.aria-level.aria-live.aria-modal.aria-multiline.aria-multiselectable.aria-orientation.aria-owns.aria-placeholder.aria-posinset.aria-pressed.aria-readonly.aria-relevant.aria-required.aria-roledescription.aria-rowcount.aria-rowindex.aria-rowspan.aria-selected.aria-setsize.aria-sort.aria-valuemax.aria-valuemin.aria-valuenow.aria-valuetext.className.color.height.id.lang.max.media.method.min.name.style.target.width.role.tabIndex.accentHeight.accumulate.additive.alignmentBaseline.allowReorder.alphabetic.amplitude.arabicForm.ascent.attributeName.attributeType.autoReverse.azimuth.baseFrequency.baselineShift.baseProfile.bbox.begin.bias.by.calcMode.capHeight.clip.clipPath.clipPathUnits.clipRule.colorInterpolation.colorInterpolationFilters.colorProfile.colorRendering.contentScriptType.contentStyleType.cursor.cx.cy.d.decelerate.descent.diffuseConstant.direction.display.divisor.dominantBaseline.dur.dx.dy.edgeMode.elevation.enableBackground.end.exponent.externalResourcesRequired.fill.fillOpacity.fillRule.filter.filterRes.filterUnits.floodColor.floodOpacity.focusable.fontFamily.fontSize.fontSizeAdjust.fontStretch.fontStyle.fontVariant.fontWeight.format.from.fx.fy.g1.g2.glyphName.glyphOrientationHorizontal.glyphOrientationVertical.glyphRef.gradientTransform.gradientUnits.hanging.horizAdvX.horizOriginX.href.ideographic.imageRendering.in2.in.intercept.k1.k2.k3.k4.k.kernelMatrix.kernelUnitLength.kerning.keyPoints.keySplines.keyTimes.lengthAdjust.letterSpacing.lightingColor.limitingConeAngle.local.markerEnd.markerHeight.markerMid.markerStart.markerUnits.markerWidth.mask.maskContentUnits.maskUnits.mathematical.mode.numOctaves.offset.opacity.operator.order.orient.orientation.origin.overflow.overlinePosition.overlineThickness.paintOrder.panose1.pathLength.patternContentUnits.patternTransform.patternUnits.pointerEvents.pointsAtX.pointsAtY.pointsAtZ.preserveAlpha.preserveAspectRatio.primitiveUnits.r.radius.refX.refY.renderingIntent.repeatCount.repeatDur.requiredExtensions.requiredFeatures.restart.result.rotate.rx.ry.seed.shapeRendering.slope.spacing.specularConstant.specularExponent.speed.spreadMethod.startOffset.stdDeviation.stemh.stemv.stitchTiles.stopColor.stopOpacity.strikethroughPosition.strikethroughThickness.string.stroke.strokeDasharray.strokeDashoffset.strokeLinecap.strokeLinejoin.strokeMiterlimit.strokeOpacity.strokeWidth.surfaceScale.systemLanguage.tableValues.targetX.targetY.textAnchor.textDecoration.textLength.textRendering.to.transform.u1.u2.underlinePosition.underlineThickness.unicode.unicodeBidi.unicodeRange.unitsPerEm.vAlphabetic.values.vectorEffect.version.vertAdvY.vertOriginX.vertOriginY.vHanging.vIdeographic.viewTarget.visibility.vMathematical.widths.wordSpacing.writingMode.x1.x2.x.xChannelSelector.xHeight.xlinkActuate.xlinkArcrole.xlinkHref.xlinkRole.xlinkShow.xlinkTitle.xlinkType.xmlBase.xmlLang.xmlns.xmlnsXlink.xmlSpace.y1.y2.y.yChannelSelector.z.zoomAndPan.ref.key.angle`.split(`.`));function h(e){return typeof e==`string`&&m.has(e)}function g(e){return typeof e==`string`&&e.startsWith(`data-`)}function _(e){if(typeof e!=`object`||!e)return{};var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(h(n)||g(n))&&(t[n]=e[n]);return t}function v(e){if(e==null)return null;if((0,p.isValidElement)(e)&&typeof e.props==`object`&&e.props!==null){var t=e.props;return _(t)}return typeof e==`object`&&!Array.isArray(e)?_(e):null}function y(e){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(h(n)||g(n)||f(n))&&(t[n]=e[n]);return t}function b(e){return e==null?null:(0,p.isValidElement)(e)?y(e.props):typeof e==`object`&&!Array.isArray(e)?y(e):null}var x=[`children`,`width`,`height`,`viewBox`,`className`,`style`,`title`,`desc`];function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=e.children,r=e.width,i=e.height,a=e.viewBox,s=e.className,c=e.style,l=e.title,u=e.desc,d=C(e,x),f=a||{width:r,height:i,x:0,y:0},m=o(`recharts-surface`,s);return p.createElement(`svg`,S({},y(d),{className:m,width:r,height:i,style:c,viewBox:`${f.x} ${f.y} ${f.width} ${f.height}`,ref:t}),p.createElement(`title`,null,l),p.createElement(`desc`,null,u),n)}),E=[`children`,`className`];function D(){return D=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=e.children,r=e.className,i=O(e,E),a=o(`recharts-layer`,r);return p.createElement(`g`,D({className:a},y(i),{ref:t}),n)});function j(e){return e===`__proto__`}var M=/\.|(\[(?:[^[\]]*|(["'])(?:(?!\2)[^\\]|\\.)*?\2)\])/;function N(e){switch(typeof e){case`number`:case`symbol`:return!1;case`string`:return e===``||e.startsWith(`.`)||e.endsWith(`.`)?!1:M.test(e);default:return!1}}function ee(e){return typeof e==`string`||typeof e==`symbol`?e:Object.is(e?.valueOf?.(),-0)?`-0`:String(e)}function te(e){return typeof e==`symbol`||e instanceof Symbol}function ne(e){return e==null?``:re(e)}function re(e){if(typeof e==`string`)return e;if(Array.isArray(e))return e.map(re).join(`,`);if(te(e))return e.toString();let t=e+``;return t===`0`&&Object.is(Number(e),-0)?`-0`:t}function ie(e){if(Array.isArray(e))return e.map(ee);if(typeof e==`symbol`)return[e];e=ne(e);let t=[],n=e.length;if(n===0)return t;let r=0,i=``,a=``,o=!1,s=!1,c=/^-?\d+(?:\.\d+)?$/;for(e.charCodeAt(0)===46&&t.push(``);r1&&arguments[1]!==void 0?arguments[1]:se),n=Math.round(e*t)/t;return Object.is(n,-0)?0:n}function P(e){var t=[...arguments].slice(1);return e.reduce((e,n,r)=>{var i=t[r-1];return typeof i==`string`?e+i+n:i===void 0?e+n:e+ce(i)+n},``)}var le=e=>e===0?0:e>0?1:-1,ue=e=>typeof e==`number`&&e!=+e,de=e=>typeof e==`string`&&e.length>1&&e.indexOf(`%`)===e.length-1,F=e=>(typeof e==`number`||e instanceof Number)&&!ue(e),fe=e=>F(e)||typeof e==`string`,pe=0,me=e=>{var t=++pe;return`${e||``}${t}`},he=function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0&&arguments[3];if(!F(e)&&typeof e!=`string`)return n;var i;if(de(e)){if(t==null)return n;var a=e.indexOf(`%`);i=t*parseFloat(e.slice(0,a))/100}else i=+e;return ue(i)&&(i=n),r&&t!=null&&i>t&&(i=t),i},ge=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;re&&(typeof t==`function`?t(e):ae(e,t))===n)}var I=e=>e==null,ye=e=>I(e)?e:`${e.charAt(0).toUpperCase()}${e.slice(1)}`;function be(e){return e!=null}function xe(){}function Se(e){if(e)return{x:e.x,y:e.y,upperWidth:`upperWidth`in e?e.upperWidth:e.width,lowerWidth:`lowerWidth`in e?e.lowerWidth:e.width,width:e.width,height:e.height}}function Ce(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function we(e){for(var t=1;t{var t=e.viewBox,n=e.position,r=e.offset,i=r===void 0?0:r,a=e.parentViewBox,o=e.clamp,s=Se(t),c=s.x,l=s.y,u=s.height,d=s.upperWidth,f=s.lowerWidth,p=c,m=c+(d-f)/2,h=(p+m)/2,g=(d+f)/2,_=p+d/2,v=u>=0?1:-1,y=v*i,b=v>0?`end`:`start`,x=v>0?`start`:`end`,S=d>=0?1:-1,C=S*i,w=S>0?`end`:`start`,T=S>0?`start`:`end`,E=a;if(n===`top`){var D={x:p+d/2,y:l-y,horizontalAnchor:`middle`,verticalAnchor:b};return o&&E&&(D.height=Math.max(l-E.y,0),D.width=d),D}if(n===`bottom`){var O={x:m+f/2,y:l+u+y,horizontalAnchor:`middle`,verticalAnchor:x};return o&&E&&(O.height=Math.max(E.y+E.height-(l+u),0),O.width=f),O}if(n===`left`){var k={x:h-C,y:l+u/2,horizontalAnchor:w,verticalAnchor:`middle`};return o&&E&&(k.width=Math.max(k.x-E.x,0),k.height=u),k}if(n===`right`){var A={x:h+g+C,y:l+u/2,horizontalAnchor:T,verticalAnchor:`middle`};return o&&E&&(A.width=Math.max(E.x+E.width-A.x,0),A.height=u),A}var j=o&&E?{width:g,height:u}:{};return n===`insideLeft`?we({x:h+C,y:l+u/2,horizontalAnchor:T,verticalAnchor:`middle`},j):n===`insideRight`?we({x:h+g-C,y:l+u/2,horizontalAnchor:w,verticalAnchor:`middle`},j):n===`insideTop`?we({x:p+d/2,y:l+y,horizontalAnchor:`middle`,verticalAnchor:x},j):n===`insideBottom`?we({x:m+f/2,y:l+u-y,horizontalAnchor:`middle`,verticalAnchor:b},j):n===`insideTopLeft`?we({x:p+C,y:l+y,horizontalAnchor:T,verticalAnchor:x},j):n===`insideTopRight`?we({x:p+d-C,y:l+y,horizontalAnchor:w,verticalAnchor:x},j):n===`insideBottomLeft`?we({x:m+C,y:l+u-y,horizontalAnchor:T,verticalAnchor:b},j):n===`insideBottomRight`?we({x:m+f-C,y:l+u-y,horizontalAnchor:w,verticalAnchor:b},j):n&&typeof n==`object`&&(F(n.x)||de(n.x))&&(F(n.y)||de(n.y))?we({x:c+he(n.x,g),y:l+he(n.y,u),horizontalAnchor:`end`,verticalAnchor:`end`},j):we({x:_,y:l+u/2,horizontalAnchor:`middle`,verticalAnchor:`middle`},j)},ke=[`top`,`left`,`right`,`bottom`];function Ae(e){return e==null?!1:typeof e==`object`||ke.includes(e)}var je=(0,p.createContext)(null);function L(e){return function(){return e}}var Me=Math.PI,Ne=2*Me,Pe=1e-6,Fe=Ne-Pe;function Ie(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw Error(`invalid digits: ${e}`);if(t>15)return Ie;let n=10**t;return function(e){this._+=e[0];for(let t=1,r=e.length;tPe){if(!(Math.abs(u*s-c*l)>Pe)||!i)this._append`L${this._x1=e},${this._y1=t}`;else{let f=n-a,p=r-o,m=s*s+c*c,h=f*f+p*p,g=Math.sqrt(m),_=Math.sqrt(d),v=i*Math.tan((Me-Math.acos((m+d-h)/(2*g*_)))/2),y=v/_,b=v/g;Math.abs(y-1)>Pe&&this._append`L${e+y*l},${t+y*u}`,this._append`A${i},${i},0,0,${+(u*f>l*p)},${this._x1=e+b*s},${this._y1=t+b*c}`}}}arc(e,t,n,r,i,a){if(e=+e,t=+t,n=+n,a=!!a,n<0)throw Error(`negative radius: ${n}`);let o=n*Math.cos(r),s=n*Math.sin(r),c=e+o,l=t+s,u=1^a,d=a?r-i:i-r;this._x1===null?this._append`M${c},${l}`:(Math.abs(this._x1-c)>Pe||Math.abs(this._y1-l)>Pe)&&this._append`L${c},${l}`,n&&(d<0&&(d=d%Ne+Ne),d>Fe?this._append`A${n},${n},0,1,${u},${e-o},${t-s}A${n},${n},0,1,${u},${this._x1=c},${this._y1=l}`:d>Pe&&this._append`A${n},${n},0,${+(d>=Me)},${u},${this._x1=e+n*Math.cos(i)},${this._y1=t+n*Math.sin(i)}`)}rect(e,t,n,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${n=+n}v${+r}h${-n}Z`}toString(){return this._}};Re.prototype;function ze(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{let e=Math.floor(n);if(!(e>=0))throw RangeError(`invalid digits: ${n}`);t=e}return e},()=>new Re(t)}Array.prototype.slice;function Be(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function Ve(e){this._context=e}Ve.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};function He(e){return new Ve(e)}function Ue(e){return e[0]}function We(e){return e[1]}function Ge(e,t){var n=L(!0),r=null,i=He,a=null,o=ze(s);e=typeof e==`function`?e:e===void 0?Ue:L(e),t=typeof t==`function`?t:t===void 0?We:L(t);function s(s){var c,l=(s=Be(s)).length,u,d=!1,f;for(r??(a=i(f=o())),c=0;c<=l;++c)!(c=d;--f)s.point(_[f],v[f]);s.lineEnd(),s.areaEnd()}}h&&(_[u]=+e(m,u,l),v[u]=+t(m,u,l),s.point(r?+r(m,u,l):_[u],n?+n(m,u,l):v[u]))}if(g)return s=null,g+``||null}function u(){return Ge().defined(i).curve(o).context(a)}return l.x=function(t){return arguments.length?(e=typeof t==`function`?t:L(+t),r=null,l):e},l.x0=function(t){return arguments.length?(e=typeof t==`function`?t:L(+t),l):e},l.x1=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:L(+e),l):r},l.y=function(e){return arguments.length?(t=typeof e==`function`?e:L(+e),n=null,l):t},l.y0=function(e){return arguments.length?(t=typeof e==`function`?e:L(+e),l):t},l.y1=function(e){return arguments.length?(n=e==null?null:typeof e==`function`?e:L(+e),l):n},l.lineX0=l.lineY0=function(){return u().x(e).y(t)},l.lineY1=function(){return u().x(e).y(n)},l.lineX1=function(){return u().x(r).y(t)},l.defined=function(e){return arguments.length?(i=typeof e==`function`?e:L(!!e),l):i},l.curve=function(e){return arguments.length?(o=e,a!=null&&(s=o(a)),l):o},l.context=function(e){return arguments.length?(e==null?a=s=null:s=o(a=e),l):a},l}var qe=class{constructor(e,t){this._context=e,this._x=t}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,t,e,t):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+t)/2,e,this._y0,e,t)}this._x0=e,this._y0=t}};function Je(e){return new qe(e,!0)}function Ye(e){return new qe(e,!1)}function Xe(){}function Ze(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function Qe(e){this._context=e}Qe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Ze(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Ze(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function $e(e){return new Qe(e)}function et(e){this._context=e}et.prototype={areaStart:Xe,areaEnd:Xe,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Ze(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function tt(e){return new et(e)}function nt(e){this._context=e}nt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:Ze(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function rt(e){return new nt(e)}function it(e){this._context=e}it.prototype={areaStart:Xe,areaEnd:Xe,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function at(e){return new it(e)}function ot(e){return e<0?-1:1}function st(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),o=(n-e._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(ot(a)+ot(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function ct(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function lt(e,t,n){var r=e._x0,i=e._y0,a=e._x1,o=e._y1,s=(a-r)/3;e._context.bezierCurveTo(r+s,i+s*t,a-s,o-s*n,a,o)}function ut(e){this._context=e}ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:lt(this,this._t0,ct(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,e!==this._x1||t!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,lt(this,ct(this,n=st(this,e,t)),n);break;default:lt(this,this._t0,n=st(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function dt(e){this._context=new ft(e)}(dt.prototype=Object.create(ut.prototype)).point=function(e,t){ut.prototype.point.call(this,t,e)};function ft(e){this._context=e}ft.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,i,a){this._context.bezierCurveTo(t,e,r,n,a,i)}};function pt(e){return new ut(e)}function mt(e){return new dt(e)}function ht(e){this._context=e}ht.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n){if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=gt(e),i=gt(t),a=0,o=1;o=0;--t)i[t]=(o[t]-i[t+1])/a[t];for(a[n-1]=(e[n]+i[n-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}}this._x=e,this._y=t}};function yt(e){return new vt(e,.5)}function bt(e){return new vt(e,0)}function xt(e){return new vt(e,1)}function St(e,t){if((o=e.length)>1)for(var n=1,r,i,a=e[t[0]],o,s=a.length;n=0;)n[t]=t;return n}function wt(e,t){return e[t]}function Tt(e){let t=[];return t.key=e,t}function Et(){var e=L([]),t=Ct,n=St,r=wt;function i(i){var a=Array.from(e.apply(this,arguments),Tt),o,s=a.length,c=-1,l;for(let e of i)for(o=0,++c;o0){for(var n,r,i=0,a=e[0].length,o;i0){for(var n=0,r=e[t[0]],i,a=r.length;n0)||!((a=(i=e[t[0]]).length)>0))){for(var n=0,r=1,i,a,o;r`radius`in e&&`startAngle`in e&&`endAngle`in e,jt=(e,t)=>{if(!e||typeof e==`function`||typeof e==`boolean`)return null;var n=e;if((0,p.isValidElement)(e)&&(n=e.props),typeof n!=`object`&&typeof n!=`function`)return null;var r={};return Object.keys(n).forEach(e=>{f(e)&&typeof n[e]==`function`&&(r[e]=t||(t=>n[e](n,t)))}),r},Mt=(e,t,n)=>r=>(e(t,n,r),null),Nt=(e,t,n)=>{if(e===null||typeof e!=`object`&&typeof e!=`function`)return null;var r=null;return Object.keys(e).forEach(i=>{var a=e[i];f(i)&&typeof a==`function`&&(r||={},r[i]=Mt(a,t,n))}),r};function Pt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ft(e){for(var t=1;t(e[t]===void 0&&r[t]!==void 0&&(e[t]=r[t]),e),n)}function Bt(e,t){let n=new Map;for(let r=0;r=0}function Wt(e){return e!=null&&typeof e!=`function`&&Ut(e.length)}function Gt(e){return function(t){return ae(t,e)}}function Kt(e){return e==null||typeof e!=`object`&&typeof e!=`function`}function qt(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Jt(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function Yt(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:Object.prototype.toString.call(e)}var Xt=`[object RegExp]`,Zt=`[object String]`,Qt=`[object Number]`,$t=`[object Boolean]`,en=`[object Arguments]`,tn=`[object Symbol]`,nn=`[object Date]`,rn=`[object Map]`,an=`[object Set]`,on=`[object Array]`,sn=`[object Function]`,cn=`[object ArrayBuffer]`,ln=`[object Object]`,un=`[object Error]`,dn=`[object DataView]`,fn=`[object Uint8Array]`,pn=`[object Uint8ClampedArray]`,mn=`[object Uint16Array]`,hn=`[object Uint32Array]`,gn=`[object BigUint64Array]`,_n=`[object Int8Array]`,vn=`[object Int16Array]`,yn=`[object Int32Array]`,bn=`[object BigInt64Array]`,xn=`[object Float32Array]`,Sn=`[object Float64Array]`,Cn=typeof globalThis==`object`&&globalThis||typeof window==`object`&&window||typeof self==`object`&&self||typeof global==`object`&&global||(function(){return this})();function wn(e){return Cn.Buffer!==void 0&&Cn.Buffer.isBuffer(e)}function Tn(e,t){return En(e,void 0,e,new Map,t)}function En(e,t,n,r=new Map,i=void 0){let a=i?.(e,t,n,r);if(a!==void 0)return a;if(Kt(e))return e;if(r.has(e))return r.get(e);if(Array.isArray(e)){let t=Array(e.length);r.set(e,t);for(let a=0;avoid 0)}function Nn(e,t,n,r,i=!1){if(t===e)return!0;switch(typeof t){case`object`:return Pn(e,t,n,r,i);case`function`:return Object.keys(t).length>0?Nn(e,{...t},n,r,i):An(e,t);default:return jn(e)&&i?typeof t!=`string`||t===``:An(e,t)}}function Pn(e,t,n,r,i=!1){if(t==null)return!0;if(Array.isArray(t))return In(e,t,n,r);if(t instanceof Map)return Fn(e,t,n,r);if(t instanceof Set)return Ln(e,t,n,r);let a=Object.keys(t);if(e==null)return i&&a.length===0;if(i)Kt(e)&&(e=Object(e));else{let t=Yt(e);if(t!==`[object Object]`&&t!==`[object Arguments]`)return!1}if(a.length===0)return!0;if(r?.has(t))return r.get(t)===e;r?.set(t,e);try{for(let i=0;ivoid 0)}function zn(e){return e=kn(e),t=>Rn(t,e)}function Bn(e,t){return Tn(e,(n,r,i,a)=>{let o=t?.(n,r,i,a);if(o!==void 0)return o;if(typeof e==`object`){if(Yt(e)===`[object Object]`&&typeof e.constructor!=`function`){let t={};return a.set(e,t),Dn(t,e,i,a),t}switch(Object.prototype.toString.call(e)){case Qt:case Zt:case $t:{let t=new e.constructor(e?.valueOf());return Dn(t,e),t}case en:{let t={};return Dn(t,e),t.length=e.length,t[Symbol.iterator]=e[Symbol.iterator],t}default:return}}})}function Vn(e){return Bn(e)}var Hn=/^(?:0|[1-9]\d*)$/;function Un(e,t=2**53-1){switch(typeof e){case`number`:return Number.isInteger(e)&&e>=0&&e{var n=t(),i=r();function a(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var o=typeof Object.is==`function`?Object.is:a,s=i.useSyncExternalStore,c=n.useRef,l=n.useEffect,u=n.useMemo,d=n.useDebugValue;e.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var a=c(null);if(a.current===null){var f={hasValue:!1,value:null};a.current=f}else f=a.current;a=u(function(){function e(e){if(!a){if(a=!0,s=e,e=r(e),i!==void 0&&f.hasValue){var t=f.value;if(i(t,e))return c=t}return c=e}if(t=c,o(s,e))return t;var n=r(e);return i!==void 0&&i(t,n)?(s=e,t):(s=e,c=n)}var a=!1,s,c,l=n===void 0?null:n;return[function(){return e(t())},l===null?void 0:function(){return e(l())}]},[t,n,r,i]);var p=s(e,a[0],a[1]);return l(function(){f.hasValue=!0,f.value=p},[p]),d(p),p}})),Qn=i(((e,t)=>{t.exports=Zn()})),$n=(0,p.createContext)(null),er=Qn(),tr=e=>e,R=()=>{var e=(0,p.useContext)($n);return e?e.store.dispatch:tr},nr=()=>{},rr=()=>nr,ir=(e,t)=>e===t;function z(e){var t=(0,p.useContext)($n),n=(0,p.useMemo)(()=>t?t=>{if(t!=null)return e(t)}:nr,[t,e]);return(0,er.useSyncExternalStoreWithSelector)(t?t.subscription.addNestedSub:rr,t?t.store.getState:nr,t?t.store.getState:nr,n,ir)}function ar(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!=`function`)throw TypeError(t)}function or(e,t=`expected all items to be functions, instead received the following types: `){if(!e.every(e=>typeof e==`function`)){let n=e.map(e=>typeof e==`function`?`function ${e.name||`unnamed`}()`:typeof e).join(`, `);throw TypeError(`${t}[${n}]`)}}var sr=e=>Array.isArray(e)?e:[e];function cr(e){let t=Array.isArray(e[0])?e[0]:e;return or(t,`createSelector expects all input-selectors to be functions, but received the following types: `),t}function lr(e,t){let n=[],{length:r}=e;for(let i=0;i`u`?ur:WeakRef,fr=0,pr=1;function mr(){return{s:fr,v:void 0,o:null,p:null}}function hr(e){return e instanceof dr?e.deref():e}function gr(e,t={}){let n=mr(),{resultEqualityCheck:r}=t,i,a=0;function o(){let t=n,{length:o}=arguments;for(let e=0,n=o;e{n=mr(),o.resetResultsCount()},o.resultsCount=()=>a,o.resetResultsCount=()=>{a=0},o}function _r(e,...t){let n=typeof e==`function`?{memoize:e,memoizeOptions:t}:e,r=(...e)=>{let t=0,r=0,i,a={},o=e.pop();typeof o==`object`&&(a=o,o=e.pop()),ar(o,`createSelector expects an output function after the inputs, but received: [${typeof o}]`);let{memoize:s,memoizeOptions:c=[],argsMemoize:l=gr,argsMemoizeOptions:u=[]}={...n,...a},d=sr(c),f=sr(u),p=cr(e),m=s(function(){return t++,o.apply(null,arguments)},...d),h=l(function(){r++;let e=lr(p,arguments);return i=m.apply(null,e),i},...f);return Object.assign(h,{resultFunc:o,memoizedResultFunc:m,dependencies:p,dependencyRecomputations:()=>r,resetDependencyRecomputations:()=>{r=0},lastResult:()=>i,recomputations:()=>t,resetRecomputations:()=>{t=0},memoize:s,argsMemoize:l})};return Object.assign(r,{withTypes:()=>r}),r}var B=_r(gr);function vr(e,t=1){let n=[],r=Math.floor(t),i=(e,t)=>{for(let a=0;a{if(e!==t){let r=br(e),i=br(t);if(r===i&&r===0){if(et)return n===`desc`?-1:1}return n===`desc`?i-r:r-i}return 0},Sr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Cr=/^\w*$/;function wr(e,t){return Array.isArray(e)?!1:typeof e==`number`||typeof e==`boolean`||e==null||te(e)?!0:typeof e==`string`&&(Cr.test(e)||!Sr.test(e))||t!=null&&Object.hasOwn(t,e)}function Tr(e,t,n,r){if(e==null)return[];n=r?void 0:n,Array.isArray(e)||(e=Wt(e)?Array.from(e):Object.values(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(n)||(n=n==null?[]:[n]),n=n.map(e=>String(e));let i=(e,t)=>{let n=e,r=0;for(;r0&&r===t.length?n:void 0},a=(e,t)=>{if(e==null)return t;if(t!=null)return typeof e==`object`&&`key`in e?Object.hasOwn(t,e.key)?t[e.key]:i(t,e.path):typeof e==`function`?e(t):Array.isArray(e)?i(t,e):t[e]},o=t.map(e=>(Array.isArray(e)&&e.length===1&&(e=e[0]),e==null||typeof e==`function`||Array.isArray(e)||wr(e)?e:{key:e,path:ie(e)}));return e.map(e=>({original:e,criteria:o.map(t=>a(t,e))})).slice().sort((e,t)=>{for(let r=0;re.original)}function Er(e,...t){let n=t.length;return n>1&&yr(e,t[0],t[1])?t=[]:n>2&&yr(t[0],t[1],t[2])&&(t=[t[0]]),Tr(e,vr(t),[`asc`])}var Dr=e=>e.legend.settings,Or=e=>e.legend.size;B([e=>e.legend.payload,Dr],(e,t)=>{var n=t.itemSorter,r=e.flat(1);return n?Er(r,n):r});function kr(e,t){return Pr(e)||Nr(e,t)||jr(e,t)||Ar()}function Ar(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function jr(e,t){if(e){if(typeof e==`string`)return Mr(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Mr(e,t):void 0}}function Mr(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nFr||Math.abs(e.left-t.left)>Fr||Math.abs(e.top-t.top)>Fr||Math.abs(e.width-t.width)>Fr}function Lr(e){var t=e.getBoundingClientRect();return{height:t.height,left:t.left,top:t.top,width:t.width}}function Rr(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=kr((0,p.useState)({height:0,left:0,top:0,width:0}),2),n=t[0],r=t[1],i=(0,p.useRef)(null),a=(0,p.useRef)(n);a.current=n;var o=(0,p.useCallback)(e=>{if(i.current!=null&&(i.current.disconnect(),i.current=null),e!=null){var t=Lr(e);if(Ir(t,a.current)&&r(t),typeof ResizeObserver<`u`){var n=new ResizeObserver(()=>{var t=Lr(e);Ir(t,a.current)&&r(t)});n.observe(e),i.current=n}}},[...e]);return(0,p.useEffect)(()=>()=>{var e;(e=i.current)==null||e.disconnect()},[]),[n,o]}function zr(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Br=typeof Symbol==`function`&&Symbol.observable||`@@observable`,Vr=()=>Math.random().toString(36).substring(7).split(``).join(`.`),Hr={INIT:`@@redux/INIT${Vr()}`,REPLACE:`@@redux/REPLACE${Vr()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${Vr()}`};function Ur(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function Wr(e,t,n){if(typeof e!=`function`)throw Error(zr(2));if(typeof t==`function`&&typeof n==`function`||typeof n==`function`&&typeof arguments[3]==`function`)throw Error(zr(0));if(typeof t==`function`&&n===void 0&&(n=t,t=void 0),n!==void 0){if(typeof n!=`function`)throw Error(zr(1));return n(Wr)(e,t)}let r=e,i=t,a=new Map,o=a,s=0,c=!1;function l(){o===a&&(o=new Map,a.forEach((e,t)=>{o.set(t,e)}))}function u(){if(c)throw Error(zr(3));return i}function d(e){if(typeof e!=`function`)throw Error(zr(4));if(c)throw Error(zr(5));let t=!0;l();let n=s++;return o.set(n,e),function(){if(t){if(c)throw Error(zr(6));t=!1,l(),o.delete(n),a=null}}}function f(e){if(!Ur(e))throw Error(zr(7));if(e.type===void 0)throw Error(zr(8));if(typeof e.type!=`string`)throw Error(zr(17));if(c)throw Error(zr(9));try{c=!0,i=r(i,e)}finally{c=!1}return(a=o).forEach(e=>{e()}),e}function p(e){if(typeof e!=`function`)throw Error(zr(10));r=e,f({type:Hr.REPLACE})}function m(){let e=d;return{subscribe(t){if(typeof t!=`object`||!t)throw Error(zr(11));function n(){let e=t;e.next&&e.next(u())}return n(),{unsubscribe:e(n)}},[Br](){return this}}}return f({type:Hr.INIT}),{dispatch:f,subscribe:d,getState:u,replaceReducer:p,[Br]:m}}function Gr(e){Object.keys(e).forEach(t=>{let n=e[t];if(n(void 0,{type:Hr.INIT})===void 0)throw Error(zr(12));if(n(void 0,{type:Hr.PROBE_UNKNOWN_ACTION()})===void 0)throw Error(zr(13))})}function Kr(e){let t=Object.keys(e),n={};for(let r=0;re:e.length===1?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}function Jr(...e){return t=>(n,r)=>{let i=t(n,r),a=()=>{throw Error(zr(15))},o={getState:i.getState,dispatch:(e,...t)=>a(e,...t)};return a=qr(...e.map(e=>e(o)))(i.dispatch),{...i,dispatch:a}}}function Yr(e){return Ur(e)&&`type`in e&&typeof e.type==`string`}var Xr=Symbol.for(`immer-nothing`),Zr=Symbol.for(`immer-draftable`),Qr=Symbol.for(`immer-state`);function $r(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var ei=Object,ti=ei.getPrototypeOf,ni=`constructor`,ri=`prototype`,ii=`configurable`,ai=`enumerable`,oi=`writable`,si=`value`,ci=e=>!!e&&!!e[Qr];function li(e){return e?fi(e)||yi(e)||!!e[Zr]||!!e[ni]?.[Zr]||bi(e)||xi(e):!1}var ui=ei[ri][ni].toString(),di=new WeakMap;function fi(e){if(!e||!Si(e))return!1;let t=ti(e);if(t===null||t===ei[ri])return!0;let n=ei.hasOwnProperty.call(t,ni)&&t[ni];if(n===Object)return!0;if(!Ci(n))return!1;let r=di.get(n);return r===void 0&&(r=Function.toString.call(n),di.set(n,r)),r===ui}function pi(e,t,n=!0){mi(e)===0?(n?Reflect.ownKeys(e):ei.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function mi(e){let t=e[Qr];return t?t.type_:yi(e)?1:bi(e)?2:xi(e)?3:0}var hi=(e,t,n=mi(e))=>n===2?e.has(t):ei[ri].hasOwnProperty.call(e,t),gi=(e,t,n=mi(e))=>n===2?e.get(t):e[t],_i=(e,t,n,r=mi(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function vi(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var yi=Array.isArray,bi=e=>e instanceof Map,xi=e=>e instanceof Set,Si=e=>typeof e==`object`,Ci=e=>typeof e==`function`,wi=e=>typeof e==`boolean`;function Ti(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var Ei=e=>e.copy_||e.base_,Di=e=>e.modified_?e.copy_:e.base_;function Oi(e,t){if(bi(e))return new Map(e);if(xi(e))return new Set(e);if(yi(e))return Array[ri].slice.call(e);let n=fi(e);if(t===!0||t===`class_only`&&!n){let t=ei.getOwnPropertyDescriptors(e);delete t[Qr];let n=Reflect.ownKeys(t);for(let r=0;r1&&ei.defineProperties(e,{set:ji,add:ji,clear:ji,delete:ji}),ei.freeze(e),t&&pi(e,(e,t)=>{ki(t,!0)},!1),e)}function Ai(){$r(2)}var ji={[si]:Ai};function Mi(e){return e===null||!Si(e)||ei.isFrozen(e)}var Ni=`MapSet`,Pi=`Patches`,Fi=`ArrayMethods`,Ii={};function Li(e){let t=Ii[e];return t||$r(0,e),t}var Ri=e=>!!Ii[e],zi,Bi=()=>zi,Vi=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Ri(Ni)?Li(Ni):void 0,arrayMethodsPlugin_:Ri(Fi)?Li(Fi):void 0});function Hi(e,t){t&&(e.patchPlugin_=Li(Pi),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Ui(e){Wi(e),e.drafts_.forEach(Ki),e.drafts_=null}function Wi(e){e===zi&&(zi=e.parent_)}var Gi=e=>zi=Vi(zi,e);function Ki(e){let t=e[Qr];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function qi(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[Qr].modified_&&(Ui(t),$r(4)),li(e)&&(e=Ji(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[Qr].base_,e,t)}else e=Ji(t,n);return Yi(t,e,!0),Ui(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===Xr?void 0:e}function Ji(e,t){if(Mi(t))return t;let n=t[Qr];if(!n)return ra(t,e.handledSet_,e);if(!Zi(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){let{callbacks_:t}=n;if(t)for(;t.length>0;)t.pop()(e);ta(n,e)}return n.copy_}function Yi(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&ki(t,n)}function Xi(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Zi=(e,t)=>e.scope_===t,Qi=[];function $i(e,t,n,r){let i=Ei(e),a=e.type_;if(r!==void 0&&gi(i,r,a)===t){_i(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;pi(i,(e,n)=>{if(ci(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??Qi;for(let e of o)_i(i,e,n,a)}function ea(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!Zi(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=Di(i);$i(e,i.draft_??i,a,n),ta(i,r)})}function ta(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){let{patchPlugin_:n}=t;if(n){let r=n.getPath(e);r&&n.generatePatches_(e,r,t)}Xi(e)}}function na(e,t,n){let{scope_:r}=e;if(ci(n)){let i=n[Qr];Zi(i,r)&&i.callbacks_.push(function(){fa(e),$i(e,n,Di(i),t)})}else li(n)&&e.callbacks_.push(function(){let i=Ei(e);e.type_===3?i.has(n)&&ra(n,r.handledSet_,r):gi(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ra(gi(e.copy_,t,e.type_),r.handledSet_,r)})}function ra(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||ci(e)||t.has(e)||!li(e)||Mi(e)?e:(t.add(e),pi(e,(r,i)=>{if(ci(i)){let t=i[Qr];Zi(t,n)&&(_i(e,r,Di(t),e.type_),Xi(t))}else li(i)&&ra(i,t,n)}),e)}function ia(e,t){let n=yi(e),r={type_:+!!n,scope_:t?t.scope_:Bi(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0},i=r,a=aa;n&&(i=[r],a=oa);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var aa={get(e,t){if(t===Qr)return e;let n=e.scope_.arrayMethodsPlugin_,r=e.type_===1&&typeof t==`string`;if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);let i=Ei(e);if(!hi(i,t,e.type_))return la(e,i,t);let a=i[t];if(e.finalized_||!li(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&Ti(t))return a;if(a===sa(e.base_,t)||ca(e,t,a)){fa(e);let n=e.type_===1?+t:t,r=ma(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in Ei(e)},ownKeys(e){return Reflect.ownKeys(Ei(e))},set(e,t,n){let r=ua(Ei(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=sa(Ei(e),t),i=r?.[Qr];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(vi(n,r)&&(n!==void 0||hi(e.base_,t,e.type_)))return!0;fa(e),da(e)}return e.copy_[t]===n&&(n!==void 0||hi(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),na(e,t,n),!0)},deleteProperty(e,t){return fa(e),sa(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),da(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=Ei(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[oi]:!0,[ii]:e.type_!==1||t!==`length`,[ai]:r[ai],[si]:n[t]}},defineProperty(){$r(11)},getPrototypeOf(e){return ti(e.base_)},setPrototypeOf(){$r(12)}},oa={};for(let e in aa){let t=aa[e];oa[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}oa.deleteProperty=function(e,t){return oa.set.call(this,e,t,void 0)},oa.set=function(e,t,n){return aa.set.call(this,e[0],t,n,e[0])};function sa(e,t){let n=e[Qr];return(n?Ei(n):e)[t]}function ca(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||e.assigned_?.get(t)||!li(n)||n[Qr]?!1:e.baseRefs_.has(n)}function la(e,t,n){let r=ua(t,n);return r?si in r?r[si]:r.get?.call(e.draft_):void 0}function ua(e,t){if(!(t in e))return;let n=ti(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=ti(n)}}function da(e){e.modified_||(e.modified_=!0,e.parent_&&da(e.parent_))}function fa(e){e.copy_||=(e.assigned_=new Map,Oi(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var pa=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(Ci(e)&&!Ci(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}Ci(t)||$r(6),n!==void 0&&!Ci(n)&&$r(7);let r;if(li(e)){let i=Gi(this),a=ma(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?Ui(i):Wi(i)}return Hi(i,n),qi(r,i)}if(!e||!Si(e)){if(r=t(e),r===void 0&&(r=e),r===Xr&&(r=void 0),this.autoFreeze_&&ki(r,!0),n){let t=[],i=[];Li(Pi).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}$r(1,e)},this.produceWithPatches=(e,t)=>{if(Ci(e))return(t,...n)=>this.produceWithPatches(t,t=>e(t,...n));let n,r;return[this.produce(e,t,(e,t)=>{n=e,r=t}),n,r]},wi(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),wi(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),wi(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){li(e)||$r(8),ci(e)&&(e=ha(e));let t=Gi(this),n=ma(t,e,void 0);return n[Qr].isManual_=!0,Wi(t),n}finishDraft(e,t){let n=e&&e[Qr];(!n||!n.isManual_)&&$r(9);let{scope_:r}=n;return Hi(r,t),qi(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){let r=t[n];if(r.path.length===0&&r.op===`replace`){e=r.value;break}}n>-1&&(t=t.slice(n+1));let r=Li(Pi).applyPatches_;return ci(e)?r(e,t):this.produce(e,e=>r(e,t))}};function ma(e,t,n,r){let[i,a]=bi(t)?Li(Ni).proxyMap_(t,n):xi(t)?Li(Ni).proxySet_(t,n):ia(t,n);return(n?.scope_??Bi()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?ea(n,a,r):a.callbacks_.push(function(e){e.mapSetPlugin_?.fixSetContents(a);let{patchPlugin_:t}=e;a.modified_&&t&&t.generatePatches_(a,[],e)}),i}function ha(e){return ci(e)||$r(10,e),ga(e)}function ga(e){if(!li(e)||Mi(e))return e;let t=e[Qr],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Oi(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Oi(e,!0);return pi(n,(e,t)=>{_i(n,e,ga(t))},r),t&&(t.finalized_=!1),n}globalThis.Iterator?.from;var _a=new pa().produce,V=e=>e;function va(e){return({dispatch:t,getState:n})=>r=>i=>typeof i==`function`?i(t,n,e):r(i)}var ya=va(),ba=va,xa=typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]==`object`?qr:qr.apply(null,arguments)};typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__;function Sa(e,t){function n(...n){if(t){let r=t(...n);if(!r)throw Error(jo(0));return{type:e,payload:r.payload,...`meta`in r&&{meta:r.meta},...`error`in r&&{error:r.error}}}return{type:e,payload:n[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=t=>Yr(t)&&t.type===e,n}var Ca=class e extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,e.prototype)}static get[Symbol.species](){return e}concat(...e){return super.concat.apply(this,e)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new e(...t[0].concat(this)):new e(...t.concat(this))}};function wa(e){return li(e)?_a(e,()=>{}):e}function Ta(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function Ea(e){return typeof e==`boolean`}var Da=()=>function(e){let{thunk:t=!0,immutableCheck:n=!0,serializableCheck:r=!0,actionCreatorCheck:i=!0}=e??{},a=new Ca;return t&&(Ea(t)?a.push(ya):a.push(ba(t.extraArgument))),a},Oa=`RTK_autoBatch`,H=()=>e=>({payload:e,meta:{[Oa]:!0}}),ka=e=>t=>{setTimeout(t,e)},Aa=(e,t)=>n=>{let r=!1,i=()=>{r||(r=!0,cancelAnimationFrame(a),clearTimeout(o),n())},a=e(i),o=setTimeout(i,t)},ja=(e={type:`raf`})=>t=>(...n)=>{let r=t(...n),i=!0,a=!1,o=!1,s=new Set,c=e.type===`tick`?queueMicrotask:e.type===`raf`?typeof window<`u`&&window.requestAnimationFrame?Aa(window.requestAnimationFrame,100):ka(10):e.type===`callback`?e.queueNotification:ka(e.timeout),l=()=>{o=!1,a&&(a=!1,s.forEach(e=>e()))};return Object.assign({},r,{subscribe(e){let t=r.subscribe(()=>i&&e());return s.add(e),()=>{t(),s.delete(e)}},dispatch(e){try{return i=!e?.meta?.[Oa],a=!i,a&&(o||(o=!0,c(l))),r.dispatch(e)}finally{i=!0}}})},Ma=e=>function(t){let{autoBatch:n=!0}=t??{},r=new Ca(e);return n&&r.push(ja(typeof n==`object`?n:void 0)),r};function Na(e){let t=Da(),{reducer:n=void 0,middleware:r,devTools:i=!0,duplicateMiddlewareCheck:a=!0,preloadedState:o=void 0,enhancers:s=void 0}=e||{},c;if(typeof n==`function`)c=n;else if(Ur(n))c=Kr(n);else throw Error(jo(1));let l;l=typeof r==`function`?r(t):t();let u=qr;i&&(u=xa({trace:!1,...typeof i==`object`&&i}));let d=Ma(Jr(...l)),f=typeof s==`function`?s(d):d(),p=u(...f);return Wr(c,o,p)}function Pa(e){let t={},n=[],r,i={addCase(e,n){let r=typeof e==`string`?e:e.type;if(!r)throw Error(jo(28));if(r in t)throw Error(jo(29));return t[r]=n,i},addAsyncThunk(e,r){return r.pending&&(t[e.pending.type]=r.pending),r.rejected&&(t[e.rejected.type]=r.rejected),r.fulfilled&&(t[e.fulfilled.type]=r.fulfilled),r.settled&&n.push({matcher:e.settled,reducer:r.settled}),i},addMatcher(e,t){return n.push({matcher:e,reducer:t}),i},addDefaultCase(e){return r=e,i}};return e(i),[t,n,r]}function Fa(e){return typeof e==`function`}function Ia(e,t){let[n,r,i]=Pa(t),a;if(Fa(e))a=()=>wa(e());else{let t=wa(e);a=()=>t}function o(e=a(),t){let o=[n[t.type],...r.filter(({matcher:e})=>e(t)).map(({reducer:e})=>e)];return o.filter(e=>!!e).length===0&&(o=[i]),o.reduce((e,n)=>{if(n){if(ci(e)){let r=n(e,t);return r===void 0?e:r}if(li(e))return _a(e,e=>n(e,t));{let r=n(e,t);if(r===void 0){if(e===null)return e;throw Error(`A case reducer on a non-draftable value must not return undefined`)}return r}}return e},e)}return o.getInitialState=a,o}var La=`ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW`,Ra=(e=21)=>{let t=``,n=e;for(;n--;)t+=La[Math.random()*64|0];return t},za=Symbol.for(`rtk-slice-createasyncthunk`);function Ba(e,t){return`${e}/${t}`}function Va({creators:e}={}){let t=e?.asyncThunk?.[za];return function(e){let{name:n,reducerPath:r=n}=e;if(!n)throw Error(jo(11));let i=(typeof e.reducers==`function`?e.reducers(Wa()):e.reducers)||{},a=Object.keys(i),o={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},s={addCase(e,t){let n=typeof e==`string`?e:e.type;if(!n)throw Error(jo(12));if(n in o.sliceCaseReducersByType)throw Error(jo(13));return o.sliceCaseReducersByType[n]=t,s},addMatcher(e,t){return o.sliceMatchers.push({matcher:e,reducer:t}),s},exposeAction(e,t){return o.actionCreators[e]=t,s},exposeCaseReducer(e,t){return o.sliceCaseReducersByName[e]=t,s}};a.forEach(r=>{let a=i[r],o={reducerName:r,type:Ba(n,r),createNotation:typeof e.reducers==`function`};Ka(a)?Ja(o,a,s,t):Ga(o,a,s)});function c(){let[t={},n=[],r=void 0]=typeof e.extraReducers==`function`?Pa(e.extraReducers):[e.extraReducers],i={...t,...o.sliceCaseReducersByType};return Ia(e.initialState,e=>{for(let t in i)e.addCase(t,i[t]);for(let t of o.sliceMatchers)e.addMatcher(t.matcher,t.reducer);for(let t of n)e.addMatcher(t.matcher,t.reducer);r&&e.addDefaultCase(r)})}let l=e=>e,u=new Map,d=new WeakMap,f;function p(e,t){return f||=c(),f(e,t)}function m(){return f||=c(),f.getInitialState()}function h(t,n=!1){function r(e){let i=e[t];return i===void 0&&n&&(i=Ta(d,r,m)),i}function i(t=l){return Ta(Ta(u,n,()=>new WeakMap),t,()=>{let r={};for(let[i,a]of Object.entries(e.selectors??{}))r[i]=Ha(a,t,()=>Ta(d,t,m),n);return r})}return{reducerPath:t,getSelectors:i,get selectors(){return i(r)},selectSlice:r}}let g={name:n,reducer:p,actions:o.actionCreators,caseReducers:o.sliceCaseReducersByName,getInitialState:m,...h(r),injectInto(e,{reducerPath:t,...n}={}){let i=t??r;return e.inject({reducerPath:i,reducer:p},n),{...g,...h(i,!0)}}};return g}}function Ha(e,t,n,r){function i(i,...a){let o=t(i);return o===void 0&&r&&(o=n()),e(o,...a)}return i.unwrapped=e,i}var Ua=Va();function Wa(){function e(e,t){return{_reducerDefinitionType:`asyncThunk`,payloadCreator:e,...t}}return e.withTypes=()=>e,{reducer(e){return Object.assign({[e.name](...t){return e(...t)}}[e.name],{_reducerDefinitionType:`reducer`})},preparedReducer(e,t){return{_reducerDefinitionType:`reducerWithPrepare`,prepare:e,reducer:t}},asyncThunk:e}}function Ga({type:e,reducerName:t,createNotation:n},r,i){let a,o;if(`reducer`in r){if(n&&!qa(r))throw Error(jo(17));a=r.reducer,o=r.prepare}else a=r;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,o?Sa(e,o):Sa(e))}function Ka(e){return e._reducerDefinitionType===`asyncThunk`}function qa(e){return e._reducerDefinitionType===`reducerWithPrepare`}function Ja({type:e,reducerName:t},n,r,i){if(!i)throw Error(jo(18));let{payloadCreator:a,fulfilled:o,pending:s,rejected:c,settled:l,options:u}=n,d=i(e,a,u);r.exposeAction(t,d),o&&r.addCase(d.fulfilled,o),s&&r.addCase(d.pending,s),c&&r.addCase(d.rejected,c),l&&r.addMatcher(d.settled,l),r.exposeCaseReducer(t,{fulfilled:o||Ya,pending:s||Ya,rejected:c||Ya,settled:l||Ya})}function Ya(){}var Xa=`task`,Za=`listener`,Qa=`completed`,$a=`cancelled`,eo=`task-${$a}`,to=`task-${Qa}`,no=`${Za}-${$a}`,ro=`${Za}-${Qa}`,io=class{constructor(e){this.code=e,this.message=`${Xa} ${$a} (reason: ${e})`}code;name=`TaskAbortError`;message},ao=(e,t)=>{if(typeof e!=`function`)throw TypeError(jo(32))},oo=()=>{},so=(e,t=oo)=>(e.catch(t),e),co=(e,t)=>(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)),lo=e=>{if(e.aborted)throw new io(e.reason)};function uo(e,t){let n=oo;return new Promise((r,i)=>{let a=()=>i(new io(e.reason));if(e.aborted){a();return}n=co(e,a),t.finally(()=>n()).then(r,i)}).finally(()=>{n=oo})}var fo=async(e,t)=>{try{return await Promise.resolve(),{status:`ok`,value:await e()}}catch(e){return{status:e instanceof io?`cancelled`:`rejected`,error:e}}finally{t?.()}},po=e=>t=>so(uo(e,t).then(t=>(lo(e),t))),mo=e=>{let t=po(e);return e=>t(new Promise(t=>setTimeout(t,e)))},{assign:ho}=Object,go={},_o=`listenerMiddleware`,vo=(e,t)=>{let n=t=>co(e,()=>t.abort(e.reason));return(r,i)=>{ao(r,`taskExecutor`);let a=new AbortController;n(a);let o=fo(async()=>{lo(e),lo(a.signal);let t=await r({pause:po(a.signal),delay:mo(a.signal),signal:a.signal});return lo(a.signal),t},()=>a.abort(to));return i?.autoJoin&&t.push(o.catch(oo)),{result:po(e)(o),cancel(){a.abort(eo)}}}},yo=(e,t)=>{let n=async(n,r)=>{lo(t);let i=()=>{},a=[new Promise((t,r)=>{let a=e({predicate:n,effect:(e,n)=>{n.unsubscribe(),t([e,n.getState(),n.getOriginalState()])}});i=()=>{a(),r()}})];r!=null&&a.push(new Promise(e=>setTimeout(e,r,null)));try{let e=await uo(t,Promise.race(a));return lo(t),e}finally{i()}};return((e,t)=>so(n(e,t)))},bo=e=>{let{type:t,actionCreator:n,matcher:r,predicate:i,effect:a}=e;if(t)i=Sa(t).match;else if(n)t=n.type,i=n.match;else if(r)i=r;else if(!i)throw Error(jo(21));return ao(a,`options.listener`),{predicate:i,type:t,effect:a}},xo=ho(e=>{let{type:t,predicate:n,effect:r}=bo(e);return{id:Ra(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw Error(jo(22))}}},{withTypes:()=>xo}),So=(e,t)=>{let{type:n,effect:r,predicate:i}=bo(t);return Array.from(e.values()).find(e=>(typeof n==`string`?e.type===n:e.predicate===i)&&e.effect===r)},Co=e=>{e.pending.forEach(e=>{e.abort(no)})},wo=(e,t)=>()=>{for(let e of t.keys())Co(e);e.clear()},To=(e,t,n)=>{try{e(t,n)}catch(e){setTimeout(()=>{throw e},0)}},Eo=ho(Sa(`${_o}/add`),{withTypes:()=>Eo}),Do=Sa(`${_o}/removeAll`),Oo=ho(Sa(`${_o}/remove`),{withTypes:()=>Oo}),ko=(...e)=>{console.error(`${_o}/error`,...e)},Ao=(e={})=>{let t=new Map,n=new Map,r=e=>{let t=n.get(e)??0;n.set(e,t+1)},i=e=>{let t=n.get(e)??1;t===1?n.delete(e):n.set(e,t-1)},{extra:a,onError:o=ko}=e;ao(o,`onError`);let s=e=>(e.unsubscribe=()=>t.delete(e.id),t.set(e.id,e),t=>{e.unsubscribe(),t?.cancelActive&&Co(e)}),c=(e=>{let n=So(t,e)??xo(e);return s(n)});ho(c,{withTypes:()=>c});let l=e=>{let n=So(t,e);return n&&(n.unsubscribe(),e.cancelActive&&Co(n)),!!n};ho(l,{withTypes:()=>l});let u=async(e,n,s,l)=>{let u=new AbortController,d=yo(c,u.signal),f=[];try{e.pending.add(u),r(e),await Promise.resolve(e.effect(n,ho({},s,{getOriginalState:l,condition:(e,t)=>d(e,t).then(Boolean),take:d,delay:mo(u.signal),pause:po(u.signal),extra:a,signal:u.signal,fork:vo(u.signal,f),unsubscribe:e.unsubscribe,subscribe:()=>{t.set(e.id,e)},cancelActiveListeners:()=>{e.pending.forEach((e,t,n)=>{e!==u&&(e.abort(no),n.delete(e))})},cancel:()=>{u.abort(no),e.pending.delete(u)},throwIfCancelled:()=>{lo(u.signal)}})))}catch(e){e instanceof io||To(o,e,{raisedBy:`effect`})}finally{await Promise.all(f),u.abort(ro),i(e),e.pending.delete(u)}},d=wo(t,n);return{middleware:e=>n=>r=>{if(!Yr(r))return n(r);if(Eo.match(r))return c(r.payload);if(Do.match(r)){d();return}if(Oo.match(r))return l(r.payload);let i=e.getState(),a=()=>{if(i===go)throw Error(jo(23));return i},s;try{if(s=n(r),t.size>0){let n=e.getState(),s=Array.from(t.values());for(let t of s){let s=!1;try{s=t.predicate(r,n,i)}catch(e){s=!1,To(o,e,{raisedBy:`predicate`})}s&&u(t,r,e,a)}}}finally{i=go}return s},startListening:c,stopListening:l,clearListeners:d}};function jo(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Mo=Ua({name:`chartLayout`,initialState:{layoutType:`horizontal`,width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){e.margin.top=t.payload.top??0,e.margin.right=t.payload.right??0,e.margin.bottom=t.payload.bottom??0,e.margin.left=t.payload.left??0},setScale(e,t){e.scale=t.payload}}}),No=Mo.actions,Po=No.setMargin,Fo=No.setLayout,Io=No.setChartSize,Lo=No.setScale,Ro=Mo.reducer;function zo(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function U(e){return Number.isFinite(e)}function Bo(e){return typeof e==`number`&&e>0&&Number.isFinite(e)}function Vo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ho(e){for(var t=1;t{if(t&&n){var r=n.width,i=n.height,a=t.align,o=t.verticalAlign,s=t.layout,c=t.position,l=t.offset,u=l===void 0?0:l;if(c!=null){if(Ae(c)){if(c===`top`&&F(e.top))return Ho(Ho({},e),{},{top:e.top+(i||0)+u});if(c===`bottom`&&F(e.bottom))return Ho(Ho({},e),{},{bottom:e.bottom+(i||0)+u});if(c===`left`&&F(e.left))return Ho(Ho({},e),{},{left:e.left+(r||0)+u});if(c===`right`&&F(e.right))return Ho(Ho({},e),{},{right:e.right+(r||0)+u})}return e}if((s===`vertical`||s===`horizontal`&&o===`middle`)&&a!==`center`&&F(e[a]))return Ho(Ho({},e),{},{[a]:e[a]+(r||0)});if((s===`horizontal`||s===`vertical`&&a===`center`)&&o!==`middle`&&F(e[o]))return Ho(Ho({},e),{},{[o]:e[o]+(i||0)})}return e},qo=(e,t)=>e===`horizontal`&&t===`xAxis`||e===`vertical`&&t===`yAxis`||e===`centric`&&t===`angleAxis`||e===`radial`&&t===`radiusAxis`,Jo=(e,t,n,r)=>{if(r)return e.map(e=>e.coordinate);var i,a,o=e.map(e=>(e.coordinate===t&&(i=!0),e.coordinate===n&&(a=!0),e.coordinate));return i||o.push(t),a||o.push(n),o},Yo=(e,t,n)=>{if(!e)return null;var r=e.duplicateDomain,i=e.type,a=e.range,o=e.scale,s=e.realScaleType,c=e.isCategorical,l=e.categoricalDomain,u=e.tickCount,d=e.ticks,f=e.niceTicks,p=e.axisType;if(!o)return null;var m=s===`scaleBand`&&o.bandwidth?o.bandwidth()/2:2,h=(t||n)&&i===`category`&&o.bandwidth?o.bandwidth()/m:0;return h=p===`angleAxis`&&a&&a.length>=2?le(a[0]-a[1])*2*h:h,t&&(d||f)?(d||f||[]).map((e,t)=>{var n=r?r.indexOf(e):e,i=o.map(n);return U(i)?{coordinate:i+h,value:e,offset:h,index:t}:null}).filter(be):c&&l?l.map((e,t)=>{var n=o.map(e);return U(n)?{coordinate:n+h,value:e,index:t,offset:h}:null}).filter(be):o.ticks&&!n&&u!=null?o.ticks(u).map((e,t)=>{var n=o.map(e);return U(n)?{coordinate:n+h,value:e,index:t,offset:h}:null}).filter(be):o.domain().map((e,t)=>{var n=o.map(e);return U(n)?{coordinate:n+h,value:r?r[e]:e,index:t,offset:h}:null}).filter(be)},Xo={sign:e=>{var t=e.length;if(!(t<=0)){var n=e[0]?.length;if(!(n==null||n<=0))for(var r=0;r=0?(s[0]=i,i+=u,s[1]=i):(s[0]=a,a+=u,s[1]=a)}}}},expand:Dt,none:St,silhouette:Ot,wiggle:kt,positive:e=>{var t=e.length;if(!(t<=0)){var n=e[0]?.length;if(!(n==null||n<=0))for(var r=0;r=0?(o[0]=i,i+=s,o[1]=i):(o[0]=0,o[1]=0)}}}}},Zo=(e,t,n)=>{var r=Xo[n]??St,i=Et().keys(t).value((e,t)=>Number(W(e,t,0))).order(Ct).offset(r)(e);return i.forEach((n,r)=>{n.forEach((n,i)=>{var a=W(e[i],t[r],0);Array.isArray(a)&&a.length===2&&F(a[0])&&F(a[1])&&(n[0]=a[0],n[1]=a[1])})}),i};function Qo(e){return e==null?void 0:String(e)}function $o(e){var t=e.axis,n=e.ticks,r=e.bandSize,i=e.entry,a=e.index,o=e.dataKey;if(t.type===`category`){if(!t.allowDuplicatedCategory&&t.dataKey&&!I(i[t.dataKey])){var s=ve(n,`value`,i[t.dataKey]);if(s)return s.coordinate+r/2}return n!=null&&n[a]?n[a].coordinate+r/2:null}var c=W(i,I(o)?t.dataKey:o),l=t.scale.map(c);return F(l)?l:null}var es=e=>{var t=e.flat(2).filter(F);return[Math.min(...t),Math.max(...t)]},ts=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],ns=(e,t,n)=>{if(e!=null&&Object.keys(e).length!==0)return ts(Object.keys(e).reduce((r,i)=>{var a=e[i];if(!a)return r;var o=a.stackedData.reduce((e,r)=>{var i=es(zo(r,t,n));return!U(i[0])||!U(i[1])?e:[Math.min(e[0],i[0]),Math.max(e[1],i[1])]},[1/0,-1/0]);return[Math.min(o[0],r[0]),Math.max(o[1],r[1])]},[1/0,-1/0]))},rs=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,is=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,as=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();if(!n||r>0)return r}if(e&&t&&t.length>=2){for(var i=Er(t,e=>e.coordinate),a=[],o=0,s=1,c=i.length;su&&(d=Math.min(f,d));return d===1/0?0:d}return n?void 0:0};function os(e){var t=e.tooltipEntrySettings,n=e.dataKey,r=e.payload,i=e.value,a=e.name;return Ho(Ho({},t),{},{dataKey:n,payload:r,value:i,name:a})}function ss(e,t){if(e!=null)return String(e);if(typeof t==`string`)return t}var cs=(e,t)=>{if(t===`horizontal`)return e.relativeX;if(t===`vertical`)return e.relativeY},ls=(e,t)=>t===`centric`?e.angle:e.radius,us=e=>e.layout.width,ds=e=>e.layout.height,fs=e=>e.layout.scale,ps=e=>e.layout.margin,ms=B(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),hs=B(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),gs=`data-recharts-item-index`;function _s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function vs(e){for(var t=1;te.brush.height;function Cs(e){return hs(e).reduce((e,t)=>t.orientation===`left`&&!t.mirror&&!t.hide?e+(typeof t.width==`number`?t.width:60):e,0)}function ws(e){return hs(e).reduce((e,t)=>t.orientation===`right`&&!t.mirror&&!t.hide?e+(typeof t.width==`number`?t.width:60):e,0)}function Ts(e){return ms(e).reduce((e,t)=>t.orientation===`top`&&!t.mirror&&!t.hide?e+(typeof t.height==`number`?t.height:30):e,0)}function Es(e){return ms(e).reduce((e,t)=>t.orientation===`bottom`&&!t.mirror&&!t.hide?e+(typeof t.height==`number`?t.height:30):e,0)}var Ds=B([us,ds,ps,Ss,Cs,ws,Ts,Es,Dr,Or],(e,t,n,r,i,a,o,s,c,l)=>{var u={left:(n.left||0)+i,right:(n.right||0)+a},d=vs(vs({},{top:(n.top||0)+o,bottom:(n.bottom||0)+s}),u),f=d.bottom;d.bottom+=r,d=Ko(d,c,l);var p=e-d.left-d.right,m=t-d.top-d.bottom;return vs(vs({brushBottom:f},d),{},{width:Math.max(p,0),height:Math.max(m,0)})}),Os=B(Ds,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),ks=B(us,ds,(e,t)=>({x:0,y:0,width:e,height:t})),As=(0,p.createContext)(null),js=()=>(0,p.useContext)(As)!=null,Ms=e=>e.brush,Ns=B([Ms,Ds,ps],(e,t,n)=>({height:e.height,x:F(e.x)?e.x:t.left,y:F(e.y)?e.y:t.top+t.height+t.brushBottom-(n?.bottom||0),width:F(e.width)?e.width:t.width}));function Ps(e,t,{signal:n,edges:r}={}){let i,a=null,o=r!=null&&r.includes(`leading`),s=r==null||r.includes(`trailing`),c=()=>{a!==null&&(e.apply(i,a),i=void 0,a=null)},l=()=>{s&&c(),p()},u=null,d=()=>{u!=null&&clearTimeout(u),u=setTimeout(()=>{u=null,l()},t)},f=()=>{u!==null&&(clearTimeout(u),u=null)},p=()=>{f(),i=void 0,a=null},m=()=>{c()},h=function(...e){if(n?.aborted)return;i=this,a=e;let t=u==null;d(),o&&t&&c()};return h.schedule=d,h.cancel=p,h.flush=m,n?.addEventListener(`abort`,p,{once:!0}),h}function Fs(e,t=0,n={}){typeof n!=`object`&&(n={});let{leading:r=!1,trailing:i=!0,maxWait:a}=n,o=[,,];r&&(o[0]=`leading`),i&&(o[1]=`trailing`);let s,c=null,l=Ps(function(...t){s=e.apply(this,t),c=null},t,{edges:o}),u=function(...t){return a!=null&&(c===null&&(c=Date.now()),Date.now()-c>=a)?((r||i)&&(s=e.apply(this,t)),c=Date.now(),l.cancel(),l.schedule(),s):(l.apply(this,t),s)};return u.cancel=l.cancel,u.flush=()=>(l.flush(),s),u}function Is(e,t=0,n={}){let{leading:r=!0,trailing:i=!0}=n;return Fs(e,t,{leading:r,maxWait:t,trailing:i})}var Ls=function(e,t){var n=[...arguments].slice(2);if(typeof console<`u`&&console.warn&&(t===void 0&&console.warn(`LogUtils requires an error message argument`),!e)){if(t===void 0)console.warn(`Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.`);else{var r=0;console.warn(t.replace(/%s/g,()=>n[r++]))}}},Rs={width:`100%`,height:`100%`,debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},zs=(e,t,n)=>{var r=n.width,i=r===void 0?Rs.width:r,a=n.height,o=a===void 0?Rs.height:a,s=n.aspect,c=n.maxHeight,l=de(i)?e:Number(i),u=de(o)?t:Number(o);return s&&s>0&&(l?u=l/s:u&&(l=u*s),c&&u!=null&&u>c&&(u=c)),{calculatedWidth:l,calculatedHeight:u}},Bs={width:0,height:0,overflow:`visible`},Vs={width:0,overflowX:`visible`},Hs={height:0,overflowY:`visible`},Us={},Ws=e=>{var t=e.width,n=e.height,r=de(t),i=de(n);return r&&i?Bs:r?Vs:i?Hs:Us};function Gs(e){var t=e.width,n=e.height,r=e.aspect,i=t,a=n;return i===void 0&&a===void 0?(i=Rs.width,a=Rs.height):i===void 0?i=r&&r>0?void 0:Rs.width:a===void 0&&(a=r&&r>0?void 0:Rs.height),{width:i,height:a}}var Ks=[`aspect`,`initialDimension`,`width`,`height`,`minWidth`,`minHeight`,`maxHeight`,`children`,`debounce`,`id`,`className`,`onResize`,`style`];function qs(){return qs=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n({width:n,height:r}),[n,r]);return cc(i)?p.createElement(sc.Provider,{value:i},t):null}var uc=()=>(0,p.useContext)(sc),dc=(0,p.forwardRef)((e,t)=>{var n=e.aspect,r=e.initialDimension,i=r===void 0?Rs.initialDimension:r,a=e.width,s=e.height,c=e.minWidth,l=c===void 0?Rs.minWidth:c,u=e.minHeight,d=e.maxHeight,f=e.children,m=e.debounce,h=m===void 0?Rs.debounce:m,g=e.id,_=e.className,v=e.onResize,y=e.style,b=y===void 0?{}:y,x=ac(e,Ks),S=(0,p.useRef)(null),C=(0,p.useRef)();C.current=v,(0,p.useImperativeHandle)(t,()=>S.current);var w=$s((0,p.useState)({containerWidth:i.width,containerHeight:i.height}),2),T=w[0],E=w[1],D=(0,p.useCallback)((e,t)=>{E(n=>{var r=Math.round(e),i=Math.round(t);return n.containerWidth===r&&n.containerHeight===i?n:{containerWidth:r,containerHeight:i}})},[]);(0,p.useEffect)(()=>{if(S.current==null||typeof ResizeObserver>`u`)return xe;var e=e=>{var t,n=e[0];if(n!=null){var r=n.contentRect,i=r.width,a=r.height;D(i,a),(t=C.current)==null||t.call(C,i,a)}};h>0&&(e=Is(e,h,{trailing:!0,leading:!1}));var t=new ResizeObserver(e),n=S.current.getBoundingClientRect(),r=n.width,i=n.height;return D(r,i),t.observe(S.current),()=>{t.disconnect()}},[D,h]);var O=T.containerWidth,k=T.containerHeight;Ls(!n||n>0,`The aspect(%s) must be greater than zero.`,n);var A=zs(O,k,{width:a,height:s,aspect:n,maxHeight:d}),j=A.calculatedWidth,M=A.calculatedHeight;return Ls(O<0||k<0||j!=null&&j>0||M!=null&&M>0,`The width(%s) and height(%s) of chart should be greater than 0, - please check the style of container, or the props width(%s) and height(%s), - or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the - height and width.`,j,M,a,s,l,u,n),p.createElement(`div`,qs({id:g?`${g}`:void 0,className:o(`recharts-responsive-container`,_),style:Ys(Ys({},b),{},{width:a,height:s,minWidth:l,minHeight:u,maxHeight:d}),ref:S},x),p.createElement(`div`,{style:Ws({width:a,height:s})},p.createElement(lc,{width:j,height:M},f)))}),fc=(0,p.forwardRef)((e,t)=>{var n=uc();if(Bo(n.width)&&Bo(n.height))return e.children;var r=Gs({width:e.width,height:e.height,aspect:e.aspect}),i=r.width,a=r.height,o=zs(void 0,void 0,{width:i,height:a,aspect:e.aspect,maxHeight:e.maxHeight}),s=o.calculatedWidth,c=o.calculatedHeight;return F(s)&&F(c)?p.createElement(lc,{width:s,height:c},e.children):p.createElement(dc,qs({},e,{width:i,height:a,ref:t}))}),pc=()=>{var e=js(),t=z(Os),n=z(Ns),r=z(Ms)?.padding;return!e||!n||!r?t:{width:n.width-r.left-r.right,height:n.height-r.top-r.bottom,x:r.left,y:r.top}},mc={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},hc=()=>z(Ds)??mc,gc=()=>z(us),_c=()=>z(ds),G=e=>e.layout.layoutType,vc=()=>z(G),yc=()=>{var e=vc();if(e===`horizontal`||e===`vertical`)return e},bc=e=>{var t=e.layout.layoutType;if(t===`centric`||t===`radial`)return t},xc=()=>vc()!==void 0,Sc=e=>{var t=R(),n=js(),r=e.width,i=e.height,a=uc(),o=r,s=i;return a&&(o=a.width>0?a.width:r,s=a.height>0?a.height:i),(0,p.useEffect)(()=>{!n&&Bo(o)&&Bo(s)&&t(Io({width:o,height:s}))},[t,n,o,s]),null},Cc=Ua({name:`legend`,initialState:{settings:{layout:`horizontal`,align:`center`,verticalAlign:`bottom`,itemSorter:`value`,position:void 0,offset:0},size:{width:0,height:0},payload:[]},reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter,e.settings.position=t.payload.position,e.settings.offset=t.payload.offset},addLegendPayload:{reducer(e,t){e.payload.push(V(t.payload))},prepare:H()},replaceLegendPayload:{reducer(e,t){var n=t.payload,r=n.prev,i=n.next,a=ha(e).payload.indexOf(V(r));a>-1&&(e.payload[a]=V(i))},prepare:H()},removeLegendPayload:{reducer(e,t){var n=ha(e).payload.indexOf(V(t.payload));n>-1&&e.payload.splice(n,1)},prepare:H()}}}),wc=Cc.actions;wc.setLegendSize,wc.setLegendSettings;var Tc=wc.addLegendPayload,Ec=wc.replaceLegendPayload,Dc=wc.removeLegendPayload,Oc=Cc.reducer,kc=i((e=>{var n=t();n.useSyncExternalStore,n.useRef,n.useEffect,n.useMemo,n.useDebugValue}));i(((e,t)=>{t.exports=kc()}))();function Ac(e){e()}function jc(){let e=null,t=null;return{clear(){e=null,t=null},notify(){Ac(()=>{let t=e;for(;t;)t.callback(),t=t.next})},get(){let t=[],n=e;for(;n;)t.push(n),n=n.next;return t},subscribe(n){let r=!0,i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!r||e===null||(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var Mc={notify(){},get:()=>[]};function Nc(e,t){let n,r=Mc,i=0,a=!1;function o(e){u();let t=r.subscribe(e),n=!1;return()=>{n||(n=!0,t(),d())}}function s(){r.notify()}function c(){m.onStateChange&&m.onStateChange()}function l(){return a}function u(){i++,n||(n=t?t.addNestedSub(c):e.subscribe(c),r=jc())}function d(){i--,n&&i===0&&(n(),n=void 0,r.clear(),r=Mc)}function f(){a||(a=!0,u())}function p(){a&&(a=!1,d())}let m={addNestedSub:o,notifyNestedSubs:s,handleChangeWrapper:c,isSubscribed:l,trySubscribe:f,tryUnsubscribe:p,getListeners:()=>r};return m}var Pc=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,Fc=typeof navigator<`u`&&navigator.product===`ReactNative`,Ic=Pc||Fc?p.useLayoutEffect:p.useEffect;function Lc(e,t){return e===t?e!==0||t!==0||1/e==1/t:e!==e&&t!==t}function Rc(e,t){if(Lc(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r=0;r{let e=Nc(i);return{store:i,subscription:e,getServerState:r?()=>r:void 0}},[i,r]),o=p.useMemo(()=>i.getState(),[i]);Ic(()=>{let{subscription:e}=a;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),o!==i.getState()&&e.notifyNestedSubs(),()=>{e.tryUnsubscribe(),e.onStateChange=void 0}},[a,o]);let s=n||Hc;return p.createElement(s.Provider,{value:a},t)}var Wc=Uc,Gc=new Set([`axisLine`,`tickLine`,`activeBar`,`activeDot`,`activeLabel`,`activeShape`,`allowEscapeViewBox`,`background`,`cursor`,`dot`,`label`,`line`,`margin`,`padding`,`position`,`shape`,`style`,`tick`,`wrapperStyle`,`radius`,`throttledEvents`]);function Kc(e,t){return e==null&&t==null?!0:typeof e==`number`&&typeof t==`number`?e===t||e!==e&&t!==t:e===t}function qc(e,t){for(var n of new Set([...Object.keys(e),...Object.keys(t)]))if(Gc.has(n)){if(e[n]==null&&t[n]==null)continue;if(!Rc(e[n],t[n]))return!1}else if(!Kc(e[n],t[n]))return!1;return!0}function Jc(){return Jc=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.separator,n=t===void 0?sl.separator:t,r=e.contentStyle,i=e.itemStyle,a=e.labelStyle,s=a===void 0?sl.labelStyle:a,c=e.payload,l=e.formatter,u=e.itemSorter,d=e.wrapperClassName,f=e.labelClassName,m=e.label,h=e.labelFormatter,g=e.accessibilityLayer,_=g===void 0?sl.accessibilityLayer:g,v=()=>{if(c&&c.length){var e={padding:0,margin:0},t=cl(c,u).map((e,t)=>{if(!e||e.type===`none`)return null;var r=e.formatter||l||ol,a=e.value,o=e.name,s=a,u=o;if(r){var d=r(a,o,e,t,c);if(Array.isArray(d)){var f=el(d,2);s=f[0],u=f[1]}else if(d!=null)s=d;else return null}var m=Xc(Xc({},sl.itemStyle),{},{color:e.color||sl.itemStyle.color},i);return p.createElement(`li`,{className:`recharts-tooltip-item`,key:`tooltip-item-${t}`,style:m},fe(u)?p.createElement(`span`,{className:`recharts-tooltip-item-name`},u):null,fe(u)?p.createElement(`span`,{className:`recharts-tooltip-item-separator`},n):null,p.createElement(`span`,{className:`recharts-tooltip-item-value`},s),p.createElement(`span`,{className:`recharts-tooltip-item-unit`},e.unit||``))});return p.createElement(`ul`,{className:`recharts-tooltip-item-list`,style:e},t)}return null},y=Xc(Xc({},sl.contentStyle),r),b=Xc({margin:0},s),x=!I(m),S=x?m:``,C=o(`recharts-default-tooltip`,d),w=o(`recharts-tooltip-label`,f);x&&h&&c!=null&&(S=h(m,c));var T=_?{role:`status`,"aria-live":`assertive`}:{};return p.createElement(`div`,Jc({className:C,style:y},T),p.createElement(`p`,{className:w,style:b},p.isValidElement(S)?S:`${S}`),v())},ul=`recharts-tooltip-wrapper`,dl={visibility:`hidden`};function fl(e){var t=e.coordinate,n=e.translateX,r=e.translateY;return o(ul,{[`${ul}-right`]:F(n)&&t&&F(t.x)&&n>=t.x,[`${ul}-left`]:F(n)&&t&&F(t.x)&&n=t.y,[`${ul}-top`]:F(r)&&t&&F(t.y)&&r0?i:0),d=n[r]+i;if(t[r])return o[r]?u:d;var f=c[r];return f==null?0:o[r]?Math.max(uf+l?Math.max(u,f):Math.max(d,f)}function ml(e){var t=e.translateX,n=e.translateY;return{transform:e.useTranslate3d?`translate3d(${t}px, ${n}px, 0)`:`translate(${t}px, ${n}px)`}}function hl(e){var t=e.allowEscapeViewBox,n=e.coordinate,r=e.offsetTop,i=e.offsetLeft,a=e.position,o=e.reverseDirection,s=e.tooltipBox,c=e.useTranslate3d,l=e.viewBox,u,d,f;return s&&s.height>0&&s.width>0&&n?(d=pl({allowEscapeViewBox:t,coordinate:n,key:`x`,offset:i,position:a,reverseDirection:o,tooltipDimension:s.width,viewBox:l,viewBoxDimension:l.width}),f=pl({allowEscapeViewBox:t,coordinate:n,key:`y`,offset:r,position:a,reverseDirection:o,tooltipDimension:s.height,viewBox:l,viewBoxDimension:l.height}),u=ml({translateX:d,translateY:f,useTranslate3d:c})):u=dl,{cssProperties:u,cssClasses:fl({translateX:d,translateY:f,coordinate:n})}}var gl={devToolsEnabled:!0,isSsr:!(typeof window<`u`&&window.document&&window.document.createElement&&window.setTimeout)};function _l(e,t){return Sl(e)||xl(e,t)||yl(e,t)||vl()}function vl(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function yl(e,t){if(e){if(typeof e==`string`)return bl(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?bl(e,t):void 0}}function bl(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ngl.isSsr||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches),2),t=e[0],n=e[1];return(0,p.useEffect)(()=>{if(window.matchMedia){var e=window.matchMedia(`(prefers-reduced-motion: reduce)`),t=()=>{n(e.matches)};return e.addEventListener(`change`,t),()=>{e.removeEventListener(`change`,t)}}},[]),t}function wl(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tl(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}})),2),r=n[0],i=n[1];p.useEffect(()=>{var t=t=>{t.key===`Escape`&&i({dismissed:!0,dismissedAtCoordinate:{x:e.coordinate?.x??0,y:e.coordinate?.y??0}})};return document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`keydown`,t)}},[e.coordinate?.x,e.coordinate?.y]),r.dismissed&&((e.coordinate?.x??0)!==r.dismissedAtCoordinate.x||(e.coordinate?.y??0)!==r.dismissedAtCoordinate.y)&&i(Tl(Tl({},r),{},{dismissed:!1}));var a=hl({allowEscapeViewBox:e.allowEscapeViewBox,coordinate:e.coordinate,offsetLeft:typeof e.offset==`number`?e.offset:e.offset.x,offsetTop:typeof e.offset==`number`?e.offset:e.offset.y,position:e.position,reverseDirection:e.reverseDirection,tooltipBox:e.lastBoundingBox,useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),o=a.cssClasses,s=a.cssProperties,c=Tl(Tl({},e.hasPortalFromProps?{}:Tl(Tl({transition:Fl({prefersReducedMotion:t,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},s),{},{pointerEvents:`none`,position:`absolute`,top:0,left:0})),{},{visibility:!r.dismissed&&e.active&&e.hasPayload?`visible`:`hidden`},e.wrapperStyle);return p.createElement(`div`,{xmlns:`http://www.w3.org/1999/xhtml`,tabIndex:-1,className:o,style:c,ref:e.innerRef},e.children)}var Ll=p.memo(Il),Rl=()=>z(e=>e.rootProps.accessibilityLayer)??!0;function zl(){return zl=Object.assign?Object.assign.bind():function(e){for(var t=1;tU(e.x)&&U(e.y),ql=e=>e.base!=null&&Kl(e.base)&&Kl(e),Jl=e=>e.x,Yl=e=>e.y,Xl=(e,t)=>{if(typeof e==`function`)return e;var n=`curve${ye(e)}`;if((n===`curveMonotone`||n===`curveBump`)&&t){var r=Gl[`${n}${t===`vertical`?`Y`:`X`}`];if(r)return r}return Gl[n]||He},Zl={connectNulls:!1,type:`linear`},Ql=e=>{var t=e.type,n=t===void 0?Zl.type:t,r=e.points,i=r===void 0?[]:r,a=e.baseLine,o=e.layout,s=e.connectNulls,c=s===void 0?Zl.connectNulls:s,l=Xl(n,o),u=c?i.filter(Kl):i;if(Array.isArray(a)){var d,f=i.map((e,t)=>Vl(Vl({},e),{},{base:a[t]}));return d=o===`vertical`?Ke().y(Yl).x1(Jl).x0(e=>e.base.x):Ke().x(Jl).y1(Yl).y0(e=>e.base.y),d.defined(ql).curve(l)(c?f.filter(ql):f)}return(o===`vertical`&&F(a)?Ke().y(Yl).x1(Jl).x0(a):F(a)?Ke().x(Jl).y1(Yl).y0(a):Ge().x(Jl).y(Yl)).defined(Kl).curve(l)(u)},$l=e=>{var t=e.className,n=e.points,r=e.path,i=e.pathRef,a=vc();if((!n||!n.length)&&!r)return null;var s={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||a,connectNulls:e.connectNulls},c=n&&n.length?Ql(s):r;return p.createElement(`path`,zl({},_(e),jt(e),{className:o(`recharts-curve`,t),d:c===null?void 0:c,ref:i}))},eu=[`x`,`y`,`top`,`left`,`width`,`height`,`className`];function tu(){return tu=Object.assign?Object.assign.bind():function(e){for(var t=1;t`M${e},${i}v${r}M${a},${t}h${n}`,uu=e=>{var t=e.x,n=t===void 0?0:t,r=e.y,i=r===void 0?0:r,a=e.top,s=a===void 0?0:a,c=e.left,l=c===void 0?0:c,u=e.width,d=u===void 0?0:u,f=e.height,m=f===void 0?0:f,h=e.className,g=su(e,eu),_=ru({x:n,y:i,top:s,left:l,width:d,height:m},g);return!F(n)||!F(i)||!F(d)||!F(m)||!F(s)||!F(l)?null:p.createElement(`path`,tu({},y(_),{className:o(`recharts-cross`,h),d:lu(n,i,d,m,s,l)}))};function du(e,t,n,r){var i=r/2;return{stroke:`none`,fill:`#ccc`,x:e===`horizontal`?t.x-i:n.left+.5,y:e===`horizontal`?n.top+.5:t.y-i,width:e===`horizontal`?r:n.width-1,height:e===`horizontal`?n.height-1:r}}var fu=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],pu=(e,t)=>e.map((e,n)=>e*t**n).reduce((e,t)=>e+t),mu=(e,t)=>n=>pu(fu(e,t),n),hu=(e,t)=>n=>pu([...fu(e,t).map((e,t)=>e*t).slice(1),0],n),gu=e=>{var t,n=e.split(`(`);if(n.length!==2||n[0]!==`cubic-bezier`)return null;var r=(t=n[1])==null||(t=t.split(`)`)[0])==null?void 0:t.split(`,`);if(r==null||r.length!==4)return null;var i=r.map(e=>parseFloat(e));return[i[0],i[1],i[2],i[3]]},_u=function(){var e=[...arguments];if(e.length===1)switch(e[0]){case`linear`:return[0,0,1,1];case`ease`:return[.25,.1,.25,1];case`ease-in`:return[.42,0,1,1];case`ease-out`:return[.42,0,.58,1];case`ease-in-out`:return[0,0,.58,1];default:var t=gu(e[0]);if(t)return t}return e.length===4?e:[0,0,1,1]},vu=(e,t,n,r)=>{var i=mu(e,n),a=mu(t,r),o=hu(e,n),s=e=>e>1?1:e<0?0:e,c=e=>{for(var t=e>1?1:e,n=t,r=0;r<8;++r){var c=i(n)-t,l=o(n);if(Math.abs(c-t)<1e-4||l<1e-4)return a(n);n=s(n-c/l)}return a(n)};return c.isStepper=!1,c},yu=function(){return vu(..._u(...arguments))},bu=function(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.stiff,n=t===void 0?100:t,r=e.damping,i=r===void 0?8:r,a=e.dt,o=a===void 0?16.67:a,s=1,c=[0],l=0,u=0,d=1e4,f=0;f{if(e<=0)return 0;if(e>=1)return s;var t=e*h,n=Math.floor(t),r=t-n;return(c[n]??0)+((c[n+1]??0)-(c[n]??0))*r}},xu=e=>{if(typeof e==`string`)switch(e){case`ease`:case`ease-in-out`:case`ease-out`:case`ease-in`:case`linear`:return yu(e);case`spring`:return bu();default:if(e.split(`(`)[0]===`cubic-bezier`)return yu(e)}return typeof e==`function`?e:null},Su=(0,p.createContext)((e,t,n)=>{var r,i=a=>{var o=t.tick(a);if(t.getState()===`active`){if(n(t.getInterpolated()),t.getProgress()===1){t.complete(),r=void 0;return}r=e.setTimeout(i,o);return}r=e.setTimeout(i,o)};return r=e.setTimeout(i,0),()=>r?.()});Su.Provider;function Cu(e){var t=(0,p.useContext)(Su);return(0,p.useMemo)(()=>e??t,[e,t])}function wu(e,t,n){return(t=Tu(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Tu(e){var t=Eu(e,`string`);return typeof t==`symbol`?t:t+``}function Eu(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var Du=`init`,Ou=`pending`,ku=`active`,Au=`completed`;function ju(e){return Math.max(0,e)}var Mu=class{getAnimationStartedTime(){return this.animationStartedTime}getBeginStartedTime(){return this.beginStartedTime}constructor(e){var t;wu(this,`state`,Du),this.animationId=e.animationId,this.onAnimationEnd=e.onAnimationEnd,this.animationDuration=ju(e.animationDuration),this.animationBegin=ju(e.animationBegin),this.progress=0,this.from=e.from,this.to=e.to,this.easing=e.easing,(t=e.onAnimationStart)==null||t.call(e)}getState(){return this.state}getEasing(){return this.easing}getAnimationDuration(){return this.animationDuration}tick(e){if(this.getState()===Du)return this.state=Ou,this.beginStartedTime=e,this.animationBegin;if(this.getState()===Ou){if(this.beginStartedTime==null)throw Error();var t=e-this.beginStartedTime;return t>=this.animationBegin?(this.state=ku,this.animationStartedTime=e,this.nextAnimationUpdate(0)):ju(this.animationBegin-t)}if(this.getState()===ku){if(this.animationStartedTime==null)throw Error();var n=e-this.animationStartedTime;return this.setProgress(n/this.animationDuration),this.nextAnimationUpdate(n)}return 0}setProgress(e){this.progress=Math.min(1,Math.max(0,e))}getProgress(){return this.progress}complete(){if(this.progress=1,this.state===`active`){var e;(e=this.onAnimationEnd)==null||e.call(this)}this.state=Au}getFrom(){return this.from}getTo(){return this.to}getAnimationId(){return this.animationId}getAnimationBegin(){return this.animationBegin}},Nu=class extends Mu{nextAnimationUpdate(){return 0}getInterpolated(){return this.easing(_e(this.getFrom(),this.getTo(),this.getProgress()))}},Pu=class{setTimeout(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=performance.now(),r=null,i=a=>{a-n>=t?e(a):r=requestAnimationFrame(i)};return r=requestAnimationFrame(i),()=>{r!=null&&cancelAnimationFrame(r)}}};function Fu(e,t){return Bu(e)||zu(e,t)||Lu(e,t)||Iu()}function Iu(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Lu(e,t){if(e){if(typeof e==`string`)return Ru(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ru(e,t):void 0}}function Ru(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{},onAnimationStart:()=>{}},Hu=0,Uu=1;function Wu(e){var t=zt(e,Vu),n=t.animationId,r=t.isActive,i=t.canBegin,a=t.duration,o=t.easing,s=t.begin,c=t.onAnimationEnd,l=t.onAnimationStart,u=t.children,d=Cl(),f=r===`auto`?!gl.isSsr&&!d:r,m=Cu(t.animationController),h=Fu((0,p.useState)(f?Hu:Uu),2),g=h[0],_=h[1];return(0,p.useEffect)(()=>{f||_(Uu)},[f]),(0,p.useEffect)(()=>{var e=xu(o);return!f||!i||e==null?xe:m(new Pu,new Nu({animationId:n,easing:e,animationDuration:a,animationBegin:s,onAnimationStart:l,onAnimationEnd:c,from:Hu,to:Uu}),_)},[m,n,f,i,a,o,s,l,c]),u(Number(g))}function Gu(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`animation-`,n=(0,p.useRef)(me(t)),r=(0,p.useRef)(e);return r.current!==e&&(n.current=me(t),r.current=e),n.current}var Ku=e=>e.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`),qu=(e,t,n)=>e.map(e=>`${Ku(e)} ${t}ms ${n}`).join(`,`),Ju=[`radius`],Yu=[`radius`],Xu,Zu,Qu,$u,ed,td,nd,rd,id,ad;function od(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function sd(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{var a=ce(n),o=ce(r),s=Math.min(Math.abs(a)/2,Math.abs(o)/2),c=o>=0?1:-1,l=a>=0?1:-1,u=+(o>=0&&a>=0||o<0&&a<0),d;if(s>0&&Array.isArray(i)){for(var f=[0,0,0,0],p=0,m=4;ps?s:h}d=P(Xu||=bd([`M`,`,`,``]),e,t+c*f[0]),f[0]>0&&(d+=P(Zu||=bd([`A `,`,`,`,0,0,`,`,`,`,`,``]),f[0],f[0],u,e+l*f[0],t)),d+=P(Qu||=bd([`L `,`,`,``]),e+n-l*f[1],t),f[1]>0&&(d+=P($u||=bd([`A `,`,`,`,0,0,`,`, - `,`,`,``]),f[1],f[1],u,e+n,t+c*f[1])),d+=P(ed||=bd([`L `,`,`,``]),e+n,t+r-c*f[2]),f[2]>0&&(d+=P(td||=bd([`A `,`,`,`,0,0,`,`, - `,`,`,``]),f[2],f[2],u,e+n-l*f[2],t+r)),d+=P(nd||=bd([`L `,`,`,``]),e+l*f[3],t+r),f[3]>0&&(d+=P(rd||=bd([`A `,`,`,`,0,0,`,`, - `,`,`,``]),f[3],f[3],u,e,t+r-c*f[3])),d+=`Z`}else if(s>0&&i===+i&&i>0){var g=Math.min(s,i);d=P(id||=bd(`M .,. - A .,.,0,0,.,.,. - L .,. - A .,.,0,0,.,.,. - L .,. - A .,.,0,0,.,.,. - L .,. - A .,.,0,0,.,.,. Z`.split(`.`)),e,t+c*g,g,g,u,e+l*g,t,e+n-l*g,t,g,g,u,e+n,t+c*g,e+n,t+r-c*g,g,g,u,e+n-l*g,t+r,e+l*g,t+r,g,g,u,e,t+r-c*g)}else d=P(ad||=bd([`M `,`,`,` h `,` v `,` h `,` Z`]),e,t,n,r,-n);return d},Sd={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:`ease`},Cd=e=>{var t=zt(e,Sd),n=(0,p.useRef)(null),r=md((0,p.useState)(-1),2),i=r[0],a=r[1];(0,p.useEffect)(()=>{if(n.current&&n.current.getTotalLength)try{var e=n.current.getTotalLength();e&&a(e)}catch{}},[]);var s=t.x,c=t.y,l=t.width,u=t.height,d=t.radius,f=t.className,m=t.animationEasing,h=t.animationDuration,g=t.animationBegin,_=t.isAnimationActive,v=t.isUpdateAnimationActive,b=(0,p.useRef)(l),x=(0,p.useRef)(u),S=(0,p.useRef)(s),C=(0,p.useRef)(c),w=Gu((0,p.useMemo)(()=>({x:s,y:c,width:l,height:u,radius:d}),[s,c,l,u,d]),`rectangle-`);if(s!==+s||c!==+c||l!==+l||u!==+u||l===0||u===0)return null;var T=o(`recharts-rectangle`,f);if(!v){var E=y(t);E.radius;var D=fd(E,Ju);return p.createElement(`path`,dd({},D,{x:ce(s),y:ce(c),width:ce(l),height:ce(u),radius:typeof d==`number`?d:void 0,className:T,d:xd(s,c,l,u,d)}))}var O=b.current,k=x.current,A=S.current,j=C.current,M=`0px ${i===-1?1:i}px`,N=`${i}px ${i}px`,ee=qu([`strokeDasharray`],h,typeof m==`string`?m:Sd.animationEasing);return p.createElement(Wu,{animationId:w,key:w,canBegin:i>0,duration:h,easing:m,isActive:v,begin:g},e=>{var r=_e(O,l,e),i=_e(k,u,e),a=_e(A,s,e),o=_e(j,c,e);n.current&&(b.current=r,x.current=i,S.current=a,C.current=o);var f=_?e>0?{transition:ee,strokeDasharray:N}:{strokeDasharray:M}:{strokeDasharray:N},m=y(t);m.radius;var h=fd(m,Yu);return p.createElement(`path`,dd({},h,{radius:typeof d==`number`?d:void 0,className:T,d:xd(a,o,r,i,d),ref:n,style:sd(sd({},f),t.style)}))})};function wd(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Td(e){for(var t=1;te*180/Math.PI,jd=(e,t,n,r)=>({x:e+Math.cos(-kd*r)*n,y:t+Math.sin(-kd*r)*n}),Md=function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0,width:0,height:0,brushBottom:0};return Math.min(Math.abs(e-(n.left||0)-(n.right||0)),Math.abs(t-(n.top||0)-(n.bottom||0)))/2},Nd=(e,t)=>{var n=e.x,r=e.y,i=t.x,a=t.y;return Math.sqrt((n-i)**2+(r-a)**2)},Pd=(e,t)=>{var n=e.x,r=e.y,i=t.cx,a=t.cy,o=Nd({x:n,y:r},{x:i,y:a});if(o<=0)return{radius:o,angle:0};var s=(n-i)/o,c=Math.acos(s);return r>a&&(c=2*Math.PI-c),{radius:o,angle:Ad(c),angleInRadian:c}},Fd=e=>{var t=e.startAngle,n=e.endAngle,r=Math.floor(t/360),i=Math.floor(n/360),a=Math.min(r,i);return{startAngle:t-a*360,endAngle:n-a*360}},Id=(e,t)=>{var n=t.startAngle,r=t.endAngle,i=Math.floor(n/360),a=Math.floor(r/360);return e+Math.min(i,a)*360},Ld=(e,t)=>{var n=e.relativeX,r=e.relativeY,i=Pd({x:n,y:r},t),a=i.radius,o=i.angle,s=t.innerRadius,c=t.outerRadius;if(ac||a===0)return null;var l=Fd(t),u=l.startAngle,d=l.endAngle,f=o,p;if(u<=d){for(;f>d;)f-=360;for(;f=u&&f<=d}else{for(;f>u;)f-=360;for(;f=d&&f<=u}return p?Td(Td({},t),{},{radius:a,angle:Id(f,t)}):null};function Rd(e){var t=e.cx,n=e.cy,r=e.radius,i=e.startAngle,a=e.endAngle;return{points:[jd(t,n,r,i),jd(t,n,r,a)],cx:t,cy:n,radius:r,startAngle:i,endAngle:a}}var zd,Bd,Vd,Hd,Ud,Wd,Gd;function Kd(){return Kd=Object.assign?Object.assign.bind():function(e){for(var t=1;tle(t-e)*Math.min(Math.abs(t-e),359.999),Yd=e=>{var t=e.cx,n=e.cy,r=e.radius,i=e.angle,a=e.sign,o=e.isExternal,s=e.cornerRadius,c=e.cornerIsExternal,l=s*(o?1:-1)+r,u=Math.asin(s/l)/kd,d=c?i:i+a*u,f=jd(t,n,l,d),p=jd(t,n,r,d),m=c?i-a*u:i;return{center:f,circleTangency:p,lineTangency:jd(t,n,l*Math.cos(u*kd),m),theta:u}},Xd=e=>{var t=e.cx,n=e.cy,r=e.innerRadius,i=e.outerRadius,a=e.startAngle,o=e.endAngle,s=Jd(a,o),c=a+s,l=jd(t,n,i,a),u=jd(t,n,i,c),d=P(zd||=qd([`M `,`,`,` - A `,`,`,`,0, - `,`,`,`, - `,`,`,` - `]),l.x,l.y,i,i,+(Math.abs(s)>180),+(a>c),u.x,u.y);if(r>0){var f=jd(t,n,r,a),p=jd(t,n,r,c);d+=P(Bd||=qd([`L `,`,`,` - A `,`,`,`,0, - `,`,`,`, - `,`,`,` Z`]),p.x,p.y,r,r,+(Math.abs(s)>180),+(a<=c),f.x,f.y)}else d+=P(Vd||=qd([`L `,`,`,` Z`]),t,n);return d},Zd=e=>{var t=e.cx,n=e.cy,r=e.innerRadius,i=e.outerRadius,a=e.cornerRadius,o=e.forceCornerRadius,s=e.cornerIsExternal,c=e.startAngle,l=e.endAngle,u=le(l-c),d=Yd({cx:t,cy:n,radius:i,angle:c,sign:u,cornerRadius:a,cornerIsExternal:s}),f=d.circleTangency,p=d.lineTangency,m=d.theta,h=Yd({cx:t,cy:n,radius:i,angle:l,sign:-u,cornerRadius:a,cornerIsExternal:s}),g=h.circleTangency,_=h.lineTangency,v=h.theta,y=s?Math.abs(c-l):Math.abs(c-l)-m-v;if(y<0)return o?P(Hd||=qd([`M `,`,`,` - a`,`,`,`,0,0,1,`,`,0 - a`,`,`,`,0,0,1,`,`,0 - `]),p.x,p.y,a,a,a*2,a,a,-a*2):Xd({cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:c,endAngle:l});var b=P(Ud||=qd([`M `,`,`,` - A`,`,`,`,0,0,`,`,`,`,`,` - A`,`,`,`,0,`,`,`,`,`,`,`,` - A`,`,`,`,0,0,`,`,`,`,`,` - `]),p.x,p.y,a,a,+(u<0),f.x,f.y,i,i,+(y>180),+(u<0),g.x,g.y,a,a,+(u<0),_.x,_.y);if(r>0){var x=Yd({cx:t,cy:n,radius:r,angle:c,sign:u,isExternal:!0,cornerRadius:a,cornerIsExternal:s}),S=x.circleTangency,C=x.lineTangency,w=x.theta,T=Yd({cx:t,cy:n,radius:r,angle:l,sign:-u,isExternal:!0,cornerRadius:a,cornerIsExternal:s}),E=T.circleTangency,D=T.lineTangency,O=T.theta,k=s?Math.abs(c-l):Math.abs(c-l)-w-O;if(k<0&&a===0)return`${b}L${t},${n}Z`;b+=P(Wd||=qd([`L`,`,`,` - A`,`,`,`,0,0,`,`,`,`,`,` - A`,`,`,`,0,`,`,`,`,`,`,`,` - A`,`,`,`,0,0,`,`,`,`,`,`Z`]),D.x,D.y,a,a,+(u<0),E.x,E.y,r,r,+(k>180),+(u>0),S.x,S.y,a,a,+(u<0),C.x,C.y)}else b+=P(Gd||=qd([`L`,`,`,`Z`]),t,n);return b},Qd={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},$d=e=>{var t=zt(e,Qd),n=t.cx,r=t.cy,i=t.innerRadius,a=t.outerRadius,s=t.cornerRadius,c=t.forceCornerRadius,l=t.cornerIsExternal,u=t.startAngle,d=t.endAngle,f=t.className;if(a0&&Math.abs(u-d)<360?Zd({cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:Math.min(g,h/2),forceCornerRadius:c,cornerIsExternal:l,startAngle:u,endAngle:d}):Xd({cx:n,cy:r,innerRadius:i,outerRadius:a,startAngle:u,endAngle:d});return p.createElement(`path`,Kd({},y(t),{className:m,d:_}))};function ef(e,t,n){if(e===`horizontal`)return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e===`vertical`)return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(At(t)){if(e===`centric`){var r=t.cx,i=t.cy,a=t.innerRadius,o=t.outerRadius,s=t.angle,c=jd(r,i,a,s),l=jd(r,i,o,s);return[{x:c.x,y:c.y},{x:l.x,y:l.y}]}return Rd(t)}}function tf(e){return te(e)?NaN:Number(e)}function nf(e){return e?(e=tf(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}function rf(e,t,n){n&&typeof n!=`number`&&yr(e,t,n)&&(t=n=void 0),e=nf(e),t===void 0?(t=e,e=0):t=nf(t),n=n===void 0?ee.chartData,of=B([af],e=>{var t=e.chartData==null?0:e.chartData.length-1;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),sf=(e,t,n,r)=>r?of(e):af(e),cf=(e,t,n)=>n?of(e):af(e),lf=B([sf],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t==null?[]:t.slice(n,r+1)});B([of],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t==null?[]:t.slice(n,r+1)});var uf=B([af],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t==null?[]:t.slice(n,r+1)});function df(e,t){return gf(e)||hf(e,t)||pf(e,t)||ff()}function ff(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function pf(e,t){if(e){if(typeof e==`string`)return mf(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?mf(e,t):void 0}}function mf(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{(function(e){var n=1e9,r={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:`2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286`},i=!0,a=`[DecimalError] `,o=a+`Invalid argument: `,s=a+`Exponent out of range: `,c=Math.floor,l=Math.pow,u=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,d,f=1e7,p=7,m=9007199254740991,h=c(m/p),g={};g.absoluteValue=g.abs=function(){var e=new this.constructor(this);return e.s&&=1,e},g.comparedTo=g.cmp=function(e){var t,n,r,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(r=a.d.length,i=e.d.length,t=0,n=re.d[t]^a.s<0?1:-1;return r===i?0:r>i^a.s<0?1:-1},g.decimalPlaces=g.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*p;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n},g.dividedBy=g.div=function(e){return b(this,new this.constructor(e))},g.dividedToIntegerBy=g.idiv=function(e){var t=this,n=t.constructor;return D(b(t,new n(e),0,1),n.precision)},g.equals=g.eq=function(e){return!this.cmp(e)},g.exponent=function(){return S(this)},g.greaterThan=g.gt=function(e){return this.cmp(e)>0},g.greaterThanOrEqualTo=g.gte=function(e){return this.cmp(e)>=0},g.isInteger=g.isint=function(){return this.e>this.d.length-2},g.isNegative=g.isneg=function(){return this.s<0},g.isPositive=g.ispos=function(){return this.s>0},g.isZero=function(){return this.s===0},g.lessThan=g.lt=function(e){return this.cmp(e)<0},g.lessThanOrEqualTo=g.lte=function(e){return this.cmp(e)<1},g.logarithm=g.log=function(e){var t,n=this,r=n.constructor,o=r.precision,s=o+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(d))throw Error(a+`NaN`);if(n.s<1)throw Error(a+(n.s?`NaN`:`-Infinity`));return n.eq(d)?new r(0):(i=!1,t=b(T(n,s),T(e,s),s),i=!0,D(t,o))},g.minus=g.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?O(t,e):_(t,(e.s=-e.s,e))},g.modulo=g.mod=function(e){var t,n=this,r=n.constructor,o=r.precision;if(e=new r(e),!e.s)throw Error(a+`NaN`);return n.s?(i=!1,t=b(n,e,0,1).times(e),i=!0,n.minus(t)):D(new r(n),o)},g.naturalExponential=g.exp=function(){return x(this)},g.naturalLogarithm=g.ln=function(){return T(this)},g.negated=g.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e},g.plus=g.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?_(t,e):O(t,(e.s=-e.s,e))},g.precision=g.sd=function(e){var t,n,r,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(o+e);if(t=S(i)+1,r=i.d.length-1,n=r*p+1,r=i.d[r],r){for(;r%10==0;r/=10)n--;for(r=i.d[0];r>=10;r/=10)n++}return e&&t>n?t:n},g.squareRoot=g.sqrt=function(){var e,t,n,r,o,s,l,u=this,d=u.constructor;if(u.s<1){if(!u.s)return new d(0);throw Error(a+`NaN`)}for(e=S(u),i=!1,o=Math.sqrt(+u),o==0||o==1/0?(t=y(u.d),(t.length+e)%2==0&&(t+=`0`),o=Math.sqrt(t),e=c((e+1)/2)-(e<0||e%2),o==1/0?t=`5e`+e:(t=o.toExponential(),t=t.slice(0,t.indexOf(`e`)+1)+e),r=new d(t)):r=new d(o.toString()),n=d.precision,o=l=n+3;;)if(s=r,r=s.plus(b(u,s,l+2)).times(.5),y(s.d).slice(0,l)===(t=y(r.d)).slice(0,l)){if(t=t.slice(l-3,l+1),o==l&&t==`4999`){if(D(s,n+1,0),s.times(s).eq(u)){r=s;break}}else if(t!=`9999`)break;l+=4}return i=!0,D(r,n)},g.times=g.mul=function(e){var t,n,r,a,o,s,c,l,u,d=this,p=d.constructor,m=d.d,h=(e=new p(e)).d;if(!d.s||!e.s)return new p(0);for(e.s*=d.s,n=d.e+e.e,l=m.length,u=h.length,l=0;){for(t=0,a=l+r;a>r;)c=o[a]+h[r]*m[a-r-1]+t,o[a--]=c%f|0,t=c/f|0;o[a]=(o[a]+t)%f|0}for(;!o[--s];)o.pop();return t?++n:o.shift(),e.d=o,e.e=n,i?D(e,p.precision):e},g.toDecimalPlaces=g.todp=function(e,t){var r=this,i=r.constructor;return r=new i(r),e===void 0?r:(v(e,0,n),t===void 0?t=i.rounding:v(t,0,8),D(r,e+S(r)+1,t))},g.toExponential=function(e,t){var r,i=this,a=i.constructor;return e===void 0?r=k(i,!0):(v(e,0,n),t===void 0?t=a.rounding:v(t,0,8),i=D(new a(i),e+1,t),r=k(i,!0,e+1)),r},g.toFixed=function(e,t){var r,i,a=this,o=a.constructor;return e===void 0?k(a):(v(e,0,n),t===void 0?t=o.rounding:v(t,0,8),i=D(new o(a),e+S(a)+1,t),r=k(i.abs(),!1,e+S(i)+1),a.isneg()&&!a.isZero()?`-`+r:r)},g.toInteger=g.toint=function(){var e=this,t=e.constructor;return D(new t(e),S(e)+1,t.rounding)},g.toNumber=function(){return+this},g.toPower=g.pow=function(e){var t,n,r,o,s,l,u=this,f=u.constructor,h=12,g=+(e=new f(e));if(!e.s)return new f(d);if(u=new f(u),!u.s){if(e.s<1)throw Error(a+`Infinity`);return u}if(u.eq(d))return u;if(r=f.precision,e.eq(d))return D(u,r);if(t=e.e,n=e.d.length-1,l=t>=n,s=u.s,!l){if(s<0)throw Error(a+`NaN`)}else if((n=g<0?-g:g)<=m){for(o=new f(d),t=Math.ceil(r/p+4),i=!1;n%2&&(o=o.times(u),A(o.d,t)),n=c(n/2),n!==0;)u=u.times(u),A(u.d,t);return i=!0,e.s<0?new f(d).div(o):D(o,r)}return s=s<0&&e.d[Math.max(t,n)]&1?-1:1,u.s=1,i=!1,o=e.times(T(u,r+h)),i=!0,o=x(o),o.s=s,o},g.toPrecision=function(e,t){var r,i,a=this,o=a.constructor;return e===void 0?(r=S(a),i=k(a,r<=o.toExpNeg||r>=o.toExpPos)):(v(e,1,n),t===void 0?t=o.rounding:v(t,0,8),a=D(new o(a),e,t),r=S(a),i=k(a,e<=r||r<=o.toExpNeg,e)),i},g.toSignificantDigits=g.tosd=function(e,t){var r=this,i=r.constructor;return e===void 0?(e=i.precision,t=i.rounding):(v(e,1,n),t===void 0?t=i.rounding:v(t,0,8)),D(new i(r),e,t)},g.toString=g.valueOf=g.val=g.toJSON=function(){var e=this,t=S(e),n=e.constructor;return k(e,t<=n.toExpNeg||t>=n.toExpPos)};function _(e,t){var n,r,a,o,s,c,l,u,d=e.constructor,m=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),i?D(t,m):t;if(l=e.d,u=t.d,s=e.e,a=t.e,l=l.slice(),o=s-a,o){for(o<0?(r=l,o=-o,c=u.length):(r=u,a=s,c=l.length),s=Math.ceil(m/p),c=s>c?s+1:c+1,o>c&&(o=c,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for(c=l.length,o=u.length,c-o<0&&(o=c,r=u,u=l,l=r),n=0;o;)n=(l[--o]=l[o]+u[o]+n)/f|0,l[o]%=f;for(n&&(l.unshift(n),++a),c=l.length;l[--c]==0;)l.pop();return t.d=l,t.e=a,i?D(t,m):t}function v(e,t,n){if(e!==~~e||en)throw Error(o+e)}function y(e){var t,n,r,i=e.length-1,a=``,o=e[0];if(i>0){for(a+=o,t=1;tr?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function n(e,t,n){for(var r=0;n--;)e[n]-=r,r=+(e[n]1;)e.shift()}return function(r,i,o,s){var c,l,u,d,m,h,g,_,v,y,b,x,C,w,T,E,O,k,A=r.constructor,j=r.s==i.s?1:-1,M=r.d,N=i.d;if(!r.s)return new A(r);if(!i.s)throw Error(a+`Division by zero`);for(l=r.e-i.e,O=N.length,T=M.length,g=new A(j),_=g.d=[],u=0;N[u]==(M[u]||0);)++u;if(N[u]>(M[u]||0)&&--l,x=o==null?o=A.precision:s?o+(S(r)-S(i))+1:o,x<0)return new A(0);if(x=x/p+2|0,u=0,O==1)for(d=0,N=N[0],x++;(u1&&(N=e(N,d),M=e(M,d),O=N.length,T=M.length),w=O,v=M.slice(0,O),y=v.length;y=f/2&&++E;do d=0,c=t(N,v,O,y),c<0?(b=v[0],O!=y&&(b=b*f+(v[1]||0)),d=b/E|0,d>1?(d>=f&&(d=f-1),m=e(N,d),h=m.length,y=v.length,c=t(m,v,h,y),c==1&&(d--,n(m,O16)throw Error(s+S(e));if(!e.s)return new m(d);for(t==null?(i=!1,u=h):u=t,c=new m(.03125);e.abs().gte(.1);)e=e.times(c),p+=5;for(r=Math.log(l(2,p))/Math.LN10*2+5|0,u+=r,n=a=o=new m(d),m.precision=u;;){if(a=D(a.times(e),u),n=n.times(++f),c=o.plus(b(a,n,u)),y(c.d).slice(0,u)===y(o.d).slice(0,u)){for(;p--;)o=D(o.times(o),u);return m.precision=h,t==null?(i=!0,D(o,h)):o}o=c}}function S(e){for(var t=e.e*p,n=e.d[0];n>=10;n/=10)t++;return t}function C(e,t,n){if(t>e.LN10.sd())throw i=!0,n&&(e.precision=n),Error(a+`LN10 precision limit exceeded`);return D(new e(e.LN10),t)}function w(e){for(var t=``;e--;)t+=`0`;return t}function T(e,t){var n,r,o,s,c,l,u,f,p,m=1,h=10,g=e,_=g.d,v=g.constructor,x=v.precision;if(g.s<1)throw Error(a+(g.s?`NaN`:`-Infinity`));if(g.eq(d))return new v(0);if(t==null?(i=!1,f=x):f=t,g.eq(10))return t??(i=!0),C(v,f);if(f+=h,v.precision=f,n=y(_),r=n.charAt(0),s=S(g),Math.abs(s)<0x5543df729c000){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)g=g.times(e),n=y(g.d),r=n.charAt(0),m++;s=S(g),r>1?(g=new v(`0.`+n),s++):g=new v(r+`.`+n.slice(1))}else return u=C(v,f+2,x).times(s+``),g=T(new v(r+`.`+n.slice(1)),f-h).plus(u),v.precision=x,t==null?(i=!0,D(g,x)):g;for(l=c=g=b(g.minus(d),g.plus(d),f),p=D(g.times(g),f),o=3;;){if(c=D(c.times(p),f),u=l.plus(b(c,new v(o),f)),y(u.d).slice(0,f)===y(l.d).slice(0,f))return l=l.times(2),s!==0&&(l=l.plus(C(v,f+2,x).times(s+``))),l=b(l,new v(m),f),v.precision=x,t==null?(i=!0,D(l,x)):l;l=u,o+=2}}function E(e,t){var n,r,a;for((n=t.indexOf(`.`))>-1&&(t=t.replace(`.`,``)),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(a=t.length;t.charCodeAt(a-1)===48;)--a;if(t=t.slice(r,a),t){if(a-=r,n=n-r-1,e.e=c(n/p),e.d=[],r=(n+1)%p,n<0&&(r+=p),rh||e.e<-h))throw Error(s+n)}else e.s=0,e.e=0,e.d=[0];return e}function D(e,t,n){var r,a,o,u,d,m,g,_,v=e.d;for(u=1,o=v[0];o>=10;o/=10)u++;if(r=t-u,r<0)r+=p,a=t,g=v[_=0];else{if(_=Math.ceil((r+1)/p),o=v.length,_>=o)return e;for(g=o=v[_],u=1;o>=10;o/=10)u++;r%=p,a=r-p+u}if(n!==void 0&&(o=l(10,u-a-1),d=g/o%10|0,m=t<0||v[_+1]!==void 0||g%o,m=n<4?(d||m)&&(n==0||n==(e.s<0?3:2)):d>5||d==5&&(n==4||m||n==6&&(r>0?a>0?g/l(10,u-a):0:v[_-1])%10&1||n==(e.s<0?8:7))),t<1||!v[0])return m?(o=S(e),v.length=1,t=t-o-1,v[0]=l(10,(p-t%p)%p),e.e=c(-t/p)||0):(v.length=1,v[0]=e.e=e.s=0),e;if(r==0?(v.length=_,o=1,_--):(v.length=_+1,o=l(10,p-r),v[_]=a>0?(g/l(10,u-a)%l(10,a)|0)*o:0),m)for(;;)if(_==0){(v[0]+=o)==f&&(v[0]=1,++e.e);break}else{if(v[_]+=o,v[_]!=f)break;v[_--]=0,o=1}for(r=v.length;v[--r]===0;)v.pop();if(i&&(e.e>h||e.e<-h))throw Error(s+S(e));return e}function O(e,t){var n,r,a,o,s,c,l,u,d,m,h=e.constructor,g=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),i?D(t,g):t;if(l=e.d,m=t.d,r=t.e,u=e.e,l=l.slice(),s=u-r,s){for(d=s<0,d?(n=l,s=-s,c=m.length):(n=m,r=u,c=l.length),a=Math.max(Math.ceil(g/p),c)+2,s>a&&(s=a,n.length=1),n.reverse(),a=s;a--;)n.push(0);n.reverse()}else{for(a=l.length,c=m.length,d=a0;--a)l[c++]=0;for(a=m.length;a>s;){if(l[--a]0?a=a.charAt(0)+`.`+a.slice(1)+w(r):o>1&&(a=a.charAt(0)+`.`+a.slice(1)),a=a+(i<0?`e`:`e+`)+i):i<0?(a=`0.`+w(-i-1)+a,n&&(r=n-o)>0&&(a+=w(r))):i>=o?(a+=w(i+1-o),n&&(r=n-i-1)>0&&(a=a+`.`+w(r))):((r=i+1)0&&(i+1===o&&(a+=`.`),a+=w(r))),e.s<0?`-`+a:a}function A(e,t){if(e.length>t)return e.length=t,!0}function j(e){var t,n,r;function i(e){var t=this;if(!(t instanceof i))return new i(e);if(t.constructor=i,e instanceof i){t.s=e.s,t.e=e.e,t.d=(e=e.d)?e.slice():e;return}if(typeof e==`number`){if(e*0!=0)throw Error(o+e);if(e>0)t.s=1;else if(e<0)e=-e,t.s=-1;else{t.s=0,t.e=0,t.d=[0];return}if(e===~~e&&e<1e7){t.e=0,t.d=[e];return}return E(t,e.toString())}if(typeof e!=`string`)throw Error(o+e);if(e.charCodeAt(0)===45?(e=e.slice(1),t.s=-1):t.s=1,u.test(e))E(t,e);else throw Error(o+e)}if(i.prototype=g,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=j,i.config=i.set=M,e===void 0&&(e={}),e)for(r=[`precision`,`rounding`,`toExpNeg`,`toExpPos`,`LN10`],t=0;t=s[t+1]&&i<=s[t+2])this[r]=i;else throw Error(o+r+`: `+i)}if((i=e[r=`LN10`])!==void 0){if(i==Math.LN10)this[r]=new this(i);else throw Error(o+r+`: `+i)}return this}r=j(r),r.default=r.Decimal=r,d=new r(1),typeof define==`function`&&define.amd?define(function(){return r}):t!==void 0&&t.exports?t.exports=r:(e||=typeof self<`u`&&self&&self.self==self?self:Function(`return this`)(),e.Decimal=r)})(e)}))());function xf(e){return e===0?1:Math.floor(new K.default(e).abs().log(10).toNumber())+1}function Sf(e,t,n){for(var r=new K.default(e),i=0,a=[];r.lt(t)&&i<1e5;)a.push(r.toNumber()),r=r.add(n),i++;return a}function Cf(e,t){return Of(e)||Df(e,t)||Tf(e,t)||wf()}function wf(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Tf(e,t){if(e){if(typeof e==`string`)return Ef(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ef(e,t):void 0}}function Ef(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=Cf(e,2),n=t[0],r=t[1],i=n,a=r;return n>r&&(i=r,a=n),[i,a]},Af=(e,t,n)=>{if(e.lte(0))return new K.default(0);var r=xf(e.toNumber()),i=new K.default(10).pow(r),a=e.div(i),o=r===1?.1:.05,s=new K.default(Math.ceil(a.div(o).toNumber())).add(n).mul(o).mul(i);return t?new K.default(s.toNumber()):new K.default(Math.ceil(s.toNumber()))},jf=(e,t,n)=>{if(e.lte(0))return new K.default(0);var r=[1,2,2.5,5],i=e.toNumber(),a=Math.floor(new K.default(i).abs().log(10).toNumber()),o=new K.default(10).pow(a),s=e.div(o).toNumber(),c=r.findIndex(e=>e>=s-1e-10);if(c===-1&&(o=o.mul(10),c=0),c+=n,c>=r.length){var l=Math.floor(c/r.length);c%=r.length,o=o.mul(new K.default(10).pow(l))}var u=r[c]??1,d=new K.default(u).mul(o);return t?d:new K.default(Math.ceil(d.toNumber()))},Mf=(e,t,n)=>{var r=new K.default(1),i=new K.default(e);if(!i.isint()&&n){var a=Math.abs(e);a<1?(r=new K.default(10).pow(xf(e)-1),i=new K.default(Math.floor(i.div(r).toNumber())).mul(r)):a>1&&(i=new K.default(Math.floor(e)))}else e===0?i=new K.default(Math.floor((t-1)/2)):n||(i=new K.default(Math.floor(e)));for(var o=Math.floor((t-1)/2),s=[],c=0;c4&&arguments[4]!==void 0?arguments[4]:0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Af;if(!Number.isFinite((t-e)/(n-1)))return{step:new K.default(0),tickMin:new K.default(0),tickMax:new K.default(0)};var o=a(new K.default(t).sub(e).div(n-1),r,i),s;e<=0&&t>=0?s=new K.default(0):(s=new K.default(e).add(t).div(2),s=s.sub(new K.default(s).mod(o)));var c=Math.ceil(s.sub(e).div(o).toNumber()),l=Math.ceil(new K.default(t).sub(s).div(o).toNumber()),u=c+l+1;return u>n?Nf(e,t,n,r,i+1,a):(u0?l+(n-u):l,c=t>0?c:c+(n-u)),{step:o,tickMin:s.sub(new K.default(c).mul(o)),tickMax:s.add(new K.default(l).mul(o))})},Pf=function(e){var t=Cf(e,2),n=t[0],r=t[1],i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`auto`,s=Math.max(i,2),c=Cf(kf([n,r]),2),l=c[0],u=c[1];if(l===-1/0||u===1/0){var d=u===1/0?[l,...Array(i-1).fill(1/0)]:[...Array(i-1).fill(-1/0),u];return n>r?d.reverse():d}if(l===u)return Mf(l,i,a);var f=Nf(l,u,s,a,0,o===`snap125`?jf:Af),p=f.step,m=f.tickMin,h=f.tickMax,g=Sf(m,h.add(new K.default(.1).mul(p)),p);return n>r?g.reverse():g},Ff=function(e,t){var n=Cf(e,2),r=n[0],i=n[1],a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`auto`,s=Cf(kf([r,i]),2),c=s[0],l=s[1];if(c===-1/0||l===1/0)return[r,i];if(c===l)return[c];var u=o===`snap125`?jf:Af,d=Math.max(t,2),f=u(new K.default(l).sub(c).div(d-1),a,0),p=[...Sf(new K.default(c),new K.default(l),f),l];if(a===!1){p=p.map(e=>Math.round(e));var m=p.length-1;m>0&&p[m]===p[m-1]&&(p=p.slice(0,m))}return r>i?p.reverse():p},If=e=>e.rootProps.barCategoryGap,Lf=e=>e.rootProps.stackOffset,Rf=e=>e.rootProps.reverseStackOrder,zf=e=>e.options.chartName,Bf=e=>e.rootProps.syncId,Vf=e=>e.rootProps.syncMethod,Hf=e=>e.options.eventEmitter,Uf=e=>e.rootProps.baseValue,Wf={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},Gf={allowDecimals:!1,allowDuplicatedCategory:!0,allowDataOverflow:!1,angle:0,angleAxisId:0,axisLine:!0,axisLineType:`polygon`,cx:0,cy:0,hide:!1,includeHidden:!1,label:!1,niceTicks:`auto`,orientation:`outer`,reversed:!1,scale:`auto`,tick:!0,tickLine:!0,tickSize:8,type:`auto`,zIndex:Wf.axis},Kf={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,angle:0,axisLine:!0,includeHidden:!1,hide:!1,niceTicks:`auto`,label:!1,orientation:`right`,radiusAxisId:0,reversed:!1,scale:`auto`,stroke:`#ccc`,tick:!0,tickCount:5,tickLine:!0,type:`auto`,zIndex:Wf.axis},qf=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function Jf(e,t,n){if(n!==`auto`)return n;if(e!=null)return qo(e,t)?`category`:`number`}function Yf(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Xf(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},bc],(e,t)=>{if(e!=null)return e;var n=Jf(t,`angleAxis`,ep.type)??`category`;return Xf(Xf({},ep),{},{type:n})}),rp=B([(e,t)=>e.polarAxis.radiusAxis[t],bc],(e,t)=>{if(e!=null)return e;var n=Jf(t,`radiusAxis`,tp.type)??`category`;return Xf(Xf({},tp),{},{type:n})}),ip=e=>e.polarOptions,ap=B([us,ds,Ds],Md),op=B([ip,ap],(e,t)=>{if(e!=null)return he(e.innerRadius,t,0)}),sp=B([ip,ap],(e,t)=>{if(e!=null)return he(e.outerRadius,t,t*.8)}),cp=B([ip],e=>e==null?[0,0]:[e.startAngle,e.endAngle]);B([np,cp],qf);var lp=B([ap,op,sp],(e,t,n)=>{if(e!=null&&t!=null&&n!=null)return[t,n]});B([rp,lp],qf);var up=B([G,ip,op,sp,us,ds],(e,t,n,r,i,a)=>{if(!(e!==`centric`&&e!==`radial`||t==null||n==null||r==null)){var o=t.cx,s=t.cy,c=t.startAngle,l=t.endAngle;return{cx:he(o,i,i/2),cy:he(s,a,a/2),innerRadius:n,outerRadius:r,startAngle:c,endAngle:l,clockWise:!1}}}),dp=(e,t)=>t,fp=(e,t,n)=>n;function pp(e){return e?.id}function mp(e,t,n){var r=t.chartData,i=r===void 0?[]:r,a=n.allowDuplicatedCategory,o=n.dataKey,s=new Map;return e.forEach(e=>{var t=e.data??i;if(t!=null&&t.length!==0){var n=pp(e);t.forEach((t,r)=>{var i=o==null||a?r:String(W(t,o,null)),c=W(t,e.dataKey,0),l=s.has(i)?s.get(i):{};Object.assign(l,{[n]:c}),s.set(i,l)})}}),Array.from(s.values())}function hp(e){return`stackId`in e&&e.stackId!=null&&e.dataKey!=null}var gp=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function _p(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function vp(e,t){if(e.length===t.length){for(var n=0;n{var t=G(e);return t===`horizontal`?`xAxis`:t===`vertical`?`yAxis`:t===`centric`?`angleAxis`:`radiusAxis`},bp=e=>e.tooltip.settings.axisId;function xp(e){if(e!=null){var t=e.ticks,n=e.bandwidth,r=e.range(),i=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(()=>i),rangeMin:()=>i[0],rangeMax:()=>i[1],isInRange(e){var t=i[0],n=i[1];return t<=n?e>=t&&e<=n:e>=n&&e<=t},bandwidth:n?()=>n.call(e):void 0,ticks:t?n=>t.call(e,n):void 0,map:(t,n)=>{var r=e(t);if(r!=null){if(e.bandwidth&&n!=null&&n.position){var i=e.bandwidth();switch(n.position){case`middle`:r+=i/2;break;case`end`:r+=i}}return r}}}}}var Sp=(e,t)=>{if(t!=null)switch(e){case`linear`:if(!_f(t)){for(var n,r,i=0;ir)&&(r=a))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t;default:return t}};function Cp(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function wp(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function Tp(e){let t,n,r;e.length===2?(t=e===Cp||e===wp?e:Ep,n=e,r=e):(t=Cp,n=(t,n)=>Cp(e(t),n),r=(t,n)=>e(t)-n);function i(e,r,i=0,a=e.length){if(i>>1;n(e[t],r)<0?i=t+1:a=t}while(i>>1;n(e[t],r)<=0?i=t+1:a=t}while(in&&r(e[o-1],t)>-r(e[o],t)?o-1:o}return{left:i,center:o,right:a}}function Ep(){return 0}function Dp(e){return e===null?NaN:+e}function*Op(e,t){if(t===void 0)for(let t of e)t!=null&&(t=+t)>=t&&(yield t);else{let n=-1;for(let r of e)(r=t(r,++n,e))!=null&&(r=+r)>=r&&(yield r)}}var kp=Tp(Cp),Ap=kp.right;kp.left,Tp(Dp).center;var jp=class extends Map{constructor(e,t=Fp){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),e!=null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(Mp(this,e))}has(e){return super.has(Mp(this,e))}set(e,t){return super.set(Np(this,e),t)}delete(e){return super.delete(Pp(this,e))}};function Mp({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):n}function Np({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function Pp({_intern:e,_key:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function Fp(e){return typeof e==`object`&&e?e.valueOf():e}function Ip(e=Cp){if(e===Cp)return Lp;if(typeof e!=`function`)throw TypeError(`compare is not a function`);return(t,n)=>{let r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function Lp(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et))}var Rp=Math.sqrt(50),zp=Math.sqrt(10),Bp=Math.sqrt(2);function Vp(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/10**i,o=a>=Rp?10:a>=zp?5:a>=Bp?2:1,s,c,l;return i<0?(l=10**-i/o,s=Math.round(e*l),c=Math.round(t*l),s/lt&&--c,l=-l):(l=10**i*o,s=Math.round(e/l),c=Math.round(t/l),s*lt&&--c),c0))return[];if(e===t)return[e];let r=t=i))return[];let s=a-i+1,c=Array(s);if(r){if(o<0)for(let e=0;e=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n=i)&&(n=i)}return n}function Kp(e,t){let n;if(t===void 0)for(let t of e)t!=null&&(n>t||n===void 0&&t>=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function qp(e,t,n=0,r=1/0,i){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(i=i===void 0?Lp:Ip(i);r>n;){if(r-n>600){let a=r-n+1,o=t-n+1,s=Math.log(a),c=.5*Math.exp(2*s/3),l=.5*Math.sqrt(s*c*(a-c)/a)*(o-a/2<0?-1:1),u=Math.max(n,Math.floor(t-o*c/a+l)),d=Math.min(r,Math.floor(t+(a-o)*c/a+l));qp(e,t,u,d,i)}let a=e[t],o=n,s=r;for(Jp(e,n,t),i(e[r],a)>0&&Jp(e,n,r);o0;)--s}i(e[n],a)===0?Jp(e,n,s):(++s,Jp(e,s,r)),s<=t&&(n=s+1),t<=s&&(r=s-1)}return e}function Jp(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}function Yp(e,t,n){if(e=Float64Array.from(Op(e,n)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return Kp(e);if(t>=1)return Gp(e);var r,i=(r-1)*t,a=Math.floor(i),o=Gp(qp(e,a).subarray(0,a+1));return o+(Kp(e.subarray(a+1))-o)*(i-a)}}function Xp(e,t,n=Dp){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,i=(r-1)*t,a=Math.floor(i),o=+n(e[a],a,e);return o+(+n(e[a+1],a+1,e)-o)*(i-a)}}function Zp(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Dm(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Dm(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=mm.exec(e))?new Am(t[1],t[2],t[3],1):(t=hm.exec(e))?new Am(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=gm.exec(e))?Dm(t[1],t[2],t[3],t[4]):(t=_m.exec(e))?Dm(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=vm.exec(e))?Lm(t[1],t[2]/100,t[3]/100,1):(t=ym.exec(e))?Lm(t[1],t[2]/100,t[3]/100,t[4]):bm.hasOwnProperty(e)?Em(bm[e]):e===`transparent`?new Am(NaN,NaN,NaN,0):null}function Em(e){return new Am(e>>16&255,e>>8&255,e&255,1)}function Dm(e,t,n,r){return r<=0&&(e=t=n=NaN),new Am(e,t,n,r)}function Om(e){return e instanceof sm||(e=Tm(e)),e?(e=e.rgb(),new Am(e.r,e.g,e.b,e.opacity)):new Am}function km(e,t,n,r){return arguments.length===1?Om(e):new Am(e,t,n,r??1)}function Am(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}am(Am,km,om(sm,{brighter(e){return e=e==null?lm:lm**+e,new Am(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?cm:cm**+e,new Am(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Am(Fm(this.r),Fm(this.g),Fm(this.b),Pm(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:jm,formatHex:jm,formatHex8:Mm,formatRgb:Nm,toString:Nm}));function jm(){return`#${Im(this.r)}${Im(this.g)}${Im(this.b)}`}function Mm(){return`#${Im(this.r)}${Im(this.g)}${Im(this.b)}${Im((isNaN(this.opacity)?1:this.opacity)*255)}`}function Nm(){let e=Pm(this.opacity);return`${e===1?`rgb(`:`rgba(`}${Fm(this.r)}, ${Fm(this.g)}, ${Fm(this.b)}${e===1?`)`:`, ${e})`}`}function Pm(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Fm(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Im(e){return e=Fm(e),(e<16?`0`:``)+e.toString(16)}function Lm(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Bm(e,t,n,r)}function Rm(e){if(e instanceof Bm)return new Bm(e.h,e.s,e.l,e.opacity);if(e instanceof sm||(e=Tm(e)),!e)return new Bm;if(e instanceof Bm)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n0&&c<1?0:o,new Bm(o,s,c,e.opacity)}function zm(e,t,n,r){return arguments.length===1?Rm(e):new Bm(e,t,n,r??1)}function Bm(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}am(Bm,zm,om(sm,{brighter(e){return e=e==null?lm:lm**+e,new Bm(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?cm:cm**+e,new Bm(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new Am(Um(e>=240?e-240:e+120,i,r),Um(e,i,r),Um(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Bm(Vm(this.h),Hm(this.s),Hm(this.l),Pm(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Pm(this.opacity);return`${e===1?`hsl(`:`hsla(`}${Vm(this.h)}, ${Hm(this.s)*100}%, ${Hm(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function Vm(e){return e=(e||0)%360,e<0?e+360:e}function Hm(e){return Math.max(0,Math.min(1,e||0))}function Um(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var Wm=e=>()=>e;function Gm(e,t){return function(n){return e+n*t}}function Km(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function qm(e){return(e=+e)==1?Jm:function(t,n){return n-t?Km(t,n,e):Wm(isNaN(t)?n:t)}}function Jm(e,t){var n=t-e;return n?Gm(e,n):Wm(isNaN(e)?t:e)}var Ym=(function e(t){var n=qm(t);function r(e,t){var r=n((e=km(e)).r,(t=km(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=Jm(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function Xm(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;in&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:eh(r,i)})),n=rh.lastIndex;return nt&&(n=e,e=t,t=n),function(n){return Math.max(e,Math.min(t,n))}}function gh(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return i2?_h:gh,c=l=null,d}function d(i){return i==null||isNaN(i=+i)?a:(c||=s(e.map(r),t,n))(r(o(i)))}return d.invert=function(n){return o(i((l||=s(t,e.map(r),eh))(n)))},d.domain=function(t){return arguments.length?(e=Array.from(t,dh),u()):e.slice()},d.range=function(e){return arguments.length?(t=Array.from(e),u()):t.slice()},d.rangeRound=function(e){return t=Array.from(e),n=ch,u()},d.clamp=function(e){return arguments.length?(o=e?!0:ph,u()):o!==ph},d.interpolate=function(e){return arguments.length?(n=e,u()):n},d.unknown=function(e){return arguments.length?(a=e,d):a},function(e,t){return r=e,i=t,u()}}function bh(){return yh()(ph,ph)}function xh(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString(`en`).replace(/,/g,``):e.toString(10)}function Sh(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf(`e`),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Ch(e){return e=Sh(Math.abs(e)),e?e[1]:NaN}function wh(e,t){return function(n,r){for(var i=n.length,a=[],o=0,s=e[0],c=0;i>0&&s>0&&(c+s+1>r&&(s=Math.max(1,r-c)),a.push(n.substring(i-=s,i+s)),!((c+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function Th(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}var Eh=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Dh(e){if(!(t=Eh.exec(e)))throw Error(`invalid format: `+e);var t;return new Oh({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}Dh.prototype=Oh.prototype;function Oh(e){this.fill=e.fill===void 0?` `:e.fill+``,this.align=e.align===void 0?`>`:e.align+``,this.sign=e.sign===void 0?`-`:e.sign+``,this.symbol=e.symbol===void 0?``:e.symbol+``,this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?``:e.type+``}Oh.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?`0`:``)+(this.width===void 0?``:Math.max(1,this.width|0))+(this.comma?`,`:``)+(this.precision===void 0?``:`.`+Math.max(0,this.precision|0))+(this.trim?`~`:``)+this.type};function kh(e){out:for(var t=e.length,n=1,r=-1,i;n0&&(r=0)}return r>0?e.slice(0,r)+e.slice(i+1):e}var Ah;function jh(e,t){var n=Sh(e,t);if(!n)return Ah=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(Ah=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return a===o?r:a>o?r+Array(a-o+1).join(`0`):a>0?r.slice(0,a)+`.`+r.slice(a):`0.`+Array(1-a).join(`0`)+Sh(e,Math.max(0,t+a-1))[0]}function Mh(e,t){var n=Sh(e,t);if(!n)return e+``;var r=n[0],i=n[1];return i<0?`0.`+Array(-i).join(`0`)+r:r.length>i+1?r.slice(0,i+1)+`.`+r.slice(i+1):r+Array(i-r.length+2).join(`0`)}var Nh={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+``,d:xh,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Mh(e*100,t),r:Mh,s:jh,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Ph(e){return e}var Fh=Array.prototype.map,Ih=[`y`,`z`,`a`,`f`,`p`,`n`,`µ`,`m`,``,`k`,`M`,`G`,`T`,`P`,`E`,`Z`,`Y`];function Lh(e){var t=e.grouping===void 0||e.thousands===void 0?Ph:wh(Fh.call(e.grouping,Number),e.thousands+``),n=e.currency===void 0?``:e.currency[0]+``,r=e.currency===void 0?``:e.currency[1]+``,i=e.decimal===void 0?`.`:e.decimal+``,a=e.numerals===void 0?Ph:Th(Fh.call(e.numerals,String)),o=e.percent===void 0?`%`:e.percent+``,s=e.minus===void 0?`−`:e.minus+``,c=e.nan===void 0?`NaN`:e.nan+``;function l(e,l){e=Dh(e);var u=e.fill,d=e.align,f=e.sign,p=e.symbol,m=e.zero,h=e.width,g=e.comma,_=e.precision,v=e.trim,y=e.type;y===`n`?(g=!0,y=`g`):Nh[y]||(_===void 0&&(_=12),v=!0,y=`g`),(m||u===`0`&&d===`=`)&&(m=!0,u=`0`,d=`=`);var b=(l&&l.prefix!==void 0?l.prefix:``)+(p===`$`?n:p===`#`&&/[boxX]/.test(y)?`0`+y.toLowerCase():``),x=(p===`$`?r:/[%p]/.test(y)?o:``)+(l&&l.suffix!==void 0?l.suffix:``),S=Nh[y],C=/[defgprs%]/.test(y);_=_===void 0?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,_)):Math.max(0,Math.min(20,_));function w(e){var n=b,r=x,o,l,p;if(y===`c`)r=S(e)+r,e=``;else{e=+e;var w=e<0||1/e<0;if(e=isNaN(e)?c:S(Math.abs(e),_),v&&(e=kh(e)),w&&+e==0&&f!==`+`&&(w=!1),n=(w?f===`(`?f:s:f===`-`||f===`(`?``:f)+n,r=(y===`s`&&!isNaN(e)&&Ah!==void 0?Ih[8+Ah/3]:``)+r+(w&&f===`(`?`)`:``),C){for(o=-1,l=e.length;++op||p>57){r=(p===46?i+e.slice(o+1):e.slice(o))+r,e=e.slice(0,o);break}}}g&&!m&&(e=t(e,1/0));var T=n.length+e.length+r.length,E=T>1)+n+e+r+E.slice(T);break;default:e=E+n+e+r}return a(e)}return w.toString=function(){return e+``},w}function u(e,t){var n=Math.max(-8,Math.min(8,Math.floor(Ch(t)/3)))*3,r=10**-n,i=l((e=Dh(e),e.type=`f`,e),{suffix:Ih[8+n/3]});return function(e){return i(r*e)}}return{format:l,formatPrefix:u}}var Rh,zh,Bh;Vh({thousands:`,`,grouping:[3],currency:[`$`,``]});function Vh(e){return Rh=Lh(e),zh=Rh.format,Bh=Rh.formatPrefix,Rh}function Hh(e){return Math.max(0,-Ch(Math.abs(e)))}function Uh(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ch(t)/3)))*3-Ch(Math.abs(e)))}function Wh(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Ch(t)-Ch(e))+1}function Gh(e,t,n,r){var i=Wp(e,t,n),a;switch(r=Dh(r??`,f`),r.type){case`s`:var o=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=Uh(i,o))&&(r.precision=a),Bh(r,o);case``:case`e`:case`g`:case`p`:case`r`:r.precision==null&&!isNaN(a=Wh(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type===`e`));break;case`f`:case`%`:r.precision==null&&!isNaN(a=Hh(i))&&(r.precision=a-(r.type===`%`)*2)}return zh(r)}function Kh(e){var t=e.domain;return e.ticks=function(e){var n=t();return Hp(n[0],n[n.length-1],e??10)},e.tickFormat=function(e,n){var r=t();return Gh(r[0],r[r.length-1],e??10,n)},e.nice=function(n){n??=10;var r=t(),i=0,a=r.length-1,o=r[i],s=r[a],c,l,u=10;for(s0;){if(l=Up(o,s,n),l===c)return r[i]=o,r[a]=s,t(r);if(l>0)o=Math.floor(o/l)*l,s=Math.ceil(s/l)*l;else if(l<0)o=Math.ceil(o*l)/l,s=Math.floor(s*l)/l;else break;c=l}return e},e}function qh(){var e=bh();return e.copy=function(){return vh(e,qh())},Qp.apply(e,arguments),Kh(e)}function Jh(e){var t;function n(e){return e==null||isNaN(e=+e)?t:e}return n.invert=n,n.domain=n.range=function(t){return arguments.length?(e=Array.from(t,dh),n):e.slice()},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return Jh(e).unknown(t)},e=arguments.length?Array.from(e,dh):[0,1],Kh(n)}function Yh(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],o;return ae**+t}function ng(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function rg(e){return(t,n)=>-e(-t,n)}function ig(e){let t=e(Xh,Zh),n=t.domain,r=10,i,a;function o(){return i=ng(r),a=tg(r),n()[0]<0?(i=rg(i),a=rg(a),e(Qh,$h)):e(Xh,Zh),t}return t.base=function(e){return arguments.length?(r=+e,o()):r},t.domain=function(e){return arguments.length?(n(e),o()):n()},t.ticks=e=>{let t=n(),o=t[0],s=t[t.length-1],c=s0){for(;l<=u;++l)for(d=1;ds)break;m.push(f)}}else for(;l<=u;++l)for(d=r-1;d>=1;--d)if(f=l>0?d/a(-l):d*a(l),!(fs)break;m.push(f)}m.length*2{if(e??=10,n??=r===10?`s`:`,`,typeof n!=`function`&&(!(r%1)&&(n=Dh(n)).precision==null&&(n.trim=!0),n=zh(n)),e===1/0)return n;let o=Math.max(1,r*e/t.ticks().length);return e=>{let t=e/a(Math.round(i(e)));return t*rn(Yh(n(),{floor:e=>a(Math.floor(i(e))),ceil:e=>a(Math.ceil(i(e)))})),t}function ag(){let e=ig(yh()).domain([1,10]);return e.copy=()=>vh(e,ag()).base(e.base()),Qp.apply(e,arguments),e}function og(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function sg(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function cg(e){var t=1,n=e(og(t),sg(t));return n.constant=function(n){return arguments.length?e(og(t=+n),sg(t)):t},Kh(n)}function lg(){var e=cg(yh());return e.copy=function(){return vh(e,lg()).constant(e.constant())},Qp.apply(e,arguments)}function ug(e){return function(t){return t<0?-((-t)**+e):t**+e}}function dg(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function fg(e){return e<0?-e*e:e*e}function pg(e){var t=e(ph,ph),n=1;function r(){return n===1?e(ph,ph):n===.5?e(dg,fg):e(ug(n),ug(1/n))}return t.exponent=function(e){return arguments.length?(n=+e,r()):n},Kh(t)}function mg(){var e=pg(yh());return e.copy=function(){return vh(e,mg()).exponent(e.exponent())},Qp.apply(e,arguments),e}function hg(){return mg.apply(null,arguments).exponent(.5)}function gg(e){return Math.sign(e)*e*e}function _g(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function vg(){var e=bh(),t=[0,1],n=!1,r;function i(t){var i=_g(e(t));return isNaN(i)?r:n?Math.round(i):i}return i.invert=function(t){return e.invert(gg(t))},i.domain=function(t){return arguments.length?(e.domain(t),i):e.domain()},i.range=function(n){return arguments.length?(e.range((t=Array.from(n,dh)).map(gg)),i):t.slice()},i.rangeRound=function(e){return i.range(e).round(!0)},i.round=function(e){return arguments.length?(n=!!e,i):n},i.clamp=function(t){return arguments.length?(e.clamp(t),i):e.clamp()},i.unknown=function(e){return arguments.length?(r=e,i):r},i.copy=function(){return vg(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},Qp.apply(i,arguments),Kh(i)}function yg(){var e=[],t=[],n=[],r;function i(){var r=0,i=Math.max(1,t.length);for(n=Array(i-1);++r0?n[i-1]:e[0],i=n?[r[n-1],t]:[r[o-1],r[o]]},o.unknown=function(e){return arguments.length&&(a=e),o},o.thresholds=function(){return r.slice()},o.copy=function(){return bg().domain([e,t]).range(i).unknown(a)},Qp.apply(Kh(o),arguments)}function xg(){var e=[.5],t=[0,1],n,r=1;function i(i){return i!=null&&i<=i?t[Ap(e,i,0,r)]:n}return i.domain=function(n){return arguments.length?(e=Array.from(n),r=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(n){return arguments.length?(t=Array.from(n),r=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(n){var r=t.indexOf(n);return[e[r-1],e[r]]},i.unknown=function(e){return arguments.length?(n=e,i):n},i.copy=function(){return xg().domain(e).range(t).unknown(n)},Qp.apply(i,arguments)}var Sg=new Date,Cg=new Date;function q(e,t,n,r){function i(t){return e(t=arguments.length===0?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=n=>(e(n=new Date(n-1)),t(n,1),e(n),n),i.round=e=>{let t=i(e),n=i.ceil(e);return e-t(t(e=new Date(+e),n==null?1:Math.floor(n)),e),i.range=(n,r,a)=>{let o=[];if(n=i.ceil(n),a=a==null?1:Math.floor(a),!(n0))return o;let s;do o.push(s=new Date(+n)),t(n,a),e(n);while(sq(t=>{if(t>=t)for(;e(t),!n(t);)t.setTime(t-1)},(e,r)=>{if(e>=e){if(r<0)for(;++r<=0;)for(;t(e,-1),!n(e););else for(;--r>=0;)for(;t(e,1),!n(e););}}),n&&(i.count=(t,r)=>(Sg.setTime(+t),Cg.setTime(+r),e(Sg),e(Cg),Math.floor(n(Sg,Cg))),i.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?i.filter(r?t=>r(t)%e===0:t=>i.count(0,t)%e===0):i)),i}var wg=q(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);wg.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?q(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):wg),wg.range;var Tg=1e3,Eg=Tg*60,Dg=Eg*60,Og=Dg*24,kg=Og*7,Ag=Og*30,jg=Og*365,Mg=q(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*Tg)},(e,t)=>(t-e)/Tg,e=>e.getUTCSeconds());Mg.range;var Ng=q(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Tg)},(e,t)=>{e.setTime(+e+t*Eg)},(e,t)=>(t-e)/Eg,e=>e.getMinutes());Ng.range;var Pg=q(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Eg)},(e,t)=>(t-e)/Eg,e=>e.getUTCMinutes());Pg.range;var Fg=q(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Tg-e.getMinutes()*Eg)},(e,t)=>{e.setTime(+e+t*Dg)},(e,t)=>(t-e)/Dg,e=>e.getHours());Fg.range;var Ig=q(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*Dg)},(e,t)=>(t-e)/Dg,e=>e.getUTCHours());Ig.range;var Lg=q(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Eg)/Og,e=>e.getDate()-1);Lg.range;var Rg=q(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Og,e=>e.getUTCDate()-1);Rg.range;var zg=q(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Og,e=>Math.floor(e/Og));zg.range;function Bg(e){return q(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Eg)/kg)}var Vg=Bg(0),Hg=Bg(1),Ug=Bg(2),Wg=Bg(3),Gg=Bg(4),Kg=Bg(5),qg=Bg(6);Vg.range,Hg.range,Ug.range,Wg.range,Gg.range,Kg.range,qg.range;function Jg(e){return q(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/kg)}var Yg=Jg(0),Xg=Jg(1),Zg=Jg(2),Qg=Jg(3),$g=Jg(4),e_=Jg(5),t_=Jg(6);Yg.range,Xg.range,Zg.range,Qg.range,$g.range,e_.range,t_.range;var n_=q(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());n_.range;var r_=q(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());r_.range;var i_=q(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());i_.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:q(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)}),i_.range;var a_=q(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());a_.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:q(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)}),a_.range;function o_(e,t,n,r,i,a){let o=[[Mg,1,Tg],[Mg,5,5*Tg],[Mg,15,15*Tg],[Mg,30,30*Tg],[a,1,Eg],[a,5,5*Eg],[a,15,15*Eg],[a,30,30*Eg],[i,1,Dg],[i,3,3*Dg],[i,6,6*Dg],[i,12,12*Dg],[r,1,Og],[r,2,2*Og],[n,1,kg],[t,1,Ag],[t,3,3*Ag],[e,1,jg]];function s(e,t,n){let r=te).right(o,i);if(a===o.length)return e.every(Wp(t/jg,n/jg,r));if(a===0)return wg.every(Math.max(Wp(t,n,r),1));let[s,c]=o[i/o[a-1][2]53)return null;`w`in r||(r.w=1),`Z`in r?(a=f_(p_(r.y,0,1)),o=a.getUTCDay(),a=o>4||o===0?Xg.ceil(a):Xg(a),a=Rg.offset(a,(r.V-1)*7),r.y=a.getUTCFullYear(),r.m=a.getUTCMonth(),r.d=a.getUTCDate()+(r.w+6)%7):(a=d_(p_(r.y,0,1)),o=a.getDay(),a=o>4||o===0?Hg.ceil(a):Hg(a),a=Lg.offset(a,(r.V-1)*7),r.y=a.getFullYear(),r.m=a.getMonth(),r.d=a.getDate()+(r.w+6)%7)}else(`W`in r||`U`in r)&&(`w`in r||(r.w=`u`in r?r.u%7:+(`W`in r)),o=`Z`in r?f_(p_(r.y,0,1)).getUTCDay():d_(p_(r.y,0,1)).getDay(),r.m=0,r.d=`W`in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7);return`Z`in r?(r.H+=r.Z/100|0,r.M+=r.Z%100,f_(r)):d_(r)}}function w(e,t,n,r){for(var i=0,a=t.length,o=n.length,s,c;i=o)return-1;if(s=t.charCodeAt(i++),s===37){if(s=t.charAt(i++),c=x[s in h_?t.charAt(i++):s],!c||(r=c(e,n,r))<0)return-1}else if(s!=n.charCodeAt(r++))return-1}return r}function T(e,t,n){var r=l.exec(t.slice(n));return r?(e.p=u.get(r[0].toLowerCase()),n+r[0].length):-1}function E(e,t,n){var r=p.exec(t.slice(n));return r?(e.w=m.get(r[0].toLowerCase()),n+r[0].length):-1}function D(e,t,n){var r=d.exec(t.slice(n));return r?(e.w=f.get(r[0].toLowerCase()),n+r[0].length):-1}function O(e,t,n){var r=_.exec(t.slice(n));return r?(e.m=v.get(r[0].toLowerCase()),n+r[0].length):-1}function k(e,t,n){var r=h.exec(t.slice(n));return r?(e.m=g.get(r[0].toLowerCase()),n+r[0].length):-1}function A(e,n,r){return w(e,t,n,r)}function j(e,t,r){return w(e,n,t,r)}function M(e,t,n){return w(e,r,t,n)}function N(e){return o[e.getDay()]}function ee(e){return a[e.getDay()]}function te(e){return c[e.getMonth()]}function ne(e){return s[e.getMonth()]}function re(e){return i[+(e.getHours()>=12)]}function ie(e){return 1+~~(e.getMonth()/3)}function ae(e){return o[e.getUTCDay()]}function oe(e){return a[e.getUTCDay()]}function se(e){return c[e.getUTCMonth()]}function ce(e){return s[e.getUTCMonth()]}function P(e){return i[+(e.getUTCHours()>=12)]}function le(e){return 1+~~(e.getUTCMonth()/3)}return{format:function(e){var t=S(e+=``,y);return t.toString=function(){return e},t},parse:function(e){var t=C(e+=``,!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+=``,b);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+=``,!0);return t.toString=function(){return e},t}}}var h_={"-":``,_:` `,0:`0`},g_=/^\s*\d+/,__=/^%/,v_=/[\\^$*+?|[\]().{}]/g;function J(e,t,n){var r=e<0?`-`:``,i=(r?-e:e)+``,a=i.length;return r+(a[e.toLowerCase(),t]))}function S_(e,t,n){var r=g_.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function C_(e,t,n){var r=g_.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function w_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function T_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function E_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function D_(e,t,n){var r=g_.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function O_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function k_(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||`00`)),n+r[0].length):-1}function A_(e,t,n){var r=g_.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function j_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function M_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function N_(e,t,n){var r=g_.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function P_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function F_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function I_(e,t,n){var r=g_.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function L_(e,t,n){var r=g_.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function R_(e,t,n){var r=g_.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function z_(e,t,n){var r=__.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function B_(e,t,n){var r=g_.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function V_(e,t,n){var r=g_.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function H_(e,t){return J(e.getDate(),t,2)}function U_(e,t){return J(e.getHours(),t,2)}function W_(e,t){return J(e.getHours()%12||12,t,2)}function G_(e,t){return J(1+Lg.count(i_(e),e),t,3)}function K_(e,t){return J(e.getMilliseconds(),t,3)}function q_(e,t){return K_(e,t)+`000`}function J_(e,t){return J(e.getMonth()+1,t,2)}function Y_(e,t){return J(e.getMinutes(),t,2)}function X_(e,t){return J(e.getSeconds(),t,2)}function Z_(e){var t=e.getDay();return t===0?7:t}function Q_(e,t){return J(Vg.count(i_(e)-1,e),t,2)}function $_(e){var t=e.getDay();return t>=4||t===0?Gg(e):Gg.ceil(e)}function ev(e,t){return e=$_(e),J(Gg.count(i_(e),e)+(i_(e).getDay()===4),t,2)}function tv(e){return e.getDay()}function nv(e,t){return J(Hg.count(i_(e)-1,e),t,2)}function rv(e,t){return J(e.getFullYear()%100,t,2)}function iv(e,t){return e=$_(e),J(e.getFullYear()%100,t,2)}function av(e,t){return J(e.getFullYear()%1e4,t,4)}function ov(e,t){var n=e.getDay();return e=n>=4||n===0?Gg(e):Gg.ceil(e),J(e.getFullYear()%1e4,t,4)}function sv(e){var t=e.getTimezoneOffset();return(t>0?`-`:(t*=-1,`+`))+J(t/60|0,`0`,2)+J(t%60,`0`,2)}function cv(e,t){return J(e.getUTCDate(),t,2)}function lv(e,t){return J(e.getUTCHours(),t,2)}function uv(e,t){return J(e.getUTCHours()%12||12,t,2)}function dv(e,t){return J(1+Rg.count(a_(e),e),t,3)}function fv(e,t){return J(e.getUTCMilliseconds(),t,3)}function pv(e,t){return fv(e,t)+`000`}function mv(e,t){return J(e.getUTCMonth()+1,t,2)}function hv(e,t){return J(e.getUTCMinutes(),t,2)}function gv(e,t){return J(e.getUTCSeconds(),t,2)}function _v(e){var t=e.getUTCDay();return t===0?7:t}function vv(e,t){return J(Yg.count(a_(e)-1,e),t,2)}function yv(e){var t=e.getUTCDay();return t>=4||t===0?$g(e):$g.ceil(e)}function bv(e,t){return e=yv(e),J($g.count(a_(e),e)+(a_(e).getUTCDay()===4),t,2)}function xv(e){return e.getUTCDay()}function Sv(e,t){return J(Xg.count(a_(e)-1,e),t,2)}function Cv(e,t){return J(e.getUTCFullYear()%100,t,2)}function wv(e,t){return e=yv(e),J(e.getUTCFullYear()%100,t,2)}function Tv(e,t){return J(e.getUTCFullYear()%1e4,t,4)}function Ev(e,t){var n=e.getUTCDay();return e=n>=4||n===0?$g(e):$g.ceil(e),J(e.getUTCFullYear()%1e4,t,4)}function Dv(){return`+0000`}function Ov(){return`%`}function kv(e){return+e}function Av(e){return Math.floor(e/1e3)}var jv,Mv,Nv;Pv({dateTime:`%x, %X`,date:`%-m/%-d/%Y`,time:`%-I:%M:%S %p`,periods:[`AM`,`PM`],days:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],shortDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],shortMonths:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`]});function Pv(e){return jv=m_(e),Mv=jv.format,jv.parse,Nv=jv.utcFormat,jv.utcParse,jv}function Fv(e){return new Date(e)}function Iv(e){return e instanceof Date?+e:+new Date(+e)}function Lv(e,t,n,r,i,a,o,s,c,l){var u=bh(),d=u.invert,f=u.domain,p=l(`.%L`),m=l(`:%S`),h=l(`%I:%M`),g=l(`%I %p`),_=l(`%a %d`),v=l(`%b %d`),y=l(`%B`),b=l(`%Y`);function x(e){return(c(e)t(r/(e.length-1)))},n.quantiles=function(t){return Array.from({length:t+1},(n,r)=>Yp(e,r/t))},n.copy=function(){return qv(t).domain(e)},$p.apply(n,arguments)}function Jv(){var e=0,t=.5,n=1,r=1,i,a,o,s,c,l=ph,u,d=!1,f;function p(e){return isNaN(e=+e)?f:(e=.5+((e=+u(e))-a)*(r*enm,scaleDiverging:()=>Yv,scaleDivergingLog:()=>Xv,scaleDivergingPow:()=>Qv,scaleDivergingSqrt:()=>$v,scaleDivergingSymlog:()=>Zv,scaleIdentity:()=>Jh,scaleImplicit:()=>em,scaleLinear:()=>qh,scaleLog:()=>ag,scaleOrdinal:()=>tm,scalePoint:()=>im,scalePow:()=>mg,scaleQuantile:()=>yg,scaleQuantize:()=>bg,scaleRadial:()=>vg,scaleSequential:()=>Hv,scaleSequentialLog:()=>Uv,scaleSequentialPow:()=>Gv,scaleSequentialQuantile:()=>qv,scaleSequentialSqrt:()=>Kv,scaleSequentialSymlog:()=>Wv,scaleSqrt:()=>hg,scaleSymlog:()=>lg,scaleThreshold:()=>xg,scaleTime:()=>Rv,scaleUtc:()=>zv,tickFormat:()=>Gh});function ty(e){var t=ey;if(e in t&&typeof t[e]==`function`)return t[e]();var n=`scale${ye(e)}`;if(n in t&&typeof t[n]==`function`)return t[n]()}function ny(e,t,n){if(typeof e==`function`)return e.copy().domain(t).range(n);if(e!=null){var r=ty(e);if(r!=null)return r.domain(t).range(n),r}}function ry(e,t,n,r){if(n!=null&&r!=null)return typeof e.scale==`function`?ny(e.scale,n,r):ny(t,n,r)}function iy(e){return`scale${ye(e)}`}function ay(e){return iy(e)in ey}var oy=(e,t,n)=>{if(e!=null){var r=e.scale,i=e.type;if(r===`auto`)return i===`category`&&n&&(n.indexOf(`LineChart`)>=0||n.indexOf(`AreaChart`)>=0||n.indexOf(`ComposedChart`)>=0&&!t)?`point`:i===`category`?`band`:`linear`;if(typeof r==`string`)return ay(r)?r:`point`}};function sy(e,t){for(var n=0,r=e.length,i=e[0]t)?n=a+1:r=a}return n}function cy(e,t){if(e){var n=t??e.domain(),r=n.map(t=>e(t)??0),i=e.range();if(!(n.length===0||i.length<2))return e=>{var t=sy(r,e);if(t<=0)return n[0];if(t>=n.length)return n[n.length-1];var i=r[t-1]??0,a=r[t]??0;return Math.abs(e-i)<=Math.abs(e-a)?n[t-1]:n[t]}}}function ly(e){if(e!=null)return`invert`in e&&typeof e.invert==`function`?e.invert.bind(e):cy(e,void 0)}function uy(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function dy(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);ne.cartesianAxis.xAxis[t],Cy=(e,t)=>Sy(e,t)??Y,X={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:xy,hide:!0,id:0,includeHidden:!1,interval:`preserveEnd`,minTickGap:5,mirror:!1,name:void 0,orientation:`left`,padding:{top:0,bottom:0},reversed:!1,scale:`auto`,tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:`number`,unit:void 0,niceTicks:`auto`,width:60},wy=(e,t)=>e.cartesianAxis.yAxis[t],Ty=(e,t)=>wy(e,t)??X,Ey={domain:[0,`auto`],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:``,range:[64,64],scale:`auto`,type:`number`,unit:``},Dy=(e,t)=>e.cartesianAxis.zAxis[t]??Ey,Oy=(e,t,n)=>{switch(t){case`xAxis`:return Cy(e,n);case`yAxis`:return Ty(e,n);case`zAxis`:return Dy(e,n);case`angleAxis`:return np(e,n);case`radiusAxis`:return rp(e,n);default:throw Error(`Unexpected axis type: ${t}`)}},ky=(e,t,n)=>{switch(t){case`xAxis`:return Cy(e,n);case`yAxis`:return Ty(e,n);default:throw Error(`Unexpected axis type: ${t}`)}},Ay=(e,t,n)=>{switch(t){case`xAxis`:return Cy(e,n);case`yAxis`:return Ty(e,n);case`angleAxis`:return np(e,n);case`radiusAxis`:return rp(e,n);default:throw Error(`Unexpected axis type: ${t}`)}},jy=e=>e.graphicalItems.cartesianItems.some(e=>e.type===`bar`)||e.graphicalItems.polarItems.some(e=>e.type===`radialBar`);function My(e,t){return n=>{switch(e){case`xAxis`:return`xAxisId`in n&&n.xAxisId===t;case`yAxis`:return`yAxisId`in n&&n.yAxisId===t;case`zAxis`:return`zAxisId`in n&&n.zAxisId===t;case`angleAxis`:return`angleAxisId`in n&&n.angleAxisId===t;case`radiusAxis`:return`radiusAxisId`in n&&n.radiusAxisId===t;default:return!1}}}var Ny=e=>e.graphicalItems.cartesianItems,Py=B([dp,fp],My),Fy=(e,t,n)=>e.filter(n).filter(e=>t?.includeHidden===!0||!e.hide),Iy=B([Ny,Oy,Py],Fy,{memoizeOptions:{resultEqualityCheck:_p}}),Ly=B([Iy],e=>e.filter(e=>e.type===`area`||e.type===`bar`).filter(hp)),Ry=e=>e.filter(e=>!(`stackId`in e)||e.stackId===void 0),zy=B([Iy],Ry),By=e=>e.map(e=>e.data).filter(Boolean).flat(1),Vy=B([Iy],e=>e.some(e=>!e.data)),Hy=B([Iy],By,{memoizeOptions:{resultEqualityCheck:_p}}),Uy=(e,t)=>{var n=t.chartData,r=n===void 0?[]:n,i=t.dataStartIndex,a=t.dataEndIndex;return e.length>0?e:r.slice(i,a+1)},Wy=B([Hy,sf],Uy),Gy=(e,t,n)=>t?.dataKey==null?n.length>0?n.map(e=>e.dataKey).flatMap(t=>e.map(e=>({value:W(e,t)}))):e.map(e=>({value:e})):e.map(e=>({value:W(e,t.dataKey)})),Ky=(e,t,n,r,i,a)=>{var o=r.chartData,s=o===void 0?[]:o,c=r.dataStartIndex,l=r.dataEndIndex,u=Gy(e,t,n);return i&&t?.dataKey!=null&&a.length>0?[...s.slice(c,l+1).map(e=>({value:W(e,t.dataKey)})).filter(e=>e.value!=null),...u]:u},qy=B([Wy,Oy,Iy,sf,Vy,Hy],Ky);function Jy(e){if(fe(e)||e instanceof Date){var t=Number(e);if(U(t))return t}}function Yy(e){if(Array.isArray(e)){var t=[Jy(e[0]),Jy(e[1])];return _f(t)?t:void 0}var n=Jy(e);if(n!=null)return[n,n]}function Xy(e){return e.map(Jy).filter(be)}function Zy(e,t){var n=Jy(e),r=Jy(t);return n==null&&r==null?0:n==null?-1:r==null?1:n-r}var Qy=B([qy],e=>e?.map(e=>e.value).sort(Zy));function $y(e,t){switch(e){case`xAxis`:return t.direction===`x`;case`yAxis`:return t.direction===`y`;default:return!1}}function eb(e,t,n){if(!n||!n.length)return[];var r;if(typeof t==`number`&&!ue(t))r=t;else if(Array.isArray(t)){var i=Xy(t);i.length>0&&(r=Math.max(...i))}return r==null?[]:Xy(n.flatMap(t=>{var n=W(e,t.dataKey),i,a;if(Array.isArray(n)){var o=hy(n,2);i=o[0],a=o[1]}else i=a=n;if(!(!U(i)||!U(a)))return[r-i,r+a]}))}var Z=e=>Ay(e,yp(e),bp(e)),tb=B([Z],e=>e?.dataKey),nb=B([Ly,sf,Z],mp),rb=(e,t,n,r)=>{var i=t.reduce((e,t)=>{if(t.stackId==null)return e;var n=e[t.stackId];return n??=[],n.push(t),e[t.stackId]=n,e},{});return Object.fromEntries(Object.entries(i).map(t=>{var i=hy(t,2),a=i[0],o=i[1],s=r?[...o].reverse():o;return[a,{stackedData:Zo(e,s.map(pp),n),graphicalItems:s}]}))},ib=B([nb,Ly,Lf,Rf],rb),ab=(e,t,n,r)=>{var i=t.dataStartIndex,a=t.dataEndIndex;if(r==null&&n!==`zAxis`)return ns(e,i,a)},ob=B([Oy],e=>e.allowDataOverflow),sb=e=>{if(e==null||!(`domain`in e))return xy;if(e.domain!=null)return e.domain;if(`ticks`in e&&e.ticks!=null){if(e.type===`number`){var t=Xy(e.ticks);return[Math.min(...t),Math.max(...t)]}if(e.type===`category`)return e.ticks.map(String)}return e?.domain??xy},cb=B([Oy],sb),lb=B([cb,ob],yf),ub=B([ib,af,dp,lb],ab,{memoizeOptions:{resultEqualityCheck:gp}}),db=e=>e.errorBars,fb=(e,t,n)=>e.flatMap(e=>t[e.id]).filter(Boolean).filter(e=>$y(n,e)),pb=function(){var e=[...arguments].filter(Boolean);if(e.length!==0){var t=e.flat();return[Math.min(...t),Math.max(...t)]}},mb=function(e,t,n,r,i){var a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],o,s;if(n.length>0&&n.forEach(e=>{var n=e.data==null?a:[...e.data],c=r[e.id]?.filter(e=>$y(i,e));n.forEach(n=>{var r=W(n,t.dataKey??e.dataKey),i=eb(n,r,c);if(i.length>=2){var a=Math.min(...i),l=Math.max(...i);(o==null||as)&&(s=l)}var u=Yy(r);u!=null&&(o=o==null?u[0]:Math.min(o,u[0]),s=s==null?u[1]:Math.max(s,u[1]))})}),t?.dataKey!=null&&n.length===0&&e.forEach(e=>{var n=Yy(W(e,t.dataKey));n!=null&&(o=o==null?n[0]:Math.min(o,n[0]),s=s==null?n[1]:Math.max(s,n[1]))}),U(o)&&U(s))return[o,s]},hb=B([Wy,Oy,zy,db,dp,lf],mb,{memoizeOptions:{resultEqualityCheck:gp}});function gb(e){var t=e.value;if(fe(t)||t instanceof Date)return t}var _b=(e,t,n)=>{var r=e.map(gb).filter(e=>e!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&ge(r))?rf(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},vb=e=>e.referenceElements.dots,yb=(e,t,n)=>e.filter(e=>e.ifOverflow===`extendDomain`).filter(e=>t===`xAxis`?e.xAxisId===n:e.yAxisId===n),bb=B([vb,dp,fp],yb),xb=e=>e.referenceElements.areas,Sb=B([xb,dp,fp],yb),Cb=e=>e.referenceElements.lines,wb=B([Cb,dp,fp],yb),Tb=(e,t)=>{if(e!=null){var n=Xy(e.map(e=>t===`xAxis`?e.x:e.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},Eb=B(bb,dp,Tb),Db=(e,t)=>{if(e!=null){var n=Xy(e.flatMap(e=>[t===`xAxis`?e.x1:e.y1,t===`xAxis`?e.x2:e.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},Ob=B([Sb,dp],Db);function kb(e){if(e.x!=null)return Xy([e.x]);var t=e.segment?.map(e=>e.x);return t==null||t.length===0?[]:Xy(t)}function Ab(e){if(e.y!=null)return Xy([e.y]);var t=e.segment?.map(e=>e.y);return t==null||t.length===0?[]:Xy(t)}var jb=(e,t)=>{if(e!=null){var n=e.flatMap(e=>t===`xAxis`?kb(e):Ab(e));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},Mb=B(Eb,B([wb,dp],jb),Ob,(e,t,n)=>pb(e,n,t)),Nb=(e,t,n,r,i,a,o,s,c)=>{if(n!=null)return n;var l=o===`vertical`&&s===`xAxis`||o===`horizontal`&&s===`yAxis`?pb(r,a,i):pb(a,i),u=bf(t,l,e.allowDataOverflow);return u==null&&e.allowDataOverflow&&l==null&&c!=null?c:u},Pb=B([Oy,cb,lb,ub,hb,Mb,G,dp,B([Oy],e=>{if(!(e==null||e.type!==`number`||!(`ticks`in e)||e.ticks==null)){var t=Xy(e.ticks);if(t.length!==0)return[Math.min(...t),Math.max(...t)]}},{memoizeOptions:{resultEqualityCheck:gp}})],Nb,{memoizeOptions:{resultEqualityCheck:gp}}),Fb=[0,1],Ib=(e,t,n,r,i,a,o)=>{if(e!=null&&n!=null&&n.length!==0||o!==void 0){var s=e.dataKey,c=e.type,l=qo(t,a);return l&&s==null?rf(0,n?.length??0):c===`category`?_b(r,e,l):i===`expand`&&!l?Fb:o}},Lb=B([Oy,G,Wy,qy,Lf,dp,Pb],Ib),Rb=B([Oy,jy,zf],oy),zb=(e,t,n)=>{var r=t.niceTicks;if(r!==`none`){var i=sb(t),a=Array.isArray(i)&&(i[0]===`auto`||i[1]===`auto`);if((r===`snap125`||r===`adaptive`)&&t!=null&&t.tickCount&&_f(e)){if(a)return Pf(e,t.tickCount,t.allowDecimals,r);if(t.type===`number`)return Ff(e,t.tickCount,t.allowDecimals,r)}if(r===`auto`&&n===`linear`&&t!=null&&t.tickCount){if(a&&_f(e))return Pf(e,t.tickCount,t.allowDecimals,`adaptive`);if(t.type===`number`&&_f(e))return Ff(e,t.tickCount,t.allowDecimals,`adaptive`)}}},Bb=B([Lb,Ay,Rb],zb),Vb=(e,t,n,r)=>{if(r!==`angleAxis`&&e?.type===`number`&&_f(t)&&Array.isArray(n)&&n.length>0){var i=t[0],a=n[0]??0,o=t[1],s=n[n.length-1]??0;return[Math.min(i,a),Math.max(o,s)]}return t},Hb=B([Oy,Lb,Bb,dp],Vb),Ub=B(B(qy,Oy,(e,t)=>{if(!(!t||t.type!==`number`)){var n=1/0,r=Array.from(Xy(e.map(e=>e.value))).sort((e,t)=>e-t),i=r[0],a=r[r.length-1];if(i==null||a==null)return 1/0;var o=a-i;if(o===0)return 1/0;for(var s=0;si,(e,t,n,r,i)=>{if(!U(e))return 0;var a=t===`vertical`?r.height:r.width;if(i===`gap`)return e*a/2;if(i===`no-gap`){var o=he(n,e*a),s=e*a/2;return s-o-(s-o)/a*o}return 0}),Wb=(e,t,n)=>{var r=Cy(e,t);return r==null||typeof r.padding!=`string`?0:Ub(e,`xAxis`,t,n,r.padding)},Gb=(e,t,n)=>{var r=Ty(e,t);return r==null||typeof r.padding!=`string`?0:Ub(e,`yAxis`,t,n,r.padding)},Kb=B(Cy,Wb,(e,t)=>{if(e==null)return{left:0,right:0};var n=e.padding;return typeof n==`string`?{left:t,right:t}:{left:(n.left??0)+t,right:(n.right??0)+t}}),qb=B(Ty,Gb,(e,t)=>{if(e==null)return{top:0,bottom:0};var n=e.padding;return typeof n==`string`?{top:t,bottom:t}:{top:(n.top??0)+t,bottom:(n.bottom??0)+t}}),Jb=B([Ds,Kb,Ns,Ms,(e,t,n)=>n],(e,t,n,r,i)=>{var a=r.padding;return i?[a.left,n.width-a.right]:[e.left+t.left,e.left+e.width-t.right]}),Yb=B([Ds,G,qb,Ns,Ms,(e,t,n)=>n],(e,t,n,r,i,a)=>{var o=i.padding;return a?[r.height-o.bottom,o.top]:t===`horizontal`?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),Xb=(e,t,n,r)=>{switch(t){case`xAxis`:return Jb(e,n,r);case`yAxis`:return Yb(e,n,r);case`zAxis`:return Dy(e,n)?.range;case`angleAxis`:return cp(e);case`radiusAxis`:return lp(e,n);default:return}},Zb=B([Oy,Xb],qf),Qb=B([Oy,Rb,B([Rb,Hb],Sp),Zb],ry),$b=(e,t,n,r)=>{if(n!=null&&n.dataKey!=null){var i=n.type,a=n.scale;if(qo(e,r)&&(i===`number`||a!==`auto`))return t.map(e=>e.value)}},ex=B([G,qy,Ay,dp],$b),tx=B([Qb],xp);B([Qb],ly),B([Qb,Qy],cy),B([Iy,db,dp],fb);function nx(e,t){return e.idt.id)}var rx=(e,t)=>t,ix=(e,t,n)=>n,ax=B(ms,rx,ix,(e,t,n)=>e.filter(e=>e.orientation===t).filter(e=>e.mirror===n).sort(nx)),ox=B(hs,rx,ix,(e,t,n)=>e.filter(e=>e.orientation===t).filter(e=>e.mirror===n).sort(nx)),sx=(e,t)=>{var n=typeof t.height==`number`?t.height:30;return{width:e.width,height:n}},cx=(e,t)=>({width:typeof t.width==`number`?t.width:60,height:e.height}),lx=B(Ds,Cy,sx),ux=(e,t,n)=>{switch(t){case`top`:return e.top;case`bottom`:return n-e.bottom;default:return 0}},dx=(e,t,n)=>{switch(t){case`left`:return e.left;case`right`:return n-e.right;default:return 0}},fx=B(ds,Ds,ax,rx,ix,(e,t,n,r,i)=>{var a={},o;return n.forEach(n=>{var s=sx(t,n);o??=ux(t,r,e);var c=r===`top`&&!i||r===`bottom`&&i;a[n.id]=o-Number(c)*s.height,o+=(c?-1:1)*s.height}),a}),px=B(us,Ds,ox,rx,ix,(e,t,n,r,i)=>{var a={},o;return n.forEach(n=>{var s=cx(t,n);o??=dx(t,r,e);var c=r===`left`&&!i||r===`right`&&i;a[n.id]=o-Number(c)*s.width,o+=(c?-1:1)*s.width}),a}),mx=B([Ds,Cy,(e,t)=>{var n=Cy(e,t);if(n!=null)return fx(e,n.orientation,n.mirror)},(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n?.[r];return i==null?{x:e.left,y:0}:{x:e.left,y:i}}}),hx=B([Ds,Ty,(e,t)=>{var n=Ty(e,t);if(n!=null)return px(e,n.orientation,n.mirror)},(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n?.[r];return i==null?{x:0,y:e.top}:{x:i,y:e.top}}}),gx=B(Ds,Ty,(e,t)=>({width:typeof t.width==`number`?t.width:60,height:e.height})),_x=(e,t,n,r)=>{if(n!=null){var i=n.allowDuplicatedCategory,a=n.type,o=n.dataKey,s=qo(e,r),c=t.map(e=>e.value),l=c.filter(e=>e!=null);if(o&&s&&a===`category`&&i&&ge(l))return c}},vx=B([G,qy,Oy,dp],_x),yx=B([G,ky,Rb,tx,vx,ex,Xb,Bb,dp],(e,t,n,r,i,a,o,s,c)=>{if(t!=null){var l=qo(e,c);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:c,categoricalDomain:a,duplicateDomain:i,isCategorical:l,niceTicks:s,range:o,realScaleType:n,scale:r}}}),bx=B([G,Ay,Rb,tx,Bb,Xb,vx,ex,dp],(e,t,n,r,i,a,o,s,c)=>{if(t!=null&&r!=null){var l=qo(e,c),u=t.type,d=t.ticks,f=t.tickCount,p=n===`scaleBand`&&typeof r.bandwidth==`function`?r.bandwidth()/2:2,m=u===`category`&&r.bandwidth?r.bandwidth()/p:0;m=c===`angleAxis`&&a!=null&&a.length>=2?le(a[0]-a[1])*2*m:m;var h=d||i;return h?h.map((e,t)=>{var n=o?o.indexOf(e):e,i=r.map(n);return U(i)?{index:t,coordinate:i+m,value:e,offset:m}:null}).filter(be):l&&s?s.map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+m,value:e,index:t,offset:m}:null}).filter(be):r.ticks?r.ticks(f).map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+m,value:e,index:t,offset:m}:null}).filter(be):r.domain().map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+m,value:o?o[e]:e,index:t,offset:m}:null}).filter(be)}}),xx=B([G,Ay,tx,Xb,vx,ex,dp],(e,t,n,r,i,a,o)=>{if(t!=null&&n!=null&&r!=null&&r[0]!==r[1]){var s=qo(e,o),c=t.tickCount,l=0;return l=o===`angleAxis`&&r?.length>=2?le(r[0]-r[1])*2*l:l,s&&a?a.map((e,t)=>{var r=n.map(e);return U(r)?{coordinate:r+l,value:e,index:t,offset:l}:null}).filter(be):n.ticks?n.ticks(c).map((e,t)=>{var r=n.map(e);return U(r)?{coordinate:r+l,value:e,index:t,offset:l}:null}).filter(be):n.domain().map((e,t)=>{var r=n.map(e);return U(r)?{coordinate:r+l,value:i?i[e]:e,index:t,offset:l}:null}).filter(be)}}),Sx=B(Oy,tx,(e,t)=>{if(e!=null&&t!=null)return dy(dy({},e),{},{scale:t})});B((e,t,n)=>Dy(e,n),B([B([Oy,Rb,Lb,Zb],ry)],xp),(e,t)=>{if(e!=null&&t!=null)return dy(dy({},e),{},{scale:t})});var Cx=B([G,ms,hs],(e,t,n)=>{switch(e){case`horizontal`:return t.some(e=>e.reversed)?`right-to-left`:`left-to-right`;case`vertical`:return n.some(e=>e.reversed)?`bottom-to-top`:`top-to-bottom`;case`centric`:case`radial`:return`left-to-right`;default:return}});B([(e,t,n)=>e.renderedTicks[t]?.[n]],e=>{if(!(!e||e.length===0))return t=>{var n=1/0,r=e[0];for(var i of e){var a=Math.abs(i.coordinate-t);ae.options.defaultTooltipEventType,Tx=e=>e.options.validateTooltipEventTypes;function Ex(e,t,n){if(e==null)return t;var r=e?`axis`:`item`;return n==null?t:n.includes(r)?r:t}function Dx(e,t){return Ex(t,wx(e),Tx(e))}function Ox(e){return z(t=>Dx(t,e))}var kx=(e,t)=>{var n,r=Number(t);if(!(ue(r)||t==null))return r>=0?e==null||(n=e[r])==null?void 0:n.value:void 0},Ax=e=>e.tooltip.settings,jx={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},Mx=Ua({name:`tooltip`,initialState:{itemInteraction:{click:jx,hover:jx},axisInteraction:{click:jx,hover:jx},keyboardInteraction:jx,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:`hover`,axisId:0,active:!1,defaultIndex:void 0}},reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(V(t.payload))},prepare:H()},replaceTooltipEntrySettings:{reducer(e,t){var n=t.payload,r=n.prev,i=n.next,a=ha(e).tooltipItemPayloads.indexOf(V(r));a>-1&&(e.tooltipItemPayloads[a]=V(i))},prepare:H()},removeTooltipEntrySettings:{reducer(e,t){var n=ha(e).tooltipItemPayloads.indexOf(V(t.payload));n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:H()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),Nx=Mx.actions,Px=Nx.addTooltipEntrySettings,Fx=Nx.replaceTooltipEntrySettings,Ix=Nx.removeTooltipEntrySettings,Lx=Nx.setTooltipSettingsState,Rx=Nx.setActiveMouseOverItemIndex;Nx.mouseLeaveItem;var zx=Nx.mouseLeaveChart;Nx.setActiveClickItemIndex;var Bx=Nx.setMouseOverAxisIndex,Vx=Nx.setMouseClickAxisIndex,Hx=Nx.setSyncInteraction,Ux=Nx.setKeyboardInteraction,Wx=Mx.reducer;function Gx(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Kx(e){for(var t=1;t{if(t==null)return jx;var i=Xx(e,t,n);if(i==null)return jx;if(i.active)return i;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var a=e.settings.active===!0;if(Zx(i)){if(a)return Kx(Kx({},i),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Kx(Kx({},jx),{},{coordinate:i.coordinate})};function $x(e){if(typeof e==`number`)return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function eS(e,t){var n=$x(e),r=t[0],i=t[1];return n!==void 0&&n>=Math.min(r,i)&&n<=Math.max(r,i)}function tS(e,t,n){if(n==null||t==null)return!0;var r=W(e,t);return r==null||!_f(n)||eS(r,n)}var nS=(e,t,n,r)=>{var i=e?.index;if(i==null)return null;var a=Number(i);if(!U(a))return i;var o=0,s=1/0;t.length>0&&(s=t.length-1);var c=Math.max(o,Math.min(a,s)),l=t[c];return l==null||tS(l,n,r)?String(c):null},rS=(e,t,n,r,i,a,o)=>{if(a!=null){var s=o[0]?.getPosition(a);if(s!=null)return s;var c=i?.[Number(a)];if(c)switch(n){case`horizontal`:return{x:c.coordinate,y:(r.top+t)/2};default:return{x:(r.left+e)/2,y:c.coordinate}}}},iS=(e,t,n,r)=>{if(t===`axis`)return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var i=n===`hover`?e.itemInteraction.hover.graphicalItemId:e.itemInteraction.click.graphicalItemId;if(e.syncInteraction.active&&i==null)return e.tooltipItemPayloads;if(i==null&&(r!=null||e.keyboardInteraction.active)){var a=e.tooltipItemPayloads[0];return a==null?[]:[a]}return e.tooltipItemPayloads.filter(e=>e.settings?.graphicalItemId===i)},aS=e=>e.options.tooltipPayloadSearcher,oS=e=>e.tooltip;function sS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function cS(e){for(var t=1;te(t)}function hS(e){if(typeof e==`string`)return e}function gS(e){if(!(typeof e!=`object`||!e))return{name:`name`in e?fS(e.name):void 0,unit:`unit`in e?pS(e.unit):void 0,dataKey:`dataKey`in e?mS(e.dataKey):void 0,payload:`payload`in e?e.payload:void 0,color:`color`in e?hS(e.color):void 0,fill:`fill`in e?hS(e.fill):void 0}}function _S(e,t){return e??t}var vS=(e,t,n,r,i,a,o)=>{if(t!=null&&a!=null){var s=n.chartData,c=n.computedData,l=n.dataStartIndex,u=n.dataEndIndex;return e.reduce((e,n)=>{var d=n.dataDefinedOnItem,f=n.settings,p=_S(d,s),m=Array.isArray(p)?zo(p,l,u):p,h=f?.dataKey??r,g=f?.nameKey,_;return r&&Array.isArray(m)&&!Array.isArray(m[0])&&o===`axis`?(_=ve(m,r,i),_??=a(m,t,c,g)):_=a(m,t,c,g),Array.isArray(_)?_.forEach(t=>{var n=gS(t),r=n?.name,i=n?.dataKey,a=n?.payload,o=cS(cS({},f),{},{name:r,unit:n?.unit,color:n?.color??f?.color,fill:n?.fill??f?.fill});e.push(os({tooltipEntrySettings:o,dataKey:i,payload:a,value:W(a,i),name:r==null?void 0:String(r)}))}):e.push(os({tooltipEntrySettings:f,dataKey:h,payload:_,value:W(_,h),name:W(_,g)??f?.name})),e},[])}},yS=B([Z,jy,zf],oy),bS=B([B([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),Z,B([yp,bp],My)],Fy,{memoizeOptions:{resultEqualityCheck:_p}}),xS=B([bS],e=>e.filter(hp)),SS=B([bS],By,{memoizeOptions:{resultEqualityCheck:_p}}),CS=B([bS],e=>e.some(e=>!e.data)),wS=B([SS,af],Uy),TS=B([xS,af,Z],mp),ES=B([wS,Z,bS,af,CS,SS],Ky),DS=B([Z],sb),OS=B([DS,B([Z],e=>e.allowDataOverflow)],yf),kS=B([B([TS,B([bS],e=>e.filter(hp)),Lf,Rf],rb),af,yp,OS],ab),AS=B([wS,Z,B([bS],Ry),db,yp,uf],mb,{memoizeOptions:{resultEqualityCheck:gp}}),jS=B([B([vb,yp,bp],yb),yp],Tb),MS=B([B([xb,yp,bp],yb),yp],Db),NS=B([Z,G,wS,ES,Lf,yp,B([Z,DS,OS,kS,AS,B([jS,B([B([Cb,yp,bp],yb),yp],jb),MS],pb),G,yp],Nb)],Ib),PS=B([Z,NS,B([NS,Z,yS],zb),yp],Vb),FS=e=>Xb(e,yp(e),bp(e),!1),IS=B([Z,FS],qf),LS=B([B([Z,yS,PS,IS],ry)],xp),RS=B([G,Z,yS,LS,FS,B([G,ES,Z,yp],_x),B([G,ES,Z,yp],$b),yp],(e,t,n,r,i,a,o,s)=>{if(t){var c=t.type,l=qo(e,s);if(r){var u=n===`scaleBand`&&r.bandwidth?r.bandwidth()/2:2,d=c===`category`&&r.bandwidth?r.bandwidth()/u:0;return d=s===`angleAxis`&&i!=null&&i?.length>=2?le(i[0]-i[1])*2*d:d,l&&o?o.map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+d,value:e,index:t,offset:d}:null}).filter(be):r.domain().map((e,t)=>{var n=r.map(e);return U(n)?{coordinate:n+d,value:a?a[e]:e,index:t,offset:d}:null}).filter(be)}}}),zS=B([wx,Tx,Ax],(e,t,n)=>Ex(n.shared,e,t)),BS=e=>e.tooltip.settings.trigger,VS=e=>e.tooltip.settings.defaultIndex,HS=B([oS,zS,BS,VS],Qx),US=B([HS,wS,tb,NS],nS),WS=B([RS,US],kx),GS=B([HS],e=>{if(e)return e.dataKey}),KS=B([HS],e=>{if(e)return e.graphicalItemId}),qS=B([oS,zS,BS,VS],iS),JS=B([HS,B([us,ds,G,Ds,RS,VS,qS],rS)],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),YS=B([HS],e=>e?.active??!1),XS=B([B([qS,US,af,tb,WS,aS,zS],vS)],e=>{if(e!=null){var t=e.map(e=>e.payload).filter(e=>e!=null);return Array.from(new Set(t))}});function ZS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function QS(e){for(var t=1;tz(Z),rC=()=>{var e=nC(),t=z(RS),n=z(LS);return as(!e||!n?void 0:QS(QS({},e),{},{scale:n}),t)};function iC(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function aC(e){for(var t=1;t{var i=t.find(e=>e&&e.index===n);if(i){if(e===`horizontal`)return{x:i.coordinate,y:r.relativeY};if(e===`vertical`)return{x:r.relativeX,y:i.coordinate}}return{x:0,y:0}},uC=(e,t,n,r)=>{var i=t.find(e=>e&&e.index===n);if(i){if(e===`centric`){var a=i.coordinate,o=r.radius;return aC(aC(aC({},r),jd(r.cx,r.cy,o,a)),{},{angle:a,radius:o})}var s=i.coordinate,c=r.angle;return aC(aC(aC({},r),jd(r.cx,r.cy,s,c)),{},{angle:c,radius:s})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function dC(e,t){var n=e.relativeX,r=e.relativeY;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var fC=(e,t,n,r,i)=>{var a=t?.length??0;if(a<=1||e==null)return 0;if(r===`angleAxis`&&i!=null&&Math.abs(Math.abs(i[1]-i[0])-360)<=1e-6)for(var o=i[1]-i[0],s=(t,n,r)=>[e,e+o,e-o].some(e=>(r?e>=t:e>t)&&e<=n),c=0;c0?n[c-1]?.coordinate:n[a-1]?.coordinate,u=n[c]?.coordinate,d=c>=a-1?n[0]?.coordinate:n[c+1]?.coordinate,f=void 0;if(l!=null&&u!=null&&d!=null){if(le(u-l)!==le(d-u)){var p=[];if(le(d-u)===le(i[1]-i[0])){f=d;var m=u+i[1]-i[0];p[0]=Math.min(m,(m+l)/2),p[1]=Math.max(m,(m+l)/2)}else{f=l;var h=d+i[1]-i[0];p[0]=Math.min(u,(h+u)/2),p[1]=Math.max(u,(h+u)/2)}var g=[Math.min(u,(f+u)/2),Math.max(u,(f+u)/2)];if(s(g[0],g[1],!1)||s(p[0],p[1],!0))return n[c]?.index}else{var _=Math.min(l,d),v=Math.max(l,d);if(s((_+u)/2,(v+u)/2,!1))return n[c]?.index}}}else if(t)for(var y=0;y(b.coordinate+S.coordinate)/2||y>0&&y(b.coordinate+S.coordinate)/2&&e<=(b.coordinate+x.coordinate)/2)return b.index}}return-1},pC=()=>z(zf),mC=(e,t)=>t,hC=(e,t,n)=>n,gC=(e,t,n,r)=>r,_C=B(RS,e=>Er(e,e=>e.coordinate)),vC=B([oS,mC,hC,gC],Qx),yC=B([vC,wS,tb,NS],nS),bC=(e,t,n)=>{if(t!=null){var r=oS(e);return t===`axis`?n===`hover`?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n===`hover`?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},xC=B([oS,mC,hC,gC],iS),SC=B([us,ds,G,Ds,RS,gC,xC],rS),CC=B([vC,SC],(e,t)=>e.coordinate??t),wC=B([RS,yC],kx),TC=B([xC,yC,af,tb,wC,aS,mC],vS),EC=B([vC,yC],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),DC=(e,t,n,r,i,a,o)=>{if(!(!e||!n||!r||!i)&&dC(e,o)){var s=fC(cs(e,t),a,i,n,r),c=lC(t,i,s,e);return{activeIndex:String(s),activeCoordinate:c}}},OC=(e,t,n,r,i,a,o)=>{if(!(!e||!r||!i||!a||!n)){var s=Ld(e,n);if(s){var c=fC(ls(s,t),o,a,r,i),l=uC(t,a,c,s);return{activeIndex:String(c),activeCoordinate:l}}}},kC=(e,t,n,r,i,a,o,s)=>{if(!(!e||!t||!r||!i||!a))return t===`horizontal`||t===`vertical`?DC(e,t,r,i,a,o,s):OC(e,t,n,r,i,a,o)},AC=B(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),jC=B(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(e=>parseInt(e,10)).concat(Object.values(Wf));return Array.from(new Set(t)).sort((e,t)=>e-t)},{memoizeOptions:{resultEqualityCheck:vp}});function MC(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function NC(e){for(var t=1;tNC(NC({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),{})},RC=new Set(Object.values(Wf));function zC(e){return RC.has(e)}var BC=Ua({name:`zIndex`,initialState:LC,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:H()},unregisterZIndexPortal:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]&&(--e.zIndexMap[n].consumers,e.zIndexMap[n].consumers<=0&&!zC(n)&&delete e.zIndexMap[n])},prepare:H()},registerZIndexPortalElement:{reducer:(e,t)=>{var n=t.payload,r=n.zIndex,i=n.element,a=n.isPanorama;e.zIndexMap[r]?a?e.zIndexMap[r].panoramaElement=V(i):e.zIndexMap[r].element=V(i):e.zIndexMap[r]={consumers:0,element:a?void 0:V(i),panoramaElement:a?V(i):void 0}},prepare:H()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:H()}}}),VC=BC.actions,HC=VC.registerZIndexPortal,UC=VC.unregisterZIndexPortal,WC=VC.registerZIndexPortalElement,GC=VC.unregisterZIndexPortalElement,KC=BC.reducer,qC=n(c());function JC(e){var t=e.zIndex,n=e.children,r=xc()&&t!==void 0&&t!==0,i=js(),a=(0,p.useRef)(void 0),o=(0,p.useRef)(new Set),s=R(),c=z(e=>AC(e,t,i));if((0,p.useLayoutEffect)(()=>{if(!r){var e=o.current;e.forEach(e=>{s(UC({zIndex:e}))}),e.clear(),a.current=void 0;return}if(o.current.has(t)||(s(HC({zIndex:t})),o.current.add(t)),c){a.current=c;var n=o.current;n.forEach(e=>{e!==t&&(s(UC({zIndex:e})),n.delete(e))})}},[s,t,r,c]),(0,p.useLayoutEffect)(()=>{var e=o.current;return()=>{e.forEach(e=>{s(UC({zIndex:e}))}),e.clear()}},[s]),!r)return n;var l=c??a.current;return l?(0,qC.createPortal)(n,l):null}function YC(){return YC=Object.assign?Object.assign.bind():function(e){for(var t=1;t(0,p.useContext)(iw),ow=n(i(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!ue(n))return e[n]}},dw=Ua({name:`options`,initialState:{chartName:``,tooltipPayloadSearcher:()=>void 0,eventEmitter:void 0,defaultTooltipEventType:`axis`},reducers:{createEventEmitter:e=>{e.eventEmitter??=Symbol(`rechartsEventEmitter`)}}}),fw=dw.reducer,pw=dw.actions.createEventEmitter;function mw(e){return e.tooltip.syncInteraction}var hw=Ua({name:`chartData`,initialState:{chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},reducers:{setChartData(e,t){if(e.chartData=V(t.payload),t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var n=t.payload,r=n.startIndex,i=n.endIndex;r!=null&&(e.dataStartIndex=r),i!=null&&(e.dataEndIndex=i)}}}),gw=hw.actions,_w=gw.setChartData,vw=gw.setDataStartEndIndexes;gw.setComputedData;var yw=hw.reducer,bw=[`x`,`y`];function xw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Sw(e){for(var t=1;te.rootProps.className);(0,p.useEffect)(()=>{if(e==null)return xe;var s=(s,c,l)=>{if(t!==l&&e===s){if(c.payload.active===!1){n(Hx({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(r===`index`){var u;if(o&&c!=null&&(u=c.payload)!=null&&u.coordinate&&c.payload.sourceViewBox){var d=c.payload.coordinate,f=d.x,p=d.y,m=Ew(d,bw),h=c.payload.sourceViewBox,g=h.x,_=h.y,v=h.width,y=h.height,b=Sw(Sw({},m),{},{x:o.x+(v?(f-g)/v:0)*o.width,y:o.y+(y?(p-_)/y:0)*o.height});n(Sw(Sw({},c),{},{payload:Sw(Sw({},c.payload),{},{coordinate:b})}))}else n(c);return}if(i!=null){var x;typeof r==`function`?x=i[r(i,{activeTooltipIndex:c.payload.index==null?void 0:Number(c.payload.index),isTooltipActive:c.payload.active,activeIndex:c.payload.index==null?void 0:Number(c.payload.index),activeLabel:c.payload.label,activeDataKey:c.payload.dataKey,activeCoordinate:c.payload.coordinate})]:r===`value`&&(x=i.find(e=>String(e.value)===c.payload.label));var S=c.payload.coordinate;if(S==null||o==null){n(Hx({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(x==null){n(Hx({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:c.payload.sourceViewBox,graphicalItemId:void 0}));return}var C=S.x,w=S.y,T=Math.min(C,o.x+o.width),E=Math.min(w,o.y+o.height),D={x:a===`horizontal`?x.coordinate:T,y:a===`horizontal`?E:x.coordinate};n(Hx({active:c.payload.active,coordinate:D,dataKey:c.payload.dataKey,index:String(x.index),label:c.payload.label,sourceViewBox:c.payload.sourceViewBox,graphicalItemId:c.payload.graphicalItemId}))}}};return sw.on(cw,s),()=>{sw.off(cw,s)}},[s,n,t,e,r,i,a,o])}function kw(){var e=z(Bf),t=z(Hf),n=R();(0,p.useEffect)(()=>{if(e==null)return xe;var r=(r,i,a)=>{t!==a&&e===r&&n(vw(i))};return sw.on(lw,r),()=>{sw.off(lw,r)}},[n,t,e])}function Aw(){var e=R();(0,p.useEffect)(()=>{e(pw())},[e]),Ow(),kw()}function jw(e,t,n,r,i,a){var o=z(n=>bC(n,e,t)),s=z(KS),c=z(Hf),l=z(Bf),u=z(Vf),d=z(mw)?.sourceViewBox!=null,f=pc();(0,p.useEffect)(()=>{if(!d&&l!=null&&c!=null){var e=Hx({active:a,coordinate:n,dataKey:o,index:i,label:typeof r==`number`?String(r):r,sourceViewBox:f,graphicalItemId:s});sw.emit(cw,l,e,c)}},[d,n,o,s,i,r,c,l,u,a,f])}function Mw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Nw(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{S(Lx({shared:_,trigger:v,axisId:x,active:n,defaultIndex:C}))},[S,_,v,x,n,C]);var w=pc(),T=Rl(),E=Ox(_),D=z(e=>EC(e,E,v,C))??{},O=D.activeIndex,k=D.isActive,A=z(e=>TC(e,E,v,C)),j=z(e=>wC(e,E,v,C)),M=z(e=>CC(e,E,v,C)),N=A,ee=aw(),te=n??k??!1,ne=Lw(Rr([N,te]),2),re=ne[0],ie=ne[1],ae=E===`axis`?j:void 0;jw(E,v,M,ae,O,te);var oe=b??ee;if(oe==null||w==null||E==null)return null;var se=N??Gw;te||(se=Gw),s&&se.length&&(se=Xn(se.filter(e=>e.value!=null&&(e.hide!==!0||t.includeHidden)),u,Uw));var ce=se.length>0,P=Nw(Nw({},t),{},{payload:se,label:ae,active:te,activeIndex:O,coordinate:M,accessibilityLayer:T}),le=p.createElement(Ll,{allowEscapeViewBox:r,animationDuration:i,animationEasing:a,isAnimationActive:c,active:te,coordinate:M,hasPayload:ce,offset:l,position:d,reverseDirection:f,useTranslate3d:m,viewBox:w,wrapperStyle:h,lastBoundingBox:re,innerRef:ie,hasPortalFromProps:!!b},Ww(o,P));return p.createElement(p.Fragment,null,(0,qC.createPortal)(le,oe),te&&p.createElement(rw,{cursor:g,tooltipEventType:E,coordinate:M,payload:se,index:O}))}function Jw(e,t,n){return(t=Yw(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Yw(e){var t=Xw(e,`string`);return typeof t==`symbol`?t:t+``}function Xw(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var Zw=class{constructor(e){Jw(this,`cache`,new Map),this.maxSize=e}get(e){var t=this.cache.get(e);return t!==void 0&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.maxSize){var n=this.cache.keys().next().value;n!=null&&this.cache.delete(n)}this.cache.set(e,t)}clear(){this.cache.clear()}size(){return this.cache.size}};function Qw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function $w(e){for(var t=1;t{try{var n=document.getElementById(oT);n||(n=document.createElement(`span`),n.setAttribute(`id`,oT),n.setAttribute(`aria-hidden`,`true`),document.body.appendChild(n)),Object.assign(n.style,aT,t),n.textContent=`${e}`;var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},lT=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(e==null||gl.isSsr)return{width:0,height:0};if(!rT.enableCache)return cT(e,t);var n=sT(e,t),r=iT.get(n);if(r)return r;var i=cT(e,t);return iT.set(n,i),i},uT;function dT(e,t){return gT(e)||hT(e,t)||pT(e,t)||fT()}function fT(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function pT(e,t){if(e){if(typeof e==`string`)return mT(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?mT(e,t):void 0}}function mT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.children,n=e.breakAll,r=e.style;try{var i=[];return I(t)||(i=n?t.toString().split(``):t.toString().split(qT)),{wordsWithComputedWidth:i.map(e=>({word:e,width:lT(e,r).width})),spaceWidth:n?0:lT(`\xA0`,r).width}}catch{return null}};function YT(e){return e===`start`||e===`middle`||e===`end`||e===`inherit`}function XT(e){return I(e)||typeof e==`string`||typeof e==`number`||typeof e==`boolean`}var ZT=(e,t,n,r)=>e.reduce((e,i)=>{var a=i.word,o=i.width,s=e[e.length-1];if(s&&o!=null&&(t==null||r||s.width+o+ne.reduce((e,t)=>e.width>t.width?e:t),$T=`…`,eE=(e,t,n,r,i,a,o,s)=>{var c=JT({breakAll:n,style:r,children:e.slice(0,t)+$T});if(!c)return[!1,[]];var l=ZT(c.wordsWithComputedWidth,a,o,s);return[l.length>i||QT(l).width>Number(a),l]},tE=(e,t,n,r,i)=>{var a=e.maxLines,o=e.children,s=e.style,c=e.breakAll,l=F(a),u=String(o),d=ZT(t,r,n,i);if(!l||i||!(d.length>a||QT(d).width>Number(r)))return d;for(var f=0,p=u.length-1,m=0,h;f<=p&&m<=u.length-1;){var g=Math.floor((f+p)/2),_=VT(eE(u,g-1,c,s,a,r,n,i),2),v=_[0],y=_[1],b=VT(eE(u,g,c,s,a,r,n,i),1)[0];if(!v&&!b&&(f=g+1),v&&b&&(p=g-1),!v&&b){h=y;break}m++}return h||d},nE=e=>[{words:I(e)?[]:e.toString().split(qT),width:void 0}],rE=e=>{var t=e.width,n=e.scaleToFit,r=e.children,i=e.style,a=e.breakAll,o=e.maxLines;if((t||n)&&!gl.isSsr){var s,c,l=JT({breakAll:a,children:r,style:i});if(l){var u=l.wordsWithComputedWidth,d=l.spaceWidth;s=u,c=d}else return nE(r);return tE({breakAll:a,children:r,maxLines:o,style:i},s,c,t,!!n)}return nE(r)},iE=`#808080`,aE={angle:0,breakAll:!1,capHeight:`0.71em`,fill:iE,lineHeight:`1em`,scaleToFit:!1,textAnchor:`start`,verticalAnchor:`end`,x:0,y:0},oE=(0,p.forwardRef)((e,t)=>{var n=zt(e,aE),r=n.x,i=n.y,a=n.lineHeight,s=n.capHeight,c=n.fill,l=n.scaleToFit,u=n.textAnchor,d=n.verticalAnchor,f=zT(n,IT),m=(0,p.useMemo)(()=>rE({breakAll:f.breakAll,children:f.children,maxLines:f.maxLines,scaleToFit:l,style:f.style,width:f.width}),[f.breakAll,f.children,f.maxLines,l,f.style,f.width]),h=f.dx,g=f.dy,_=f.angle,v=f.className,b=f.breakAll,x=zT(f,LT);if(!fe(r)||!fe(i)||m.length===0)return null;var S=Number(r)+(F(h)?h:0),C=Number(i)+(F(g)?g:0);if(!U(S)||!U(C))return null;var w;switch(d){case`start`:w=FT(`calc(${s})`);break;case`middle`:w=FT(`calc(${(m.length-1)/2} * -${a} + (${s} / 2))`);break;default:w=FT(`calc(${m.length-1} * -${a})`)}var T=[],E=m[0];if(l&&E!=null){var D=E.width,O=f.width;T.push(`scale(${F(O)&&F(D)?O/D:1})`)}return _&&T.push(`rotate(${_}, ${S}, ${C})`),T.length&&(x.transform=T.join(` `)),p.createElement(`text`,RT({},y(x),{ref:t,x:S,y:C,className:o(`recharts-text`,v),textAnchor:u,fill:c.includes(`url`)?iE:c}),m.map((e,t)=>{var n=e.words.join(b?``:` `);return p.createElement(`tspan`,{x:S,dy:t===0?w:a,key:`${n}-${t}`},n)}))});oE.displayName=`Text`;var sE=[`labelRef`],cE=[`content`];function lE(e,t){if(e==null)return{};var n,r,i=uE(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var t=e.x,n=e.y,r=e.upperWidth,i=e.lowerWidth,a=e.width,o=e.height,s=e.children,c=(0,p.useMemo)(()=>({x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:o}),[t,n,r,i,a,o]);return p.createElement(_E.Provider,{value:c},s)},yE=()=>{var e=(0,p.useContext)(_E),t=pc();return e||(t?Se(t):void 0)},bE=(0,p.createContext)(null),xE=()=>{var e=(0,p.useContext)(bE),t=z(up);return e||t},SE=e=>{var t=e.value,n=e.formatter,r=I(e.children)?t:e.children;return typeof n==`function`?n(r):r},CE=e=>e!=null&&typeof e==`function`,wE=(e,t)=>le(t-e)*Math.min(Math.abs(t-e),360),TE=(e,t,n,r,i)=>{var a=e.offset,s=e.className,c=i.cx,l=i.cy,u=i.innerRadius,d=i.outerRadius,f=i.startAngle,m=i.endAngle,h=i.clockWise,g=(u+d)/2,_=wE(f,m),v=_>=0?1:-1,y,b;switch(t){case`insideStart`:y=f+v*a,b=h;break;case`insideEnd`:y=m-v*a,b=!h;break;case`end`:y=m+v*a,b=h;break;default:throw Error(`Unsupported position ${t}`)}b=_<=0?b:!b;var x=jd(c,l,g,y),S=jd(c,l,g,y+(b?1:-1)*359),C=`M${x.x},${x.y} - A${g},${g},0,1,${+!b}, - ${S.x},${S.y}`,w=I(e.id)?me(`recharts-radial-line-`):e.id;return p.createElement(`text`,gE({},r,{dominantBaseline:`central`,className:o(`recharts-radial-bar-label`,s)}),p.createElement(`defs`,null,p.createElement(`path`,{id:w,d:C})),p.createElement(`textPath`,{xlinkHref:`#${w}`},n))},EE=(e,t,n)=>{var r=e.cx,i=e.cy,a=e.innerRadius,o=e.outerRadius,s=(e.startAngle+e.endAngle)/2;if(n===`outside`){var c=jd(r,i,o+t,s),l=c.x;return{x:l,y:c.y,textAnchor:l>=r?`start`:`end`,verticalAnchor:`middle`}}if(n===`center`)return{x:r,y:i,textAnchor:`middle`,verticalAnchor:`middle`};if(n===`centerTop`)return{x:r,y:i,textAnchor:`middle`,verticalAnchor:`start`};if(n===`centerBottom`)return{x:r,y:i,textAnchor:`middle`,verticalAnchor:`end`};var u=jd(r,i,(a+o)/2,s);return{x:u.x,y:u.y,textAnchor:`middle`,verticalAnchor:`middle`}},DE=e=>e!=null&&`cx`in e&&F(e.cx),OE={angle:0,offset:5,zIndex:Wf.label,position:`middle`,textBreakAll:!1};function kE(e){if(!DE(e))return e;var t=e.cx,n=e.cy,r=e.outerRadius,i=r*2;return{x:t-r,y:n-r,width:i,upperWidth:i,lowerWidth:i,height:i}}function AE(e){var t=zt(e,OE),n=t.viewBox,r=t.parentViewBox,i=t.position,a=t.value,s=t.children,c=t.content,l=t.className,u=l===void 0?``:l,d=t.textBreakAll,f=t.labelRef,m=xE(),h=yE(),g=n==null?i===`center`?h:m??h:DE(n)?n:Se(n),_,v,b=kE(g);if(!g||I(a)&&I(s)&&!(0,p.isValidElement)(c)&&typeof c!=`function`)return null;var x=DE(g)&&(i===`insideStart`||i===`insideEnd`||i===`end`);if(DE(g))x||(v=EE(g,t.offset,t.position));else if(b){var S=Oe({viewBox:b,position:i,offset:t.offset,parentViewBox:DE(r)?void 0:r,clamp:!0});v=fE(fE({x:S.x,y:S.y,textAnchor:S.horizontalAnchor,verticalAnchor:S.verticalAnchor},S.width===void 0?{}:{width:S.width}),S.height===void 0?{}:{height:S.height})}var C=fE(fE(fE(fE({},v?.x===void 0?{}:{x:v.x}),v?.y===void 0?{}:{y:v.y}),t),{},{viewBox:g});if((0,p.isValidElement)(c)){C.labelRef;var w=lE(C,sE);return(0,p.cloneElement)(c,w)}if(typeof c==`function`){C.content;var T=lE(C,cE);if(_=(0,p.createElement)(c,T),(0,p.isValidElement)(_))return _}else _=SE(t);var E=y(t);return x&&DE(g)?TE(t,i,_,E,g):v==null?null:p.createElement(JC,{zIndex:t.zIndex},p.createElement(oE,gE({ref:f,className:o(`recharts-label`,u)},E,v,{textAnchor:YT(E.textAnchor)?E.textAnchor:v.textAnchor,breakAll:d}),_))}AE.displayName=`Label`;var jE=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?p.createElement(AE,gE({key:`label-implicit`},r)):fe(e)?p.createElement(AE,gE({key:`label-implicit`,value:e},r)):(0,p.isValidElement)(e)?e.type===AE?(0,p.cloneElement)(e,fE({key:`label-implicit`},r)):p.createElement(AE,gE({key:`label-implicit`,content:e},r)):CE(e)?p.createElement(AE,gE({key:`label-implicit`,content:e},r)):e&&typeof e==`object`?p.createElement(AE,gE({},e,{key:`label-implicit`},r)):null};function ME(e){var t=e.label,n=e.labelRef;return jE(t,yE(),n)||null}var NE=[`valueAccessor`],PE=[`dataKey`,`clockWise`,`id`,`textBreakAll`,`zIndex`];function FE(){return FE=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=Array.isArray(e.value)?e.value[e.value.length-1]:e.value;if(XT(t))return t},zE=(0,p.createContext)(void 0),BE=zE.Provider,VE=(0,p.createContext)(void 0);VE.Provider;function HE(){return(0,p.useContext)(zE)}function UE(){return(0,p.useContext)(VE)}function WE(e){var t=e.valueAccessor,n=t===void 0?RE:t,r=IE(e,NE),i=r.dataKey;r.clockWise;var a=r.id,o=r.textBreakAll,s=r.zIndex,c=IE(r,PE),l=HE(),u=UE(),d=l||u;return!d||!d.length?null:p.createElement(JC,{zIndex:s??Wf.label},p.createElement(A,{className:`recharts-label-list`},d.map((e,t)=>{var s=I(i)?n(e,t):W(e.payload,i),l=I(a)?{}:{id:`${a}-${t}`};return p.createElement(AE,FE({key:`label-${t}`},y(e),c,l,{fill:r.fill??e.fill,parentViewBox:e.parentViewBox,value:s,textBreakAll:o,viewBox:e.viewBox,index:t,zIndex:0}))})))}WE.displayName=`LabelList`;function GE(e){var t=e.label;return t?t===!0?p.createElement(WE,{key:`labelList-implicit`}):p.isValidElement(t)||CE(t)?p.createElement(WE,{key:`labelList-implicit`,content:t}):typeof t==`object`?p.createElement(WE,FE({key:`labelList-implicit`},t,{type:String(t.type)})):null:null}function KE(){return KE=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=e.cx,n=e.cy,r=e.r,i=e.className,a=o(`recharts-dot`,i);return F(t)&&F(n)&&F(r)?p.createElement(`circle`,KE({},_(e),jt(e),{className:a,cx:t,cy:n,r})):null},JE=Ua({name:`polarAxis`,initialState:{radiusAxis:{},angleAxis:{}},reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=V(t.payload)},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=V(t.payload)},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),YE=JE.actions;YE.addRadiusAxis,YE.removeRadiusAxis,YE.addAngleAxis,YE.removeAngleAxis;var XE=JE.reducer;function ZE(e){return e&&typeof e==`object`&&`className`in e&&typeof e.className==`string`?e.className:``}var QE=i((e=>{typeof Symbol==`function`&&Symbol.for}));i(((e,t)=>{t.exports=QE()}))();var $E=e=>e&&typeof e==`object`&&`clipDot`in e?!!e.clipDot:!0;function eD(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function tD(e){for(var t=1;t{r||(i.current===null?n(Px(t)):i.current!==t&&n(Fx({prev:i.current,next:t})),i.current=t)},[t,n,r]),(0,p.useLayoutEffect)(()=>()=>{i.current&&=(n(Ix(i.current)),null)},[n]),null}function fD(e){var t=e.legendPayload,n=R(),r=js(),i=(0,p.useRef)(null);return(0,p.useLayoutEffect)(()=>{r||(i.current===null?n(Tc(t)):i.current!==t&&n(Ec({prev:i.current,next:t})),i.current=t)},[n,r,t]),(0,p.useLayoutEffect)(()=>()=>{i.current&&=(n(Dc(i.current)),null)},[n]),null}function pD(e,t){return vD(e)||_D(e,t)||hD(e,t)||mD()}function mD(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hD(e,t){if(e){if(typeof e==`string`)return gD(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?gD(e,t):void 0}}function gD(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n2&&arguments[2]!==void 0?arguments[2]:[],r=[];for(var i of n)r.push({status:`removed`,prev:i});for(var a=0;ae[Math.floor(r*n)]),t)}function SD(e,t){return bD(t.map((t,n)=>e[n]),t)}function CD(e,t){for(var n=new Map,r=0;r{var a=n(e,t);if(a!=null){var o=r.get(a);if(o!==void 0)return i.add(a),o}}),o=[];for(var s of r){var c=pD(s,2),l=c[0],u=c[1];i.has(l)||o.push(u)}return bD(a,t,o)}function TD(e,t,n){return t==null?null:e==null?t.map(e=>({status:`added`,next:e})):n===`index`?xD(e,t):n===`append`?SD(e,t):wD(e,t,n)}function ED(e,t){var n=(0,p.useRef)(e),r=(0,p.useRef)(t.current),i=(0,p.useRef)(!0);n.current!==e&&(n.current=e,r.current=t.current,i.current=!1);var a=(0,p.useCallback)(function(e,n){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(n===0){i.current=!0;return}n===1&&(r.current=e),n>0&&i.current&&a&&(t.current=e)},[t]);return{startValue:r.current,syncStepValue:a}}function DD(e,t){return MD(e)||jD(e,t)||kD(e,t)||OD()}function OD(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kD(e,t){if(e){if(typeof e==`string`)return AD(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?AD(e,t):void 0}}function AD(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{typeof e==`function`&&e(),i(!0)},[e]),handleAnimationEnd:(0,p.useCallback)(()=>{typeof t==`function`&&t(),i(!1)},[t])}}function PD(e){var t=e.animationInput,n=e.animationIdPrefix,r=e.items,i=e.previousItemsRef,a=e.isAnimationActive,o=e.animationBegin,s=e.animationDuration,c=e.animationEasing,l=e.onAnimationStart,u=e.onAnimationEnd,d=e.animationInterpolateFn,f=e.animationMatchBy,m=e.shouldUpdatePreviousRef,h=e.children,g=e.layout,_=Gu(t,n),v=ED(_,i),y=v.startValue??null,b=TD(y,r,f??yD);return p.createElement(Wu,{animationId:_,begin:o,duration:s,isActive:a,easing:c,onAnimationEnd:u,onAnimationStart:l,key:_},e=>{var t=y==null,n=r==null?r:d(b,e,g),i=m?m(e):e>0;return v.syncStepValue(n,e,i),n==null?null:h(n,e,t)})}function FD(e,t){return BD(e)||zD(e,t)||LD(e,t)||ID()}function ID(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function LD(e,t){if(e){if(typeof e==`string`)return RD(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?RD(e,t):void 0}}function RD(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nFD(p.useState(()=>me(`uid-`)),1)[0]);function HD(e,t){var n=VD();return t||(e?`${e}-${n}`:n)}var UD=(0,p.createContext)(void 0),WD=e=>{var t=e.id,n=e.type,r=e.children,i=HD(`recharts-${n}`,t);return p.createElement(UD.Provider,{value:i},r(i))},GD=Ua({name:`graphicalItems`,initialState:{cartesianItems:[],polarItems:[]},reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(V(t.payload))},prepare:H()},replaceCartesianGraphicalItem:{reducer(e,t){var n=t.payload,r=n.prev,i=n.next,a=ha(e).cartesianItems.indexOf(V(r));a>-1&&(e.cartesianItems[a]=V(i))},prepare:H()},removeCartesianGraphicalItem:{reducer(e,t){var n=ha(e).cartesianItems.indexOf(V(t.payload));n>-1&&e.cartesianItems.splice(n,1)},prepare:H()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(V(t.payload))},prepare:H()},removePolarGraphicalItem:{reducer(e,t){var n=ha(e).polarItems.indexOf(V(t.payload));n>-1&&e.polarItems.splice(n,1)},prepare:H()},replacePolarGraphicalItem:{reducer(e,t){var n=t.payload,r=n.prev,i=n.next,a=ha(e).polarItems.indexOf(V(r));a>-1&&(e.polarItems[a]=V(i))},prepare:H()}}}),KD=GD.actions,qD=KD.addCartesianGraphicalItem,JD=KD.replaceCartesianGraphicalItem,YD=KD.removeCartesianGraphicalItem;KD.addPolarGraphicalItem,KD.removePolarGraphicalItem,KD.replacePolarGraphicalItem;var XD=GD.reducer,ZD=(0,p.memo)(e=>{var t=R(),n=(0,p.useRef)(null);return(0,p.useLayoutEffect)(()=>{n.current===null?t(qD(e)):n.current!==e&&t(JD({prev:n.current,next:e})),n.current=e},[t,e]),(0,p.useLayoutEffect)(()=>()=>{n.current&&=(t(YD(n.current)),null)},[t]),null}),QD=[`points`];function $D(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function eO(e){for(var t=1;t{var s=eO(eO(eO({r:3},o),f),{},{index:r,cx:e.x??void 0,cy:e.y??void 0,dataKey:a,value:e.value,payload:e.payload,points:t});return p.createElement(sO,{key:`dot-${r}`,option:n,dotProps:s,className:i})}),h={};return s&&c!=null&&(h.clipPath=`url(#clipPath-${d?``:`dots-`}${c})`),p.createElement(JC,{zIndex:u},p.createElement(A,iO({className:r},h),m))}function uO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function dO(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),us,ds],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),DO=()=>z(EO),OO=()=>z(XS);function kO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function AO(e){for(var t=1;t{var t=e.point,n=e.childIndex,r=e.mainColor,i=e.activeDot,a=e.dataKey,o=e.clipPath;if(i===!1||t.x==null||t.y==null)return null;var s=AO(AO(AO({},{index:n,dataKey:a,cx:t.x,cy:t.y,r:4,fill:r??`none`,strokeWidth:2,stroke:`#fff`,payload:t.payload,value:t.value}),v(i)),jt(i)),c=(0,p.isValidElement)(i)?(0,p.cloneElement)(i,s):typeof i==`function`?i(s):p.createElement(qE,s);return p.createElement(A,{className:`recharts-active-dot`,clipPath:o},c)};function FO(e){var t=e.points,n=e.mainColor,r=e.activeDot,i=e.itemDataKey,a=e.clipPath,o=e.zIndex,s=o===void 0?Wf.activeDot:o,c=z(US),l=OO();if(t==null||l==null)return null;var u=t.find(e=>l.includes(e.payload));return I(u)?null:p.createElement(JC,{zIndex:s},p.createElement(PO,{point:u,childIndex:Number(c),mainColor:n,dataKey:i,activeDot:r,clipPath:a}))}var IO=e=>{var t=e.chartData,n=R(),r=js();return(0,p.useEffect)(()=>r?()=>{}:(n(_w(t)),()=>{n(_w(void 0))}),[t,n,r]),null},LO={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},RO=Ua({name:`brush`,initialState:LO,reducers:{setBrushSettings(e,t){return t.payload==null?LO:t.payload}}});RO.actions.setBrushSettings;var zO=RO.reducer;function BO(e){return(e%180+180)%180}var VO=function(e){var t=e.width,n=e.height,r=BO(arguments.length>1&&arguments[1]!==void 0?arguments[1]:0)*Math.PI/180,i=Math.atan(n/t),a=r>i&&r{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=ha(e).dots.findIndex(e=>e===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=ha(e).areas.findIndex(e=>e===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(V(t.payload))},removeLine:(e,t)=>{var n=ha(e).lines.findIndex(e=>e===t.payload);n!==-1&&e.lines.splice(n,1)}}}),UO=HO.actions;UO.addDot,UO.removeDot,UO.addArea,UO.removeArea,UO.addLine,UO.removeLine;var WO=HO.reducer;function GO(e,t){return XO(e)||YO(e,t)||qO(e,t)||KO()}function KO(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function qO(e,t){if(e){if(typeof e==`string`)return JO(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?JO(e,t):void 0}}function JO(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.children,n=GO((0,p.useState)(`${me(`recharts`)}-clip`),1)[0],r=DO();if(r==null)return null;var i=r.x,a=r.y,o=r.width,s=r.height;return p.createElement(ZO.Provider,{value:n},p.createElement(`defs`,null,p.createElement(`clipPath`,{id:n},p.createElement(`rect`,{x:i,y:a,height:s,width:o}))),t)};function $O(){}function ek(e){if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null?!1:Object.prototype.toString.call(e)===`[object Object]`}function tk(e,t,n){return nk(e,t,void 0,void 0,void 0,void 0,n)}function nk(e,t,n,r,i,a,o){let s=o(e,t,n,r,i,a);if(s!==void 0)return s;if(typeof e==typeof t)switch(typeof e){case`bigint`:case`string`:case`boolean`:case`symbol`:case`undefined`:return e===t;case`number`:return e===t||Object.is(e,t);case`function`:return e===t;case`object`:return rk(e,t,a,o)}return rk(e,t,a,o)}function rk(e,t,n,r){if(Object.is(e,t))return!0;let i=Yt(e),a=Yt(t);if(i===`[object Arguments]`&&(i=ln),a===`[object Arguments]`&&(a=ln),i!==a)return!1;switch(i){case Zt:return e.toString()===t.toString();case Qt:return An(e.valueOf(),t.valueOf());case $t:case nn:case tn:return Object.is(e.valueOf(),t.valueOf());case Xt:return e.source===t.source&&e.flags===t.flags;case sn:return e===t}n??=new Map;let o=n.get(e),s=n.get(t);if(o!=null&&s!=null)return o===t;n.set(e,t),n.set(t,e);try{switch(i){case rn:if(e.size!==t.size)return!1;for(let[i,a]of e.entries())if(!t.has(i)||!nk(a,t.get(i),i,e,t,n,r))return!1;return!0;case an:{if(e.size!==t.size)return!1;let i=Array.from(e.values()),a=Array.from(t.values());for(let o=0;onk(s,i,void 0,e,t,n,r));if(c===-1)return!1;a.splice(c,1)}return!0}case on:case fn:case pn:case mn:case hn:case gn:case _n:case vn:case yn:case bn:case xn:case Sn:if(wn(e)!==wn(t)||e.length!==t.length)return!1;for(let i=0;ie*i)return!1;var a=n();return e*(t-e*a/2-r)>=0&&e*(t+e*a/2-i)<=0}function lk(e,t){return ak(e,t+1)}function uk(e,t,n,r,i){for(var a=(r||[]).slice(),o=t.start,s=t.end,c=0,l=1,u=o,d=function(){var t=r?.[c];if(t===void 0)return{v:ak(r,l)};var a=c,d,f=()=>(d===void 0&&(d=n(t,a)),d),p=t.coordinate,m=c===0||ck(e,p,f,u,s);m||(c=0,u=o,l+=1),m&&(u=p+e*(f()/2+i),c+=l)},f;l<=a.length;)if(f=d(),f)return f.v;return[]}function dk(e,t,n,r,i){var a=(r||[]).slice().length;if(a===0)return[];for(var o=t.start,s=t.end,c=1;c<=a;c++){for(var l=(a-1)%c,u=o,d=!0,f=function(){var t=r[m];if(t==null)return 0;var a=m,o,c=()=>(o===void 0&&(o=n(t,a)),o),f=t.coordinate,p=m===l||ck(e,f,c,u,s);if(!p)return d=!1,1;p&&(u=f+e*(c()/2+i))},p,m=l;m(u===void 0&&(u=n(r,t)),u);if(t===o-1){var f=e*(l.coordinate+e*d()/2-c);a[t]=l=pk(pk({},l),{},{tickCoord:f>0?l.coordinate-f*e:l.coordinate})}else a[t]=l=pk(pk({},l),{},{tickCoord:l.coordinate});l.tickCoord!=null&&ck(e,l.tickCoord,d,s,c)&&(c=l.tickCoord-e*(d()/2+i),a[t]=pk(pk({},l),{},{isShow:!0}))},u=o-1;u>=0;u--)if(l(u))continue;return a}function vk(e,t,n,r,i,a){var o=(r||[]).slice(),s=o.length,c=t.start,l=t.end;if(a){var u=r[s-1];if(u!=null){var d=n(u,s-1),f=e*(u.coordinate+e*d/2-l);o[s-1]=u=pk(pk({},u),{},{tickCoord:f>0?u.coordinate-f*e:u.coordinate}),u.tickCoord!=null&&ck(e,u.tickCoord,()=>d,c,l)&&(l=u.tickCoord-e*(d/2+i),o[s-1]=pk(pk({},u),{},{isShow:!0}))}}for(var p=a?s-1:s,m=function(t){var r=o[t];if(r==null)return 1;var a=r,s,u=()=>(s===void 0&&(s=n(r,t)),s);if(t===0){var d=e*(a.coordinate-e*u()/2-c);o[t]=a=pk(pk({},a),{},{tickCoord:d<0?a.coordinate-d*e:a.coordinate})}else o[t]=a=pk(pk({},a),{},{tickCoord:a.coordinate});a.tickCoord!=null&&ck(e,a.tickCoord,u,c,l)&&(c=a.tickCoord+e*(u()/2+i),o[t]=pk(pk({},a),{},{isShow:!0}))},h=0;h{var i=typeof l==`function`?l(e.value,r):e.value;return p===`width`?ok(lT(i,{fontSize:t,letterSpacing:n}),m,d):lT(i,{fontSize:t,letterSpacing:n})[p]},g=i[0],_=i[1],v=i.length>=2&&g!=null&&_!=null?le(_.coordinate-g.coordinate):1,y=sk(a,v,p);return c===`equidistantPreserveStart`?uk(v,y,h,i,o):c===`equidistantPreserveEnd`?dk(v,y,h,i,o):(f=c===`preserveStart`||c===`preserveStartEnd`?vk(v,y,h,i,o,c===`preserveStartEnd`):_k(v,y,h,i,o),f.filter(e=>e.isShow))}var bk=e=>{var t=e.ticks,n=e.label,r=e.labelGapWithTick,i=r===void 0?5:r,a=e.tickSize,o=a===void 0?0:a,s=e.tickMargin,c=s===void 0?0:s,l=0;if(t){Array.from(t).forEach(e=>{if(e){var t=e.getBoundingClientRect();t.width>l&&(l=t.width)}});var u=n?n.getBoundingClientRect().width:0,d=o+c,f=l+d+u+(n?i:0);return Math.round(f)}return 0},xk=e=>{var t=e.ticks,n=e.label,r=e.labelGapWithTick,i=r===void 0?5:r,a=e.tickSize,o=a===void 0?0:a,s=e.tickMargin,c=s===void 0?0:s,l=0;if(t){Array.from(t).forEach(e=>{if(e){var t=e.getBoundingClientRect();t.height>l&&(l=t.height)}});var u=n?n.getBoundingClientRect().height:0,d=o+c,f=l+d+u+(n?i:0);return Math.round(f)}return 0},Sk=Ua({name:`renderedTicks`,initialState:{xAxis:{},yAxis:{}},reducers:{setRenderedTicks:(e,t)=>{var n=t.payload,r=n.axisType,i=n.axisId,a=n.ticks;e[r][i]=V(a)},removeRenderedTicks:(e,t)=>{var n=t.payload,r=n.axisType,i=n.axisId;delete e[r][i]}}}),Ck=Sk.actions,wk=Ck.setRenderedTicks,Tk=Ck.removeRenderedTicks,Ek=Sk.reducer,Dk=[`axisLine`,`width`,`height`,`className`,`hide`,`ticks`,`axisType`,`axisId`];function Ok(e,t){return Nk(e)||Mk(e,t)||Ak(e,t)||kk()}function kk(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ak(e,t){if(e){if(typeof e==`string`)return jk(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?jk(e,t):void 0}}function jk(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{if(r!=null&&n!=null){var e=t.map(e=>({value:e.value,coordinate:e.coordinate,offset:e.offset,index:e.index})),o=a.current;o!=null&&o.axisId===r&&o.axisType===n&&ik(o.ticks,e)||(a.current={ticks:e,axisId:r,axisType:n},i(wk({ticks:e,axisId:r,axisType:n})))}},[i,t,r,n]),(0,p.useEffect)(()=>r==null||n==null?xe:()=>{i(Tk({axisId:r,axisType:n}))},[i,r,n]),null}var Jk=(0,p.forwardRef)((e,t)=>{var n=e.ticks,r=n===void 0?[]:n,i=e.tick,a=e.tickLine,s=e.stroke,c=e.tickFormatter,l=e.unit,u=e.padding,d=e.tickTextProps,f=e.orientation,m=e.mirror,h=e.x,g=e.y,y=e.width,b=e.height,x=e.tickSize,S=e.tickMargin,C=e.fontSize,w=e.letterSpacing,T=e.getTicksConfig,E=e.events,D=e.axisType,O=e.axisId,k=yk(Q(Q({},T),{},{ticks:r}),C,w),j=_(T),M=v(i),N=YT(j.textAnchor)?j.textAnchor:Wk(f,m),ee=Gk(f,m),te={};typeof a==`object`&&(te=a);var ne=Q(Q({},j),{},{fill:`none`},te),re=k.map(e=>Q({entry:e},Uk(e,h,g,y,b,f,x,m,S))),ie=re.map(e=>{var t=e.entry,n=e.line;return p.createElement(A,{className:`recharts-cartesian-axis-tick`,key:`tick-${t.value}-${t.coordinate}-${t.tickCoord}`},a&&p.createElement(`line`,Ik({},ne,n,{className:o(`recharts-cartesian-axis-tick-line`,ae(a,`className`))})))}),oe=re.map((e,t)=>{var n=e.entry,r=e.tick,a=Q(Q({},Q(Q(Q(Q({verticalAnchor:ee},j),{},{textAnchor:N,stroke:`none`,fill:s},r),{},{index:t,payload:n,visibleTicksCount:k.length,tickFormatter:c,padding:u},d),{},{angle:d?.angle??j.angle??0})),M);return p.createElement(A,Ik({className:`recharts-cartesian-axis-tick-label`,key:`tick-label-${n.value}-${n.coordinate}-${n.tickCoord}`},Nt(E,n,t)),i&&p.createElement(Kk,{option:i,tickProps:a,value:`${typeof c==`function`?c(n.value,t):n.value}${l||``}`}))});return p.createElement(`g`,{className:`recharts-cartesian-axis-ticks recharts-${D}-ticks`},p.createElement(qk,{ticks:k,axisId:O,axisType:D}),oe.length>0&&p.createElement(JC,{zIndex:Wf.label},p.createElement(`g`,{className:`recharts-cartesian-axis-tick-labels recharts-${D}-tick-labels`,ref:t},oe)),ie.length>0&&p.createElement(`g`,{className:`recharts-cartesian-axis-tick-lines recharts-${D}-tick-lines`},ie))}),Yk=(0,p.forwardRef)((e,t)=>{var n=e.axisLine,r=e.width,i=e.height,a=e.className,s=e.hide,c=e.ticks,l=e.axisType,u=e.axisId,d=Pk(e,Dk),f=Ok((0,p.useState)(``),2),m=f[0],h=f[1],g=Ok((0,p.useState)(``),2),v=g[0],y=g[1],b=(0,p.useRef)(null);(0,p.useImperativeHandle)(t,()=>({getCalculatedWidth:()=>bk({ticks:b.current,label:e.labelRef?.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin}),getCalculatedHeight:()=>xk({ticks:b.current,label:e.labelRef?.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}));var x=(0,p.useCallback)(e=>{if(e){var t=e.getElementsByClassName(`recharts-cartesian-axis-tick-value`);b.current=t;var n=t[0];if(n){var r=window.getComputedStyle(n),i=r.fontSize,a=r.letterSpacing;(i!==m||a!==v)&&(h(i),y(a))}}},[m,v]);return s||r!=null&&r<=0||i!=null&&i<=0?null:p.createElement(JC,{zIndex:e.zIndex},p.createElement(A,{className:o(`recharts-cartesian-axis`,a)},p.createElement(Hk,{x:e.x,y:e.y,width:r,height:i,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:_(e)}),p.createElement(Jk,{ref:x,axisType:l,events:d,fontSize:m,getTicksConfig:e,height:e.height,letterSpacing:v,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:c,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:u}),p.createElement(vE,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},p.createElement(ME,{label:e.label,labelRef:e.labelRef}),e.children)))}),Xk=p.forwardRef((e,t)=>{var n=zt(e,Vk);return p.createElement(Yk,Ik({},n,{ref:t}))});Xk.displayName=`CartesianAxis`;var Zk=(0,p.createContext)({grid:{stroke:`#ccc`,fill:`none`}});Zk.Provider;var Qk=()=>(0,p.useContext)(Zk),$k=[`x1`,`y1`,`x2`,`y2`,`key`],eA=[`offset`],tA=[`xAxisId`,`yAxisId`],nA=[`xAxisId`,`yAxisId`];function rA(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function iA(e){for(var t=1;t{var t=e.fill;if(!t||t===`none`)return null;var n=e.fillOpacity,r=e.x,i=e.y,a=e.width,o=e.height,s=e.ry;return p.createElement(`rect`,{x:r,y:i,ry:s,width:a,height:o,stroke:`none`,fill:t,fillOpacity:n,className:`recharts-cartesian-grid-bg`})};function fA(e){var t=e.option,n=e.lineItemProps,r;if(p.isValidElement(t))r=p.cloneElement(t,n);else if(typeof t==`function`)r=t(n);else{var i=n.x1,a=n.y1,o=n.x2,s=n.y2,c=n.key,l=_(lA(n,$k))??{};l.offset;var u=lA(l,eA),d=Array.isArray(u.strokeDasharray)?u.strokeDasharray.join(`,`):u.strokeDasharray;r=p.createElement(`line`,cA({},u,{strokeDasharray:d,x1:i,y1:a,x2:o,y2:s,fill:`none`,key:c}))}return r}function pA(e){var t=e.x,n=e.width,r=e.horizontal,i=r===void 0||r,a=e.horizontalPoints;if(!i||!a||!a.length)return null;e.xAxisId,e.yAxisId;var o=lA(e,tA),s=a.map((e,r)=>{var a=iA(iA({},o),{},{x1:t,y1:e,x2:t+n,y2:e,key:`line-${r}`,index:r});return p.createElement(fA,{key:`line-${r}`,option:i,lineItemProps:a})});return p.createElement(`g`,{className:`recharts-cartesian-grid-horizontal`},s)}function mA(e){var t=e.y,n=e.height,r=e.vertical,i=r===void 0||r,a=e.verticalPoints;if(!i||!a||!a.length)return null;e.xAxisId,e.yAxisId;var o=lA(e,nA),s=a.map((e,r)=>{var a=iA(iA({},o),{},{x1:e,y1:t,x2:e,y2:t+n,key:`line-${r}`,index:r});return p.createElement(fA,{option:i,lineItemProps:a,key:`line-${r}`})});return p.createElement(`g`,{className:`recharts-cartesian-grid-vertical`},s)}function hA(e){var t=e.horizontalFill,n=e.fillOpacity,r=e.x,i=e.y,a=e.width,o=e.height,s=e.horizontalPoints,c=e.horizontal;if(!(c===void 0||c)||!t||!t.length||s==null)return null;var l=s.map(e=>Math.round(e+i-i)).sort((e,t)=>e-t);i!==l[0]&&l.unshift(0);var u=l.map((e,s)=>{var c=l[s+1],u=c==null?i+o-e:c-e;if(u<=0)return null;var d=s%t.length;return p.createElement(`rect`,{key:`react-${s}`,y:e,x:r,height:u,width:a,stroke:`none`,fill:t[d],fillOpacity:n,className:`recharts-cartesian-grid-bg`})});return p.createElement(`g`,{className:`recharts-cartesian-gridstripes-horizontal`},u)}function gA(e){var t=e.vertical,n=t===void 0||t,r=e.verticalFill,i=e.fillOpacity,a=e.x,o=e.y,s=e.width,c=e.height,l=e.verticalPoints;if(!n||!r||!r.length)return null;var u=l.map(e=>Math.round(e+a-a)).sort((e,t)=>e-t);a!==u[0]&&u.unshift(0);var d=u.map((e,t)=>{var n=u[t+1],l=n==null?a+s-e:n-e;if(l<=0)return null;var d=t%r.length;return p.createElement(`rect`,{key:`react-${t}`,x:e,y:o,width:l,height:c,stroke:`none`,fill:r[d],fillOpacity:i,className:`recharts-cartesian-grid-bg`})});return p.createElement(`g`,{className:`recharts-cartesian-gridstripes-vertical`},d)}var _A=(e,t)=>{var n=e.xAxis,r=e.width,i=e.height,a=e.offset;return Jo(yk(iA(iA(iA({},Vk),n),{},{ticks:Yo(n,!0),viewBox:{x:0,y:0,width:r,height:i}})),a.left,a.left+a.width,t)},vA=(e,t)=>{var n=e.yAxis,r=e.width,i=e.height,a=e.offset;return Jo(yk(iA(iA(iA({},Vk),n),{},{ticks:Yo(n,!0),viewBox:{x:0,y:0,width:r,height:i}})),a.top,a.top+a.height,t)},yA={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Wf.grid};function bA(e){var t=gc(),n=_c(),r=hc(),i=iA(iA({},zt(e,yA)),{},{x:F(e.x)?e.x:r.left,y:F(e.y)?e.y:r.top,width:F(e.width)?e.width:r.width,height:F(e.height)?e.height:r.height}),a=i.xAxisId,o=i.yAxisId,s=i.x,c=i.y,l=i.width,u=i.height,d=i.syncWithTicks,f=i.horizontalValues,m=i.verticalValues,h=js(),g=z(e=>yx(e,`xAxis`,a,h)),_=z(e=>yx(e,`yAxis`,o,h)),v=Qk(),y={stroke:i.stroke??v.grid.stroke,strokeWidth:i.strokeWidth??v.grid.strokeWidth,strokeOpacity:i.strokeOpacity??v.grid.strokeOpacity,strokeDasharray:i.strokeDasharray??v.grid.strokeDasharray};if(!Bo(l)||!Bo(u)||!F(s)||!F(c))return null;var b=i.verticalCoordinatesGenerator||_A,x=i.horizontalCoordinatesGenerator||vA,S=i.horizontalPoints,C=i.verticalPoints;if((!S||!S.length)&&typeof x==`function`){var w=f&&f.length,T=x({yAxis:_?iA(iA({},_),{},{ticks:w?f:_.ticks}):void 0,width:t??l,height:n??u,offset:r},w?!0:d);Ls(Array.isArray(T),`horizontalCoordinatesGenerator should return Array but instead it returned [${typeof T}]`),Array.isArray(T)&&(S=T)}if((!C||!C.length)&&typeof b==`function`){var E=m&&m.length,D=b({xAxis:g?iA(iA({},g),{},{ticks:E?m:g.ticks}):void 0,width:t??l,height:n??u,offset:r},E?!0:d);Ls(Array.isArray(D),`verticalCoordinatesGenerator should return Array but instead it returned [${typeof D}]`),Array.isArray(D)&&(C=D)}return p.createElement(JC,{zIndex:i.zIndex},p.createElement(`g`,{className:`recharts-cartesian-grid`},p.createElement(dA,{fill:i.fill??v.grid.fill,fillOpacity:i.fillOpacity??v.grid.fillOpacity,x:i.x,y:i.y,width:i.width,height:i.height,ry:i.ry}),p.createElement(hA,cA({},i,{horizontalPoints:S})),p.createElement(gA,cA({},i,{verticalPoints:C})),p.createElement(pA,cA({},i,y,{offset:r,horizontalPoints:S,xAxis:g,yAxis:_})),p.createElement(mA,cA({},i,y,{offset:r,verticalPoints:C,xAxis:g,yAxis:_}))))}bA.displayName=`CartesianGrid`;var xA=[`animationElapsedTime`,`isAnimating`,`isEntrance`,`visibleLength`,`strokeDasharray`,`connectNulls`];function SA(){return SA=Object.assign?Object.assign.bind():function(e){for(var t=1;te+t,0);if(!i)return EA(t,e);for(var a=Math.floor(e/i),o=e%i,s=[],c=0,l=0;co){s=[...r.slice(0,c),o-l];break}}var f=s.length%2==0?[0,t]:[t];return[...OA(r,a),...s,...f].map(e=>`${e}px`).join(`, `)}function AA(e,t,n){return e?kA(n,t,`${e}`.split(/[,\s]+/gim).map(e=>parseFloat(e))):EA(t,n)}function jA(e){e.animationElapsedTime,e.isAnimating,e.isEntrance;var t=e.visibleLength,n=e.strokeDasharray,r=e.connectNulls,i=CA(e,xA),a=r??!1,o;if(t!=null){var s=i.pathRef;o=AA(n,TA(s?.current??null),t)}else n!=null&&(o=String(n));return p.createElement($l,SA({},i,{connectNulls:a,strokeDasharray:o}))}function MA(e){var t=(0,p.useRef)(0),n=(0,p.useRef)(0),r=(0,p.useRef)(!1),i=(0,p.useRef)(e);return i.current!==e&&(t.current=n.current,i.current=e),(0,p.useCallback)((e,i)=>{if(r.current)return null;var a=Math.min(ce(t.current+e*i),i);return e>0&&i>0&&(n.current=Math.max(n.current,a),a>=i)?(r.current=!0,null):a},[])}var NA=Ua({name:`errorBars`,initialState:{},reducers:{addErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,i=n.errorBar;e[r]||(e[r]=[]),e[r].push(i)},replaceErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,i=n.prev,a=n.next;e[r]&&(e[r]=e[r].map(e=>e.dataKey===i.dataKey&&e.direction===i.direction?a:e))},removeErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,i=n.errorBar;e[r]&&(e[r]=e[r].filter(e=>e.dataKey!==i.dataKey||e.direction!==i.direction))}}}),PA=NA.actions;PA.addErrorBar,PA.replaceErrorBar,PA.removeErrorBar;var FA=NA.reducer,IA=[`children`];function LA(e,t){if(e==null)return{};var n,r,i=RA(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0});function BA(e){var t=e.children,n=LA(e,IA);return p.createElement(zA.Provider,{value:n},t)}function VA(e,t){var n=z(t=>Cy(t,e)),r=z(e=>Ty(e,t)),i=n?.allowDataOverflow??Y.allowDataOverflow,a=r?.allowDataOverflow??X.allowDataOverflow;return{needClip:i||a,needClipX:i,needClipY:a}}function HA(e){var t=e.xAxisId,n=e.yAxisId,r=e.clipPathId,i=DO(),a=VA(t,n),o=a.needClipX,s=a.needClipY,c=a.needClip,l=z(e=>Jb(e,t,!1)),u=z(e=>Yb(e,n,!1));if(!c||!i)return null;var d=i.x,f=i.y,m=i.width,h=i.height,g=o&&l?Math.min(l[0],l[1]):d-m/2,_=s&&u?Math.min(u[0],u[1]):f-h/2,v=o&&l?Math.abs(l[1]-l[0]):m*2,y=s&&u?Math.abs(u[1]-u[0]):h*2;return p.createElement(`clipPath`,{id:`clipPath-${r}`},p.createElement(`rect`,{x:g,y:_,width:v,height:y}))}var UA=(e,t,n,r)=>Sx(e,`xAxis`,t,r),WA=(e,t,n,r)=>xx(e,`xAxis`,t,r),GA=(e,t,n,r)=>Sx(e,`yAxis`,n,r),KA=(e,t,n,r)=>xx(e,`yAxis`,n,r),qA=B([G,UA,GA,WA,KA],(e,t,n,r,i)=>qo(e,`xAxis`)?as(t,r,!1):as(n,i,!1)),JA=(e,t,n,r,i)=>i;function YA(e){return e.type===`line`}var XA=B([G,UA,GA,WA,KA,B([Ny,JA],(e,t)=>e.filter(YA).find(e=>e.id===t)),qA,sf],(e,t,n,r,i,a,o,s)=>{var c=s.chartData,l=s.dataStartIndex,u=s.dataEndIndex;if(!(a==null||t==null||n==null||r==null||i==null||r.length===0||i.length===0||o==null||e!==`horizontal`&&e!==`vertical`)){var d=a.dataKey,f=a.data,p=f!=null&&f.length>0?f:c?.slice(l,u+1);if(p!=null)return Sj({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataKey:d,bandSize:o,displayedData:p})}});function ZA(e){var t=v(e),n=3,r=2;if(t!=null){var i=t.r,a=t.strokeWidth,o=Number(i),s=Number(a);return(Number.isNaN(o)||o<0)&&(o=n),(Number.isNaN(s)||s<0)&&(s=r),{r:o,strokeWidth:s}}return{r:n,strokeWidth:r}}var QA=[`id`],$A=[`type`,`layout`,`connectNulls`,`needClip`,`shape`,`strokeDasharray`],ej=[`activeDot`,`animateNewValues`,`animationBegin`,`animationDuration`,`animationEasing`,`connectNulls`,`dot`,`hide`,`isAnimationActive`,`label`,`legendType`,`xAxisId`,`yAxisId`,`id`];function tj(){return tj=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?t/n:0}var dj={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:`ease`,animationInterpolateFn:(e,t)=>{if(e==null)return[];if(t===1)return e.flatMap(e=>e.status===`removed`?[]:[e.next]);var n=uj(e),r=[];for(var i of e)if(i.status===`matched`)r.push(aj(aj({},i.next),{},{x:_e(i.prev.x,i.next.x,t),y:_e(i.prev.y,i.next.y,t)}));else if(i.status===`added`){if(i.next.x!=null){var a=i.next.x-n;r.push(aj(aj({},i.next),{},{x:_e(a,i.next.x,t),y:i.next.y}))}else r.push(i.next)}else if(i.status===`removed`&&i.prev.x!=null){var o=i.prev.x+n;r.push(aj(aj({},i.prev),{},{x:_e(i.prev.x,o,t),y:i.prev.y}))}return r},animationMatchBy:yD,connectNulls:!1,dot:!0,fill:`#fff`,hide:!1,isAnimationActive:`auto`,label:!1,legendType:`line`,shape:jA,stroke:`#3182bd`,strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:Wf.line,type:`linear`},fj=e=>{var t=e.dataKey,n=e.name,r=e.stroke,i=e.legendType;return[{inactive:e.hide,dataKey:t,type:i,color:r,value:ss(n,t),payload:e}]},pj=p.memo(e=>{var t=e.dataKey,n=e.data,r=e.stroke,i=e.strokeWidth,a=e.fill,o=e.name,s=e.hide,c=e.unit,l=e.formatter,u=e.tooltipType,d=e.id,f={dataDefinedOnItem:n,getPosition:xe,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:ss(o,t),hide:s,type:u,color:r,unit:c,formatter:l,graphicalItemId:d}};return p.createElement(dD,{tooltipEntrySettings:f})});function mj(e){var t=e.clipPathId,n=e.points,r=e.props,i=r.dot,a=r.dataKey,o=r.needClip;r.id;var s=_(nj(r,QA));return p.createElement(lO,{points:n,dot:i,className:`recharts-line-dots`,dotClassName:`recharts-line-dot`,dataKey:a,baseProps:s,needClip:o,clipPathId:t})}function hj(e){var t=e.showLabels,n=e.children,r=e.points,i=(0,p.useMemo)(()=>r?.map(e=>{var t={x:e.x??0,y:e.y??0,width:0,lowerWidth:0,upperWidth:0,height:0};return aj(aj({},t),{},{value:e.value,payload:e.payload,viewBox:t,parentViewBox:void 0,fill:void 0})}),[r]);return p.createElement(BE,{value:t?i:void 0},n)}function gj(e){var t=e.clipPathId,n=e.pathRef,r=e.points,i=e.props,a=e.animationElapsedTime,o=e.isAnimating,s=e.isEntrance,c=e.visibleLength,l=i.type,u=i.layout,d=i.connectNulls,f=i.needClip,m=i.shape,h=i.strokeDasharray,g=aj(aj({},y(nj(i,$A))),{},{fill:`none`,className:`recharts-line-curve`,clipPath:f?`url(#clipPath-${t})`:void 0,points:r,type:l,layout:u,connectNulls:d,strokeDasharray:h??i.strokeDasharray,pathRef:n,animationElapsedTime:a,isAnimating:o,isEntrance:i.animateNewValues?s:!1,visibleLength:c});return p.createElement(p.Fragment,null,r?.length>1&&p.createElement(uD,{option:m,DefaultShape:dj.shape,shapeProps:g}),p.createElement(mj,{points:r,clipPathId:t,props:i}))}function _j(e){var t=e.clipPathId,n=e.props,r=e.pathRef,i=e.previousPointsRef,a=n.points,o=n.isAnimationActive,s=n.animationBegin,c=n.animationDuration,l=n.animationEasing,u=n.animationMatchBy,d=n.animationInterpolateFn,f=n.layout,m=lj(r.current),h=ND(n.onAnimationStart,n.onAnimationEnd),g=h.isAnimating,_=h.handleAnimationStart,v=h.handleAnimationEnd,y=!g,b=MA(a),x=(0,p.useCallback)(e=>e>0&&m>0,[m]);return p.createElement(hj,{points:a,showLabels:y},n.children,p.createElement(PD,{animationInput:a,animationIdPrefix:`recharts-line-`,items:a,previousItemsRef:i,isAnimationActive:o,animationBegin:s,animationDuration:c,animationEasing:l,onAnimationStart:_,onAnimationEnd:v,animationInterpolateFn:d,animationMatchBy:u,shouldUpdatePreviousRef:x,layout:f},(e,i,a)=>{var o=g||i<1,s=o?b(i,m):null;return p.createElement(gj,{props:n,points:e,clipPathId:t,pathRef:r,animationElapsedTime:i,isAnimating:o,isEntrance:a,visibleLength:s})}),p.createElement(GE,{label:n.label}))}function vj(e){var t=e.clipPathId,n=e.props,r=(0,p.useRef)(null),i=(0,p.useRef)(null);return p.createElement(_j,{props:n,clipPathId:t,previousPointsRef:r,pathRef:i})}var yj=(e,t)=>({x:e.x??void 0,y:e.y??void 0,value:e.value,errorVal:W(e.payload,t)}),bj=class extends p.Component{render(){var e=this.props,t=e.hide,n=e.dot,r=e.points,i=e.className,a=e.xAxisId,s=e.yAxisId,c=e.top,l=e.left,u=e.width,d=e.height,f=e.id,m=e.needClip,h=e.zIndex;if(t)return null;var g=o(`recharts-line`,i),_=f,v=ZA(n),y=v.r,b=v.strokeWidth,x=$E(n),S=y*2+b,C=m?`url(#clipPath-${x?``:`dots-`}${_})`:void 0;return p.createElement(JC,{zIndex:h},p.createElement(A,{className:g},m&&p.createElement(`defs`,null,p.createElement(HA,{clipPathId:_,xAxisId:a,yAxisId:s}),!x&&p.createElement(`clipPath`,{id:`clipPath-dots-${_}`},p.createElement(`rect`,{x:l-S/2,y:c-S/2,width:u+S,height:d+S}))),p.createElement(BA,{xAxisId:a,yAxisId:s,data:r,dataPointFormatter:yj,errorBarOffset:0},p.createElement(vj,{props:this.props,clipPathId:_}))),p.createElement(FO,{activeDot:this.props.activeDot,points:r,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:C}))}};function xj(e){var t=zt(e,dj),n=t.activeDot,r=t.animateNewValues,i=t.animationBegin,a=t.animationDuration,o=t.animationEasing,s=t.connectNulls,c=t.dot,l=t.hide,u=t.isAnimationActive,d=t.label,f=t.legendType,m=t.xAxisId,h=t.yAxisId,g=t.id,_=nj(t,ej),v=VA(m,h).needClip,y=DO(),b=vc(),x=js(),S=z(e=>XA(e,m,h,x,g));if(b!==`horizontal`&&b!==`vertical`||S==null||y==null)return null;var C=y.height,w=y.width,T=y.x,E=y.y;return p.createElement(bj,tj({},_,{id:g,connectNulls:s,dot:c,activeDot:n,animateNewValues:r,animationBegin:i,animationDuration:a,animationEasing:o,isAnimationActive:u,hide:l,label:d,legendType:f,xAxisId:m,yAxisId:h,points:S,layout:b,height:C,width:w,left:T,top:E,needClip:v}))}function Sj(e){var t=e.layout,n=e.xAxis,r=e.yAxis,i=e.xAxisTicks,a=e.yAxisTicks,o=e.dataKey,s=e.bandSize;return e.displayedData.map((e,c)=>{var l=W(e,o);if(t===`horizontal`)return{x:$o({axis:n,ticks:i,bandSize:s,entry:e,index:c}),y:(I(l)?null:r.scale.map(l))??null,value:l,payload:e};var u=I(l)?null:n.scale.map(l),d=$o({axis:r,ticks:a,bandSize:s,entry:e,index:c});return u==null||d==null?null:{x:u,y:d,value:l,payload:e}}).filter(Boolean)}function Cj(e){var t=zt(e,dj),n=js();return p.createElement(WD,{id:t.id,type:`line`},e=>p.createElement(p.Fragment,null,p.createElement(fD,{legendPayload:fj(t)}),p.createElement(pj,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:e}),p.createElement(ZD,{type:`line`,id:e,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),p.createElement(xj,tj({},t,{id:e}))))}var wj=p.memo(Cj,qc);wj.displayName=`Line`;function Tj(e,t){return e.graphicalItems.cartesianItems.find(e=>e.id===t)?.xAxisId??0}function Ej(e,t){return e.graphicalItems.cartesianItems.find(e=>e.id===t)?.yAxisId??0}var Dj=(e,t,n)=>Sx(e,`xAxis`,Tj(e,t),n),Oj=(e,t,n)=>xx(e,`xAxis`,Tj(e,t),n),kj=(e,t,n)=>Sx(e,`yAxis`,Ej(e,t),n),Aj=(e,t,n)=>xx(e,`yAxis`,Ej(e,t),n),jj=B([G,Dj,kj,Oj,Aj],(e,t,n,r,i)=>qo(e,`xAxis`)?as(t,r,!1):as(n,i,!1)),Mj=B([Ny,(e,t)=>t],(e,t)=>e.filter(e=>e.type===`area`).find(e=>e.id===t)),Nj=e=>qo(G(e),`xAxis`)?`yAxis`:`xAxis`,Pj=(e,t)=>Nj(e)===`yAxis`?Ej(e,t):Tj(e,t),Fj=(e,t,n)=>ib(e,Nj(e),Pj(e,t),n),Ij=B([G,Dj,kj,Oj,Aj,B([Mj,Fj],(e,t)=>{if(e!=null&&t!=null){var n=e.stackId,r=pp(e);if(n!=null&&r!=null){var i=(t[n]?.stackedData)?.find(e=>e.key===r);if(i!=null)return i.map(e=>[e[0],e[1]])}}}),cf,jj,Mj,Uf,B([Mj,Fj],(e,t)=>{if(e!=null&&e.stackId!=null&&t!=null){var n=t[e.stackId];if(n!=null)return n.graphicalItems.map(e=>e.dataKey).filter(be)}})],(e,t,n,r,i,a,o,s,c,l,u)=>{var d=o.chartData,f=o.dataStartIndex,p=o.dataEndIndex;if(!(c==null||e!==`horizontal`&&e!==`vertical`||t==null||n==null||r==null||i==null||r.length===0||i.length===0||s==null)){var m=c.data,h=m&&m.length>0?m:d?.slice(f,p+1);if(h!=null)return hM({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataStartIndex:f,areaSettings:c,stackedData:a,displayedData:h,chartBaseValue:l,bandSize:s,stackDataKeys:u})}}),Lj=[`animationElapsedTime`,`isAnimating`,`isEntrance`,`layout`,`isRange`,`stroke`,`connectNulls`],Rj=[`id`,`baseLine`];function zj(){return zj=Object.assign?Object.assign.bind():function(e){for(var t=1;te.y||0));return F(n)?c=Math.max(n,c):n&&Array.isArray(n)&&n.length&&(c=Math.max(...n.map(e=>e.y||0),c)),F(c)?p.createElement(`rect`,{x:ae.x||0));return F(n)?c=Math.max(n,c):n&&Array.isArray(n)&&n.length&&(c=Math.max(...n.map(e=>e.x||0),c)),F(c)?p.createElement(`rect`,{x:0,y:ae==null?[]:t===1?e.flatMap(e=>e.status===`removed`?[]:[e.next]):e.flatMap(e=>e.status===`matched`?[Qj(Qj({},e.next),{},{x:_e(e.prev.x,e.next.x,t),y:_e(e.prev.y,e.next.y,t)})]:e.status===`added`?[e.next]:[]),connectNulls:!1,dot:!1,fill:`#3182bd`,fillOpacity:.6,hide:!1,isAnimationActive:`auto`,legendType:`line`,stroke:`#3182bd`,strokeWidth:1,type:`linear`,label:!1,shape:Gj,xAxisId:0,yAxisId:0,zIndex:Wf.area};function rM(e,t){return e&&e!==`none`?e:t}var iM=e=>{var t=e.dataKey,n=e.name,r=e.stroke,i=e.fill,a=e.legendType;return[{inactive:e.hide,dataKey:t,type:a,color:rM(r,i),value:ss(n,t),payload:e}]},aM=p.memo(e=>{var t=e.dataKey,n=e.data,r=e.stroke,i=e.strokeWidth,a=e.fill,o=e.name,s=e.hide,c=e.unit,l=e.formatter,u=e.tooltipType,d=e.id,f={dataDefinedOnItem:n,getPosition:xe,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:ss(o,t),hide:s,type:u,color:rM(r,a),unit:c,formatter:l,graphicalItemId:d}};return p.createElement(dD,{tooltipEntrySettings:f})});function oM(e){var t=e.clipPathId,n=e.points,r=e.props,i=r.needClip,a=r.dot,o=r.dataKey,s=_(r);return p.createElement(lO,{points:n,dot:a,className:`recharts-area-dots`,dotClassName:`recharts-area-dot`,dataKey:o,baseProps:s,needClip:i,clipPathId:t})}function sM(e){var t=e.showLabels,n=e.children,r=e.points.map(e=>{var t={x:e.x??0,y:e.y??0,width:0,lowerWidth:0,upperWidth:0,height:0};return Qj(Qj({},t),{},{value:e.value,payload:e.payload,parentViewBox:void 0,viewBox:t,fill:void 0})});return p.createElement(BE,{value:t?r:void 0},n)}function cM(e){var t=e.points,n=e.baseLine,r=e.needClip,i=e.clipPathId,a=e.props,o=e.animationElapsedTime,s=e.isAnimating,c=e.isEntrance,l=a.layout,u=a.type,d=a.stroke,f=a.connectNulls,m=a.isRange,h=a.shape,g=a.id,_=Yj(a,Kj),v=Qj(Qj({},y(_)),{},{id:g,points:t,connectNulls:f,type:u,baseLine:n,layout:l,stroke:d,isRange:m,animationElapsedTime:o,isAnimating:s,isEntrance:c});return p.createElement(p.Fragment,null,t?.length>1&&p.createElement(A,{clipPath:r?`url(#clipPath-${i})`:void 0},p.createElement(uD,{option:h,DefaultShape:nM.shape,shapeProps:v})),p.createElement(oM,{points:t,props:_,clipPathId:i}))}function lM(e,t,n){return F(e)?_e(F(t)?t:void 0,e,n):I(e)||ue(e)?_e(F(t)?t:void 0,0,n):e}function uM(e){var t=e.needClip,n=e.clipPathId,r=e.props,i=e.previousPointsRef,a=e.previousBaselineRef,o=r.points,s=r.baseLine,c=r.isAnimationActive,l=r.animationBegin,u=r.animationDuration,d=r.animationEasing,f=r.animationMatchBy,m=r.animationInterpolateFn,h=(0,p.useMemo)(()=>({points:o,baseLine:s}),[o,s]),g=ED(h,a),_=yc(),v=ND(r.onAnimationStart,r.onAnimationEnd),y=v.isAnimating,b=v.handleAnimationStart,x=v.handleAnimationEnd,S=g.startValue;if(_==null)return null;var C=Array.isArray(s)&&Array.isArray(S)?TD(S,s,f):Array.isArray(s)?TD(null,s,f):null;return p.createElement(PD,{animationInput:h,animationIdPrefix:`recharts-area-`,items:o,previousItemsRef:i,isAnimationActive:c,animationBegin:l,animationDuration:u,animationEasing:d,onAnimationStart:b,onAnimationEnd:x,animationInterpolateFn:m,animationMatchBy:f,layout:_},(e,i,a)=>{var c=i===1?s:Array.isArray(s)?m(C,i,_):a?s:lM(s,S,i);return g.syncStepValue(c,i),p.createElement(sM,{showLabels:!y,points:o},r.children,p.createElement(cM,{points:e,baseLine:c,needClip:t,clipPathId:n,props:r,animationElapsedTime:i,isAnimating:y||i<1,isEntrance:a}),p.createElement(GE,{label:r.label}))})}function dM(e){var t=e.needClip,n=e.clipPathId,r=e.props,i=(0,p.useRef)(null),a=(0,p.useRef)();return p.createElement(uM,{needClip:t,clipPathId:n,props:r,previousPointsRef:i,previousBaselineRef:a})}var fM=class extends p.PureComponent{render(){var e=this.props,t=e.hide,n=e.dot,r=e.points,i=e.className,a=e.top,s=e.left,c=e.needClip,l=e.xAxisId,u=e.yAxisId,d=e.width,f=e.height,m=e.id,h=e.baseLine,g=e.zIndex;if(t)return null;var _=o(`recharts-area`,i),v=m,y=ZA(n),b=y.r,x=y.strokeWidth,S=$E(n),C=b*2+x,w=c?`url(#clipPath-${S?``:`dots-`}${v})`:void 0;return p.createElement(JC,{zIndex:g},p.createElement(A,{className:_},c&&p.createElement(`defs`,null,p.createElement(HA,{clipPathId:v,xAxisId:l,yAxisId:u}),!S&&p.createElement(`clipPath`,{id:`clipPath-dots-${v}`},p.createElement(`rect`,{x:s-C/2,y:a-C/2,width:d+C,height:f+C}))),p.createElement(dM,{needClip:c,clipPathId:v,props:this.props})),p.createElement(FO,{points:r,mainColor:rM(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:w}),this.props.isRange&&Array.isArray(h)&&p.createElement(FO,{points:h,mainColor:rM(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:w}))}};function pM(e){var t=e.activeDot,n=e.animationBegin,r=e.animationDuration,i=e.animationEasing,a=e.connectNulls,o=e.dot,s=e.fill,c=e.fillOpacity,l=e.hide,u=e.isAnimationActive,d=e.legendType,f=e.stroke,m=e.xAxisId,h=e.yAxisId,g=Yj(e,qj),_=vc(),v=pC(),y=VA(m,h).needClip,b=js(),x=z(t=>Ij(t,e.id,b))??{},S=x.points,C=x.isRange,w=x.baseLine,T=DO();if(_!==`horizontal`&&_!==`vertical`||T==null||v!==`AreaChart`&&v!==`ComposedChart`)return null;var E=T.height,D=T.width,O=T.x,k=T.y;return!S||!S.length?null:p.createElement(fM,Jj({},g,{activeDot:t,animationBegin:n,animationDuration:r,animationEasing:i,baseLine:w,connectNulls:a,dot:o,fill:s,fillOpacity:c,height:E,hide:l,layout:_,isAnimationActive:u,isRange:C,legendType:d,needClip:y,points:S,stroke:f,width:D,left:O,top:k,xAxisId:m,yAxisId:h}))}var mM=(e,t,n,r,i)=>{var a=n??t;if(F(a))return a;var o=e===`horizontal`?i:r,s=o.scale.domain();if(o.type===`number`){var c=Math.max(s[0],s[1]),l=Math.min(s[0],s[1]);return a===`dataMin`?l:a===`dataMax`||c<0?c:Math.max(Math.min(s[0],s[1]),0)}return a===`dataMin`?s[0]:a===`dataMax`?s[1]:s[0]};function hM(e){var t=e.areaSettings,n=t.connectNulls,r=t.baseValue,i=t.dataKey,a=e.stackedData,o=e.layout,s=e.chartBaseValue,c=e.xAxis,l=e.yAxis,u=e.displayedData,d=e.dataStartIndex,f=e.xAxisTicks,p=e.yAxisTicks,m=e.bandSize,h=e.stackDataKeys,g=a&&a.length,_=mM(o,s,r,c,l),v=o===`horizontal`,y=!1,b=u.map((e,t)=>{var r;if(g)r=a[d+t];else{var o=W(e,i);Array.isArray(o)?(r=o,y=!0):r=[_,o]}var s=r?.[1]??null,u=W(e,i),b=g&&u==null&&h!=null&&h.length>0&&h.every(t=>W(e,t)==null),x=s==null||g&&!n&&u==null||b;return v?{x:$o({axis:c,ticks:f,bandSize:m,entry:e,index:t}),y:x?null:l.scale.map(s)??null,value:r,payload:e}:{x:x?null:c.scale.map(s)??null,y:$o({axis:l,ticks:p,bandSize:m,entry:e,index:t}),value:r,payload:e}});return{points:b,baseLine:(g||y?b.map(e=>{var t=Array.isArray(e.value)?e.value[0]:null;return v?{x:e.x,y:t!=null&&e.y!=null?l.scale.map(t)??null:null,payload:e.payload}:{x:t==null?null:c.scale.map(t)??null,y:e.y,payload:e.payload}}):v?l.scale.map(_):c.scale.map(_))??0,isRange:y}}function gM(e){var t=zt(e,nM),n=js();return p.createElement(WD,{id:t.id,type:`area`},e=>p.createElement(p.Fragment,null,p.createElement(fD,{legendPayload:iM(t)}),p.createElement(aM,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:e}),p.createElement(ZD,{type:`area`,id:e,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:Qo(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:n,connectNulls:t.connectNulls}),p.createElement(pM,Jj({},t,{id:e}))))}var _M=p.memo(gM,qc);_M.displayName=`Area`;var vM=[`domain`,`range`],yM=[`domain`,`range`];function bM(e,t){if(e==null)return{};var n,r,i=xM(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{if(o!=null)return kM(kM({},a),{},{type:o})},[a,o]);return(0,p.useLayoutEffect)(()=>{s!=null&&(n.current===null?t(_O(s)):n.current!==s&&t(vO({prev:n.current,next:s})),n.current=s)},[s,t]),(0,p.useLayoutEffect)(()=>()=>{n.current&&=(t(yO(n.current)),null)},[t]),null}var IM=e=>{var t=e.xAxisId,n=e.className,r=e.height,i=e.label,a=(0,p.useRef)(null),s=(0,p.useRef)(null),c=z(ks),l=js(),u=R(),d=`xAxis`,f=z(e=>bx(e,d,t,l)),m=z(e=>lx(e,t)),h=z(e=>mx(e,t)),g=z(e=>Sy(e,t));if((0,p.useLayoutEffect)(()=>{if(!(r!==`auto`||!m||CE(i)||(0,p.isValidElement)(i)||g==null)){var e=a.current;if(e){var n=e.getCalculatedHeight();Math.round(m.height)!==Math.round(n)&&u(wO({id:t,height:n}))}}},[f,m,u,i,t,r,g]),m==null||h==null||g==null)return null;e.dangerouslySetInnerHTML,e.ticks,e.scale;var _=NM(e,TM);g.id,g.scale;var v=NM(g,EM);return p.createElement(Xk,DM({},_,v,{ref:a,labelRef:s,x:h.x,y:h.y,width:m.width,height:m.height,className:o(`recharts-${d} ${d}`,n),viewBox:c,ticks:f,axisType:d,axisId:t}))},LM={allowDataOverflow:Y.allowDataOverflow,allowDecimals:Y.allowDecimals,allowDuplicatedCategory:Y.allowDuplicatedCategory,angle:Y.angle,axisLine:Vk.axisLine,height:Y.height,hide:!1,includeHidden:Y.includeHidden,interval:Y.interval,label:!1,minTickGap:Y.minTickGap,mirror:Y.mirror,orientation:Y.orientation,padding:Y.padding,reversed:Y.reversed,scale:Y.scale,tick:Y.tick,tickCount:Y.tickCount,tickLine:Vk.tickLine,tickSize:Vk.tickSize,type:Y.type,niceTicks:Y.niceTicks,xAxisId:0},RM=p.memo(e=>{var t=zt(e,LM);return p.createElement(p.Fragment,null,p.createElement(FM,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,niceTicks:t.niceTicks}),p.createElement(IM,t))},CM);RM.displayName=`XAxis`;var zM=[`type`],BM=[`dangerouslySetInnerHTML`,`ticks`,`scale`],VM=[`id`,`scale`];function HM(){return HM=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(o!=null)return WM(WM({},a),{},{type:o})},[o,a]);return(0,p.useLayoutEffect)(()=>{s!=null&&(n.current===null?t(bO(s)):n.current!==s&&t(xO({prev:n.current,next:s})),n.current=s)},[s,t]),(0,p.useLayoutEffect)(()=>()=>{n.current&&=(t(SO(n.current)),null)},[t]),null}function ZM(e){var t=e.yAxisId,n=e.className,r=e.width,i=e.label,a=(0,p.useRef)(null),s=(0,p.useRef)(null),c=z(ks),l=js(),u=R(),d=`yAxis`,f=z(e=>gx(e,t)),m=z(e=>hx(e,t)),h=z(e=>bx(e,d,t,l)),g=z(e=>wy(e,t));if((0,p.useLayoutEffect)(()=>{if(!(r!==`auto`||!f||CE(i)||(0,p.isValidElement)(i)||g==null)){var e=a.current;if(e){var n=e.getCalculatedWidth();Math.round(f.width)!==Math.round(n)&&u(CO({id:t,width:n}))}}},[h,f,u,i,t,r,g]),f==null||m==null||g==null)return null;e.dangerouslySetInnerHTML,e.ticks,e.scale;var _=JM(e,BM);g.id,g.scale;var v=JM(g,VM);return p.createElement(Xk,HM({},_,v,{ref:a,labelRef:s,x:m.x,y:m.y,tickTextProps:r===`auto`?{width:void 0}:{width:r},width:f.width,height:f.height,className:o(`recharts-${d} ${d}`,n),viewBox:c,ticks:h,axisType:d,axisId:t}))}var QM={allowDataOverflow:X.allowDataOverflow,allowDecimals:X.allowDecimals,allowDuplicatedCategory:X.allowDuplicatedCategory,angle:X.angle,axisLine:Vk.axisLine,hide:!1,includeHidden:X.includeHidden,interval:X.interval,label:!1,minTickGap:X.minTickGap,mirror:X.mirror,orientation:X.orientation,padding:X.padding,reversed:X.reversed,scale:X.scale,tick:X.tick,tickCount:X.tickCount,tickLine:Vk.tickLine,tickSize:Vk.tickSize,type:X.type,niceTicks:X.niceTicks,width:X.width,yAxisId:0},$M=p.memo(e=>{var t=zt(e,QM);return p.createElement(p.Fragment,null,p.createElement(XM,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter,niceTicks:t.niceTicks}),p.createElement(ZM,t))},CM);$M.displayName=`YAxis`;var eN=B([(e,t)=>t,G,up,yp,IS,RS,_C,Ds],kC);function tN(e){return`getBBox`in e.currentTarget&&typeof e.currentTarget.getBBox==`function`}function nN(e){var t=e.currentTarget.getBoundingClientRect(),n,r;if(tN(e)){var i=e.currentTarget.getBBox();n=i.width>0?t.width/i.width:1,r=i.height>0?t.height/i.height:1}else{var a=e.currentTarget;n=a.offsetWidth>0?t.width/a.offsetWidth:1,r=a.offsetHeight>0?t.height/a.offsetHeight:1}var o=(e,i)=>({relativeX:Math.round((e-t.left)/n),relativeY:Math.round((i-t.top)/r)});return`touches`in e?Array.from(e.touches).map(e=>o(e.clientX,e.clientY)):o(e.clientX,e.clientY)}var rN=Sa(`mouseClick`),iN=Ao();iN.startListening({actionCreator:rN,effect:(e,t)=>{var n=e.payload,r=eN(t.getState(),nN(n));r?.activeIndex!=null&&t.dispatch(Vx({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var aN=Sa(`mouseMove`),oN=Ao(),sN=null,cN=null,lN=null;oN.startListening({actionCreator:aN,effect:(e,t)=>{var n=e.payload,r=t.getState().eventSettings,i=r.throttleDelay,a=r.throttledEvents,o=a===`all`||a?.includes(`mousemove`);sN!==null&&(cancelAnimationFrame(sN),sN=null),cN!==null&&(typeof i!=`number`||!o)&&(clearTimeout(cN),cN=null),lN=nN(n);var s=()=>{var e=t.getState(),n=Dx(e,e.tooltip.settings.shared);if(!lN){sN=null,cN=null;return}if(n===`axis`){var r=eN(e,lN);r?.activeIndex==null?t.dispatch(zx()):t.dispatch(Bx({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}sN=null,cN=null};if(!o){s();return}i===`raf`?sN=requestAnimationFrame(s):typeof i==`number`&&cN===null&&(cN=setTimeout(s,i))}});function uN(e,t){return t instanceof HTMLElement?`HTMLElement <${t.tagName} class="${t.className}">`:t===window?`global.window`:e===`children`&&typeof t==`object`&&t?`<>`:t}var dN={accessibilityLayer:!0,barCategoryGap:`10%`,barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:`none`,syncId:void 0,syncMethod:`index`,baseValue:void 0,reverseStackOrder:!1},fN=Ua({name:`rootProps`,initialState:dN,reducers:{updateOptions:(e,t)=>{e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=t.payload.barGap??dN.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),pN=fN.reducer,mN=fN.actions.updateOptions,hN=Ua({name:`polarOptions`,initialState:null,reducers:{updatePolarOptions:(e,t)=>e===null?t.payload:(e.startAngle=t.payload.startAngle,e.endAngle=t.payload.endAngle,e.cx=t.payload.cx,e.cy=t.payload.cy,e.innerRadius=t.payload.innerRadius,e.outerRadius=t.payload.outerRadius,e)}});hN.actions.updatePolarOptions;var gN=hN.reducer,_N=Sa(`keyDown`),vN=Sa(`focus`),yN=Sa(`blur`),bN=Ao(),xN=null,SN=null,CN=null;bN.startListening({actionCreator:_N,effect:(e,t)=>{CN=e.payload,xN!==null&&(cancelAnimationFrame(xN),xN=null);var n=t.getState().eventSettings,r=n.throttleDelay,i=n.throttledEvents,a=i===`all`||i.includes(`keydown`);SN!==null&&(typeof r!=`number`||!a)&&(clearTimeout(SN),SN=null);var o=()=>{try{var e=t.getState();if(e.rootProps.accessibilityLayer===!1)return;var n=e.tooltip.keyboardInteraction,r=CN;if(r!==`ArrowRight`&&r!==`ArrowLeft`&&r!==`Enter`)return;var i=nS(n,wS(e),tb(e),NS(e)),a=i==null?-1:Number(i),o=!Number.isFinite(a)||a<0,s=RS(e),c=wS(e),l=Dx(e,e.tooltip.settings.shared);if(r===`Enter`){if(o)return;var u=SC(e,l,`hover`,String(n.index));t.dispatch(Ux({active:!n.active,activeIndex:n.index,activeCoordinate:u}));return}var d=Cx(e)===`left-to-right`?1:-1,f=r===`ArrowRight`?1:-1,p;if(o){var m=tb(e),h=NS(e),g=f*d,_=e=>({active:!1,index:String(e),dataKey:void 0,graphicalItemId:void 0,coordinate:void 0});if(p=-1,g>0){for(var v=0;v=0;y--)if(nS(_(y),c,m,h)!=null){p=y;break}if(p<0)return}else{p=a+f*d;var b=s?.length||c.length;if(b===0||p>=b||p<0)return}var x=SC(e,l,`hover`,String(p));t.dispatch(Ux({active:!0,activeIndex:p.toString(),activeCoordinate:x}))}finally{xN=null,SN=null}};if(!a){o();return}r===`raf`?xN=requestAnimationFrame(o):typeof r==`number`&&SN===null&&(o(),CN=null,SN=setTimeout(()=>{CN?o():(SN=null,xN=null)},r))}}),bN.startListening({actionCreator:vN,effect:(e,t)=>{var n=t.getState();if(n.rootProps.accessibilityLayer!==!1){var r=n.tooltip.keyboardInteraction;if(!r.active&&r.index==null){var i=`0`,a=SC(n,Dx(n,n.tooltip.settings.shared),`hover`,String(i));t.dispatch(Ux({active:!0,activeIndex:i,activeCoordinate:a}))}}}}),bN.startListening({actionCreator:yN,effect:(e,t)=>{var n=t.getState();if(n.rootProps.accessibilityLayer!==!1){var r=n.tooltip.keyboardInteraction;r.active&&t.dispatch(Ux({active:!1,activeIndex:r.index,activeCoordinate:r.coordinate}))}}});function wN(e){e.persist();var t=e.currentTarget;return new Proxy(e,{get:(e,n)=>{if(n===`currentTarget`)return t;var r=Reflect.get(e,n);return typeof r==`function`?r.bind(e):r}})}var TN=Sa(`externalEvent`),EN=Ao(),DN=new Map,ON=new Map,kN=new Map;EN.startListening({actionCreator:TN,effect:(e,t)=>{var n=e.payload,r=n.handler,i=n.reactEvent;if(r!=null){var a=i.type,o=wN(i);kN.set(a,{handler:r,reactEvent:o});var s=DN.get(a);s!==void 0&&(cancelAnimationFrame(s),DN.delete(a));var c=t.getState().eventSettings,l=c.throttleDelay,u=c.throttledEvents,d=u===`all`||u?.includes(a),f=ON.get(a);f!==void 0&&(typeof l!=`number`||!d)&&(clearTimeout(f),ON.delete(a));var p=()=>{var e=kN.get(a);try{if(!e)return;var n=e.handler,r=e.reactEvent,i=t.getState(),o={activeCoordinate:JS(i),activeDataKey:GS(i),activeIndex:US(i),activeLabel:WS(i),activeTooltipIndex:US(i),isTooltipActive:YS(i)};n&&n(o,r)}finally{DN.delete(a),ON.delete(a),kN.delete(a)}};if(!d){p();return}if(l===`raf`){var m=requestAnimationFrame(p);DN.set(a,m)}else if(typeof l==`number`){if(!ON.has(a)){p();var h=setTimeout(p,l);ON.set(a,h)}}else p()}}});var AN=B([B([oS],e=>e.tooltipItemPayloads),(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(e=>e.settings.graphicalItemId===n);if(r!=null){var i=r.getPosition;if(i!=null)return i(t)}}}),jN=Sa(`touchMove`),MN=Ao(),NN=null,PN=null,FN=null,IN=null;MN.startListening({actionCreator:jN,effect:(e,t)=>{var n=e.payload;if(n.touches!=null&&n.touches.length!==0){IN=wN(n);var r=t.getState().eventSettings,i=r.throttleDelay,a=r.throttledEvents,o=a===`all`||a.includes(`touchmove`);NN!==null&&(cancelAnimationFrame(NN),NN=null),PN!==null&&(typeof i!=`number`||!o)&&(clearTimeout(PN),PN=null),FN=Array.from(n.touches).map(e=>nN({clientX:e.clientX,clientY:e.clientY,currentTarget:n.currentTarget}));var s=()=>{if(IN!=null){var e=t.getState(),n=Dx(e,e.tooltip.settings.shared);if(n===`axis`){var r=FN?.[0];if(r==null){NN=null,PN=null;return}var i=eN(e,r);i?.activeIndex!=null&&t.dispatch(Bx({activeIndex:i.activeIndex,activeDataKey:void 0,activeCoordinate:i.activeCoordinate}))}else if(n===`item`){var a=IN.touches[0];if(document.elementFromPoint==null||a==null)return;var o=document.elementFromPoint(a.clientX,a.clientY);if(!o||!o.getAttribute)return;var s=o.getAttribute(gs),c=o.getAttribute(`data-recharts-item-id`)??void 0,l=bS(e).find(e=>e.id===c);if(s==null||l==null||c==null)return;var u=l.dataKey,d=AN(e,s,c);t.dispatch(Rx({activeDataKey:u,activeIndex:s,activeCoordinate:d,activeGraphicalItemId:c}))}NN=null,PN=null}};if(!o){s();return}i===`raf`?NN=requestAnimationFrame(s):typeof i==`number`&&PN===null&&(s(),IN=null,PN=setTimeout(()=>{IN?s():(PN=null,NN=null)},i))}}});var LN={throttleDelay:`raf`,throttledEvents:[`mousemove`,`touchmove`,`pointermove`,`scroll`,`wheel`]},RN=Ua({name:`eventSettings`,initialState:LN,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=V(t.payload.throttledEvents))}}}),zN=RN.actions.setEventSettings,BN=RN.reducer,VN=Kr({brush:zO,cartesianAxis:TO,chartData:yw,errorBars:FA,eventSettings:BN,graphicalItems:XD,layout:Ro,legend:Oc,options:fw,polarAxis:XE,polarOptions:gN,referenceElements:WO,renderedTicks:Ek,rootProps:pN,tooltip:Wx,zIndex:KC}),HN=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`Chart`;return Na({reducer:VN,preloadedState:e,middleware:e=>e({serializableCheck:!1,immutableCheck:![`commonjs`,`es6`,`production`].includes(`es6`)}).concat([iN.middleware,oN.middleware,bN.middleware,EN.middleware,MN.middleware]),enhancers:e=>{var t=e;return typeof e==`function`&&(t=e()),t.concat(ja({type:`raf`}))},devTools:gl.devToolsEnabled&&{serialize:{replacer:uN},name:`recharts-${t}`}})};function UN(e){var t=e.preloadedState,n=e.children,r=e.reduxStoreName,i=js(),a=(0,p.useRef)(null);if(i)return n;a.current??=HN(t,r);var o=$n;return p.createElement(Wc,{context:o,store:a.current},n)}function WN(e){var t=e.layout,n=e.margin,r=R(),i=js();return(0,p.useEffect)(()=>{i||(r(Fo(t)),r(Po(n)))},[r,i,t,n]),null}var GN=(0,p.memo)(WN,qc);function KN(e){var t=R();return(0,p.useEffect)(()=>{t(mN(e))},[t,e]),null}var qN=(0,p.memo)(e=>{var t=R();return(0,p.useEffect)(()=>{t(zN(e))},[t,e]),null},qc);function JN(e){var t=e.zIndex,n=e.isPanorama,r=(0,p.useRef)(null),i=R();return(0,p.useLayoutEffect)(()=>(r.current&&i(WC({zIndex:t,element:r.current,isPanorama:n})),()=>{i(GC({zIndex:t,isPanorama:n}))}),[i,t,n]),p.createElement(`g`,{tabIndex:-1,ref:r,className:`recharts-zIndex-layer_${t}`})}function YN(e){var t=e.children,n=e.isPanorama,r=z(jC);if(!r||r.length===0)return t;var i=r.filter(e=>e<0),a=r.filter(e=>e>0);return p.createElement(p.Fragment,null,i.map(e=>p.createElement(JN,{key:e,zIndex:e,isPanorama:n})),t,a.map(e=>p.createElement(JN,{key:e,zIndex:e,isPanorama:n})))}var XN=[`children`];function ZN(e,t){if(e==null)return{};var n,r,i=QN(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var n=gc(),r=_c(),i=Rl();if(!Bo(n)||!Bo(r))return null;var a=e.children,o=e.otherAttributes,s=e.title,c=e.desc,l,u;return o!=null&&(l=typeof o.tabIndex==`number`?o.tabIndex:i?0:void 0,u=typeof o.role==`string`?o.role:i?`application`:void 0),p.createElement(T,$N({},o,{title:s,desc:c,role:u,tabIndex:l,width:n,height:r,style:eP,ref:t}),a)}),nP=e=>{var t=e.children,n=z(Ns);if(!n)return null;var r=n.width,i=n.height,a=n.y,o=n.x;return p.createElement(T,{width:r,height:i,x:o,y:a},t)},rP=(0,p.forwardRef)((e,t)=>{var n=e.children,r=ZN(e,XN);return js()?p.createElement(nP,null,p.createElement(YN,{isPanorama:!0},n)):p.createElement(tP,$N({ref:t},r),p.createElement(YN,{isPanorama:!1},n))});function iP(e,t){return lP(e)||cP(e,t)||oP(e,t)||aP()}function aP(){throw TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function oP(e,t){if(e){if(typeof e==`string`)return sP(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?sP(e,t):void 0}}function sP(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{if(n!=null){var t=n.getBoundingClientRect().width/n.offsetWidth;U(t)&&t!==i&&e(Lo(t))}},[n,e,i]),r}function dP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function fP(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n(Aw(),null);function wP(e){if(typeof e==`number`)return e;if(typeof e==`string`){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var TP=(0,p.forwardRef)((e,t)=>{var n=(0,p.useRef)(null),r=_P((0,p.useState)({containerWidth:wP(e.style?.width),containerHeight:wP(e.style?.height)}),2),i=r[0],a=r[1],o=(0,p.useCallback)((e,t)=>{a(n=>{var r=Math.round(e),i=Math.round(t);return n.containerWidth===r&&n.containerHeight===i?n:{containerWidth:r,containerHeight:i}})},[]),s=(0,p.useCallback)(e=>{if(typeof t==`function`&&t(e),n.current!=null&&(n.current.disconnect(),n.current=null),e!=null&&typeof ResizeObserver<`u`){var r=e.getBoundingClientRect(),i=r.width,a=r.height;o(i,a);var s=new ResizeObserver(e=>{var t=e[0];if(t!=null){var n=t.contentRect,r=n.width,i=n.height;o(r,i)}});s.observe(e),n.current=s}},[t,o]);return(0,p.useEffect)(()=>()=>{n.current?.disconnect()},[o]),p.createElement(p.Fragment,null,p.createElement(Sc,{width:i.containerWidth,height:i.containerHeight}),p.createElement(`div`,gP({ref:s},e)))}),EP=(0,p.forwardRef)((e,t)=>{var n=e.width,r=e.height,i=_P((0,p.useState)({containerWidth:wP(n),containerHeight:wP(r)}),2),a=i[0],o=i[1],s=(0,p.useCallback)((e,t)=>{o(n=>{var r=Math.round(e),i=Math.round(t);return n.containerWidth===r&&n.containerHeight===i?n:{containerWidth:r,containerHeight:i}})},[]),c=(0,p.useCallback)(e=>{if(typeof t==`function`&&t(e),e!=null){var n=e.getBoundingClientRect(),r=n.width,i=n.height;s(r,i)}},[t,s]);return p.createElement(p.Fragment,null,p.createElement(Sc,{width:a.containerWidth,height:a.containerHeight}),p.createElement(`div`,gP({ref:c},e)))}),DP=(0,p.forwardRef)((e,t)=>{var n=e.width,r=e.height;return p.createElement(p.Fragment,null,p.createElement(Sc,{width:n,height:r}),p.createElement(`div`,gP({ref:t},e)))}),OP=(0,p.forwardRef)((e,t)=>{var n=e.width,r=e.height;return typeof n==`string`||typeof r==`string`?p.createElement(EP,gP({},e,{ref:t})):typeof n==`number`&&typeof r==`number`?p.createElement(DP,gP({},e,{width:n,height:r,ref:t})):p.createElement(p.Fragment,null,p.createElement(Sc,{width:n,height:r}),p.createElement(`div`,gP({ref:t},e)))});function kP(e){return e?TP:OP}var AP=(0,p.forwardRef)((e,t)=>{var n=e.children,r=e.className,i=e.height,a=e.onClick,s=e.onContextMenu,c=e.onDoubleClick,l=e.onMouseDown,u=e.onMouseEnter,d=e.onMouseLeave,f=e.onMouseMove,m=e.onMouseUp,h=e.onTouchEnd,g=e.onTouchMove,_=e.onTouchStart,v=e.style,y=e.width,b=e.responsive,x=e.dispatchTouchEvents,S=x===void 0||x,C=(0,p.useRef)(null),w=R(),T=_P((0,p.useState)(null),2),E=T[0],D=T[1],O=_P((0,p.useState)(null),2),k=O[0],A=O[1],j=uP(),M=uc(),N=M?.width>0?M.width:y,ee=M?.height>0?M.height:i,te=(0,p.useCallback)(e=>{j(e),typeof t==`function`&&t(e),D(e),A(e),e!=null&&(C.current=e)},[j,t,D,A]),ne=(0,p.useCallback)(e=>{w(rN(e)),w(TN({handler:a,reactEvent:e}))},[w,a]),re=(0,p.useCallback)(e=>{w(aN(e)),w(TN({handler:u,reactEvent:e}))},[w,u]),ie=(0,p.useCallback)(e=>{w(zx()),w(TN({handler:d,reactEvent:e}))},[w,d]),ae=(0,p.useCallback)(e=>{w(aN(e)),w(TN({handler:f,reactEvent:e}))},[w,f]),oe=(0,p.useCallback)(()=>{w(vN())},[w]),se=(0,p.useCallback)(()=>{w(yN())},[w]),ce=(0,p.useCallback)(e=>{w(_N(e.key))},[w]),P=(0,p.useCallback)(e=>{w(TN({handler:s,reactEvent:e}))},[w,s]),le=(0,p.useCallback)(e=>{w(TN({handler:c,reactEvent:e}))},[w,c]),ue=(0,p.useCallback)(e=>{w(TN({handler:l,reactEvent:e}))},[w,l]),de=(0,p.useCallback)(e=>{w(TN({handler:m,reactEvent:e}))},[w,m]),F=(0,p.useCallback)(e=>{w(TN({handler:_,reactEvent:e}))},[w,_]),fe=(0,p.useCallback)(e=>{S&&w(jN(e)),w(TN({handler:g,reactEvent:e}))},[w,S,g]),pe=(0,p.useCallback)(e=>{w(TN({handler:h,reactEvent:e}))},[w,h]),me=kP(b);return p.createElement(iw.Provider,{value:E},p.createElement(je.Provider,{value:k},p.createElement(me,{width:N??v?.width,height:ee??v?.height,className:o(`recharts-wrapper`,r),style:fP({position:`relative`,cursor:`default`,width:N,height:ee},v),onClick:ne,onContextMenu:P,onDoubleClick:le,onFocus:oe,onBlur:se,onKeyDown:ce,onMouseDown:ue,onMouseEnter:re,onMouseLeave:ie,onMouseMove:ae,onMouseUp:de,onTouchEnd:pe,onTouchMove:fe,onTouchStart:F,ref:te},p.createElement(CP,null),n)))}),jP=[`width`,`height`,`responsive`,`children`,`className`,`style`,`compact`,`title`,`desc`];function MP(e,t){if(e==null)return{};var n,r,i=NP(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var n=e.width,r=e.height,i=e.responsive,a=e.children,o=e.className,s=e.style,c=e.compact,l=e.title,u=e.desc,d=_(MP(e,jP));return c?p.createElement(p.Fragment,null,p.createElement(Sc,{width:n,height:r}),p.createElement(rP,{otherAttributes:d,title:l,desc:u},a)):p.createElement(AP,{className:o,style:s,width:n,height:r,responsive:i??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},p.createElement(rP,{otherAttributes:d,title:l,desc:u,ref:t},p.createElement(QO,null,a)))});function FP(){return FP=Object.assign?Object.assign.bind():function(e){for(var t=1;tp.createElement(HP,{chartName:`ComposedChart`,defaultTooltipEventType:`axis`,validateTooltipEventTypes:UP,tooltipPayloadSearcher:uw,categoricalChartProps:e,ref:t})),$=e();function GP(e,t,n){let r=new Date(e);return Number.isFinite(r.getTime())?new Intl.DateTimeFormat(n===`zh`?`zh-CN`:`en-US`,t?{month:`short`,day:`numeric`}:{hour:`2-digit`,minute:`2-digit`,hour12:!1}).format(r):``}function KP(e){if(e<=1)return 1;let t=10**Math.floor(Math.log10(e)),n=e/t;return(n<=1?1:n<=2?2:n<=5?5:10)*t}function qP({active:e,payload:t,daily:n,lang:r,okLabel:i,errorLabel:a}){if(!e||!t?.[0])return null;let o=t[0].payload;return(0,$.jsxs)(`div`,{className:`rounded-xl border border-border bg-overlay px-3 py-2 text-[11px] text-overlay-foreground shadow-overlay`,children:[(0,$.jsx)(`div`,{className:`mono text-muted`,children:GP(o.at,n,r)}),(0,$.jsxs)(`div`,{className:`mt-1.5 grid gap-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-6`,children:[(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,$.jsx)(`span`,{className:`size-1.5 rounded-full bg-success`}),i]}),(0,$.jsx)(`span`,{className:`mono font-medium`,children:o.okCount})]}),(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-6`,children:[(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,$.jsx)(`span`,{className:`size-1.5 rounded-full bg-danger`}),a]}),(0,$.jsx)(`span`,{className:`mono font-medium`,children:o.errorCount})]}),(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-6 border-t border-separator pt-1`,children:[(0,$.jsx)(`span`,{className:`text-muted`,children:`total`}),(0,$.jsx)(`span`,{className:`mono font-medium`,children:o.requests})]})]})]})}function JP({series:e,lang:t,emptyLabel:n,okLabel:r,errorLabel:i}){let o=(0,p.useRef)(null),c=(0,p.useMemo)(()=>e.map(e=>{let t=Math.max(0,e.ok??e.requests-e.error),n=Math.min(Math.max(0,e.requests-t),Math.max(0,e.requests));return{...e,okCount:t,errorCount:n}}),[e]),u=c[0],d=c[c.length-1],f=(u&&d?Date.parse(d.at)-Date.parse(u.at):0)>1728e5,m=Math.max(0,...c.map(e=>e.requests)),h=KP(m),g=c.some(e=>e.requests>0),_=c.map(e=>`${e.at}:${e.requests}:${e.error}`).join(`|`);return(0,p.useLayoutEffect)(()=>{let e=o.current;if(!e||!g)return;let t=!1,n=null,r=s.context(()=>{let r=s.matchMedia(),i=()=>{let t=s.utils.toArray(`.recharts-area-area`,e),n=s.utils.toArray(`.recharts-line-curve`,e);return!t.length&&!n.length?!1:(r.add(`(prefers-reduced-motion: reduce)`,()=>{s.set(n,{clearProps:`strokeDashoffset,strokeDasharray`}),s.set(t,{clearProps:`autoAlpha`})}),r.add(`(prefers-reduced-motion: no-preference)`,()=>{s.fromTo(t,{autoAlpha:0},{autoAlpha:1,duration:.45,ease:`power2.out`,stagger:.05}),n.forEach((e,t)=>{let n=e.getTotalLength();s.fromTo(e,{strokeDasharray:n,strokeDashoffset:n},{strokeDashoffset:0,duration:.7,delay:t*.05,ease:`power2.out`})})}),!0)};if(i()){t=!0;return}n=new MutationObserver(()=>{t||i()&&(t=!0,n?.disconnect())}),n.observe(e,{childList:!0,subtree:!0})},e);return()=>{n?.disconnect(),r.revert()}},[g,_]),!e.length||!g?(0,$.jsx)(l,{emptyLabel:n}):(0,$.jsxs)(`div`,{ref:o,className:`min-w-0`,children:[(0,$.jsx)(`div`,{className:`h-72 w-full`,children:(0,$.jsx)(fc,{width:`100%`,height:`100%`,children:(0,$.jsxs)(WP,{data:c,margin:{top:8,right:8,bottom:0,left:0},children:[(0,$.jsxs)(`defs`,{children:[(0,$.jsxs)(`linearGradient`,{id:`traffic-ok`,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--success)`,stopOpacity:.28}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--success)`,stopOpacity:.02})]}),(0,$.jsxs)(`linearGradient`,{id:`traffic-error`,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--danger)`,stopOpacity:.22}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--danger)`,stopOpacity:.02})]})]}),(0,$.jsx)(bA,{vertical:!1,stroke:`var(--separator)`,strokeDasharray:`3 6`}),(0,$.jsx)(RM,{dataKey:`at`,tickLine:!1,axisLine:!1,minTickGap:28,tick:{fill:`var(--muted)`,fontSize:10,fontFamily:`var(--font-mono)`},tickFormatter:e=>GP(e,f,t)}),(0,$.jsx)($M,{width:36,domain:[0,h],tickLine:!1,axisLine:!1,allowDecimals:!1,tick:{fill:`var(--muted)`,fontSize:10,fontFamily:`var(--font-mono)`},tickFormatter:e=>a(e)}),(0,$.jsx)(qw,{cursor:{stroke:`var(--border)`,strokeDasharray:`3 3`},content:(0,$.jsx)(qP,{daily:f,lang:t,okLabel:r,errorLabel:i})}),(0,$.jsx)(_M,{type:`monotone`,dataKey:`okCount`,stroke:`none`,fill:`url(#traffic-ok)`,isAnimationActive:!1,activeDot:!1,dot:!1,className:`traffic-ok-area`}),(0,$.jsx)(_M,{type:`monotone`,dataKey:`errorCount`,stroke:`none`,fill:`url(#traffic-error)`,isAnimationActive:!1,activeDot:!1,dot:!1,className:`traffic-error-area`}),(0,$.jsx)(wj,{type:`monotone`,dataKey:`okCount`,stroke:`var(--success)`,strokeWidth:1.75,dot:!1,isAnimationActive:!1,activeDot:{r:4,fill:`var(--surface)`,stroke:`var(--success)`,strokeWidth:1.5},className:`traffic-ok-line`}),(0,$.jsx)(wj,{type:`monotone`,dataKey:`errorCount`,stroke:`var(--danger)`,strokeWidth:1.25,strokeOpacity:.7,dot:!1,isAnimationActive:!1,activeDot:{r:4,fill:`var(--surface)`,stroke:`var(--danger)`,strokeWidth:1.5},className:`traffic-error-line`})]})})}),(0,$.jsxs)(`div`,{className:`mt-2 flex min-h-5 items-center justify-between gap-3 text-[10px] text-muted`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,$.jsx)(`span`,{className:`size-1.5 rounded-full bg-success`}),r]}),(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,$.jsx)(`span`,{className:`size-1.5 rounded-full bg-danger`}),i]})]}),(0,$.jsxs)(`span`,{className:`mono`,children:[a(m),` peak`]})]})]})}export{JP as TrafficChart}; \ No newline at end of file diff --git a/internal/webui/static/assets/index-6muxC58d.js b/internal/webui/static/assets/index-6muxC58d.js new file mode 100644 index 00000000..f190cdba --- /dev/null +++ b/internal/webui/static/assets/index-6muxC58d.js @@ -0,0 +1,29 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TrafficChart-BQJ2uhUR.js","assets/CartesianChart-DzLjYABO.js","assets/CostChart-Bb0Org4t.js"])))=>i.map(i=>d[i]); +var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;li[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,o)=>(o=n==null?{}:e(i(n)),c(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n));(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var u=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=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,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var A=/\/+/g;function j(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function M(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function N(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,N(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+j(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(A,`$&/`)+`/`),N(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(A,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u{t.exports=u()})),f=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0>>1,a=e[r];if(0>>1;ri(c,n))li(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(li(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&j(x,t.startTime-e)}}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-Tt&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),p=o(((e,t)=>{t.exports=f()})),m=o((e=>{var t=d();function n(e){var t=`https://react.dev/errors/`+e;if(1{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=m()})),g=o((e=>{var t=p(),n=d(),r=h();function i(e){var t=`https://react.dev/errors/`+e;if(1te||(e.current=R[te],R[te]=null,te--)}function B(e,t){te++,R[te]=e.current,e.current=t}var re=ne(null),ie=ne(null),ae=ne(null),oe=ne(null);function se(e,t){switch(B(ae,t),B(ie,e),B(re,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Jd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Jd(t),e=Yd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}z(re),B(re,e)}function ce(){z(re),z(ie),z(ae)}function le(e){e.memoizedState!==null&&B(oe,e);var t=re.current,n=Yd(t,e.type);t!==n&&(B(ie,e),B(re,n))}function ue(e){ie.current===e&&(z(re),z(ie)),oe.current===e&&(z(oe),ip._currentValue=L)}var de,fe;function pe(e){if(de===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);de=t&&t[1]||``,fe=-1)`:-1i||c[r]!==l[i]){var u=` +`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(``)&&(u=u.replace(``,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{me=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?pe(n):``}function ge(e,t){switch(e.tag){case 26:case 27:case 5:return pe(e.type);case 16:return pe(`Lazy`);case 13:return e.child!==t&&t!==null?pe(`Suspense Fallback`):pe(`Suspense`);case 19:return pe(`SuspenseList`);case 0:case 15:return he(e.type,!1);case 11:return he(e.type.render,!1);case 1:return he(e.type,!0);case 31:return pe(`Activity`);default:return``}}function _e(e){try{var t=``,n=null;do t+=ge(e,n),n=e,e=e.return;while(e);return t}catch(e){return` +Error generating stack: `+e.message+` +`+e.stack}}var ve=Object.prototype.hasOwnProperty,ye=t.unstable_scheduleCallback,be=t.unstable_cancelCallback,xe=t.unstable_shouldYield,Se=t.unstable_requestPaint,Ce=t.unstable_now,we=t.unstable_getCurrentPriorityLevel,Te=t.unstable_ImmediatePriority,Ee=t.unstable_UserBlockingPriority,De=t.unstable_NormalPriority,Oe=t.unstable_LowPriority,ke=t.unstable_IdlePriority,Ae=t.log,je=t.unstable_setDisableYieldValue,Me=null,Ne=null;function Pe(e){if(typeof Ae==`function`&&je(e),Ne&&typeof Ne.setStrictMode==`function`)try{Ne.setStrictMode(Me,e)}catch{}}var Fe=Math.clz32?Math.clz32:Re,Ie=Math.log,Le=Math.LN2;function Re(e){return e>>>=0,e===0?32:31-(Ie(e)/Le|0)|0}var ze=256,Be=262144,Ve=4194304;function He(e){var t=e&42;if(t!==0)return t;switch(e&-e){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:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ue(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=He(n))):i=He(o):i=He(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=He(n))):i=He(o)):i=He(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function We(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ge(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+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 t+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-1}}function Ke(){var e=Ve;return Ve<<=1,!(Ve&62914560)&&(Ve=4194304),e}function qe(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Je(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Ye(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0`u`||window.document===void 0||window.document.createElement===void 0),cn=!1;if(sn)try{var ln={};Object.defineProperty(ln,"passive",{get:function(){cn=!0}}),window.addEventListener(`test`,ln,ln),window.removeEventListener(`test`,ln,ln)}catch{cn=!1}var un=null,dn=null,fn=null;function pn(){if(fn)return fn;var e,t=dn,n=t.length,r,i=`value`in un?un.value:un.textContent,a=i.length;for(e=0;e=Gn),Jn=` `,Yn=!1;function Xn(e,t){switch(e){case`keyup`:return Un.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function Zn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var Qn=!1;function $n(e,t){switch(e){case`compositionend`:return Zn(t);case`keypress`:return t.which===32?(Yn=!0,Jn):null;case`textInput`:return e=t.data,e===Jn&&Yn?null:e;default:return null}}function er(e,t){if(Qn)return e===`compositionend`||!Wn&&Xn(e,t)?(e=pn(),fn=dn=un=null,Qn=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Sr(n)}}function wr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?wr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Tr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Pt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Pt(e.document)}return t}function Er(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var Dr=sn&&`documentMode`in document&&11>=document.documentMode,Or=null,kr=null,Ar=null,jr=!1;function Mr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;jr||Or==null||Or!==Pt(r)||(r=Or,`selectionStart`in r&&Er(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Ar&&xr(Ar,r)||(Ar=r,r=Md(kr,`onSelect`),0>=o,i-=o,wi=1<<32-Fe(t)+i|n<h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),Ni&&Ei(i,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),Ni&&Ei(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return Ni&&Ei(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),Ni&&Ei(a,g),u}function b(e,r,o,c){if(typeof o==`object`&&o&&o.type===y&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case _:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===y){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===O&&Da(l)===r.type){n(e,r.sibling),c=a(r,o.props),Pa(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===y?(c=di(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=ui(o.type,o.key,o.props,null,e.mode,c),Pa(c,o),c.return=e,e=c)}return s(e);case v:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=mi(o,e.mode,c),c.return=e,e=c}return s(e);case O:return o=Da(o),b(e,r,o,c)}if(P(o))return h(e,r,o,c);if(M(o)){if(l=M(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return b(e,r,Na(o),c);if(o.$$typeof===C)return b(e,r,ta(e,o),c);Fa(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=fi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Ma=0;var i=b(e,t,n,r);return ja=null,i}catch(t){if(t===xa||t===Ca)throw t;var a=oi(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var La=Ia(!0),Ra=Ia(!1),za=!1;function Ba(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Va(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ha(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Ua(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,zl&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=ri(e),ni(e,null,n),t}return $r(e,r,t,n),ri(e)}function Wa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ze(e,n)}}function Ga(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ka=!1;function qa(){if(Ka){var e=fa;if(e!==null)throw e}}function Ja(e,t,n,r){Ka=!1;var i=e.updateQueue;za=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(Hl&f)===f:(r&f)===f){f!==0&&f===da&&(Ka=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,f);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,f=typeof h==`function`?h.call(_,d,f):h,f==null)break a;d=m({},d,f);break a;case 2:za=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Xl|=o,e.lanes=o,e.memoizedState=d}}function Ya(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function Xa(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ea?a:8;var o=F.T,s={};F.T=s,Ps(e,!1,t,n);try{var c=i(),l=F.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Ns(e,t,ha(c,r),_u(e)):Ns(e,t,r,_u(e))}catch(n){Ns(e,t,{then:function(){},status:`rejected`,reason:n},_u())}finally{I.p=a,o!==null&&s.types!==null&&(o.types=s.types),F.T=o}}function Cs(){}function ws(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=Ts(e).queue;Ss(e,a,t,L,n===null?Cs:function(){return Es(e),n(r)})}function Ts(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:L,baseState:L,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lo,lastRenderedState:L},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lo,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Es(e){var t=Ts(e);t.next===null&&(t=e.alternate.memoizedState),Ns(e,t.next.queue,{},_u())}function Ds(){return ea(ip)}function Os(){return No().memoizedState}function ks(){return No().memoizedState}function As(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=_u();e=Ha(n);var r=Ua(t,e,n);r!==null&&(yu(r,t,n),Wa(r,t,n)),t={cache:sa()},e.payload=t;return}t=t.return}}function js(e,t,n){var r=_u();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Fs(e)?Is(t,n):(n=ei(e,t,n,r),n!==null&&(yu(n,e,r),Ls(n,t,r)))}function Ms(e,t,n){Ns(e,t,n,_u())}function Ns(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Fs(e))Is(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,br(s,o))return $r(e,t,i,0),Bl===null&&Qr(),!1}catch{}if(n=ei(e,t,i,r),n!==null)return yu(n,e,r),Ls(n,t,r),!0}return!1}function Ps(e,t,n,r){if(r={lane:2,revertLane:gd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Fs(e)){if(t)throw Error(i(479))}else t=ei(e,n,r,2),t!==null&&yu(t,e,2)}function Fs(e){var t=e.alternate;return e===po||t!==null&&t===po}function Is(e,t){_o=go=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Ls(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ze(e,n)}}var Rs={readContext:ea,use:Io,useCallback:Co,useContext:Co,useEffect:Co,useImperativeHandle:Co,useLayoutEffect:Co,useInsertionEffect:Co,useMemo:Co,useReducer:Co,useRef:Co,useState:Co,useDebugValue:Co,useDeferredValue:Co,useTransition:Co,useSyncExternalStore:Co,useId:Co,useHostTransitionStatus:Co,useFormState:Co,useActionState:Co,useOptimistic:Co,useMemoCache:Co,useCacheRefresh:Co};Rs.useEffectEvent=Co;var zs={readContext:ea,use:Io,useCallback:function(e,t){return Mo().memoizedState=[e,t===void 0?null:t],e},useContext:ea,useEffect:ls,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),ss(4194308,4,hs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return ss(4194308,4,e,t)},useInsertionEffect:function(e,t){ss(4,2,e,t)},useMemo:function(e,t){var n=Mo();t=t===void 0?null:t;var r=e();if(vo){Pe(!0);try{e()}finally{Pe(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=Mo();if(n!==void 0){var i=n(t);if(vo){Pe(!0);try{n(t)}finally{Pe(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=js.bind(null,po,e),[r.memoizedState,e]},useRef:function(e){var t=Mo();return e={current:e},t.memoizedState=e},useState:function(e){e=Ko(e);var t=e.queue,n=Ms.bind(null,po,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:_s,useDeferredValue:function(e,t){return bs(Mo(),e,t)},useTransition:function(){var e=Ko(!1);return e=Ss.bind(null,po,e.queue,!0,!1),Mo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=po,a=Mo();if(Ni){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Bl===null)throw Error(i(349));Hl&127||Ho(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,ls(Wo.bind(null,r,o,e),[e]),r.flags|=2048,as(9,{destroy:void 0},Uo.bind(null,r,o,n,t),null),n},useId:function(){var e=Mo(),t=Bl.identifierPrefix;if(Ni){var n=Ti,r=wi;n=(r&~(1<<32-Fe(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=yo++,0<\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[it]=t,o[at]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Vd(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&jc(t)}}return Ic(t),Mc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&jc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=ae.current,Bi(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=ji,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[it]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Rd(e.nodeValue,n)),e||Li(t,!0)}else e=qd(e).createTextNode(r),e[it]=t,t.stateNode=e}return Ic(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Bi(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[it]=t}else Vi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Ic(t),e=!1}else n=Hi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(co(t),t):(co(t),null);if(t.flags&128)throw Error(i(558))}return Ic(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Bi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[it]=t}else Vi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Ic(t),a=!1}else a=Hi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(co(t),t):(co(t),null)}return co(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Pc(t,t.updateQueue),Ic(t),null);case 4:return ce(),e===null&&Od(t.stateNode.containerInfo),Ic(t),null;case 10:return Ji(t.type),Ic(t),null;case 19:if(z(lo),r=t.memoizedState,r===null)return Ic(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)Fc(r,!1);else{if(Yl!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=uo(e),o!==null){for(t.flags|=128,Fc(r,!1),e=o.updateQueue,t.updateQueue=e,Pc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)li(n,e),n=n.sibling;return B(lo,lo.current&1|2),Ni&&Ei(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Ce()>ou&&(t.flags|=128,a=!0,Fc(r,!1),t.lanes=4194304)}}else{if(!a){if(e=uo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Pc(t,e),Fc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!Ni)return Ic(t),null}else 2*Ce()-r.renderingStartTime>ou&&n!==536870912&&(t.flags|=128,a=!0,Fc(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(Ic(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Ce(),e.sibling=null,n=lo.current,B(lo,a?n&1|2:n&1),Ni&&Ei(t,r.treeForkCount),e);case 22:case 23:return co(t),to(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(Ic(t),t.subtreeFlags&6&&(t.flags|=8192)):Ic(t),n=t.updateQueue,n!==null&&Pc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&z(_a),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Ji(oa),Ic(t),null;case 25:return null;case 30:return null}throw Error(i(156,t.tag))}function Rc(e,t){switch(ki(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ji(oa),ce(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ue(t),null;case 31:if(t.memoizedState!==null){if(co(t),t.alternate===null)throw Error(i(340));Vi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(co(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));Vi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return z(lo),null;case 4:return ce(),null;case 10:return Ji(t.type),null;case 22:case 23:return co(t),to(),e!==null&&z(_a),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Ji(oa),null;case 25:return null;default:return null}}function zc(e,t){switch(ki(t),t.tag){case 3:Ji(oa),ce();break;case 26:case 27:case 5:ue(t);break;case 4:ce();break;case 31:t.memoizedState!==null&&co(t);break;case 13:co(t);break;case 19:z(lo);break;case 10:Ji(t.type);break;case 22:case 23:co(t),to(),e!==null&&z(_a);break;case 24:Ji(oa)}}function Bc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Yu(t,t.return,e)}}function Vc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Yu(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Yu(t,t.return,e)}}function Hc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Xa(t,n)}catch(t){Yu(e,e.return,t)}}}function Uc(e,t,n){n.props=Ks(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Yu(e,t,n)}}function Wc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Yu(e,t,n)}}function Gc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){Yu(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Yu(e,t,n)}else n.current=null}}function Kc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Yu(e,e.return,t)}}function qc(e,t,n){try{var r=e.stateNode;Hd(r,e.type,n,t),r[at]=t}catch(t){Yu(e,e.return,t)}}function Jc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&af(e.type)||e.tag===4}function Yc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Jc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&af(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Xc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Zt));else if(r!==4&&(r===27&&af(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Xc(e,t,n),e=e.sibling;e!==null;)Xc(e,t,n),e=e.sibling}function Zc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&af(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Zc(e,t,n),e=e.sibling;e!==null;)Zc(e,t,n),e=e.sibling}function Qc(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Vd(t,r,n),t[it]=e,t[at]=n}catch(t){Yu(e,e.return,t)}}var $c=!1,el=!1,tl=!1,nl=typeof WeakSet==`function`?WeakSet:Set,rl=null;function il(e,t){if(e=e.containerInfo,Gd=pp,e=Tr(e),Er(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(Kd={focusedElem:e,selectionRange:n},pp=!1,rl=t;rl!==null;)if(t=rl,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,rl=e;else for(;rl!==null;){switch(t=rl,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n title`))),Vd(o,r,n),o[it]=e,_t(o),r=o;break a;case`link`:var s=qf(`link`,`href`,a).get(r+(n.href||``));if(s){for(var c=0;cg&&(o=g,g=h,h=o);var _=Cr(s,h),v=Cr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;sn?32:n,F.T=null,n=mu,mu=null;var o=uu,s=fu;if(lu=0,du=uu=null,fu=0,zl&6)throw Error(i(331));var c=zl;if(zl|=4,Pl(o.current),El(o,o.current,s,n),zl=c,ld(0,!1),Ne&&typeof Ne.onPostCommitFiberRoot==`function`)try{Ne.onPostCommitFiberRoot(Me,o)}catch{}return!0}finally{I.p=a,F.T=r,Gu(e,t)}}function Ju(e,t,n){t=gi(n,t),t=Qs(e.stateNode,t,2),e=Ua(e,t,2),e!==null&&(Je(e,2),cd(e))}function Yu(e,t,n){if(e.tag===3)Ju(e,e,n);else for(;t!==null;){if(t.tag===3){Ju(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(cu===null||!cu.has(r))){e=gi(n,e),n=$s(2),r=Ua(t,n,2),r!==null&&(ec(n,r,t,e),Je(r,2),cd(r));break}}t=t.return}}function Xu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Rl;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(ql=!0,i.add(n),e=Zu.bind(null,e,t,n),t.then(e,e))}function Zu(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Bl===e&&(Hl&n)===n&&(Yl===4||Yl===3&&(Hl&62914560)===Hl&&300>Ce()-iu?!(zl&2)&&Eu(e,0):Ql|=n,eu===Hl&&(eu=0)),cd(e)}function Qu(e,t){t===0&&(t=Ke()),e=ti(e,t),e!==null&&(Je(e,t),cd(e))}function $u(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Qu(e,n)}function ed(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),Qu(e,n)}function td(e,t){return ye(e,t)}var nd=null,rd=null,id=!1,ad=!1,od=!1,sd=0;function cd(e){e!==rd&&e.next===null&&(rd===null?nd=rd=e:rd=rd.next=e),ad=!0,id||(id=!0,hd())}function ld(e,t){if(!od&&ad){od=!0;do for(var n=!1,r=nd;r!==null;){if(!t){if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-Fe(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,md(r,a))}else a=Hl,a=Ue(r,r===Bl?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||We(r,a)||(n=!0,md(r,a))}r=r.next}while(n);od=!1}}function ud(){dd()}function dd(){ad=id=!1;var e=0;sd!==0&&Qd()&&(e=sd);for(var t=Ce(),n=null,r=nd;r!==null;){var i=r.next,a=fd(r,t);a===0?(r.next=null,n===null?nd=i:n.next=i,i===null&&(rd=n)):(n=r,(e!==0||a&3)&&(ad=!0)),r=i}lu!==0&&lu!==5||ld(e,!1),sd!==0&&(sd=0)}function fd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0s)break;var u=c.transferSize,d=c.initiatorType;u&&Ud(d)&&(c=c.responseEnd,o+=u*(c`u`?null:document;function Df(e,t,n){var r=Ef;if(r&&typeof t==`string`&&t){var i=It(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),xf.has(i)||(xf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Vd(t,`link`,e),_t(t),r.head.appendChild(t)))}}function Of(e){Cf.D(e),Df(`dns-prefetch`,e,null)}function kf(e,t){Cf.C(e,t),Df(`preconnect`,e,t)}function Af(e,t,n){Cf.L(e,t,n);var r=Ef;if(r&&e&&t){var i=`link[rel="preload"][as="`+It(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+It(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+It(n.imageSizes)+`"]`)):i+=`[href="`+It(e)+`"]`;var a=i;switch(t){case`style`:a=If(e);break;case`script`:a=Bf(e)}bf.has(a)||(e=m({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),bf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Lf(a))||t===`script`&&r.querySelector(Vf(a))||(t=r.createElement(`link`),Vd(t,`link`,e),_t(t),r.head.appendChild(t)))}}function jf(e,t){Cf.m(e,t);var n=Ef;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+It(r)+`"][href="`+It(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Bf(e)}if(!bf.has(a)&&(e=m({rel:`modulepreload`,href:e},t),bf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Vf(a)))return}r=n.createElement(`link`),Vd(r,`link`,e),_t(r),n.head.appendChild(r)}}}function Mf(e,t,n){Cf.S(e,t,n);var r=Ef;if(r&&e){var i=gt(r).hoistableStyles,a=If(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(Lf(a)))s.loading=5;else{e=m({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=bf.get(a))&&Wf(e,n);var c=o=r.createElement(`link`);_t(c),Vd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Uf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Nf(e,t){Cf.X(e,t);var n=Ef;if(n&&e){var r=gt(n).hoistableScripts,i=Bf(e),a=r.get(i);a||(a=n.querySelector(Vf(i)),a||(e=m({src:e,async:!0},t),(t=bf.get(i))&&Gf(e,t),a=n.createElement(`script`),_t(a),Vd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Pf(e,t){Cf.M(e,t);var n=Ef;if(n&&e){var r=gt(n).hoistableScripts,i=Bf(e),a=r.get(i);a||(a=n.querySelector(Vf(i)),a||(e=m({src:e,async:!0,type:`module`},t),(t=bf.get(i))&&Gf(e,t),a=n.createElement(`script`),_t(a),Vd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Ff(e,t,n,r){var a=(a=ae.current)?Sf(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=If(n.href),n=gt(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=If(n.href);var o=gt(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(Lf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),bf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},bf.set(e,n),o||zf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Bf(n),n=gt(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function If(e){return`href="`+It(e)+`"`}function Lf(e){return`link[rel="stylesheet"][`+e+`]`}function Rf(e){return m({},e,{"data-precedence":e.precedence,precedence:null})}function zf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Vd(t,`link`,n),_t(t),e.head.appendChild(t))}function Bf(e){return`[src="`+It(e)+`"]`}function Vf(e){return`script[async]`+e}function Hf(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+It(n.href)+`"]`);if(r)return t.instance=r,_t(r),r;var a=m({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),_t(r),Vd(r,`style`,a),Uf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=If(n.href);var o=e.querySelector(Lf(a));if(o)return t.state.loading|=4,t.instance=o,_t(o),o;r=Rf(n),(a=bf.get(a))&&Wf(r,a),o=(e.ownerDocument||e).createElement(`link`),_t(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Vd(o,`link`,r),t.state.loading|=4,Uf(o,n.precedence,e),t.instance=o;case`script`:return o=Bf(n.src),(a=e.querySelector(Vf(o)))?(t.instance=a,_t(a),a):(r=n,(a=bf.get(o))&&(r=m({},n),Gf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),_t(a),Vd(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Uf(r,n.precedence,e));return t.instance}function Uf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o title`):null)}function Yf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Xf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Zf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=If(r.href),a=t.querySelector(Lf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=ep.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,_t(a);return}a=t.ownerDocument||t,r=Rf(r),(i=bf.get(i))&&Wf(r,i),a=a.createElement(`link`),_t(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Vd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=ep.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Qf=0;function $f(e,t){return e.stylesheets&&e.count===0&&np(e,e.stylesheets),0Qf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function ep(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)np(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var tp=null;function np(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,tp=new Map,t.forEach(rp,e),tp=null,ep.call(e))}function rp(e,t){if(!(t.state.loading&4)){var n=tp.get(e);if(n)var r=n.get(null);else{n=new Map,tp.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=g()})),v=l(d(),1),y=_(),b=`modulepreload`,x=function(e){return`/`+e},S={},C=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=x(t,n),t=s(t),t in S)return;S[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:b,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},w=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,T=/^[\\/]{2}/;function E(e,t){return t+e.replace(/\\/g,`/`)}var D=`popstate`;function O(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function k(e={}){function t(e,t){let n=t.state?.masked,{pathname:r,search:i,hash:a}=n||e.location;return ee(``,{pathname:r,search:i,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||`default`,n?{pathname:e.location.pathname,search:e.location.search,hash:e.location.hash}:void 0)}function n(e,t){return typeof t==`string`?t:P(t)}return I(t,n,null,e)}function A(e,t){if(e===!1||e==null)throw Error(t)}function j(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function M(){return Math.random().toString(36).substring(2,10)}function N(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function ee(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?F(t):t,state:n,key:t&&t.key||r||M(),mask:i}}function P({pathname:e=`/`,search:t=``,hash:n=``}){return t&&t!==`?`&&(e+=t.charAt(0)===`?`?t:`?`+t),n&&n!==`#`&&(e+=n.charAt(0)===`#`?n:`#`+n),e}function F(e){let t={};if(e){let n=e.indexOf(`#`);n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf(`?`);r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function I(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,s=`POP`,c=null,l=u();l??(l=0,o.replaceState({...o.state,idx:l},``));function u(){return(o.state||{idx:null}).idx}function d(){s=`POP`;let e=u(),t=e==null?null:e-l;l=e,c&&c({action:s,location:h.location,delta:t})}function f(e,t){s=`PUSH`;let r=O(e)?e:ee(h.location,e,t);n&&n(r,e),l=u()+1;let d=N(r,l),f=h.createHref(r.mask||r);try{o.pushState(d,``,f)}catch(e){if(e instanceof DOMException&&e.name===`DataCloneError`)throw e;i.location.assign(f)}a&&c&&c({action:s,location:h.location,delta:1})}function p(e,t){s=`REPLACE`;let r=O(e)?e:ee(h.location,e,t);n&&n(r,e),l=u();let i=N(r,l),d=h.createHref(r.mask||r);o.replaceState(i,``,d),a&&c&&c({action:s,location:h.location,delta:0})}function m(e){return L(i,e)}let h={get action(){return s},get location(){return e(i,o)},listen(e){if(c)throw Error(`A history only accepts one active listener`);return i.addEventListener(D,d),c=e,()=>{i.removeEventListener(D,d),c=null}},createHref(e){return t(i,e)},createURL:m,encodeLocation(e){let t=m(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:f,replace:p,go(e){return o.go(e)}};return h}function L(e,t,n=!1){let r=`http://localhost`;e&&(r=e.location.origin===`null`?e.location.href:e.location.origin),A(r,`No window.location.(origin|href) available to create URL`);let i=typeof t==`string`?t:P(t);return i=i.replace(/ $/,`%20`),!n&&T.test(i)&&(i=r+i),new URL(i,r)}function R(e,t,n=`/`){return te(e,t,n,!1)}function te(e,t,n,r,i){let a=ve((typeof t==`string`?F(t):t).pathname||`/`,n);if(a==null)return null;let o=i??ne(e),s=null,c=_e(a);for(let e=0;s==null&&e{let c={relativePath:s===void 0?e.path||``:s,caseSensitive:e.caseSensitive===!0,childrenIndex:a,route:e};if(c.relativePath.startsWith(`/`)){if(!c.relativePath.startsWith(r)&&o)return;A(c.relativePath.startsWith(r),`Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),c.relativePath=c.relativePath.slice(r.length)}let l=Ee([r,c.relativePath]),u=n.concat(c);e.children&&e.children.length>0&&(A(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${l}".`),z(e.children,t,u,l,o)),!(e.path==null&&!e.index)&&t.push({path:l,score:de(l,e.index),routesMeta:u.map((e,t)=>{let[n,r]=ge(e.relativePath,e.caseSensitive,t===u.length-1);return{...e,matcher:n,compiledParams:r}})})};return e.forEach((e,t)=>{if(e.path===``||!e.path?.includes(`?`))a(e,t);else for(let n of B(e.path))a(e,t,!0,n)}),t}function B(e){let t=e.split(`/`);if(t.length===0)return[];let[n,...r]=t,i=n.endsWith(`?`),a=n.replace(/\?$/,``);if(r.length===0)return i?[a,``]:[a];let o=B(r.join(`/`)),s=[];return s.push(...o.map(e=>e===``?a:[a,e].join(`/`))),i&&s.push(...o),s.map(t=>e.startsWith(`/`)&&t===``?`/`:t)}function re(e){e.sort((e,t)=>e.score===t.score?fe(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}var ie=/^:[\w-]+$/,ae=3,oe=2,se=1,ce=10,le=-2,ue=e=>e===`*`;function de(e,t){let n=e.split(`/`),r=n.length;return n.some(ue)&&(r+=le),t&&(r+=oe),n.filter(e=>!ue(e)).reduce((e,t)=>e+(ie.test(t)?ae:t===``?se:ce),r)}function fe(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}function pe(e,t,n=!1){let{routesMeta:r}=e,i={},a=`/`,o=[];for(let e=0;e{if(t===`*`){let e=s[r]||``;o=a.slice(0,a.length-e.length).replace(/(.)\/+$/,`$1`)}let i=s[r];return e[t]=n&&!i?void 0:(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function ge(e,t=!1,n=!0){j(e===`*`||!e.endsWith(`*`)||e.endsWith(`/*`),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,`/*`)}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,`/*`)}".`);let r=[],i=`^`+e.replace(/\/*\*?$/,``).replace(/^\/*/,`/`).replace(/[\\.*+^${}|()[\]]/g,`\\$&`).replace(/\/:([\w-]+)(\?)?/g,(e,t,n,i,a)=>{if(r.push({paramName:t,isOptional:n!=null}),n){let t=a.charAt(i+e.length);return t&&t!==`/`?`/([^\\/]*)`:`(?:/([^\\/]*))?`}return`/([^\\/]+)`}).replace(/\/([\w-]+)\?(\/|$)/g,`(/$1)?$2`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function _e(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return j(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function ve(e,t){if(t===`/`)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith(`/`)?t.length-1:t.length,r=e.charAt(n);return r&&r!==`/`?null:e.slice(n)||`/`}function ye(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?F(e):e,a;return n?(n=Te(n),a=n.startsWith(`/`)?be(n.substring(1),`/`):be(n,t)):a=t,{pathname:a,search:ke(r),hash:Ae(i)}}function be(e,t){let n=De(t).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function xe(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function Se(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function Ce(e){let t=Se(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function we(e,t,n,r=!1){let i;typeof e==`string`?i=F(e):(i={...e},A(!i.pathname||!i.pathname.includes(`?`),xe(`?`,`pathname`,`search`,i)),A(!i.pathname||!i.pathname.includes(`#`),xe(`#`,`pathname`,`hash`,i)),A(!i.search||!i.search.includes(`#`),xe(`#`,`search`,`hash`,i)));let a=e===``||i.pathname===``,o=a?`/`:i.pathname,s;if(o==null)s=n;else{let e=t.length-1;if(!r&&o.startsWith(`..`)){let t=o.split(`/`);for(;t[0]===`..`;)t.shift(),--e;i.pathname=t.join(`/`)}s=e>=0?t[e]:`/`}let c=ye(i,s),l=o&&o!==`/`&&o.endsWith(`/`),u=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(l||u)&&(c.pathname+=`/`),c}var Te=e=>e.replace(/[\\/]{2,}/g,`/`),Ee=e=>Te(e.join(`/`)),De=e=>e.replace(/\/+$/,``),Oe=e=>De(e).replace(/^\/*/,`/`),ke=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,Ae=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,je=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function Me(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function Ne(e){return Ee(e.map(e=>e.route.path).filter(Boolean))||`/`}var Pe=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function Fe(e,t){let n=e;if(typeof n!=`string`||!w.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(Pe)try{let e=new URL(window.location.href),r=T.test(n)?new URL(E(n,e.protocol)):new URL(n),a=ve(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{j(!1,` contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:i,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);var Ie=[`POST`,`PUT`,`PATCH`,`DELETE`];new Set(Ie);var Le=[`GET`,...Ie];new Set(Le);var Re=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`];function ze(e){try{return Re.includes(new URL(e).protocol)}catch{return!1}}var Be=v.createContext(null);Be.displayName=`DataRouter`;var Ve=v.createContext(null);Ve.displayName=`DataRouterState`;var He=v.createContext(!1);function Ue(){return v.useContext(He)}var We=v.createContext({isTransitioning:!1});We.displayName=`ViewTransition`;var Ge=v.createContext(new Map);Ge.displayName=`Fetchers`;var Ke=v.createContext(null);Ke.displayName=`Await`;var qe=v.createContext(null);qe.displayName=`Navigation`;var Je=v.createContext(null);Je.displayName=`Location`;var Ye=v.createContext({outlet:null,matches:[],isDataRoute:!1});Ye.displayName=`Route`;var Xe=v.createContext(null);Xe.displayName=`RouteError`;var Ze=`REACT_ROUTER_ERROR`,Qe=`REDIRECT`,$e=`ROUTE_ERROR_RESPONSE`;function et(e){if(e.startsWith(`${Ze}:${Qe}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`&&typeof t.location==`string`&&typeof t.reloadDocument==`boolean`&&typeof t.replace==`boolean`)return t}catch{}}function tt(e){if(e.startsWith(`${Ze}:${$e}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new je(t.status,t.statusText,t.data)}catch{}}function nt(e,{relative:t}={}){A(rt(),`useHref() may be used only in the context of a component.`);let{basename:n,navigator:r}=v.useContext(qe),{hash:i,pathname:a,search:o}=dt(e,{relative:t}),s=a;return n!==`/`&&(s=a===`/`?n:Ee([n,a])),r.createHref({pathname:s,search:o,hash:i})}function rt(){return v.useContext(Je)!=null}function it(){return A(rt(),`useLocation() may be used only in the context of a component.`),v.useContext(Je).location}var at=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`;function ot(e){v.useContext(qe).static||v.useLayoutEffect(e)}function st(){let{isDataRoute:e}=v.useContext(Ye);return e?Ot():ct()}function ct(){A(rt(),`useNavigate() may be used only in the context of a component.`);let e=v.useContext(Be),{basename:t,navigator:n}=v.useContext(qe),{matches:r}=v.useContext(Ye),{pathname:i}=it(),a=JSON.stringify(Ce(r)),o=v.useRef(!1);return ot(()=>{o.current=!0}),v.useCallback((r,s={})=>{if(j(o.current,at),!o.current)return;if(typeof r==`number`){n.go(r);return}let c=we(r,JSON.parse(a),i,s.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:Ee([t,c.pathname])),(s.replace?n.replace:n.push)(c,s.state,s)},[t,n,a,i,e])}var lt=v.createContext(null);function ut(e){let t=v.useContext(Ye).outlet;return v.useMemo(()=>t&&v.createElement(lt.Provider,{value:e},t),[t,e])}function dt(e,{relative:t}={}){let{matches:n}=v.useContext(Ye),{pathname:r}=it(),i=JSON.stringify(Ce(n));return v.useMemo(()=>we(e,JSON.parse(i),r,t===`path`),[e,i,r,t])}function ft(e,t){return pt(e,t)}function pt(e,t,n){A(rt(),`useRoutes() may be used only in the context of a component.`);let{navigator:r}=v.useContext(qe),{matches:i}=v.useContext(Ye),a=i[i.length-1],o=a?a.params:{},s=a?a.pathname:`/`,c=a?a.pathnameBase:`/`,l=a&&a.route;{let e=l&&l.path||``;At(s,!l||e.endsWith(`*`)||e.endsWith(`*?`),`You rendered descendant (or called \`useRoutes()\`) at "${s}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. + +Please change the parent to .`)}let u=it(),d;if(t){let e=typeof t==`string`?F(t):t;A(c===`/`||e.pathname?.startsWith(c),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${c}" but pathname "${e.pathname}" was given in the \`location\` prop.`),d=e}else d=u;let f=d.pathname||`/`,p=f;if(c!==`/`){let e=c.replace(/^\//,``).split(`/`);p=`/`+f.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let m=n&&n.state.matches.length?n.state.matches.map(e=>Object.assign(e,{route:n.manifest[e.route.id]||e.route})):R(e,{pathname:p});j(l||m!=null,`No routes matched location "${d.pathname}${d.search}${d.hash}" `),j(m==null||m[m.length-1].route.element!==void 0||m[m.length-1].route.Component!==void 0||m[m.length-1].route.lazy!==void 0,`Matched leaf route at location "${d.pathname}${d.search}${d.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let h=bt(m&&m.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:Ee([c,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?c:Ee([c,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&h?v.createElement(Je.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,mask:void 0,...d},navigationType:`POP`}},h):h}function mt(){let e=Dt(),t=Me(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r=`rgba(200,200,200, 0.5)`,i={padding:`0.5rem`,backgroundColor:r},a={padding:`2px 4px`,backgroundColor:r},o=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),o=v.createElement(v.Fragment,null,v.createElement(`p`,null,`💿 Hey developer 👋`),v.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,v.createElement(`code`,{style:a},`ErrorBoundary`),` or`,` `,v.createElement(`code`,{style:a},`errorElement`),` prop on your route.`)),v.createElement(v.Fragment,null,v.createElement(`h2`,null,`Unexpected Application Error!`),v.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?v.createElement(`pre`,{style:i},n):null,o)}var ht=v.createElement(mt,null),gt=class extends v.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=tt(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:v.createElement(Ye.Provider,{value:this.props.routeContext},v.createElement(Xe.Provider,{value:e,children:this.props.component}));return this.context?v.createElement(vt,{error:e},t):t}};gt.contextType=He;var _t=new WeakMap;function vt({children:e,error:t}){let{basename:n}=v.useContext(qe);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=et(t.digest);if(e){let r=_t.get(t);if(r)throw r;let i=Fe(e.location,n),a=i.absoluteURL||i.to;if(ze(a))throw Error(`Invalid redirect location`);if(Pe&&!_t.get(t)){if(i.isExternal||e.reloadDocument)window.location.href=a;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(i.to,{replace:e.replace}));throw _t.set(t,n),n}}return v.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${a}`})}}return e}function yt({routeContext:e,match:t,children:n}){let r=v.useContext(Be);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),v.createElement(Ye.Provider,{value:e},n)}function bt(e,t=[],n){let r=n?.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let i=e,a=r?.errors;if(a!=null){let e=i.findIndex(e=>e.route.id&&a?.[e.route.id]!==void 0);A(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(`,`)}`),i=i.slice(0,Math.min(i.length,e+1))}let o=!1,s=-1;if(n&&r){o=r.renderFallback;for(let e=0;e=0?i.slice(0,s+1):[i[0]];break}}}}let c=n?.onError,l=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},pattern:Ne(r.matches),errorInfo:t})}:void 0;return i.reduceRight((e,n,c)=>{let u,d=!1,f=null,p=null;r&&(u=a&&n.route.id?a[n.route.id]:void 0,f=n.route.errorElement||ht,o&&(s<0&&c===0?(At(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=n.route.hydrateFallbackElement||null)));let m=t.concat(i.slice(0,c+1)),h=()=>{let t;return t=u?f:d?p:n.route.Component?v.createElement(n.route.Component,null):n.route.element?n.route.element:e,v.createElement(yt,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?v.createElement(gt,{location:r.location,revalidation:r.revalidation,component:f,error:u,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:l}):h()},null)}function xt(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function St(e){let t=v.useContext(Be);return A(t,xt(e)),t}function Ct(e){let t=v.useContext(Ve);return A(t,xt(e)),t}function wt(e){let t=v.useContext(Ye);return A(t,xt(e)),t}function Tt(e){let t=wt(e),n=t.matches[t.matches.length-1];return A(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function Et(){return Tt(`useRouteId`)}function Dt(){let e=v.useContext(Xe),t=Ct(`useRouteError`),n=Tt(`useRouteError`);return e===void 0?t.errors?.[n]:e}function Ot(){let{router:e}=St(`useNavigate`),t=Tt(`useNavigate`),n=v.useRef(!1);return ot(()=>{n.current=!0}),v.useCallback(async(r,i={})=>{j(n.current,at),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}var kt={};function At(e,t,n){!t&&!kt[e]&&(kt[e]=!0,j(!1,n))}v.memo(jt);function jt({routes:e,manifest:t,future:n,state:r,isStatic:i,onError:a}){return pt(e,void 0,{manifest:t,state:r,isStatic:i,onError:a,future:n})}function Mt({to:e,replace:t,state:n,relative:r}){A(rt(),` may be used only in the context of a component.`);let{static:i}=v.useContext(qe);j(!i,` must not be used on the initial render in a . This is a no-op, but you should modify your code so the is only ever rendered in response to some user interaction or state change.`);let{matches:a}=v.useContext(Ye),{pathname:o}=it(),s=st(),c=we(e,Ce(a),o,r===`path`),l=JSON.stringify(c);return v.useEffect(()=>{s(JSON.parse(l),{replace:t,state:n,relative:r})},[s,l,r,t,n]),null}function Nt(e){return ut(e.context)}function Pt(e){A(!1,`A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .`)}function Ft({basename:e=`/`,children:t=null,location:n,navigationType:r=`POP`,navigator:i,static:a=!1,useTransitions:o}){A(!rt(),`You cannot render a inside another . You should never have more than one in your app.`);let s=e.replace(/^\/*/,`/`),c=v.useMemo(()=>({basename:s,navigator:i,static:a,useTransitions:o,future:{}}),[s,i,a,o]);typeof n==`string`&&(n=F(n));let{pathname:l=`/`,search:u=``,hash:d=``,state:f=null,key:p=`default`,mask:m}=n,h=v.useMemo(()=>{let e=ve(l,s);return e==null?null:{location:{pathname:e,search:u,hash:d,state:f,key:p,mask:m},navigationType:r}},[s,l,u,d,f,p,r,m]);return j(h!=null,` is not able to match the URL "${l}${u}${d}" because it does not start with the basename, so the won't render anything.`),h==null?null:v.createElement(qe.Provider,{value:c},v.createElement(Je.Provider,{children:t,value:h}))}function It({children:e,location:t}){return ft(Lt(e),t)}v.Component;function Lt(e,t=[]){let n=[];return v.Children.forEach(e,(e,r)=>{if(!v.isValidElement(e))return;let i=[...t,r];if(e.type===v.Fragment){n.push.apply(n,Lt(e.props.children,i));return}A(e.type===Pt,`[${typeof e.type==`string`?e.type:e.type.name}] is not a component. All component children of must be a or `),A(!e.props.index||!e.props.children,`An index route cannot have child routes.`);let a={id:e.props.id||i.join(`-`),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:e.props.hasErrorBoundary===!0||e.props.ErrorBoundary!=null||e.props.errorElement!=null,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=Lt(e.props.children,i)),n.push(a)}),n}var Rt=`get`,zt=`application/x-www-form-urlencoded`;function Bt(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function Vt(e){return Bt(e)&&e.tagName.toLowerCase()===`button`}function Ht(e){return Bt(e)&&e.tagName.toLowerCase()===`form`}function Ut(e){return Bt(e)&&e.tagName.toLowerCase()===`input`}function Wt(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Gt(e,t){return e.button===0&&(!t||t===`_self`)&&!Wt(e)}var Kt=null;function qt(){if(Kt===null)try{new FormData(document.createElement(`form`),0),Kt=!1}catch{Kt=!0}return Kt}var Jt=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]);function Yt(e){return e!=null&&!Jt.has(e)?(j(!1,`"${e}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${zt}"`),null):e}function Xt(e,t){let n,r,i,a,o;if(Ht(e)){let o=e.getAttribute(`action`);r=o?ve(o,t):null,n=e.getAttribute(`method`)||Rt,i=Yt(e.getAttribute(`enctype`))||zt,a=new FormData(e)}else if(Vt(e)||Ut(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a